ExpandedSurfaceHostSuppression
Which of the host's own expanded-shelf behaviors stand down while a takeover is on screen.
struct ExpandedSurfaceHostSuppression
Every option here is a rule the shipping host used to apply by asking one hardcoded question: "is the transcription surface up right now". Seven separate sites asked it, each with its own copy of the answer, and none of them could be reused by a second takeover. Declaring the set turns those seven questions into one descriptor field, which is the same trade ShelfWidgetDescriptor makes for widget layout: the host keeps one algorithm and the droplet supplies parameters.
Suppression is a request like everything else here. A host is free to decline one, and a host that has never heard of an option simply does not act on it.
Initializers
init(rawValue:)
init(rawValue: Int)
Creates a suppression set from raw bits.
Type properties
autoCollapse
static let autoCollapse: ExpandedSurfaceHostSuppression
The host's auto-collapse timer. Suppress this for a surface the user is reading or dictating into rather than pointing at: the timer measures how long the pointer has been outside the shelf, and a surface nobody needs to hover collapses out from under them.
favoritesBar
static let favoritesBar: ExpandedSurfaceHostSuppression
The favorites bar along the bottom of the expanded shelf.
floatingNavLane
static let floatingNavLane: ExpandedSurfaceHostSuppression
The floating navigation lane that rides the shelf's bottom edge.
none
static let none: ExpandedSurfaceHostSuppression
Nothing stands down: your content shares the shelf with the host's.
notificationBanners
static let notificationBanners: ExpandedSurfaceHostSuppression
Notification banners, which would otherwise arrive over your content.
outsideClickDismissal
static let outsideClickDismissal: ExpandedSurfaceHostSuppression
Dismissal on a click outside the shelf.
shelfWidgets
static let shelfWidgets: ExpandedSurfaceHostSuppression
The host's own shelf widgets, which would otherwise render behind or beside your content.
swipeGestures
static let swipeGestures: ExpandedSurfaceHostSuppression
The host's trackpad swipe gestures over the shelf.
takeover
static let takeover: ExpandedSurfaceHostSuppression
The full set, for a surface that genuinely owns the shelf until it is done: the host's content is hidden and none of its dismissal paths fire.
Ask for this only when your surface has its own visible way out. A takeover with no close affordance and no host dismissal path is a shelf the user cannot get rid of, and review rejects it.
Properties
rawValue
let rawValue: Int
The raw bit set.