NodeTransferActivity

Moves node identities between two paired devices, in either direction (§DM-P4b).

Declared in src/libs/libnode/node/activities/NodeTransferActivity.hpp
Inherits octomy::activity::PageActivity
Group node

Detailed description

This one activity replaces the former separate sender and receiver screens. Both devices open it, and each can send its node identities to the other once both are in transfer mode and the users confirm that the codes match. The activity is the mode: pushing it enters transfer mode on the node's NidTransferModeStateMachine, and any way out of it leaves the mode (§DM-P4b-11b).

A page stack follows the state machine:

  • Announced: this device's code, the discovered devices, and Cancel.
  • Confirming: both codes, with Cancel and Codes match.
  • Active: the local identities, each with Send, and the incoming requests, each with Accept and Reject.
  • Terminal: the cancelled or failed message, and Return.

A ConnectionStatusWidget at the top lets the user fix the connection without leaving. The widgets are built on the first push, after configure() has supplied the Node. The first push in a process also clears stale pending-transfer markers that the older transfer code left (§DM-P4b-11c).

The agent, remote and hub windows each register it with their activity loader, and NodeLobbyActivity opens it.

See also NodeLobbyActivity.

In this section