Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • W wayland-protocols
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 111
    • Issues 111
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 56
    • Merge requests 56
  • 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
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • waylandwayland
  • wayland-protocols
  • Merge requests
  • !187

Add ext-foreign-toplevel-list protocol

  • Review changes

  • Download
  • Patches
  • Plain diff
Merged i509VCB requested to merge i509VCB/wayland-protocols:ext-foreign-toplevel-info into main Jan 21, 2023
  • Overview 109
  • Commits 27
  • Pipelines 26
  • Changes 3

This protocol provides a subset of the wlr-foreign-toplevel-management protocol. In particular this protocol provides a way for privileged clients to get a handle to a toplevel surface that may exist in another process and use the handle in other extension protocols.

This protocol is intentionally minimal as further information to describe a toplevel should be implemented with extension interfaces. For example, a protocol which may manage toplevels would use the handles defined in this protocol to reference the toplevel to set the state of. Another example use case is specifying a toplevel to capture the content of with a screencopy protocol.

An extension protocol to describe the state of a toplevel is being drafted here and uses this protocol: !196

Features provided in the wlr-foreign-toplevel-management, and the proposed ext-workspace protocols will be added in a future extension protocol and will use the handle type defined in this protocol.

  • Review: @emersion
  • 2 implementations:
    • Client: lswt: https://git.sr.ht/~leon_plickat/lswt/tree/toplevel-info
    • Server: cosmic: https://github.com/pop-os/cosmic-comp/pull/76
  • 2 ACKs:
    • @emersion
    • @Drakulix

From the past revisions of the protocol, the following has been done:

  • Add destructor requests to all objects
  • Describe how extension protocols should interface with the base protocol
  • Restrict the global to a single instance per client.
  • Forbid having toplevel handles outlive the global (the handles become inert anyways)
  • RFC 2119ify the protocol documentation
Edited Apr 17, 2023 by Simon Ser
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: ext-foreign-toplevel-info