Settings: group preferences and open from gear

Group App Settings by purpose and let right-click on the gear open settings directly while preserving the left-click menu.

WPF event reference: https://learn.microsoft.com/en-us/dotnet/api/system.windows.uielement.previewmouserightbuttondown?view=windowsdesktop-10.0
This commit is contained in:
2026-10-28 17:57:02 -07:00
parent 769c616706
commit ee3c59210d
6 changed files with 66 additions and 49 deletions
+19 -15
View File
@@ -1,10 +1,11 @@
# HANDOFF — 2026-10-28 (selected-layer preview stacking; suite green)
# HANDOFF — 2026-10-28 (selected-layer stacking and App Settings UX; suite green)
## Current state
- **Branch `main`; `origin/main` remains at `7ae30d4`.** The five
feature commits since that point are `90cd039` (fade starts from outgoing picture), `f67a263`
- **Branch `main`, tracking `origin/main`; the selected-layer fix and test refresh were pushed as
`769c616`.** The five
feature commits since the previous `7ae30d4` checkpoint are `90cd039` (fade starts from outgoing picture), `f67a263`
(transition picker), `b86b6bb` (Wipe), `841c905` (brand logo layer), and `7da2872` (preview and
program transitions). They are not pushed; no push was requested.
program transitions); they are included in the pushed history.
- **Four UI-redesign commits already on `origin/main` were missing from the older handoff:**
`24aca7d` moved the scene strip above the preview and removed the default CRT/on-air image seeds;
`3239808` added the Scene Layers header/count and layer icons plus scene-card names, hotkeys, and
@@ -28,16 +29,18 @@
thumbnail cases persist explicit tile assets instead of relying on removed default seed files;
SourceNaming only considers user-created Text overlays; ZoomBox locates its placeholder by type,
not a list index changed by Brand logo.
- **The worktree already had three uncommitted user edits before this docs sync; they are preserved:**
- **The App Settings UX update is now committed and pushed:** `Controls/OverlayHost.xaml` groups
settings into Recordings, Brand logo, Preview, and Scene transition sections with compact controls.
Right-clicking the gear opens App Settings directly; left-click still opens the existing menu.
The on-screen verification is still pending.
- **The three edits that were previously uncommitted are now included in that update:**
`Controls/OverlayHost.xaml` groups App Settings into Recordings, Brand logo, Preview, and Scene
transition sections with compact controls; `Controls/TopBar.xaml` wires right-click on the gear;
`Controls/TopBar.xaml.cs` opens App Settings directly on right-click while left-click keeps the
menu. These are active UX-redesign work, not part of the selected-layer fix. On-screen verification is
still pending.
- **This work unit is committed locally, not pushed.** The three pre-existing user edits above
remain uncommitted and untouched.
- **Next:** continue the creator's UX redesign and verify the current App Settings/gear changes,
transitions, and Brand logo on-screen. The earlier vertical-webcam hands-on check is also still
menu.
- **Worktree is clean after the push.**
- **Next:** verify the App Settings/gear changes, transitions, and Brand logo on-screen. The earlier
vertical-webcam hands-on check is also still
pending unless the creator confirms it was completed. Move's persistent-layer behavior and Cube
remain queued; distribution remains deferred until near v1.
- **Verification state:** `verify.sh` passed: clean build with 0 warnings, **444/444 tests passed**,
@@ -49,10 +52,11 @@
Socials surface a modal dialog in its method comment; the committed UI is now a preview-rail drawer.
Correct that source comment separately if the file is next in scope. The new deterministic WPF
hit-test recipe is in `MyMistakes.md`; the final commit cites its Microsoft reference.
- **WPF stacking reference:** [`Panel.ZIndex`](https://learn.microsoft.com/en-us/dotnet/api/system.windows.controls.panel.zindex?view=windowsdesktop-10.0)
governs preview container order. The code also prioritizes the selected element in `HitElementAt`,
because the custom hit test does not consult WPF's visual z-order. The deterministic test recipe and
hit-testing reference are recorded in `MyMistakes.md`; cite that Microsoft reference in the commit.
- **WPF references:** [`Panel.ZIndex`](https://learn.microsoft.com/en-us/dotnet/api/system.windows.controls.panel.zindex?view=windowsdesktop-10.0)
governs preview container order; [`PreviewMouseRightButtonDown`](https://learn.microsoft.com/en-us/dotnet/api/system.windows.uielement.previewmouserightbuttondown?view=windowsdesktop-10.0)
is used for the gear's direct settings action. The selected-layer fix also prioritizes the selected
element in `HitElementAt`, because the custom hit test does not consult WPF's visual z-order. The
deterministic test recipe and reference are recorded in `MyMistakes.md`.
---