1. 04 Jul, 2019 1 commit
  2. 20 Feb, 2019 1 commit
  3. 15 Feb, 2019 1 commit
    • Anthony Enrione's avatar
      libweston-desktop: implement the new xdg_shell (stable) protocol · d8d9f5e6
      Anthony Enrione authored
      Some clients like the mpv video player now request the xdg_shell
      protocol so these will fail if the compositor only provides the
      xdg_shell_unstable_v6 protocol. Compositors like mir and gnome provide
      both protocols.
      The two protocols are very similar therefore the code in xdg-shell-v6.c
      has been refactored to work with the new xdg_shell protocol and now
      resides in xdg-shell.c.
      - split the patch
      - fix continued line alignment
      - allow anchor_rect to initially have zero dimensions
      - account for get_popup allowing NULL parent surface
      Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <pekka.paalanen@collabora.com>
      Signed-off-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
  4. 06 Feb, 2019 1 commit
    • Alexandros Frantzis's avatar
      libweston: Introduce zwp_linux_explicit_synchronization_v1 · 27d7c395
      Alexandros Frantzis authored
      Introduce support for the zwp_linux_explicit_synchronization_unstable_v1
      protocol with an implementation of the zwp_linux_explicit_synchronization_v1
      Explicit synchronization provides a more versatile notification
      mechanism for buffer readiness and availability, and can be used to
      improve efficiency by integrating with related functionality in display
      and graphics APIs.
      In addition, the per-commit nature of the release events provided by
      this protocol potentially offers a solution to a deficiency of the
      wl_buffer.release event (see
      Support for this protocol depends on the capabilities of the backend, so
      we don't register it by default but provide a function which each
      backend will need to call. In this commit only the headless backend when
      using the noop renderer supports this to enable testing.
      Note that the zwp_surface_synchronization_v1 interface, which contains
      the core functionality of the protocol, is not implemented in this
      commit. Support for it will be added in future commits.
      Changes in v7:
        - Added some information in the commit message about the benefits of
          the explicit sync protocol.
      Changes in v6:
        - Fall back to advertising minor version 1 of the explicit sync protocol,
          although we support minor version 2 features, until the new
          wayland-protocols version is released.
      Changes in v5:
        - Meson support.
        - Advertise minor version 2 of the explicit sync protocol.
      Changes in v4:
        - Enable explicit sync support in the headless backend for all
      Changes in v3:
        - Use wl_resource_get_version() instead of hardcoding version 1.
        - Use updated protocol interface names.
        - Use correct format specifier for resource id.
        - Change test name to 'linux-explicit-synchronization.weston'
      Changes in v2:
        - Move implementation to separate file so protocol can be registered
          on demand by backends.
        - Register protocol in headless+noop backend for testing purposes.
      Signed-off-by: Alexandros Frantzis's avatarAlexandros Frantzis <alexandros.frantzis@collabora.com>
  5. 09 Dec, 2018 1 commit
    • Daniel Stone's avatar
      Add Meson build system · 8011b0fa
      Daniel Stone authored
      Meson is a build system, currently implemented in Python, with multiple
      output backends, including Ninja and Make. The build file syntax is
      clean and easy to read unlike autotools. In practise, configuring and
      building with Meson and Ninja has been observed to be much faster than
      with autotools. Also cross-building support is excellent.
      More information at http://mesonbuild.com
      Since moving to Meson requires some changes from users in any case, we
      took this opportunity to revamp build options. Most of the build options
      still exist, some have changed names or more, and a few have been
      dropped. The option to choose the Cairo flavour is not implemented since
      for the longest time the Cairo image backend has been the only
      recommended one.
      This Meson build should be fully functional and it installs everything
      an all-enabled autotools build does. Installed pkg-config files have
      some minor differences that should be insignificant. Building of some
      developer documentation that was never installed with autotools is
      It is expected that the autotools build system will be removed soon
      after the next Weston release.
      Signed-off-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
      Co-authored-by: Pekka Paalanen's avatarPekka Paalanen <pq@iki.fi>
      Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <pq@iki.fi>
  6. 11 Sep, 2018 1 commit
  7. 30 May, 2018 1 commit
  8. 18 Dec, 2017 4 commits
  9. 30 Jan, 2017 1 commit
    • Daniel Stone's avatar
      tests: Remove buffer-count · 4938f93f
      Daniel Stone authored
      buffer-count was introduced in line with a Mesa change which forced
      an earlier block on frame events to try to enforce double-buffering
      where available.
      The Mesa change has since been reverted (Mesa commit 9ca6711faa), as
      this had unpleasant interactions with buffer_age in particular, so this
      test is no longer valid.
      Additionally, it only worked on backends which initialised EGL (not
      headless-backend, where tests generally run), which can be flaky due to
      initialisation races. Not only that, but on the DRM backend, we can
      legitimately enter triple-buffering due to promoting the surface to a
      hardware plane, skipping GPU composition.
      In light of all this, just remove the test.
      Signed-off-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
      Reviewed-by: default avatarDerek Foreman <derekf@osg.samsung.com>
  10. 03 Jan, 2017 1 commit
  11. 09 Jun, 2016 1 commit
  12. 29 Apr, 2016 1 commit
  13. 07 Mar, 2016 1 commit
  14. 19 Nov, 2015 9 commits
  15. 30 Sep, 2015 1 commit
    • Derek Foreman's avatar
      xdg-shell: Clarify ack_configure behaviour · dcba1a10
      Derek Foreman authored
      Right now many toolkits (toytoolkit, gtk+ and EFL) will send an
      ack_configure request immediately in response to a configure event,
      even if they're not immediately committing the surface at that time.
      This leads to a situation where multiple configures receive ack_configure
      before any commit happens.
      There's really no reason for that sequence of events to bother a compositor,
      so this just clarifies the language to make it ok.
      Signed-off-by: default avatarDerek Foreman <derekf@osg.samsung.com>
      Reviewed-by: Jasper St. Pierre's avatarJasper St. Pierre <jstpierre@mecheye.net>
  16. 14 Aug, 2015 1 commit
    • Pekka Paalanen's avatar
      protocol: add linux_dmabuf extension (v3) · 23ab7159
      Pekka Paalanen authored
      An experimental (hence the 'z' prefix) linux_dmabuf Wayland protocol
      extension for creating dmabuf-based wl_buffers in a generic manner.
      This does not include proper dmabuf metadata negotiation because
      there is no way to communicate all dmabuf constraints from the
      compositor to a client before-hand. The client has to create a
      wl_buffer wrapping one or more dmabuf buffers and then listen at
      the feedback object returned to know if the operation was successful.
      RFCv1 changes (after a first draft without code):
      - some renames of interfaces and argument, no semantic changes
      - added destructor protocol to dmabuf_batch
      - added feedback interface for buffer creation
      v2 changes:
      - use drm_fourcc.h as authoritative source for format codes
      - add support for the 64-bit layout qualifier and y-inverted dmabufs
      - simplify the 'add' request (no need to preserve fd numerical id)
      - add explicit plane index in the 'add' request
      - integrate the 'feedback' object events to the batch interface
      - rename 'create_buffer' to 'create' and move it into the batch interface
      - add requirements needed from the graphics stack and clients
      - improve existing errors and add batch error codes
      - removed error codes from the global interface
      - improve documentation for arguments, enums, etc.
      - rename dmabuf_batch to zlinux_buffer_params
      - The y-inverted property makes more sense as a whole buffer property.
        Y-flipping individual planes of the same buffer object is hardly useful.
        The y-invert is also converted into a flag, so we may add more flags
      - add flags for interlaced buffer content
      v3 changes:
      - Apply Daniel Vetter's comments about wording on coherency.
      Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <pekka.paalanen@collabora.co.uk>
      Signed-off-by: Louis-Francis Ratté-Boulianne's avatarLouis-Francis Ratté-Boulianne <lfrb@collabora.com>
      Reviewed-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
      Acked-by: Benjamin Gaignard's avatarBenjamin Gaignard <benjamin.gaignard@linaro.org>
      Reviewed-by: Daniel Vetter's avatarDaniel Vetter <daniel.vetter@ffwll.ch>
  17. 14 Jul, 2015 1 commit
  18. 26 Jun, 2015 2 commits
  19. 15 Jun, 2015 3 commits
  20. 22 May, 2015 4 commits
  21. 21 May, 2015 1 commit
  22. 12 May, 2015 1 commit
  23. 08 May, 2015 1 commit