frosty/lib/screens/channel/video
Tommy Chow 2a203aa0d1 fix(video): re-run player init on every webview page load
`_needsInit` replaced the JS-side `window._injected` guard in 9cec89a, but
the two have different lifetimes. `window._injected` died with the page, so
any page load re-ran `initVideo()`. `_needsInit` lives on the store and was
only re-armed by `handleRefresh()`.

The store outlives the Video widget, which loads `videoUrl` on every mount.
Those reloads hit `onPageFinished` with `_needsInit` already false and
returned early, so the player came back with no play/pause listeners, no
cached `_videoEl`, no autoplay call and no overlay CSS — visibly stuck
paused with a play button that did nothing, unrecoverable without an app
restart.

Re-arm on `onPageStarted` so every navigation re-initializes, restoring the
page-scoped lifetime while keeping the Dart-side control that fixed the
original race.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:47:42 -07:00
..
chat_latency_sync.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
native_video.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
native_video_player_interface.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
native_video_store.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
native_video_store.g.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
stream_info_bar.dart improve Firebase integration across Crashlytics, Analytics, and Performance 2026-03-08 00:18:21 -08:00
stream_info_poller.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
video.dart rename enhanced rendering setting to reset for all users 2026-01-05 23:40:31 -05:00
video_overlay.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
video_player_interface.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
video_store.dart fix(video): re-run player init on every webview page load 2026-08-08 11:47:42 -07:00
video_store.g.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00
video_timing_constants.dart feat(video,chat): native player, ad-break awareness, chat send/delay reliability, and tab redesign (#567) 2026-06-13 17:06:24 -04:00