From 8646b51b6c881b05c02cf0f8c515e24eee052fd9 Mon Sep 17 00:00:00 2001 From: TerryM Date: Sat, 30 May 2026 02:25:01 +0800 Subject: [PATCH] feat(video): cross-platform inline player + polished overlay controls - MessageInlineVideo (new): custom-controlled inline video that disables the iOS Safari / Chromium native overlays entirely and reimplements the essentials: tap-to-play, centered play affordance while paused, bottom bar with play/pause + current time + drag-to-scrub progress bar + remaining time + fullscreen. Pointer events with pointer capture cover both mouse and touch scrubbing, including dragging past the bar's bounds. The element listens to 'seeked' as well as 'timeupdate' so external currentTime writes paint the bar even when the video is paused, and the goFullscreen callback synchronously syncs React state on close so the inline progress reflects the user's fullscreen playhead with no perceptible delay. - VideoBubble: replace the inline