[PATCH 0/2] weston: Update weston server and clients to xdg-shell v7

Adam Goode agoode at google.com
Mon Dec 19 17:57:04 UTC 2016


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



More information about the wayland-devel mailing list