summaryrefslogtreecommitdiff
path: root/gdk/gdktoplevelprivate.h
diff options
context:
space:
mode:
authorOlivier Fourdan <ofourdan@redhat.com>2020-03-20 15:17:41 +0100
committerOlivier Fourdan <ofourdan@redhat.com>2020-03-30 18:25:36 +0200
commit3e1f59af61e339cfa990c2f776aa0c625b3377f2 (patch)
tree73d0c4c0eeaf98b6b2735af52038b065f3905371 /gdk/gdktoplevelprivate.h
parentda47ccaf3c3d4353f6fa4ac813aeb689a1d2d20a (diff)
downloadgtk+-3e1f59af61e339cfa990c2f776aa0c625b3377f2.tar.gz
gdk: Add gdk_toplevel_inhibit_system_shortcuts API
With the removal of grabs from the public API, we need a replacement API to let applications bypass system keyboard shortcuts. A typical use case for this API is remote desktop or virtual machine viewers which need to inhibit the default system keyboard shortcuts so that the remote session or virtual host gets those instead of the local environment. Close: https://gitlab.gnome.org/GNOME/gtk/issues/982
Diffstat (limited to 'gdk/gdktoplevelprivate.h')
-rw-r--r--gdk/gdktoplevelprivate.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdk/gdktoplevelprivate.h b/gdk/gdktoplevelprivate.h
index ac3c5a4ab3..c54d0ac503 100644
--- a/gdk/gdktoplevelprivate.h
+++ b/gdk/gdktoplevelprivate.h
@@ -21,6 +21,9 @@ struct _GdkToplevelInterface
gboolean (* show_window_menu) (GdkToplevel *toplevel,
GdkEvent *event);
gboolean (* supports_edge_constraints) (GdkToplevel *toplevel);
+ void (* inhibit_system_shortcuts) (GdkToplevel *toplevel,
+ GdkEvent *event);
+ void (* restore_system_shortcuts) (GdkToplevel *toplevel);
};
typedef enum
@@ -34,6 +37,7 @@ typedef enum
GDK_TOPLEVEL_PROP_DECORATED,
GDK_TOPLEVEL_PROP_DELETABLE,
GDK_TOPLEVEL_PROP_FULLSCREEN_MODE,
+ GDK_TOPLEVEL_PROP_SHORTCUTS_INHIBITED,
GDK_TOPLEVEL_NUM_PROPERTIES
} GdkToplevelProperties;