Pause preview updates when the workspace config is not saveable, surface that state in the Live Preview panel, and treat incomplete threshold color setups as real blocking errors so MangoHud preview never sees the bad intermediate state.
Deduplicate the repeated action pattern used by revert, undo, and reset so
workspace-changing window actions refresh the UI and toast through one
boolean helper instead of open-coded branches.
Deduplicate the profile strip's selected-item lookup and picker refresh
logic so save, apply, and delete flows all keep the dropdown and name field
in sync through the same helpers.
Deduplicate the preview panel's repeated control-sync and runtime-update
paths so built-in preview setups and individual runtime controls all go
through the same widget/state wiring.
The disposable preview process was tripping MangoHud's shutdown path and
spamming allocator corruption messages on stop/restart. Use an immediate
kill for Studio preview teardown and give the preview child a cleaner socket
thread shutdown path so the live preview controls stay fast and quiet.
Break the oversized overview page into focused dashboard submodules and
centralize the repeated validation/save-button refresh flows used by page
widgets. This keeps the UI behavior stable while making future edits less
fragile and easier to reason about.
This documents the current preview apply contract, updates the project
map to match the live code paths, and adds the local scratchpad issue
tracking reminder to the workspace instructions.
This folds the recent preview update fixes onto shared apply helpers,
keeps HUD order stable after profile restore, and drops the unstable drag
path that was still causing native crashes while navigating away.