Skip to content

feat(settings): engine-aware scaling dropdowns (#452) - #454

Merged
Maxaubert merged 1 commit into
mainfrom
feat/scaling-dropdown
Oct 12, 2026
Merged

Maxaubert merged 1 commit into
mainfrom
feat/scaling-dropdown

Conversation

@Maxaubert

Copy link
Copy Markdown
Owner

Fixes #452.

  • Transform scaling (txSamplingMode: Nearest / Smooth, replaces the High resolution cursor toggle) and Render scaling (bilinear: Nearest / Bilinear) under Engine, shown per engine (Auto shows both).
  • Smooth keeps the experimental notice (now "Use Smooth"); Select.svelte redraws from its prop after a held-back change.
  • View's Speed and Pointer sections merge into Movement (Pointer would hold one row with advanced off).
  • Docs updated (05, 07, 08, 09).

Verified: build.bat test 623/623, Playwright 203/203, deployed and owner-checked.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

…ution cursor toggle

Transform scaling (txSamplingMode: Nearest / Smooth) and Render scaling
(bilinear: Nearest / Bilinear) sit under Engine and follow it; Auto
shows both. Smooth keeps the experimental notice (now "Use Smooth").
Select.svelte redraws from its prop after a held-back change. View's
Speed and Pointer sections merge into Movement.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH
@Maxaubert
Maxaubert merged commit 11a8168 into main Oct 12, 2026
1 check passed
@Maxaubert
Maxaubert deleted the feat/scaling-dropdown branch October 12, 2026 04:19
Maxaubert added a commit that referenced this pull request Oct 13, 2026
…itignore, stale probes) (#464)

* chore: remove dead render smoke test, WIND_NOLAYERED and Flyout::DrawShutdown (#462)

The WIND_RENDER_SMOKE wWinMain had no build target (WIND_SELFTEST covers it), and
debugInfo was its only caller. WIND_NOLAYERED was a measurement-only diagnostic for
solved #148. DrawShutdown had no callers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* chore(config): drop the renameProfile and duplicateProfile bridge messages (#462)

Nothing in the Settings UI or the tray sends them (no rename UI; Duplicate current
goes through createProfile with fromCurrent). NextCopyName was used only by
duplicateProfile and goes with it, plus its tests and the doc mentions.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* refactor: move ini_edit and mpo.h from src/config_ui/ to src/ (#462)

They are shared core modules, not WindConfig-only code. Wind.exe now picks
ini_edit.cpp up through src\*.cpp; the tray, config and test targets name the new
path. Drops the unused mpo.h include from the settings host and updates docs 01/11.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* chore(ui): retire the legacy icon set and dead theme tokens (#462)

Onboarding's minimize and close glyphs now come from design/icons.js, sized like
the Settings title bar, so lib/icons.js (2 of 13 icons used) goes. theme.css drops
--rail, --panel-line, --muted, --accent-icon and --accent-soft, which nothing reads.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* chore(ui): drop the pre-#285 FORBIDDEN_VK lists (#462)

KeybindCapture and Bindings now leave every key verdict to checkKeyBind from the
shared keybindRules.js, which already refuses clicks and Backspace and reports the
Win keys as modifiers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* test(ui): rename highres-notice.spec.js to scaling-notice.spec.js (#462)

The High resolution cursor toggle it was named after was replaced in #454.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* chore: ignore the files a dev run leaves in the repo root (#462)

A dev build keeps its ini next to the exe, so profiles/, logs/ (crash .txt and
.dmp, learned_gain.txt), mpo_boot.txt and churny_apps.txt land in the repo root.
Also ignores *.dmp, render_smoke* and .claude/scheduled_tasks.lock, and drops the
unused .worktrees/ and graphify-out/ entries.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* chore(tools): delete superseded GPU probes and test-window scripts (#462)

gpu_ab.ps1 replaces gpu_breakdown.ps1 and gpu_nvsmi.ps1 (June-era, render blt path
only, relied on the removed lowPower key). testenv/backdrop.ps1 covers
grid_window.ps1 and acrylic_window.ps1. test_target_window.ps1 stays: it is the
gridless control target gpu_ab and the mag_* probes launch.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Maxaubert added a commit that referenced this pull request Oct 13, 2026
…mock hooks

Add openRepo and restartFailed from HandleWebMessage, remove the highres
mpoLive/mpoStaged paragraph (that UI is gone since #369/#454), and replace the
mock hooks that no longer exist with the ones the specs use. Drop the
hard-coded spec count and the stale "CI runs only doctest" claim.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH
Maxaubert added a commit that referenced this pull request Oct 13, 2026
… docs/history) (#466)

* docs: drop the no-UIAccess fallback promise, document dev runs

Setup no longer installs a build without UIAccess when local signing fails
(#460/#461): it stops with a message and Wind refuses to start. README,
release notes, installer README and both manifest comments now say so.
README Development gains WIND_ALLOW_NO_UIACCESS=1 and the UI test commands;
installer README lists user-localappdata.ps1 and notes the placeholder clip;
LICENSE names both installer filenames.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* docs: engines switch live, no restart

Since #455 both engines are always built and `model` applies on the config
reload; Wind relaunches only when one engine failed to init. Fix ch 01, 02
and 08, the VERIFICATION items (plus a new one for the UIAccess refusal
dialog) and rewrite the HITCH-FINDINGS configuration table to the current
pick rules. The mpoNearestGuard comment said "restart to apply", but the key
is read on every config load.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* docs(09): complete the bridge table, drop the dead MPO paragraph and mock hooks

Add openRepo and restartFailed from HandleWebMessage, remove the highres
mpoLive/mpoStaged paragraph (that UI is gone since #369/#454), and replace the
mock hooks that no longer exist with the ones the specs use. Drop the
hard-coded spec count and the stale "CI runs only doctest" claim.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* docs: source map, key reference and tools index catch up with the code

Ch 01 source map gains uiaccess_gate.h, render_params.cpp, upscale_*,
mpo_boot_logic.h, game_cursor.h and pan_glide.h. Ch 08 gains trackMarginPct,
zoomTrace, mpoNearestGuard (hot) and recenterMods. Ch 12 lists
mag_formula_probe.ps1, mag_trackmode_probe.ps1 and upscale_testcard.py.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* docs: move closed investigations to docs/history

NATIVE-MAGNIFIER-STOMP, PERF-ACRYLIC-PARITY-2026-08-21, POINTER-HITTEST-FINDINGS
and SHELL-PANEL-CURSOR-FINDINGS are closed; they move to docs/history/ with a
one-line index. Every link (chapters, the docs index, code comments) is
repointed. SHELL-PANEL-CURSOR-FINDINGS now opens as a historical record
instead of describing the removed freeze in the present tense. The
architecture README explains the missing chapter 10.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* docs: frozen-history rule for specs and design, trim unreferenced mockups

CLAUDE.md now says new plans are not committed and docs/specs, docs/design and
docs/history are frozen history cited from code; docs/specs gets a README
saying so. The pure-test rule in CLAUDE.md matches doc 11 (straddle files,
thin Win32 I/O headers), and doc 11 lists tray_pin_logic and drops its stale
spec count. Delete the 17 docs/design PNGs nothing references, and drop the
-light.png mentions (light mode was removed in #325) from the two specs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

* docs(notices): add NSIS and its LZMA compression module

The setup stub and its plug-ins ship inside Wind-Setup-x64.exe. NSIS is
zlib/libpng; its LZMA module is CPL 1.0 with a linking exception (per NSIS's
COPYING), derived from the public-domain LZMA SDK.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TdjopXZfsUiesYxYLYHEdH

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Settings: engine-aware scaling dropdowns (replace the High resolution cursor toggle)

1 participant