1. 20 Jul, 2020 3 commits
  2. 03 Jul, 2020 1 commit
  3. 29 May, 2020 1 commit
    • Olivier Fourdan's avatar
      xwayland: Fix infinite loop at startup · 0430d13c
      Olivier Fourdan authored
      Mutter recently added headless tests, and when running those tests the
      Wayland compositor runs for a very short time.
      Xwayland is spawned by the Wayland compositor and upon startup will
      query the various Wayland protocol supported by the compositor.
      To do so, it will do a roundtrip to the Wayland server waiting for
      events it expects.
      If the Wayland compositor terminates before Xwayland has got the replies
      it expects, it will loop indefinitely calling `wl_display_roundtrip()`
      To avoid that issue, add a new `xwl_screen_roundtrip()` that checks for
      the returned value from `wl_display_roundtrip()` and fails if it is
      Signed-off-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
      Reviewed-by: Roman Gilg's avatarRoman Gilg <subdiff@gmail.com>
      Reviewed-by: Jonas Ådahl's avatarJonas Ådahl <jadahl@gmail.com>
      (cherry picked from commit 785e5906)
  4. 22 May, 2020 1 commit
  5. 15 Apr, 2020 1 commit
    • Samuel Thibault's avatar
      dix: do not send focus event when grab actually does not change · 271934db
      Samuel Thibault authored
       ("dix: always send focus event on grab change") made dix
      always sent events when it's a NotifyGrab or NotifyUngrab, even if
      from == to, because 'from' can just come from a previous XSetInputFocus
      However, when an application calls XGrabKeyboard several times on
      the same window, we are now sending spurious FocusOut+FocusIn with
      NotifyGrab, even if the grab does not actually change. This makes screen
      readers for blind people spuriously emit activity events which disturb
      screen reading workflow when e.g. switching between menus.
      This commit avoids calling DoFocusEvents in that precise case, i.e. when
      oldWin is a previous grab and the new grab is the same window.
      Signed-off-by: Samuel Thibault's avatarSamuel Thibault <samuel.thibault@ens-lyon.org>
      Reviewed-by: Adam Jackson's avatarAdam Jackson <ajax@redhat.com>
      (cherry picked from commit 364d6498)
  6. 29 Mar, 2020 1 commit
  7. 22 Mar, 2020 2 commits
  8. 18 Mar, 2020 1 commit
  9. 12 Mar, 2020 1 commit
  10. 07 Mar, 2020 2 commits
  11. 02 Mar, 2020 3 commits
  12. 21 Feb, 2020 3 commits
    • Dor Askayo's avatar
      xwayland: clear pixmaps after creation in rootless mode · 94dad4f0
      Dor Askayo authored
      When a pixmap is created with a backing FBO, the FBO should be cleared
      to avoid rendering uninitialized memory. This could happen when the
      pixmap is rendered without being filled in its entirety.
      One example is when a top-level window without a background is
      resized. The pixmap would be reallocated to prepare for more pixels,
      but uninitialized memory would be rendered in the resize offset until
      the client sends a frame that fills these additional pixels.
      Another example is when a new top-level window is created without a
      background. Uninitialized memory would be rendered after the pixmap is
      allocated and before the client sends its first frame.
      This issue is only apparent in OpenGL implementations that don't zero
      the VRAM of allocated buffers by default, such as RadeonSI.
      Signed-off-by: Dor Askayo's avatarDor Askayo <dor.askayo@gmail.com>
      Closes: #636
      Reviewed-by: Michel Dänzer's avatarMichel Dänzer <mdaenzer@redhat.com>
      (cherry picked from commit 0e9a0c20)
      [ Michel Dänzer:
      * Squashed in commit ebf549db
      * Dropped code related to glamor_format, which only exists on master ]
    • Michel Dänzer's avatar
      xwayland: Call glamor_block_handler from xwl_screen_post_damage · 0238359b
      Michel Dänzer authored
      In between the two phases introduced by the previous change. This makes
      sure all pending drawing to the new buffers is flushed before they're
      committed to the Wayland server.
      (cherry picked from commit a542224e)
    • Michel Dänzer's avatar
      xwayland: Split up xwl_screen_post_damage into two phases · a93bce6b
      Michel Dänzer authored
      The first phase sets the new surface properties for all damaged
      windows, then the second phase commits all surface updates.
      This is preparatory for the next change, there should be no observable
      change in behaviour (other than the order of Wayland protocol
      Reviewed-by: Adam Jackson's avatarAdam Jackson <ajax@redhat.com>
      (cherry picked from commit f88d9b1f)
  13. 19 Feb, 2020 1 commit
  14. 10 Feb, 2020 5 commits
  15. 06 Feb, 2020 5 commits
  16. 14 Jan, 2020 2 commits
  17. 13 Jan, 2020 7 commits