Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • mutter mutter
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 1.2k
    • Issues 1.2k
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 126
    • Merge requests 126
  • 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
  • GNOMEGNOME
  • muttermutter
  • Merge requests
  • !1993

Fix popup remapping and add popup + subsurface test

  • Review changes

  • Download
  • Patches
  • Plain diff
Merged Jonas Ådahl requested to merge jadahl/mutter:wip/subsurface-in-remapped-popup-test into main Sep 07, 2021
  • Overview 5
  • Commits 12
  • Pipelines 18
  • Changes 15

Trying to reproduce #1828 (closed) I suspected it was fixed by a recent subsurface fix, so I added a test case on top of a commit before those changes.

The test case added in this merge request reproduces said bug. The same test running on top of 41.rc no longer reproduce, but instead make the test case client terminate with an error.

The reason for the failure was that mutter believed the popup had been manually dismissed (committed NULL buffer), which was true, but that should not stop the same wl_surface for being remapped again with a new xdg_popup object. xdg-shell/popup: Reset 'dismissed-by-client' state when remapping intends to address this issue.

Thus, with both dd416dd3 (window-actor/wayland: Remove subsurface actors on dispose, from !1958 (merged)), as well as xdg-shell/popup: Reset 'dismissed-by-client from this MR, the test passes.

While at it, I split out the wayland test cases into its own executable using the headless native backend mode, as that was necessary for implementing the test case, which uses a virtual pointer device.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: wip/subsurface-in-remapped-popup-test