Skip to main content

Module window_well

Module window_well 

Expand description

WindowWell: where a place’s window goes (docs/designs/app-language/shell.md §8).

A shell view never draws a place’s content: it puts a well where the content goes, and the app’s own window shows there, composited above the desk layer. The well draws nothing and takes no input. After each layout, and on each frame an enclosing component moves it (a canvas’s pan and zoom, a strip row’s scroll), it reports its rectangle in layout coordinates to the host’s Wells, keyed by the place it stands for. The window policy that places windows reads those rectangles, so a well that moves without changing size moves its window in the same frame.

The well is a leaf that fills the room its frame leaves it: a frame’s bar and chrome stand outside it, in the layout around it.

Structs§

Installed
The wells installed by install, restored when dropped.
Wells
Where the wells of a tree on this thread report, shared with the window policy that places the windows they stand for: the same handle, so a well that moves moves its window.
WindowWell
See the module docs.
WindowWellProps
A place’s window, at the rectangle the well stands at: the app’s own window shows there, so the well draws nothing and takes no input.

Functions§

install
Report every well laid out on this thread from now on into wells, until the returned guard is dropped: how a host shares one handle with the policy placing its windows. A guard that is already installed nests and restores the one before.