summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2014-03-13 17:13:22 -0400
committerJasper St. Pierre <jstpierre@mecheye.net>2014-05-21 18:55:47 -0400
commit50b81fe4b9623dd34a1d9a93f12c7401bf0a0b0f (patch)
treed0bcbf978e7701b2cf742712f8275506c8574cc5
parentf38c1f6ab4a45d409077962b0324cade8582f0ce (diff)
downloadmutter-50b81fe4b9623dd34a1d9a93f12c7401bf0a0b0f.tar.gz
x11: Add support for a new _GTK_SHOW_WINDOW_MENU request
To show the window menu from a client-side decoration.
-rw-r--r--src/core/screen.c1
-rw-r--r--src/meta/atomnames.h1
-rw-r--r--src/x11/window-x11.c5
3 files changed, 7 insertions, 0 deletions
diff --git a/src/core/screen.c b/src/core/screen.c
index 96a1343e9..afc3ca95d 100644
--- a/src/core/screen.c
+++ b/src/core/screen.c
@@ -297,6 +297,7 @@ set_supported_hint (MetaScreen *screen)
#undef EWMH_ATOMS_ONLY
screen->display->atom__GTK_FRAME_EXTENTS,
+ screen->display->atom__GTK_SHOW_WINDOW_MENU,
};
XChangeProperty (screen->display->xdisplay, screen->xroot,
diff --git a/src/meta/atomnames.h b/src/meta/atomnames.h
index 29b8be963..e37e8fa59 100644
--- a/src/meta/atomnames.h
+++ b/src/meta/atomnames.h
@@ -62,6 +62,7 @@ item(_GTK_WINDOW_OBJECT_PATH)
item(_GTK_APP_MENU_OBJECT_PATH)
item(_GTK_MENUBAR_OBJECT_PATH)
item(_GTK_FRAME_EXTENTS)
+item(_GTK_SHOW_WINDOW_MENU)
item(_GNOME_WM_KEYBINDINGS)
item(_GNOME_PANEL_ACTION)
item(_GNOME_PANEL_ACTION_MAIN_MENU)
diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c
index dd0175907..54654fd17 100644
--- a/src/x11/window-x11.c
+++ b/src/x11/window-x11.c
@@ -2726,6 +2726,11 @@ meta_window_x11_client_message (MetaWindow *window,
meta_window_update_fullscreen_monitors (window, top, bottom, left, right);
}
+ else if (event->xclient.message_type ==
+ display->atom__GTK_SHOW_WINDOW_MENU)
+ {
+ meta_window_show_menu (window);
+ }
return FALSE;
}