Class display_manager has a single instance @display_manager,
created at boot time. Its responsibilities are:
- display_manager <-
members: chain
-
Chain of currently attached
display objects. Normally holds
just @display
on a single-monitor setup; gains and loses entries as monitors are
hotplugged.
- display_manager <->
test_queue: bool
-
When @on,
redraw passes are interrupted whenever events become available, yielding
faster perceived response while typing or dragging. Default is @on
everywhere.
- display_manager <->
focus_message: code*
-
Optional code object
invoked with the frame that gained keyboard focus. Used by tools (e
.g.
the symbol picker) to track the active window without polling.
- display_manager ->initialise:
-
Create the manager. Called once at boot to build
@display_manager;
not used directly.
- display_manager ->append: display
-
Attach a new display to the manager. Called by
display’s
constructor; applications normally do not invoke this.
- display_manager ->redraw:
-
Flush all pending changes to the screen. Called from the top-level event
loop to repaint windows queued in
@changed_windows; may be overridden for special event-loop
hooks.
- See also
-
- display
->flush
- display->synchronise
- graphical->compute
- display_manager ->has_visible_frames:
-
Succeeds if any attached display has at least one visible frame (used to
decide when the application can exit).
- display_manager <-contains: -> chain
-
Equivalent to display_manager
<-members:
chain holding every currently attached
display.
- display_manager <-primary: -> display
-
The display the OS designates as primary. Falls back to the first member
when no primary is set.
- display_manager <-current: -> display
-
The display that received the last event, or display_manager
<-primary
when no event has happened yet. Use this when you need to open a new
frame "where the user is".
- display_manager <-member: name
|1.. -> display
-
Look up a display by its display_manager
<-name
or display_manager<-number.
- display_manager <-window_of_last_event: -> window
-
Find the window
object that received the last event. Fails if that window has been
destroyed. Used internally to choose the first window to repaint;
available for similar scheduling tasks in user code.