Module window_slots
Expand description
What a desktop keeps of the slots its apps put in their windows’ bars
(crate::window_toolbar), and how it shows them: every desktop, the
session’s shell and the browser’s alike, holds one WindowSlots.
An app reaches its window’s bar one of two ways:
- in a process of its own, over its connection to the desktop: the
host passes on what it declared (
WindowSlots::declare,WindowSlots::offer) and sends what the person did back on the same connection (WindowSlots::take_outbox); - in the host’s own process (every app of the browser desktop, the
shell’s Terminal), on the window the host shows it in
(
crate::hosted_window::HostedWindow):WindowSlots::sync_hostedreads each window’s slots and hands its app what the person did.
Either way WindowSlots::sync_groups puts each tab’s slots in its
window group’s bar and takes what the person did there.
The desktop adds items of its own to a window’s overflow menu (“Share to
channel…”, WindowSlots::set_host_items): they join the slots its app
declared, or stand alone in a menu button at the end of the title row of
a window whose app declared none, and what the person chose of them comes
back to the desktop (WindowSlots::take_host_actions), never to the
app.
Structs§
- Hosted
Sync - What
WindowSlots::sync_hostedfound. - Window
Slots - Every tab’s declared slots and the connection of the app that declared them, and what goes back to the apps on the next pump.
Constants§
- HOST_
ACTION_ PREFIX - What the ids of the desktop’s own menu items start with: an app’s never do, so a choice of one reaches the desktop alone.
Type Aliases§
- TabId
- A desktop tab’s id.