stop the disconnected-history alert from blocking scrolling
iOS CI / Build and Test SwiftUI App (push) Canceled after 0s
Build Unsigned iOS and macOS Apps / Build Unsigned iOS IPA (push) Canceled after 0s
Build Unsigned iOS and macOS Apps / Build macOS ZIP (push) Canceled after 0s

- Skip older-history loads silently while the connection is down:
  the trigger previously failed with "not connected", popped the
  global alert over the timeline and froze scrolling until dismissed.
- Accept fast reply-swipe flicks whose end state is clearly leftward
  even without an intermediate horizontal lock, while scroll-owned
  touches still never activate the swipe.
- Add a seeded-chat UI test mode (launch argument), accessibility
  identifiers and a LumaUITests target with timeline scroll and reply
  swipe tests; guard the fix in verify.sh.
This commit is contained in:
wt committed 2026-08-30 00:09:05 +07:00
1 parent 2868a13abd
commit 5a7fc36722
10 files changed
+304 -12

No files matched your search

@@ -14,10 +14,13 @@ struct MessageReplySwipePolicy {
static let followDominance: CGFloat = 1.05
/// Whether this translation can lock the gesture as a horizontal swipe.
/// Only right-to-left (swipe left, negative width) is accepted; the
/// opposite direction is deliberately left to the scroll view.
/// Only right-to-left (swipe left, negative width) is accepted, and the
/// lock is only available early: once the finger has travelled mostly
/// vertically the scroll view owns the touch and the swipe must never
/// activate for the rest of that gesture.
static func canLock(_ translation: CGSize) -> Bool {
translation.width < 0
&& abs(translation.height) <= 24
&& isHorizontal(translation, dominance: lockDominance)
&& abs(translation.width) >= activationDistance * 0.5
}