Fix mobile sidebar swipe and drag failures (#2709)
* fix(app): prevent text selection during Android swipes Gesture interception did not cancel the native view where the touch began, leaving Android's pending text-selection action alive. * fix(app): restore iOS sidebar close swipes Fabric could fail to attach close handlers when their target lived inside retained but display-hidden panel content. Keep a registered native gesture host mounted outside the presentation wrapper so close swipes work over nested lists without activating rows. * fix(app): recover sidebar drags after cancellation Cancelled native drags could leave a lifted row and the shared outer list locked. Scope terminal cleanup to the owning gesture session and release the lock on cancellation or unmount. * test(app): clean up partial drag fixtures
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
appId: sh.paseo.debug
|
||||
---
|
||||
# Establish History with the sidebar closed. The host filter then proves a close
|
||||
# swipe did not activate the row below it.
|
||||
- tapOn:
|
||||
id: "menu-button"
|
||||
- tapOn:
|
||||
id: "sidebar-sessions"
|
||||
- assertVisible:
|
||||
id: "sessions-host-filter-trigger"
|
||||
|
||||
# A close swipe over a semantic header row must close without navigating.
|
||||
- swipe:
|
||||
direction: RIGHT
|
||||
duration: 300
|
||||
- assertVisible:
|
||||
id: "sidebar-schedules"
|
||||
- swipe:
|
||||
start: "85%,19%"
|
||||
end: "10%,19%"
|
||||
duration: 300
|
||||
- assertNotVisible:
|
||||
id: "sidebar-schedules"
|
||||
- assertVisible:
|
||||
id: "sessions-host-filter-trigger"
|
||||
|
||||
# A close swipe over the nested workspace list must beat horizontal list intent.
|
||||
- swipe:
|
||||
direction: RIGHT
|
||||
duration: 300
|
||||
- assertVisible:
|
||||
id: "sidebar-project-workspace-list-scroll"
|
||||
- swipe:
|
||||
start: "85%,46%"
|
||||
end: "10%,46%"
|
||||
duration: 300
|
||||
- assertNotVisible:
|
||||
id: "sidebar-project-workspace-list-scroll"
|
||||
- assertVisible:
|
||||
id: "sessions-host-filter-trigger"
|
||||
Reference in New Issue
Block a user