Open Bug 1952402 Opened 12 days ago Updated 3 days ago

`pointermove` for the scond touch won't be fired smoothly once the preceding `pointerdown`s are consumed

Categories

(Core :: Panning and Zooming, defect, P3)

Unspecified
Android
defect

Tracking

()

People

(Reporter: masayuki, Unassigned)

References

()

Details

STR

  1. Load https://codepen.io/mariusgundersen/pen/xxrRoxp on a device which supports touch input
  2. Check the checkbox labeled "e.preventDefault()"
  3. Touch with 2 fingers and move the fingers to draw 2 lines

AR

2nd touch does not draw the line smoothly, but sometimes when I stop 2nd touch temporarily, suddenly the line is drawn.

ER

both lines are drawn smoothly

Notes

I checked the code (not debugged actually).

First, when pointerdown for the first touch is canceled, PointerEventHandler::PostHandlePointerEventsPreventDefault prevents default of the soucre event, probably eTouchStart.

Next, APZEventState::ProcessTouchEvent stores that.

Then, CancelableBlockState::ShouldDropEvents() starts returning true.

Finally, it changes the behavior of eTouchMove at multi-touch here.

Ikezoe-san, could you take a look?

Flags: needinfo?(hikezoe.birchill)

Is this a blocker for interop-2025?

(In reply to Hiroyuki Ikezoe (:hiro) from comment #1)

Is this a blocker for interop-2025?

I think currently "No", but looks like really annoying bug, and potentially this can cause serious web-compat issue.

I added this bug into the agenda of the next team meeting.

I guess here should check aEvent.DefaultPreventedByContent() instead of aContentResponse. I think the name of aContentResponse is not correct.

Tracking in FFXP-2522 (APZ Correctness Sprint).

Severity: -- → S3
Priority: -- → P3
Flags: needinfo?(hikezoe.birchill)
You need to log in before you can comment on or make changes to this bug.