ext_foreign_toplevel_list_v1¤
wayland.ext_foreign_toplevel_list_v1 ¤
List toplevels
A toplevel is defined as a surface with a role similar to xdg_toplevel. XWayland surfaces may be treated like toplevels in this protocol.
After a client binds the ext_foreign_toplevel_list_v1, each mapped toplevel window will be sent using the ext_foreign_toplevel_list_v1.toplevel event.
Clients which only care about the current state can perform a roundtrip after binding this global.
For each instance of ext_foreign_toplevel_list_v1, the compositor must create a new ext_foreign_toplevel_handle_v1 object for each mapped toplevel.
If a compositor implementation sends the ext_foreign_toplevel_list_v1.finished event after the global is bound, the compositor must not send any ext_foreign_toplevel_list_v1.toplevel events.
Methods:
-
stop
–Stop sending events
-
destroy
–Destroy the ext_foreign_toplevel_list_v1 object
-
on_toplevel
–A toplevel has been created.
-
on_finished
–The compositor has finished with the toplevel manager.
events
toplevel ¤
toplevel(toplevel: ext_foreign_toplevel_handle_v1) -> None
A toplevel has been created
This event is emitted whenever a new toplevel window is created. It is emitted for all toplevels, regardless of the app that has created them.
All initial properties of the toplevel (identifier, title, app_id) will be sent immediately after this event using the corresponding events for ext_foreign_toplevel_handle_v1. The compositor will use the ext_foreign_toplevel_handle_v1.done event to indicate when all data has been sent.
finished ¤
finished() -> None
The compositor has finished with the toplevel manager
This event indicates that the compositor is done sending events to this object. The client should destroy the object. See ext_foreign_toplevel_list_v1.destroy for more information.
The compositor must not send any more toplevel events after this event.
stop ¤
stop() -> None
Stop sending events
This request indicates that the client no longer wishes to receive events for new toplevels.
The Wayland protocol is asynchronous, meaning the compositor may send further toplevel events until the stop request is processed. The client should wait for a ext_foreign_toplevel_list_v1.finished event before destroying this object.
destroy ¤
destroy() -> None
Destroy the ext_foreign_toplevel_list_v1 object
This request should be called either when the client will no longer use the ext_foreign_toplevel_list_v1 or after the finished event has been received to allow destruction of the object.
If a client wishes to destroy this object it should send a ext_foreign_toplevel_list_v1.stop request and wait for a ext_foreign_toplevel_list_v1.finished event, then destroy the handles and then this object.
on_toplevel ¤
on_toplevel(toplevel: ext_foreign_toplevel_handle_v1) -> None
A toplevel has been created.
Override to handle wayland.ext_foreign_toplevel_list_v1.events.toplevel
.
on_finished ¤
on_finished() -> None
The compositor has finished with the toplevel manager.
Override to handle wayland.ext_foreign_toplevel_list_v1.events.finished
.