Skip to content

fix(native): iOS swipe back like Slack's, tabs and channels 4-5x faster - #479

Merged
Makisuo merged 2 commits into
mainfrom
fix/ios-swipe-back-and-tabs
Nov 12, 2026
Merged

Makisuo merged 2 commits into
mainfrom
fix/ios-swipe-back-and-tabs

perf: a Message costs microseconds, not milliseconds (tabs and channe…

8b2d989
Select commit
Loading
Failed to load commit list.
Maple Review Bot / Maple / review completed Nov 12, 2026 in 2m 34s

Confidence 6/10 · 1 issue to address

🟡 Confidence 6/10 · needs attention. Held at 6 because a correctness warning is open.
1 warning −1 · tests partial −1 · risk high −1

Turns the swipe back into a whole-page drag over pictured layers with a projected commit, stops tab navigations from freezing the screen, and cuts Message cost by patching Foldkit's subscription fibers and caching the app's Shared. The open composer finding (F1) is not fixed: should_begin still tests direction only.

  • SwipeBack::should_begin accepts a rightward drag from anywhere, not the left edge
  • Commit uses the projected flick (PROJECTION, COMMIT_SHARE 0.5) instead of raw distance
  • tab_pressed lets a tab's navigation draw with no cover over the page or bar
  • Patched forkSubscriptionFibers derives all dependencies in one model fiber via queues

Still open from earlier reviews

What was checked
  • Patched forkSubscriptionFibers keeps Stream.changesWith semantics: latest updated every Model, emitted compared before offering
  • begin_swipe frames the pictures in window space and the page is the window's root view (system.rs:117)
  • The ios-immediate.ts banner runs first, where Effect captures setImmediate at import (Scheduler.ts:43)

8b2d989 · Reply "won't fix" to dismiss a finding, or mention @maple-review-bot to ask about one.