DropletNotchSurfaceService

Presents and dismisses expanded (takeover) surfaces on the notch.

@MainActor protocol DropletNotchSurfaceService : AnyObject

Requires the expanded-surface capability.

Properties

didChange

@MainActor var didChange: AnyPublisher<Void, Never> { get }

Fires when any expanded surface is presented or dismissed.

expandedState

@MainActor var expandedState: DropletExpandedShelfState { get }

Every expanded surface currently on screen, including other droplets'.

Methods

dismissExpandedSurface(_:)

@MainActor func dismissExpandedSurface(_ id: ExpandedSurfaceID)

Takes down a surface this droplet presented.

presentExpandedSurface(_:)

@discardableResult @MainActor func presentExpandedSurface(_ request: ExpandedSurfacePresentationRequest) -> ExpandedSurfacePresentation?

Presents an expanded surface this droplet declared. Returns the live presentation, or nil when the host refused.