UI Behavior
The interface should feel calm, orderly, visually clear, and predictable. Established behavior should not shift casually between builds.
Documentation should explain behavior in human terms so readers understand what to expect before using the app.
UI Behavior Additions
- Controls and labels must be centrally keyed for localization.
- Filename display should come from real filename state, not a substituted date string.
- Fit Height, Fit Everything, header text toggle, and related panel controls should remain stable across daily builds and must be explicitly documented when behavior changes.
- Visible live state and exported output should not contradict each other.
2026-05-06 v11 — Two-Step Tile Interaction + Background JPEG Pipeline
- Tile interaction remains two-step: first click or tap on an unselected tile selects it immediately and does nothing else; second click or tap on that already-selected tile performs the tile action.
- Startup exception: tile 1 is pre-armed on startup and after wall rebuild, so the first post-load click on tile 1 may activate immediately.
- Selection now begins a shared background JPEG-preparation pipeline for the selected tile. This work must be visually unintrusive and should not delay visible selection feedback.
- The Download Thumbnail button must acknowledge clicks immediately in real time, then either start the JPEG download immediately if the prepared JPEG is ready or automatically begin the download the moment preparation completes.
- The common background-JPEG path applies uniformly regardless of which tile becomes selected.
2026-05-06 v12 — Hypnotic, Calming, Instantaneous Button Response
- Button feedback should feel immediate, soothing, and trustworthy. The user should sense instant acknowledgment before any heavier work begins.
- Preferred feedback is non-resizing and calming: border transitions, glow, pulse, or other hypnotic visual states that do not disturb layout.
- When a different button is pressed rapidly, the previously animated button should promptly restore to its resting state so the interface never looks cluttered or confused.
- This behavior is global across the application and should not vary arbitrarily from one control to another.