Skip to main content

Module remote_actions

Module remote_actions 

Expand description

An application’s own client for the session’s action door.

RemoteActions lets an app read the action catalogue and invoke published actions through the session broker — the same door the palette, scripts and agents use. The broker decides every request for the application under its own identity: it reaches what it owns (its own surface, and actions published under its own package id) as the person using it; reading the catalogue needs the manifest’s [actions] query, and invoking another app’s action needs [actions] invoke plus a workspace grant to the app. Nothing here widens that: the client only carries requests and answers.

Answers arrive as LocalState values, so a bound view updates and an idle window wakes when one lands. A root that owns a client returns it from Widget::collaborative_mut (or forwards to it), which is how its requests reach the connection and the answers come back.

RemoteActions::with_host serves the same client from an in-process ActionHost instead, for tests and embedded hosts.

Structs§

RemoteActions
An application’s client for the session’s action door. Clones share one client.
RemoteActionsGuard
Keeps a RemoteActions::enter host current on this thread.

Enums§

CancellationCall
Receipt for a request to cancel a running invocation. Acknowledgement is not a terminal invocation outcome; callers must keep observing the original InvocationCall until it reports Cancelled or another terminal state.
RemoteCall
Where one request stands.

Type Aliases§

CatalogueCall
A catalogue read: every page of one query, gathered.
InvocationCall
An invocation: its latest lifecycle update.