DroppyKitSurfaceBridge

Where DroppyPanelSurface gets the host's own surface.

enum DroppyKitSurfaceBridge

Same shape and same reasoning as DroppyKitThemeBridge: the first installation wins, so a droplet loaded after launch cannot replace it.

Type properties

panelActivationProvider

@MainActor static var panelActivationProvider: ((NSWindow, NSRunningApplication?) -> DroppyPanelActivation)? { get }

The host's activation for a droplet's panel. nil outside Droppy.

panelSurfaceProvider

@MainActor static var panelSurfaceProvider: ((CGFloat) -> AnyView)? { get }

The host's launcher surface for a corner radius. nil outside Droppy.

settingsToolbarPillProvider

@MainActor static var settingsToolbarPillProvider: ((AnyView) -> AnyView)? { get }

The host's toolbar pill around a control. nil outside Droppy.

settingsToolbarSearchProvider

@MainActor static var settingsToolbarSearchProvider: ((Binding<String>, String) -> AnyView)? { get }

The host's own toolbar search, for DropletSettingsToolbarSearchField. nil outside Droppy.

shortcutRecorderProvider

@MainActor static var shortcutRecorderProvider: ((DroppyShortcutRecorder.Configuration) -> AnyView)? { get }

The host's recorder for a configuration. nil outside Droppy.

Type methods

installConfirmationDialogProvider(_:)

@discardableResult @MainActor static func installConfirmationDialogProvider(_ provider: @escaping (String, String, String, String) -> Bool) -> Bool

Installs the host's confirmation presenter before loading droplets. First installation wins. The presenter must return true only for the explicit confirm action.

installPanelActivationProvider(_:)

@discardableResult @MainActor static func installPanelActivationProvider(_ provider: @escaping (NSWindow, NSRunningApplication?) -> DroppyPanelActivation) -> Bool

Installs the host's panel activation. Host processes only, once, at launch, before any droplet is loaded (DroppyKit 1.15.0).

  • Returns: true when this call installed it, false when one was already installed and nothing changed.

installPanelSurfaceProvider(_:)

@discardableResult @MainActor static func installPanelSurfaceProvider(_ provider: @escaping (CGFloat) -> AnyView) -> Bool

Installs the host's surface. Host processes only, once, at launch, before any droplet is loaded.

  • Returns: true when this call installed it, false when one was already installed and nothing changed.

installSettingsToolbarPillProvider(_:)

@discardableResult @MainActor static func installSettingsToolbarPillProvider(_ provider: @escaping (AnyView) -> AnyView) -> Bool

Installs the host's Settings toolbar pill. Host processes only, once, at launch, before any droplet is loaded (DroppyKit 1.18.0).

  • Returns: true when this call installed it, false when one was already installed and nothing changed.

installSettingsToolbarSearchProvider(_:)

@discardableResult @MainActor static func installSettingsToolbarSearchProvider(_ provider: @escaping (Binding<String>, String) -> AnyView) -> Bool

Installs the host's Settings toolbar search: given the page's text and its prompt, the view that makes the host show its native search for them. Host processes only, once, at launch, before any droplet is loaded.

  • Returns: true when this call installed it, false when one was already installed and nothing changed.

installShortcutRecorderProvider(_:)

@discardableResult @MainActor static func installShortcutRecorderProvider(_ provider: @escaping (DroppyShortcutRecorder.Configuration) -> AnyView) -> Bool

Installs the host's recorder. Host processes only, once, at launch, before any droplet is loaded (DroppyKit 1.14.0).

  • Returns: true when this call installed it, false when one was already installed and nothing changed.