ExpandedSurfacePresentationRequest
A request to take the expanded shelf over with one of your surfaces.
struct ExpandedSurfacePresentationRequest
Initializers
init(surfaceID:displayID:opensShelf:autoCollapseGrace:triggersHaptic:)
init(surfaceID: ExpandedSurfaceID, displayID: UInt32? = nil, opensShelf: Bool = true, autoCollapseGrace: TimeInterval? = nil, triggersHaptic: Bool = true)
Creates a request.
Properties
autoCollapseGrace
let autoCollapseGrace: TimeInterval?
How long the host holds the shelf open against its own auto-collapse timer, in seconds. nil uses the host's standard grace period, and it is ignored entirely by a descriptor that suppresses autoCollapse.
displayID
let displayID: UInt32?
Which display to present on. nil lets the host choose, which is almost always what you want: it resolves the same display its own surfaces would open on, following the pointer.
opensShelf
let opensShelf: Bool
Whether the host should open its shelf if it is currently closed.
true is the takeover shape: the user pressed a shortcut and expects something to appear. false is for a surface that only makes sense inside a shelf the user already opened, and makes the call a no-op rather than a summons when the shelf is closed.
surfaceID
let surfaceID: ExpandedSurfaceID
The surface to present. Must be an id the droplet publishes through expandedSurfaces; the host refuses ids it does not recognize.
triggersHaptic
let triggersHaptic: Bool
True when the presentation should fire the host's standard open haptic.