Audit animation and timer systems for reactive render compatibility #79
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
Depends on #78 (render-on-demand). Before switching
focused_modetoUpdateMode::reactive_low_power, every system that drives continuous visual change must explicitly request a redraw each frame it is active. Otherwise those visuals will freeze.Systems to audit
card_animation_plugin.rsfeedback_anim.rsauto_complete_plugin.rsgame_plugin.rs::tick_elapsed_timehud_plugin.rsWork required
For each system above:
window.request_redraw()(viaEventWriter<RequestRedraw>or theWindowcomponent) each frame the system is actively animating.Acceptance criteria
UpdateMode::reactive_low_power.cargo test --workspacestill passes.Labels
Fixed in
38e4c03.All per-frame animation systems now write
RequestRedraweach frame they have active work:advance_card_animations(card slide)advance_card_anims(deal / win cascade)tick_shake_anim,tick_settle_anim,tick_foundation_flourishdrive_toast_display(toast countdown)drive_auto_complete(step interval keepalive)Each plugin also registers
add_message::<RequestRedraw>()so tests underMinimalPluginscontinue to pass. #78 switchedfocused_modetoreactive_low_power(100 ms)on top of this.