fix(engine): force full board repaint when the decor-view poller fires (#130) #155

Merged
funman300 merged 1 commits from fix/130-forced-repaint into master 2026-07-07 23:14:12 +00:00
Owner

Belt-and-braces for #130: when the Android decor-view poller detects a fold/unfold that winit missed, it now emits StateChangedEvent alongside the synthetic WindowResized, so card_plugin's sync pipeline re-renders every card sprite from scratch. Covers the case where geometry converged but stale card visuals survived the relayout — a silent self-heal instead of a player-facing prompt (considered and rejected: fold/unfold is a many-times-per-session gesture on the Fold 7).

Android-only path; verified with cargo ndk -t arm64-v8a clippy, host workspace clippy -D warnings, tests, fmt.

🤖 Generated with Claude Code

Belt-and-braces for #130: when the Android decor-view poller detects a fold/unfold that winit missed, it now emits `StateChangedEvent` alongside the synthetic `WindowResized`, so `card_plugin`'s sync pipeline re-renders every card sprite from scratch. Covers the case where geometry converged but stale card visuals survived the relayout — a silent self-heal instead of a player-facing prompt (considered and rejected: fold/unfold is a many-times-per-session gesture on the Fold 7). Android-only path; verified with `cargo ndk -t arm64-v8a clippy`, host workspace clippy `-D warnings`, tests, fmt. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
funman300 added 1 commit 2026-07-07 23:01:37 +00:00
The #152 poller fixes resolution + layout on a missed fold/unfold, but
a transient clip could survive if card sprites held stale visuals after
geometry converged. Emit StateChangedEvent alongside the synthetic
WindowResized so card_plugin re-renders every sprite from scratch —
silent self-heal, no player-facing prompt.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
funman300 merged commit 8c0eb3dfab into master 2026-07-07 23:14:12 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: funman300/Ferrous-Solitaire#155