This is a work in progress, but is good progress along the idea of xdg-shell communicating low-level decoration interaction events to the compositor, rather than every client needing to interpret window manipulation actions and bindings.
It moves logic from clients/window.c and shared/frame.c into desktop-shell/shell.c, though not all of the standard behaviors are implemented yet. (See TODOs below.) The motivation for this is to allow compositors to again implement classic window manipulation behaviors that we do not want clients to be able to do (like stacking order changes). It also centralizes decoration bindings into the compositor, reducing variation between clients. TODOs: - implement decoration actions as some kind of binding - implement double-click/double-touch handler for toggle-maximize - implement middle-click titlebar to lower as an example binding Adam Goode (2): libweston-desktop: Update weston-desktop to use unstable xdg-shell v7 clients: Update weston clients to use unstable xdg-shell v7 COPYING | 1 + Makefile.am | 36 +- clients/flower.c | 9 +- clients/fullscreen.c | 10 +- clients/scaler.c | 13 +- clients/simple-damage.c | 48 +- clients/simple-dmabuf-intel.c | 48 +- clients/simple-dmabuf-v4l.c | 48 +- clients/simple-egl.c | 67 +- clients/simple-shm.c | 48 +- clients/transformed.c | 9 +- clients/window.c | 198 ++--- clients/window.h | 4 +- desktop-shell/shell.c | 134 ++-- libweston-desktop/internal.h | 11 +- libweston-desktop/libweston-desktop.c | 40 +- libweston-desktop/libweston-desktop.h | 31 +- libweston-desktop/wl-shell.c | 4 +- libweston-desktop/xdg-shell-v5.c | 7 +- libweston-desktop/xdg-shell-v6.c | 6 +- libweston-desktop/xdg-shell-v7.c | 1238 ++++++++++++++++++++++++++++++++ libweston-desktop/xwayland.c | 27 +- libweston/compositor-wayland.c | 78 +- shared/cairo-util.h | 19 +- shared/frame.c | 136 +--- xwayland/window-manager.c | 24 +- xwayland/xwayland-internal-interface.h | 6 +- 27 files changed, 1738 insertions(+), 562 deletions(-) create mode 100644 libweston-desktop/xdg-shell-v7.c -- 2.8.0.rc3.226.g39d4020 _______________________________________________ wayland-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/wayland-devel
