Open Bug 1916028 Opened 8 months ago Updated 1 month ago

touchscreen pinch zooming doesn't work on Google Earth

Categories

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

defect

Tracking

()

ASSIGNED
Tracking Status
firefox-esr115 --- wontfix
firefox-esr128 --- affected
firefox131 --- wontfix
firefox132 --- wontfix
firefox133 --- fix-optional

People

(Reporter: billdillensrevenge, Assigned: hiro)

References

(Regression)

Details

(Keywords: regression)

Attachments

(3 files)

Go to Google Earth and pinch zoom via the touchscreen. Observe that Google Earth goes black and glitches. Interestingly, pinch zooming via the touchpad works fine.

Pinch zooming via touchscreen in Chrome works fine too.

Device is a Surface Laptop, Windows 11.

Note: I have left feedback in Google Earth reporting the issue but it might not be on their end. And even if it is, fixing this for Firefox users probably isn't a priority for them.

Sorry I should have specified: pinch zooming OUT works ok (though still some weird issues), it's pinch zooming in where I immediately see the problems

The Bugbug bot thinks this bug should belong to the 'Core::Graphics: WebRender' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: General → Graphics: WebRender
Product: Firefox → Core
Component: Graphics: WebRender → Panning and Zooming

:botond, can you comment to this bug?

Flags: needinfo?(botond)

I can reproduce this on a Thinkpad touchscreen.

Google Earth is a site that clearly intends to preventDefault() every pinch gesture (such that the page, not the browser, handles the gesture). The symptoms suggest that some gestures (or parts of gestures) are not getting successfully preventDefault()ed, and we get the browser's default handling of the pinch gesture instead of (or in addition to) the page's.

It's not clear whether this is a site or browser issue; adding [apz-needsdiagnosis] tag for further investigation.

Flags: needinfo?(botond)
Whiteboard: [apz-needsdiagnosis]

See also bug 1866028 for a bug with similar symptoms which does have a diagnosis (in bug 1866028 comment 3). It's possible that this is the same issue (but this needs to be confirmed).

See Also: → 1866028

This is also reproducible in Firefox for Android if you load the site in desktop mode (the mobile site just redirects to the Play Store page for the Google Earth app).

Severity: -- → S3

(In reply to Botond Ballo [:botond] from comment #5)

See also bug 1866028 for a bug with similar symptoms which does have a diagnosis (in bug 1866028 comment 3). It's possible that this is the same issue (but this needs to be confirmed).

Note that unlike this bug, bug 1866028 is about touchpad scrolling.

For touchscreen scrolling (like this bug), web authors have ways to disable the browser default behaviour with 100% reliability (namely, touch-action: none) that they don't (yet) have for touchpad scrolling.

Priority: -- → P2

Just thought it might be helpful to note that Google Maps works fine in Firefox, both touchscreen and touchpad, as well as when you go into Street View too. I'm a bit surprised by this because I thought Google Maps and Google Earth are built on the same tech?

Attached file A reduced test case

I managed to create a reduced test case. It's related to shadow DOM that I am not familiar with.

Attached file A minimized test case

It turned out that shadow DOM is unrelated. It's caused by nested pointer-events styles.

The problem lies on here in [nsIFrame::GetCompositorHitTestInfo] returning an empty hit-info, and here in UpdateCurrentHitTestInfo to replace nsDisplayListBuilder::mCompositorHitTestInfo with the empty one.

I am pretty sure this was regressed by bug 1534549.

Keywords: regression
Regressed by: 1534549
Whiteboard: [apz-needsdiagnosis]

Set release status flags based on info from the regressing bug 1534549

Rather check pointer-events proeprty in nsIFrame::GetCompositorHitTestInfo
because pointer-events property is inherited but pointer-events: auto cancels
out the inherited pointer-events: none.

Assignee: nobody → hikezoe.birchill
Status: NEW → ASSIGNED

Let's consider 'fix-optional' for 133 (which is about to merge to beta). (Though perhaps it's really wontfix for that release, unless it feels like an extremely safe fix.)

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: