Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • xserver xserver
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 924
    • Issues 924
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 131
    • Merge requests 131
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • xorgxorg
  • xserverxserver
  • Merge requests
  • !203

Handle surface creation if client comes up before compositor

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Carlos Garnacho requested to merge carlosg/xserver:xwayland-client-before-compositor into master May 21, 2019
  • Overview 39
  • Commits 3
  • Pipelines 8
  • Changes 2

Patches originally posted at https://lists.x.org/archives/xorg-devel/2019-January/057865.html.

In the case the compositor wants to handle on-demand startup of Xwayland, it would typically set up a display socket on behalf of Xwayland, listen for incoming data, and spawn Xwayland whenever it has to handle incoming requests from a launched X client.

Xwayland usually expects that the compositor sets itself as a X11 compositor beforehand, and client windows in need of a backing wl(_shell)_surface get mapped after this. However in this situation, the socket is already filled up with client requests, and the compositor cannot beat it at setting itself up. These patches aim to handle either order.

Note: The original patch discussion drifted into allowing an arbitrary set of clients (compositor, xrdb, gnome-settings-daemon, ...) to set themselves up before allowing the spawned client to talk with the server. I think that would be nice to handle eventually (although seems non-trivial), but also feel it's somewhat independent of this event ordering issue, so is not handled ATM.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: xwayland-client-before-compositor