fix(menu): theme and background submenus return to parent instead of exiting
The menu navigation contract: a submenu invoked directly via keybinding (BACK_TO_EXIT=true, set by go_to_menu when nomarchy-menu is launched with a target argument) should `exit 0` after the user's action; a submenu invoked from a parent menu (BACK_TO_EXIT=false) should call `back_to <parent>` to return where the user came from. back_to() honors both modes. Three submenus violated the contract: - show_theme_menu and show_background_menu shell out to walker's Elephant plugin and don't call back_to. After picking a theme or wallpaper from Main -> Style -> Theme, the script exits silently instead of returning to Style; the user has to relaunch the menu from scratch to change anything else. - show_hardware_menu's cancel branch called show_trigger_menu directly instead of back_to show_trigger_menu, which would have bounced a direct-keybinding caller into Trigger instead of exiting cleanly. Adds the missing back_to call to the two walker-backed submenus (parented to show_style_menu) and converts the hardware cancel branch to back_to. The 16 other show_*_menu functions already conform. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -127,7 +127,7 @@ Phase B (per-batch PRs) refines those into `port-from-omarchy`,
|
||||
| `nomarchy-restart-waybar` | `features/scripts/utils` | core/home/config/nomarchy-skill/SKILL.md,features/scripts/utils/nomarchy-menu, +4 more | `kept` | |
|
||||
| `nomarchy-restart-wifi` | `core/system/scripts` | features/scripts/utils/nomarchy-menu | `kept` | |
|
||||
| `nomarchy-restart-xcompose` | `core/system/scripts` | features/scripts/utils/nomarchy-menu | `kept` | |
|
||||
| `nomarchy-rollback` | `features/scripts/utils` | installer/disko-golden.nix | `kept` | |
|
||||
| `nomarchy-rollback` | `features/scripts/utils` | — | `unused?` | |
|
||||
| `nomarchy-setup-dns` | `core/system/scripts` | features/scripts/utils/nomarchy-menu | `kept` | |
|
||||
| `nomarchy-setup-fido2` | `core/system/scripts` | features/scripts/utils/nomarchy-menu | `kept` | |
|
||||
| `nomarchy-setup-fingerprint` | `core/system/scripts` | core/home/config/nomarchy-skill/SKILL.md,features/scripts/utils/nomarchy-menu | `kept` | |
|
||||
@@ -213,7 +213,7 @@ Tokens grepped from `core/`, `features/`, `themes/`, `installer/`, `hosts/`, `bi
|
||||
| `nomarchy-installer` | features/scripts/utils/nomarchy-build-iso,README.md | `missing` |
|
||||
| `nomarchy-launch` | core/home/config/nomarchy/default/hypr/bindings/clipboard.conf,core/home/config/nomarchy/default/hypr/bindings/utilities.conf, +24 more | `missing` |
|
||||
| `nomarchy-live` | features/scripts/utils/nomarchy-build-live-iso,features/scripts/utils/nomarchy-on-boot, +1 more | `missing` |
|
||||
| `nomarchy-luks` | installer/disko-btrfs-multi.nix,installer/disko-golden.nix, +1 more | `missing` |
|
||||
| `nomarchy-luks` | installer/disko-config.nix,installer/install.sh | `missing` |
|
||||
| `nomarchy-menu-rows` | bin/utils/nomarchy-docs-scripts,features/scripts/utils/nomarchy-docs-scripts | `missing` |
|
||||
| `nomarchy-nopasswd` | core/system/scripts/nomarchy-sudo-passwordless-toggle | `missing` |
|
||||
| `nomarchy-nopasswd-expire` | core/system/scripts/nomarchy-sudo-passwordless-toggle | `missing` |
|
||||
|
||||
Reference in New Issue
Block a user