1. 06 Oct, 2019 1 commit
  2. 04 Oct, 2019 2 commits
  3. 02 Oct, 2019 2 commits
  4. 01 Oct, 2019 2 commits
  5. 30 Sep, 2019 2 commits
  6. 26 Sep, 2019 1 commit
  7. 23 Sep, 2019 5 commits
  8. 20 Sep, 2019 1 commit
  9. 18 Sep, 2019 1 commit
    • Jon Turney's avatar
      hw/xwin: Add -icon option to set the screen window icon in windowed mode · bcf2dd0c
      Jon Turney authored
      Add an -icon option to set the screen window icon in windowed mode
      Allow cygwin paths in an icon-specification
      Update man pages and system.XWinrc appropriately
      Also, log an error if the icon specified for TRAYICON cannot be loaded
      Also, fix a bug in appending a '\' to IconDirectory only if it doesn't
      already end with one, which was fortunately benign.
      Note: LoadImageComma would be simpler if we just stated that XWinrc
      paths are Cygwin paths on Cygwin, Windows paths on MinGW, but that could
      break existing .XWinrc files
      Note: Given that we can specify paths in an icon-specifier, I'm not sure
      what IconDirectory wins us.
      Fix formatting problems in man page additions
      Fix some more s/_/@/g in man pages
  10. 11 Sep, 2019 1 commit
  11. 10 Sep, 2019 1 commit
    • Carlos Garnacho's avatar
      xwayland: Allow passing a fd for set up clients · 7ad1d0d3
      Carlos Garnacho authored
      This FD also triggers the "wait for WM_S0" paths, so that the
      compositor may set up a "maintenance line" for Xwayland, for
      services that are essential to run before any client (eg. xrdb).
      Those services would use this FD, disguised as an extra display
      This -initfd can be seen as a generalization of -wm, a Wayland
      compositor may use -initfd to launch its WM and any other clients
      that should start up, or it may use -wm as a dedicated connection for
      the WM and optionally use -initfd for the misc. startup clients.
      If either of -wm or -initfd is passed, Xwayland will expect a selection
      notification on WM_S0 before incorporating the FDs in -listen to the
      poll list.
      Also, correct a minor typo in the listenfd argument output,
      give → given.
      Signed-off-by: Carlos Garnacho's avatarCarlos Garnacho <carlosg@gnome.org>
  12. 09 Sep, 2019 1 commit
    • Carlos Garnacho's avatar
      xwayland: Handle the case of windows being realized before redirection · 78cc8b6f
      Carlos Garnacho authored
      If Xwayland gets to realize a window meant for composition before the
      compositor redirected windows (i.e. redirect mode is not RedirectDrawManual
      yet), the window would stay "invisible" as we wouldn't create a
      wl_surface/wl_shell_surface for it at any later point.
      This scenario may happen if the wayland compositor sets up a X11 socket
      upfront, but waits to raise Xwayland until there are X11 clients. In this
      case the first data on the socket is the client's, the compositor can hardly
      beat that in order to redirect subwindows before the client realizes a
      In order to jump across this hurdle, allow the late creation of a matching
      (shell) surface for the WindowPtr on SetWindowPixmapProc, so it is ensured
      to be created after the compositor set up redirection.
      Signed-off-by: Carlos Garnacho's avatarCarlos Garnacho <carlosg@gnome.org>
      Reviewed-by: Michel Dänzer's avatarMichel Dänzer <mdaenzer@redhat.com>
      Reviewed-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
  13. 05 Sep, 2019 4 commits
  14. 03 Sep, 2019 1 commit
  15. 27 Aug, 2019 4 commits
  16. 26 Aug, 2019 1 commit
    • Adam Jackson's avatar
      glx: Disable GLX_EXT_import_context if !enableIndirectGLX · f8c85961
      Adam Jackson authored
      GLX_EXT_import_context allows multiple clients to share the same
      indirect context. If you can't create an indirect context, you're
      certainly not going to be able to share one. Hide the extension from the
      server string if we've disabled indirect contexts.
      This turns piglit's tests from fail to skip when indirect contexts are
      disabled. Since GLX_EXT_import_context has been supported in
      xfree86-derived servers since day 1 (it was included in the initial GLX
      code drop from SGI), this is now also a hint to the client that indirect
      contexts are unlikely to work at all.
      Reviewed-by: Michel Dänzer's avatarMichel Dänzer <michel@daenzer.net>
  17. 24 Aug, 2019 1 commit
    • Christopher Chavez's avatar
      XQuartz: translate additional mouse buttons · 4f27d1e0
      Christopher Chavez authored
      Old behavior was to translate the middle mouse button, as well as
      every other button that isn't the left or right mouse button,
      to act as the middle mouse button (2).
      New behavior is to translate only the middle mouse button to 2,
      and translate higher-numbered buttons to 8 and higher.
      This allows additional mouse buttons to behave under XQuartz
      more like they do by default under X11 on other platforms
      (e.g. Linux and BSD distributions).
      Signed-off-by: Christopher Chavez's avatarChristopher Chavez <chrischavez@gmx.us>
  18. 23 Aug, 2019 1 commit
    • Adam Jackson's avatar
      render: Break PICT_a4 · 436fd7e8
      Adam Jackson authored
      The Render protocol requires this format, but it is wrong to do so. We
      are not aware of any hardware with a real 4bpp implementation of this
      format. Some GL hardware may have GL_LUMINANCE4_ALPHA4_EXT, and may also
      be able to wire L to 1, but that would win you none of memory, quality,
      or (likely) performance over A8. Any attempt to use this format is
      therefore likely a (painful) software fallback.
      Pleasantly (and given the above, unsurprisingly) it seems to be unused
      in the wild. None of the major toolkits will try to use it, and
      rendercheck does not in fact validate that all of the "standard" picture
      formats exist.
      Drop the explicit A4 setup from picture format initialization. Note that
      the DDXes are not changed and still expose a depth-4 pixmap format, but
      we only add picture formats for True/DirectColor-credible depths (i.e.
      depth >= 15).
      Implements: xorg/proto/xorgproto!1
      Signed-off-by: Adam Jackson's avatarAdam Jackson <ajax@redhat.com>
  19. 22 Aug, 2019 1 commit
  20. 21 Aug, 2019 1 commit
    • Adam Jackson's avatar
      miext/sync: Fix needless ABI change · 194ba387
      Adam Jackson authored
      The initialized field was added in:
          commit 82f01ad7
          Author: Alex Goins <agoins@nvidia.com>
          Date:   Wed Apr 10 13:48:02 2019 -0500
              xsync: Add resource inside of SyncCreate, export SyncCreate
      But it added this field not at the end of SyncObject. It may not have
      been _usefully_ possible to create those from another extension prior to
      that commit, but that's still an ABI-incompatible change.
  21. 20 Aug, 2019 1 commit
    • Adam Jackson's avatar
      glx: Fix previous context validation in xorgGlxMakeCurrent · 95dcc81c
      Adam Jackson authored
      vnd has already verified that the context tag is valid before this gets
      called, and we only set the context tag private data to non-null for
      indirect clients. Mesa happens to be buggy and doesn't send MakeCurrent
      requests nearly as much as it should for direct contexts, but if you fix
      that, then unbinding a direct context would fail here with
      Sadly Mesa will still need to carry a workaround here for broken
      servers, but we should still fix the server.
  22. 15 Aug, 2019 5 commits
    • Olivier Fourdan's avatar
      meson/xwayland: No libdrm nor epoxy without glamor · aed62f8f
      Olivier Fourdan authored
      When building Xwayland with neither DRI nor GLamor support enabled with
      the Meson build system, the resulting binary would still link against
      libdrm and epoxy even though those are not used/needed.
      Make sure we require and link against libdrm and epoxy only if needed.
      Signed-off-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
    • Olivier Fourdan's avatar
      meson: Build miext/sync for Xwayland · e8a85ba8
      Olivier Fourdan authored
      When using the Meson build system, miext/sync would be build only for
      As a result, when building with Meson without DRI3 enabled, Xwayland
      would fail to link because `miSyncShmScreenInit()` is nowhere to be
      Make sure to build miext/sync for either DRI3 or Xwayland.
      Signed-off-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
    • Olivier Fourdan's avatar
      meson: Move requirements in a single place · c0bbc29a
      Olivier Fourdan authored
      Some modules are required in multiple places in the meson file.
      Move the actual requirements to the top of the file as a variable so
      that updating a version does not require changing the actual value in
      multiple places.
      Signed-off-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
    • Olivier Fourdan's avatar
      configure/xwayland: No libdrm nor epoxy without glamor · bf758660
      Olivier Fourdan authored
      When building Xwayland without neither DRI nor GLamor support enabled
      with the autotools build system, the resulting binary would still link
      against libdrm and epoxy even though those are not used/needed.
      Make sure we require and link against libdrm and epoxy only if needed.
      Signed-off-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
    • Adam Jackson's avatar
      composite: Be more paranoid in compDestroyDamage · 5096fcd4
      Adam Jackson authored
      Consider these two facts:
      - You can't rely on resource deletion order
      - damageDestroyWindow automatically destroys any damage listener
        connected to the doomed window
      Now consider a redirected window being destroyed. If the damage
      associated with the redirection is destroyed before the window, then
      when compFreeClientWindow tries to unredirect the window, the call to
      compSetParentPixmap may see that cw->damageRegistered is still true, and
      call DamageUnregister(NULL) (because compDestroyDamage already zeroed
      out cw->damage), and you get a backtrace that looks like:
          #6  <signal handler called>
          #7  DamageUnregister (pDamage=0x0) at damage.c:1773   <-----------------
          #8  0x000000000051f767 in compSetParentPixmap (pWin=pWin@entry=0x28489c0) at compalloc.c:646
          #9  0x000000000051fa01 in compFreeClientWindow (pWin=0x28489c0, id=<optimized out>) at compalloc.c:291
          #10 0x000000000051a499 in FreeCompositeClientWindow (value=<optimized out>, ccw...