fn opener_allows(
state: &AppState,
block: Option<&Block>,
agent_id: &str,
pane: &str,
) -> Result<(), (StatusCode, String)>Expand description
A popup pane (browser:popup_of) is driven as part of its opener: while
the opener exists, the agent must still own it (the person’s Take over on
the opener ends its hold on the popups it opened too), and the opener
must not be waiting on the person (a hand-off there pauses its popups).
A popup whose opener was closed stands on its own.