pop-os / cosmic-protocols

Addtional wayland-protocols used by the COSMIC desktop environment
27 stars 6 forks source link

toplevel-info/mgmt: various updates #29

Closed Drakulix closed 2 weeks ago

Drakulix commented 3 weeks ago

cc @ids1024 @wash2

This bases zcosmic_toplevel_info_unstable_v1 on ext_foreign_toplevel_list_v1, by adding a new get_cosmic_toplevel request and deprecating all events/requests replaced by existing ext_foreign_toplevel_list_v1 events/requests.

It also adds a global done-event meant to aid tracking e.g. focus changes for https://github.com/pop-os/cosmic-launcher/pull/150.

Lastly it adds our new sticky window state for both zcosmic_toplevel_info_unstable_v1 and zcosmic_toplevel_management_unstable_v1. I don't think we have a concrete use-case for this, but I figured it wouldn't hurt.

ids1024 commented 3 weeks ago

This seems good, and matches what I was imagining if we want to avoid a breaking protocol update (which I guess would only allow cleaning up the deprecated events; and not having to implement the older version in the compositor).

We can update cctk to handle this protocol together with ext-foreign-toplevel-list-v1 (similarly to how sctk handles wl_output/xdg_output). Maybe with just a hard dependency on the new version of the protocol, as long as we're careful to land this in the compositor before making use of it elsewhere.