Skip to content
GitLab
  • Menu
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 884
    • Issues 884
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 103
    • Merge requests 103
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & 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
  • xorg
  • xserverxserver
  • Merge requests
  • !890

Xwayland: Add "RANDR Emulation" property

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Olivier Fourdan requested to merge ofourdan/xserver:randr-emulation into master Apr 04, 2022
  • Overview 4
  • Commits 2
  • Pipelines 5
  • Changes 2

When RANDR is emulated as with Xwayland, the actual output configuration does not change as RANDR is emulated using viewports.

As a result, changes to the CRTC may be skipped, resulting in the configuration being (wrongly) assumed to be unchanged.

Add a new output property "RANDR Emulation" that the DDX can set to force RRCrtcSet() to reconfigure the CRTC regardless of the change.

Set the property "RANDR Emulation" on all Xwayland outputs to make sure the optimizations in RRCrtcSet() get skipped and Xwayland can receive and act upon the client request.

Signed-off-by: Olivier Fourdan ofourdan@redhat.com Closes: #1305 (closed)

⚠ This is a hack, I know and should be ashamed, but isn't it the case with this all XRandR emulation in Xwayland? Main benefit of this approach is to avoid breaking the API for something which very specific and and a bit of corner case. As a bonus, the output property can be used by X11 clients to tell whether XRandR is real or just emulated.

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: randr-emulation