Skip to content

ext_foreign_toplevel_handle_v1¤

wayland.ext_foreign_toplevel_handle_v1 ¤

A mapped toplevel

A ext_foreign_toplevel_handle_v1 object represents a mapped toplevel window. A single app may have multiple mapped toplevels.

Methods:

  • destroy

    Destroy the ext_foreign_toplevel_handle_v1 object

  • on_closed

    The toplevel has been closed.

  • on_done

    All information about the toplevel has been sent.

  • on_title

    Title change.

  • on_app_id

    app_id change.

  • on_identifier

    A stable identifier for a toplevel.

events

closed ¤

closed() -> None

The toplevel has been closed

The server will emit no further events on the ext_foreign_toplevel_handle_v1 after this event. Any requests received aside from the destroy request must be ignored. Upon receiving this event, the client should destroy the handle.

Other protocols which extend the ext_foreign_toplevel_handle_v1 interface must also ignore requests other than destructors.

done ¤

done() -> None

All information about the toplevel has been sent

This event is sent after all changes in the toplevel state have been sent.

This allows changes to the ext_foreign_toplevel_handle_v1 properties to be atomically applied. Other protocols which extend the ext_foreign_toplevel_handle_v1 interface may use this event to also atomically apply any pending state.

This event must not be sent after the ext_foreign_toplevel_handle_v1.closed event.

title ¤

title(title: str) -> None

Title change

The title of the toplevel has changed.

The configured state must not be applied immediately. See ext_foreign_toplevel_handle_v1.done for details.

app_id ¤

app_id(app_id: str) -> None

app_id change

The app id of the toplevel has changed.

The configured state must not be applied immediately. See ext_foreign_toplevel_handle_v1.done for details.

identifier ¤

identifier(identifier: str) -> None

A stable identifier for a toplevel

This identifier is used to check if two or more toplevel handles belong to the same toplevel.

The identifier is useful for command line tools or privileged clients which may need to reference an exact toplevel across processes or instances of the ext_foreign_toplevel_list_v1 global.

The compositor must only send this event when the handle is created.

The identifier must be unique per toplevel and it's handles. Two different toplevels must not have the same identifier. The identifier is only valid as long as the toplevel is mapped. If the toplevel is unmapped the identifier must not be reused. An identifier must not be reused by the compositor to ensure there are no races when sharing identifiers between processes.

An identifier is a string that contains up to 32 printable ASCII bytes. An identifier must not be an empty string. It is recommended that a compositor includes an opaque generation value in identifiers. How the generation value is used when generating the identifier is implementation dependent.

destroy ¤

destroy() -> None

Destroy the ext_foreign_toplevel_handle_v1 object

This request should be used when the client will no longer use the handle or after the closed event has been received to allow destruction of the object.

When a handle is destroyed, a new handle may not be created by the server until the toplevel is unmapped and then remapped. Destroying a toplevel handle is not recommended unless the client is cleaning up child objects before destroying the ext_foreign_toplevel_list_v1 object, the toplevel was closed or the toplevel handle will not be used in the future.

Other protocols which extend the ext_foreign_toplevel_handle_v1 interface should require destructors for extension interfaces be called before allowing the toplevel handle to be destroyed.

on_closed ¤

on_closed() -> None

The toplevel has been closed.

Override to handle wayland.ext_foreign_toplevel_handle_v1.events.closed.

on_done ¤

on_done() -> None

All information about the toplevel has been sent.

Override to handle wayland.ext_foreign_toplevel_handle_v1.events.done.

on_title ¤

on_title(title: str) -> None

Title change.

Override to handle wayland.ext_foreign_toplevel_handle_v1.events.title.

on_app_id ¤

on_app_id(app_id: str) -> None

app_id change.

Override to handle wayland.ext_foreign_toplevel_handle_v1.events.app_id.

on_identifier ¤

on_identifier(identifier: str) -> None

A stable identifier for a toplevel.

Override to handle wayland.ext_foreign_toplevel_handle_v1.events.identifier.