host: the palette commands of site tabs are the host's (tab_commands, tab_run_command)

tab_commands keeps the list each site tab reported (validated by plugins::commands, accepted only
from a tab on the site's origin), clears it when a new document starts, tells the shell, and checks
the shell-only tab_run_command: only a command that tab reported, only while it is on the site.
tab_run_command joins commands::SHELL (guard checked by assert_host_guards); the app's tab_report
hands its `commands` to tab_commands::reported.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
CRTkafa 2026-10-01 14:22:00 +07:00
parent 6b37744226
commit d40bf273bd
4 changed files with 84 additions and 0 deletions

View file

@ -93,6 +93,8 @@ mod dev_commands;
#[cfg(feature = "app")]
pub mod theme_commands;
#[cfg(feature = "app")]
pub mod tab_commands;
#[cfg(feature = "app")]
pub mod alerts_commands;
#[cfg(feature = "app")]
mod backup_commands;