1. 18 Jul, 2019 1 commit
  2. 10 May, 2019 5 commits
  3. 02 May, 2019 1 commit
    • Antonio Borneo's avatar
      log: remove "%m" from format strings by using strerror(errno) · 39578636
      Antonio Borneo authored
      The printf() format specifier "%m" is a glibc extension to print
      the string returned by strerror(errno). While supported by other
      libraries (e.g. uClibc and musl), it is not widely portable.
      
      In Weston code the format string is often passed to a logging
      function that calls other syscalls before the conversion of "%m"
      takes place. If one of such syscall modifies the value in errno,
      the conversion of "%m" will incorrectly report the error string
      corresponding to the new value of errno.
      
      Remove all the occurrences of the specifier "%m" in Weston code
      by using directly the string returned by strerror(errno).
      While there, fix some minor indentation issue.
      Signed-off-by: Antonio Borneo's avatarAntonio Borneo <borneo.antonio@gmail.com>
      39578636
  4. 18 Apr, 2019 4 commits
  5. 20 Feb, 2019 1 commit
  6. 16 Feb, 2019 2 commits
  7. 31 Dec, 2018 2 commits
  8. 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
      missing.
      
      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>
      8011b0fa
  9. 17 Sep, 2018 3 commits
  10. 22 Jul, 2018 1 commit
  11. 24 May, 2018 2 commits
  12. 02 Apr, 2018 1 commit
  13. 28 Mar, 2018 2 commits
  14. 27 Mar, 2018 1 commit
  15. 20 Mar, 2018 2 commits
  16. 09 Feb, 2018 1 commit
  17. 07 Feb, 2018 1 commit
  18. 18 Jan, 2018 2 commits
    • Emmanuel Gil Peyrot's avatar
      xwm: Add icon support to the frame · 6b58ea8c
      Emmanuel Gil Peyrot authored
      This fetches the _NET_WM_ICON property of the X11 window, and use the
      first image found as the frame icon.
      
      This has been tested with various X11 programs, and improves usability
      and user-friendliness a bit.
      
      Changes since v1:
      - Changed frame_button_create() to use
        frame_button_create_from_surface() internally.
      - Removed a check that should never have been commited.
      
      Changes since v2:
      - Request UINT32_MAX items instead of 2048, to avoid cutting valid
        icons.
      - Strengthen checks against malformed input.
      - Handle XCB_PROPERTY_DELETE to remove the icon.
      - Schedule a repaint if the icon changed.
      
      Changes since v3:
      - Keep the previous Cairo surface until the new one has been
        successfully loaded.
      - Use uint32_t for cardinals.  Unsigned is the same type except on
        16-bit machines, but uint32_t is clearer.
      - Declare length as uint32_t too, like in xcb_get_property_reply_t.
      Signed-off-by: 's avatarEmmanuel Gil Peyrot <linkmauve@linkmauve.fr>
      Reviewed-by: Quentin Glidic's avatarQuentin Glidic <sardemff7+git@sardemff7.net>
      6b58ea8c
    • Ian Ray's avatar
      xwm: do not include shadow in input region · 332d1892
      Ian Ray authored
      The window frame was created with position and size which include
      an offset for margins and shadow.  Set the input region to ignore
      shadow.
      
      [daniels: Fixed type mismatch, removed unused variable.]
      Signed-off-by: 's avatarIan Ray <ian.ray@ge.com>
      Reviewed-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
      Tested-by: Scott Moreau's avatarScott Moreau <oreaus@gmail.com>
      332d1892
  19. 05 Dec, 2017 3 commits
  20. 21 Jul, 2017 1 commit
  21. 18 May, 2017 1 commit
  22. 13 Apr, 2017 2 commits
    • Pekka Paalanen's avatar
      xwm: use _XWAYLAND_ALLOW_COMMITS · 7ace831c
      Pekka Paalanen authored
      This patch uses the new feature proposed for Xwayland in the patch
      series https://patchwork.freedesktop.org/series/16610/ .
      
      When the frame window is created, immediately forbid Xwayland commits on
      it. This prevents commits before the decorations have been drawn and the
      initial pending state has been set. Commits are enabled right after
      drawing and setting.
      
      This ensures that the decorations are fully drawn when a window is
      mapped. This also solves the initial commit/pending race, but the race
      is on again after mapping.
      
      If Xwayland does not implement the needed support, we are just setting a
      window property with no effect.
      
      This patch is the final piece for solving T7622, excluding the
      _NET_WM_SYNC_REQUEST handling.
      
      Task: https://phabricator.freedesktop.org/T7622Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <pekka.paalanen@collabora.co.uk>
      Reviewed-by: Louis-Francis Ratté-Boulianne's avatarLouis-Francis Ratté-Boulianne <lfrb@collabora.com>
      Acked-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
      7ace831c
    • Pekka Paalanen's avatar
      xwm: do not draw decor twice on map · ad0da459
      Pekka Paalanen authored
      Normal windows enter the MapRequest handler, which schedules drawing the
      decorations. Then Xwayland realizes the window, which ends with a call
      to xserver_map_shell_surface(). The decorations are already drawn, no
      need to draw them a second time. However, MapRequest handler could not
      set the pending state because the weston_surface did not exist at the
      time, because it gets created only when Xwayland realizes the window,
      which happens after XWM has forwarded the MapWindow in MapRequest
      handler. Therefore set the pending state explicitly at the end.
      Scheduling had it done much later anyway.
      
      Now that the pending state is set much earlier, it seems to be more
      likely that it gets set before Xwayland's first commit is handled. This
      means that -geometry command line option of X11 apps already takes the
      geometry (decorations) into account. I do not think it is reliable yet,
      though.
      
      There is still the race between Xwayland committing and XWM setting the
      pending state assuming the very next commit latches it in appropriately.
      The race exists not because of Wayland, but because WL_SURFACE_ID comes
      via X11, and could be processed after wl_compositor.create_surface and
      wl_surface.commit. That commit/pending race is solved by a following patch.
      
      For override-redirect windows weston_wm_window_schedule_repaint()
      reduced into a call to weston_wm_window_set_pending_state_OR(), so we
      can just call that directly. It should not matter that the call is moved
      to the end of the function.
      Signed-off-by: Pekka Paalanen's avatarPekka Paalanen <pekka.paalanen@collabora.co.uk>
      Reviewed-by: Louis-Francis Ratté-Boulianne's avatarLouis-Francis Ratté-Boulianne <lfrb@collabora.com>
      Acked-by: Daniel Stone's avatarDaniel Stone <daniels@collabora.com>
      ad0da459