Two reports from first use on the Pixel 9a (PRD AD-5, AD-6, AD-17).
Swipe up and hold was slow to hand over to the alphabet:
- After the hold was noticed, the drawer was sent to its open state through the state
manager, which takes 600 ms, and the alphabet took the finger only after that, and then
only on the next touch movement. A finger held perfectly still never started it.
- Now the alphabet takes the finger's position in the same call that notices the hold, and
the drawer finishes opening under it by playing the swipe's own animation to its end in
120 ms.
- A still finger counts as holding after 150 ms instead of 300 (MotionPauseDetector gains
setForcePauseTimeout, reset by clear()), and the swipe has to travel 32dp instead of 72dp
before a hold counts.
- Because the list now jumps at once, a finger that lifts within 200 ms of the hold being
noticed is treated as an ordinary swipe that slowed down at its end: the scrub is undone
and the list stays where it was.
The selected letter sat under the thumb:
- The wave's peak was 52dp beyond the finger, about 8 mm, and a thumb hides about 11 mm to
each side of where it touches. It is now 104dp, and at least 96dp out from the edge.
- The peak may travel to within 36dp of the far edge (was 70% of the width), so the gap
holds when the finger is in the middle of the screen.
- A taller wave is wider (a third of its reach), so the neighbouring letters bend around
the thumb instead of vanishing under it.
- A soft dark spot behind the selected letter keeps it readable where it lands on an app
name or a light wallpaper.
Checked on the Android 17 emulator with touches injected at millisecond timing (a monkey
script) and a thumb-sized shape drawn over the screenshots.
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>