1#ifndef __GDK_TOPLEVEL_PRIVATE_H__
2#define __GDK_TOPLEVEL_PRIVATE_H__
3
4#include "gdktoplevel.h"
5#include "gdktoplevelsizeprivate.h"
6
7#include <graphene.h>
8
9G_BEGIN_DECLS
10
11
12struct _GdkToplevelInterface
13{
14 GTypeInterface g_iface;
15
16 void (* present) (GdkToplevel *toplevel,
17 GdkToplevelLayout *layout);
18 gboolean (* minimize) (GdkToplevel *toplevel);
19 gboolean (* lower) (GdkToplevel *toplevel);
20 void (* focus) (GdkToplevel *toplevel,
21 guint32 timestamp);
22 gboolean (* show_window_menu) (GdkToplevel *toplevel,
23 GdkEvent *event);
24 gboolean (* supports_edge_constraints) (GdkToplevel *toplevel);
25 void (* inhibit_system_shortcuts) (GdkToplevel *toplevel,
26 GdkEvent *event);
27 void (* restore_system_shortcuts) (GdkToplevel *toplevel);
28 void (* begin_resize) (GdkToplevel *toplevel,
29 GdkSurfaceEdge edge,
30 GdkDevice *device,
31 int button,
32 double x,
33 double y,
34 guint32 timestamp);
35 void (* begin_move) (GdkToplevel *toplevel,
36 GdkDevice *device,
37 int button,
38 double x,
39 double y,
40 guint32 timestamp);
41 gboolean (* titlebar_gesture) (GdkToplevel *toplevel,
42 GdkTitlebarGesture gesture);
43};
44
45typedef enum
46{
47 GDK_TOPLEVEL_PROP_STATE,
48 GDK_TOPLEVEL_PROP_TITLE,
49 GDK_TOPLEVEL_PROP_STARTUP_ID,
50 GDK_TOPLEVEL_PROP_TRANSIENT_FOR,
51 GDK_TOPLEVEL_PROP_MODAL,
52 GDK_TOPLEVEL_PROP_ICON_LIST,
53 GDK_TOPLEVEL_PROP_DECORATED,
54 GDK_TOPLEVEL_PROP_DELETABLE,
55 GDK_TOPLEVEL_PROP_FULLSCREEN_MODE,
56 GDK_TOPLEVEL_PROP_SHORTCUTS_INHIBITED,
57 GDK_TOPLEVEL_NUM_PROPERTIES
58} GdkToplevelProperties;
59
60guint gdk_toplevel_install_properties (GObjectClass *object_class,
61 guint first_prop);
62
63void gdk_toplevel_notify_compute_size (GdkToplevel *toplevel,
64 GdkToplevelSize *size);
65
66G_END_DECLS
67
68#endif /* __GDK_TOPLEVEL_PRIVATE_H__ */
69

source code of gtk/gdk/gdktoplevelprivate.h