[PATCH weston 0/6] Implement xdg-shell's show_window_menu API
Dima Ryazanov
dima at gmail.com
Mon Dec 5 03:36:29 UTC 2016
This series implements window menus in Weston - so e.g. right-clicking
the title bar of a Gnome app in Weston will actually show a popup menu.
The last patch makes Weston clients use the same API, so they'll get
a native-looking menu when running in Gnome.
Patches 1, 3, and 4 should be pretty uncontroversial.
Patch 2 is a hack, but might be correct anyways.
Patch 5 is where all the work is done. It's still a work-in-progress, but
I'd like to get some feedback.
Patch 6 doesn't technically depend on 1-5, but will be sort of a regression
without them.
Known bugs:
- The menu is displayed at an offset
- When Gnome apps display the menu, it looks like the grab stays around even
after the menu is dismissed; you have to click again before you can do
anything else.
Dima Ryazanov (6):
libweston: Pass the serial along with the other data in the
show_window_menu API
libweston: Use the monotonic clock in weston_compositor_get_time
window: Require the serial in window_show_menu
window: Call the menu callback even if the menu was dismissed
Display the window menu using the desktop shell
window: Start using xdg-shell's show_window_menu API
clients/desktop-shell.c | 46 ++++++++++++++++-
clients/editor.c | 4 +-
clients/resizor.c | 4 +-
clients/stacking.c | 4 +-
clients/terminal.c | 4 +-
clients/window.c | 95 +++++++++++++++++++++--------------
clients/window.h | 14 +++++-
desktop-shell/shell.c | 49 +++++++++++++++++-
desktop-shell/shell.h | 2 +
libweston-desktop/internal.h | 7 ++-
libweston-desktop/libweston-desktop.c | 4 +-
libweston-desktop/libweston-desktop.h | 11 +++-
libweston-desktop/surface.c | 30 +++++++++++
libweston-desktop/xdg-shell-v5.c | 3 +-
libweston-desktop/xdg-shell-v6.c | 55 +++++++++++++++++++-
libweston/compositor.c | 6 +--
protocol/weston-desktop-shell.xml | 12 +++++
17 files changed, 293 insertions(+), 57 deletions(-)
--
2.9.3
More information about the wayland-devel
mailing list