AboutSupportDeveloper GuideVersion 15.0.8

Interface WorkspacePlatformProvider

Hierarchy

  • PlatformProvider
    • WorkspacePlatformProvider

Methods

  • Handles requests to apply a snapshot to the current Platform.

    Parameters

    • payload: ApplySnapshotPayload

      Payload containing the snapshot to be applied, as well as any options.

    • Optional identity: Identity

      Identity of the entity that called Platform#applySnapshot Platform.applySnapshot. Undefined if called internally (e.g. when opening the initial snapshot).

    Returns Promise<void>

  • Applies a workspace to the user's desktop. Makes that workspace the active workspace.

    Parameters

    Returns Promise<boolean>

    true if the workspace was applied, false if the workspace was not applied.

  • It takes in an array of Views and returns an object specifying which of them are trying to prevent an unload and which are not.

    Parameters

    • views: View[]

      Array of Views

    Returns Promise<ViewStatuses>

  • Closes a view

    Parameters

    • payload: CloseViewPayload

      Specifies the target view to be closed.

    • Optional identity: Identity

      Identity of the entity that called Platform#closeView Platform.closeView.

    Returns Promise<any>

  • Closes a Window. By default it will fire any before unload handler set by a View in the Window. This can be disabled by setting skipBeforeUnload in the options object of the payload. This method is called by Platform#closeWindow Platform.closeWindow.

    Parameters

    • payload: CloseWindowPayload

      Object that contains the Window Identity and related options.

    • callerIdentity: Identity

    Returns Promise<void>

  • Implementation for creating a saved page in persistent storage.

    Parameters

    Returns Promise<void>

  • Implementation for creating a saved workspace in persistent storage.

    Parameters

    Returns Promise<void>

  • Creates a new view and attaches it to a specified target window.

    Parameters

    • payload: CreateViewPayload

      Creation options for the new view.

    • identity: Identity

      Identity of the entity that called Platform#createView Platform.createView.

    Returns Promise<View>

  • Handles requests to create a window in the current platform.

    Parameters

    • options: PlatformWindowCreationOptions
    • Optional identity: Identity

      If Platform#createWindow Platform.createWindow was called, the identity of the caller will be here. If createWindow was called as part of applying a snapshot or creating a view without a target window, identity will be undefined.

    Returns Promise<_Window>

  • Implementation for deleting a saved page in persistent storage.

    Parameters

    • id: string

      of the id of the page to delete.

    Returns Promise<void>

  • Implementation for deleting a saved workspace in persistent storage.

    Parameters

    • id: string

      of the id of the workspace to delete.

    Returns Promise<void>

  • Handles requests to fetch manifests in the current platform.

    Parameters

    • payload: FetchManifestPayload

      Payload containing the manifestUrl to be fetched.

    • callerIdentity: Identity

      If Platform#fetchManifest Platform.fetchManifest was called, the identity of the caller will be here. If fetchManifest was called internally, callerIdentity will be the provider's identity.

    Returns Promise<any>

  • Implementation for getting the dock provider from persistent storage.

    Parameters

    • id: string

      The id of the dock provider to get.

    Returns Promise<DockProviderConfigWithIdentity>

  • Implementation for getting a single page in persistent storage.

    Parameters

    • id: string

    Returns Promise<Page>

  • Implementation for getting a list of saved pages from persistent storage.

    Parameters

    • Optional query: string

      an optional query.

    Returns Promise<Page[]>

  • Implementation for getting a single workspace in persistent storage.

    Parameters

    • id: string

    Returns Promise<Workspace>

  • Implementation for getting a list of saved workspaces from persistent storage.

    Parameters

    • Optional query: string

      an optional query.

    Returns Promise<Workspace[]>

  • Gets the current state of windows and their views and returns a snapshot object containing that info.

    Parameters

    • payload: undefined

      Undefined unless you've defined a custom getSnapshot protocol.

    • identity: Identity

      Identity of the entity that called Platform#getSnapshot Platform.getSnapshot.

    Returns Promise<Snapshot>

    Snapshot of current platform state.

  • Handle the decision of whether a Window or specific View should close when trying to prevent an unload. This is meant to be overridden. Called in PlatformProvider#closeWindow PlatformProvider.closeWindow. Normally you would use this method to show a dialog indicating that there are Views that are trying to prevent an unload. By default it will always return all Views passed into it as meaning to close.

    Parameters

    • payload: ViewsPreventingUnloadPayload

    Returns Promise<BeforeUnloadUserDecision>

    Tutorial

    PlatformProvider.getUserDecisionForBeforeUnload

  • Gets all the Views attached to a Window that should close along with it. This is meant to be overridable in the case where you want to return other Views that may not be attached to the Window that is closing.

    Parameters

    • windowId: Identity

    Returns Promise<View[]>

  • Handles requests to get a window's context. target may be a window or a view. If it is a window, that window's customContext will be returned. If it is a view, the customContext of that view's current host window will be returned.

    Parameters

    • payload: GetWindowContextPayload

      Object containing the requested context update, the target's identity, and the target's entityType.

    • Optional identity: Identity

      Identity of the entity that called Platform#getWindowContext Platform.getWindowContext. Undefined when getWindowContext is called internally (e.g. when getting a window's context for the purpose of raising a "host-context-changed" event on a reparented view).

    Returns Promise<any>

    The new context.

  • Implementation for handling Workspace analytics events

    Parameters

    Returns Promise<void>

  • Handles the closing of a Window and/or its Views. Called in PlatformProvider#closeWindow PlatformProvider.closeWindow. The return of PlatformProvider#getUserDecisionForBeforeUnload PlatformProvider.getUserDecisionForBeforeUnload is passed into this method.

    Parameters

    • windowId: Identity
    • userDecision: BeforeUnloadUserDecision

      Decision object

    Returns Promise<void>

  • Parameters

    • payload: LaunchIntoPlatformPayload

    Returns Promise<void>

  • Called when a window's customContext is updated. Responsible for raising the host-context-updated event on that window's child views.

    Parameters

    • payload: WindowOptionsChangedEvent

      The event payload for the window whose context has changed. The new context will be contained as payload.diff.customContext.newVal.

    Returns Promise<HostContextChangedPayload>

    The event that it raised.

  • Implementation for showing a global context menu given a menu template, handler callback, and screen coordinates. For an example of overriding, see WorkspacePlatformOverrideCallback.

    Parameters

    • req: OpenGlobalContextMenuPayload

      the payload received by the provider call

    • callerIdentity: Identity

      OF identity of the entity from which the request originated

    Returns Promise<void>

  • Implementation for showing a page tab context menu given a menu template, handler callback, and screen coordinates. For an example of overriding, see WorkspacePlatformOverrideCallback.

    Parameters

    • req: OpenPageTabContextMenuPayload

      the payload received by the provider call

    • callerIdentity: Identity

      OF identity of the entity from which the request originated

    Returns Promise<void>

  • Implementation for showing a context menu for save button given a menu template, handler callback, and screen coordinates. For an example of overriding, see WorkspacePlatformOverrideCallback.

    Parameters

    • req: OpenSaveButtonContextMenuPayload

      the payload received by the provider call

    • callerIdentity: Identity

      OF identity of the entity from which the request originated

    Returns Promise<void>

  • Implementation for showing a view tab context menu given a menu template, handler callback, and screen coordinates. For an example of overriding, see WorkspacePlatformOverrideCallback.

    Parameters

    • req: OpenViewTabContextMenuPayload

      the payload received by the provider call

    • callerIdentity: Identity

      OF identity of the entity from which the request originated

    Returns Promise<void>

  • Called when a snapshot is being applied and some windows in that snapshot would be fully or partially off-screen. Returns an array of windows with modified positions, such that any off-screen windows are positioned in the top left corner of the main monitor.

    Parameters

    • snapshot: Snapshot

      The snapshot to be applied.

    • outOfBoundsWindows: WindowCreationOptions[]

      An array of WindowOptions for any windows that would be off-screen.

    Returns Promise<WindowCreationOptions[]>

    An array of WindowOptions with their position modified to fit on screen.

  • Closes the current Platform and all child windows and views.

    Parameters

    • payload: undefined

      Undefined unless you have implemented a custom quite protocol.

    • identity: Identity

      Identity of the entity that called Platform#quit Platform.quit.

    Returns Promise<void>

  • Replaces a Platform window's layout with a new layout. Any views that were in the old layout but not the new layout will be destroyed.

    Parameters

    • payload: ReplaceLayoutPayload

      Contains the target window and an opts object with a layout property to apply.

    • Optional identity: Identity

      Identity of the entity that called Platform#replaceLayout Platform.replaceLayout. Undefined if replaceLayout is called internally (e.g. while applying a snapshot).

    Returns Promise<void>

  • Parameters

    • payload: ReplaceViewPayload
    • Optional identity: Identity

    Returns Promise<void>

  • Implementation for saving a dock provider config to persistent storage.

    Parameters

    • config: DockProviderConfigWithIdentity

      The new dock config to save to persistent storage.

    Returns Promise<void>

  • Implementation for setting selected theme scheme.

    Parameters

    Returns Promise<void>

  • Handles requests to set a window's context. target may be a window or a view. If it is a window, that window's customContext will be updated. If it is a view, the customContext of that view's current host window will be updated.

    Parameters

    • payload: SetWindowContextPayload

      Object containing the requested context update, the target's identity, and the target's entityType.

    • Optional identity: Identity

      Identity of the entity that called Platform#setWindowContext Platform.setWindowContext. Undefined if setWindowContext is called internally (e.g. while applying a snapshot).

    Returns Promise<any>

    The new context.

  • Implementation for updating a saved page in persistent storage.

    Parameters

    Returns Promise<void>

  • Implementation for updating a saved workspace in persistent storage.

    Parameters

    Returns Promise<void>