8aa2532666
Drag the open conversation rightward from the left edge and it follows the finger 1:1 with the list parallaxing in underneath; release past ~35% (or a quick flick) completes the pop, else it snaps back. Fixes the old stuck-pane bug: once a clear horizontal drag is detected we preventDefault (passive:false) to CLAIM the gesture so iOS/scroll can't steal it and fire touchcancel; touchcancel always resolves to a clean state. showWelcome(skipAnim) does the state swap without re-animating. Works in native app, PWA and mobile browser. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>