click events not delivered with trivial CSS transform, margin, overflow: hidden

RESOLVED FIXED in Firefox 19

Status

()

RESOLVED FIXED
6 years ago
5 years ago

People

(Reporter: jorendorff, Assigned: mattwoodrow)

Tracking

({regression})

18 Branch
mozilla21
regression
Points:
---

Firefox Tracking Flags

(firefox18- wontfix, firefox19+ verified, firefox20+ verified, firefox21+ verified, firefox-esr17 unaffected)

Details

Attachments

(1 attachment)

(Reporter)

Description

6 years ago
Reported by Isaac Shapira of Radiant Interactive.

With the HTML below, clicking in the margin fires the alert, but clicking on the text doesn't. I think the "dead" zone covers the leftmost 8em of div#c.

<!DOCTYPE html>
<html>
<head>
  <style>
    #a {
      transform: translate(0, 0);
    }
    #b {
      margin-left: 8em;
      overflow: hidden;
    }
    #c {
      transform: translate(0, 0);
    }
  </style>
</head>

<body>
  <div id="a" onclick="alert('ok')">
    <div id="b">
      <div id="c">click here</div>
    </div>
  </div>
</body>
</html>
(Reporter)

Updated

6 years ago
Summary: click events not delivered with trivial CSS transform, margin → click events not delivered with trivial CSS transform, margin, overflow: hidden

Comment 1

6 years ago
Regression window(m-c)
Good:
http://hg.mozilla.org/mozilla-central/rev/f7c89de3ab43
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20120915201302
Bad:
http://hg.mozilla.org/mozilla-central/rev/b3f462d96fb5
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20120916161603
Pushlog:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=f7c89de3ab43&tochange=b3f462d96fb5


Regression window(m-i)
Good:
http://hg.mozilla.org/integration/mozilla-inbound/rev/33087122ace7
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20120916022601
Bad:
http://hg.mozilla.org/integration/mozilla-inbound/rev/6ee831a85d12
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/18.0 Firefox/18.0 ID:20120916033402
Pushlog:
http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=33087122ace7&tochange=6ee831a85d12

In local build
Last Good: 0ee3959754f8
First Bad: 6ee831a85d12

Triggered by;
6ee831a85d12	Matt Woodrow — Bug 788044 - Make transformed frames the reference frame for their display list tree. r=roc
Blocks: 788044
status-firefox-esr17: --- → unaffected
tracking-firefox18: --- → ?
tracking-firefox19: --- → ?
tracking-firefox20: --- → ?
tracking-firefox21: --- → ?
Component: DOM: Events → Layout
Keywords: regression
Version: Other Branch → 18 Branch

Comment 2

6 years ago
We'll definitely try to get a fix in for FF19, but I'd like to better understand the severity of this issue before considering for FF18. Hopefully Matt/roc can help.
Assignee: nobody → matt.woodrow
tracking-firefox19: ? → +
tracking-firefox20: ? → +
tracking-firefox21: ? → +
(Assignee)

Comment 3

6 years ago
Created attachment 701656 [details] [diff] [review]
Make sure we don't cross the root reference frame

This function was (incorrectly) assuming that the root reference frame for the display list was also the root of the cross-doc frame tree.

We need to make sure that we don't skip over the root reference frame when searching for transformed ancestors.
Attachment #701656 - Flags: review?(roc)
(Assignee)

Updated

6 years ago
Duplicate of this bug: 829623
(Assignee)

Comment 5

6 years ago
Given that this only get reported recently, then I doubt it's worth trying to do an emergency 18 release for.

We definitely want this on 19 though.

Comment 7

6 years ago
19 release is scheduled for 2013-02-19, am I right? I think this bug can seriously affect lots of sites which use CSS3 transforms and listen for click events. One month is really too long I think.

Comment 8

6 years ago
https://hg.mozilla.org/mozilla-central/rev/3b8ea7a517ad
Status: NEW → RESOLVED
Last Resolved: 6 years ago
status-firefox21: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla21

Updated

6 years ago
Duplicate of this bug: 830321
(In reply to Dmitry from comment #7)
> 19 release is scheduled for 2013-02-19, am I right? I think this bug can
> seriously affect lots of sites which use CSS3 transforms and listen for
> click events. One month is really too long I think.

We have to weigh the risk of new regression versus the user impact. Sadly that means we do not plan to fix in a FF18.0.1.
status-firefox18: --- → wontfix
tracking-firefox18: ? → -
Comment on attachment 701656 [details] [diff] [review]
Make sure we don't cross the root reference frame

[Approval Request Comment]
Bug caused by (feature/regressing bug #): 788044 (DLBI)
User impact if declined: Event handling in transforms is busted in some cases
Testing completed (on m-c, etc.): just landed
Risk to taking this patch (and alternatives if risky): very low risk
String or UUID changes made by this patch: none
Attachment #701656 - Flags: approval-mozilla-beta?
Attachment #701656 - Flags: approval-mozilla-aurora?

Updated

6 years ago
QA Contact: general
Comment on attachment 701656 [details] [diff] [review]
Make sure we don't cross the root reference frame

Low risk fix for a Fx18 regression, approving on beta/aurora .
Attachment #701656 - Flags: approval-mozilla-beta?
Attachment #701656 - Flags: approval-mozilla-beta+
Attachment #701656 - Flags: approval-mozilla-aurora?
Attachment #701656 - Flags: approval-mozilla-aurora+

Updated

6 years ago
status-firefox19: --- → fixed
status-firefox20: --- → fixed

Comment 14

6 years ago
Verified as fixed on Firefox 19 beta 3 (20130123083802):
Mozilla/5.0 (Windows NT 6.1; rv:19.0) Gecko/20100101 Firefox/19.0
Mozilla/5.0 (X11; Linux i686; rv:19.0) Gecko/20100101 Firefox/19.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:19.0) Gecko/20100101 Firefox/19.0
status-firefox19: fixed → verified

Comment 15

6 years ago
Verified as fixed on Firefox 20 beta 2 (20130227063501):
Mozilla/5.0 (Windows NT 6.1; rv:20.0) Gecko/20100101 Firefox/20.0
Mozilla/5.0 (X11; Linux i686; rv:20.0) Gecko/20100101 Firefox/20.0
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:20.0) Gecko/20100101 Firefox/20.0

Updated

6 years ago
status-firefox20: fixed → verified

Comment 16

6 years ago
Still appears to me in FF20b4, i have created a new bug: https://bugzilla.mozilla.org/show_bug.cgi?id=851055

Comment 17

5 years ago
Verified as fixed on Firefox 21 RC - 20130507015204.

Alexander, bug 851055 is a different bug. When this bug was reproducing on the test case in comment 0, the click event was not handled only when clicking the text. Now, no click events are handled (I can click next to the text and still get nothing).
status-firefox21: fixed → verified
You need to log in before you can comment on or make changes to this bug.