Display port should not override dirtyRect during hit detection

RESOLVED FIXED in Firefox 14

Status

()

Firefox for Android
General
RESOLVED FIXED
6 years ago
6 years ago

People

(Reporter: wesj, Assigned: wesj)

Tracking

Trunk
Firefox 14
Points:
---

Firefox Tracking Flags

(blocking-fennec1.0 beta+)

Details

Attachments

(1 attachment, 2 obsolete attachments)

(Assignee)

Description

6 years ago
Put a bunch of logging in for a different bug, but noticed that the rect we use for hit testing was growing from a 1x1 rect to one the displayport size right here:

http://mxr.mozilla.org/mozilla-central/source/layout/generic/nsGfxScrollFrame.cpp#2169

I think that means we're looking at way to many objects for hit testing when we have the display port turned on.
(Assignee)

Comment 1

6 years ago
Created attachment 615468 [details] [diff] [review]
Patch
Assignee: nobody → wjohnston
Attachment #615468 - Flags: review?(roc)
(Assignee)

Comment 2

6 years ago
Comment on attachment 615468 [details] [diff] [review]
Patch

Hmm.. seeing some issues. Maybe better to just get feedback first, since its possible I'm misinterpreting this code entirely.
Attachment #615468 - Flags: review?(roc) → feedback?(roc)
Comment on attachment 615468 [details] [diff] [review]
Patch

Review of attachment 615468 [details] [diff] [review]:
-----------------------------------------------------------------

Very good catch! But you should just make usingDisplayport false when aBuilder->IsForEventDelivery()
(Assignee)

Comment 4

6 years ago
Created attachment 615502 [details] [diff] [review]
Patch

Ahh. That explains the problems I was seeing. Thanks
Attachment #615468 - Attachment is obsolete: true
Attachment #615468 - Flags: feedback?(roc)
Attachment #615502 - Flags: review?(roc)
(Assignee)

Comment 5

6 years ago
Comment on attachment 615502 [details] [diff] [review]
Patch

Doh. Thats not right...
Attachment #615502 - Flags: review?(roc)
(Assignee)

Comment 7

6 years ago
Created attachment 615510 [details] [diff] [review]
Patch

Heh. Yep. Just fixing that.
Attachment #615502 - Attachment is obsolete: true
Attachment #615510 - Flags: review?(roc)
(Assignee)

Comment 8

6 years ago
Requesting blocking
blocking-fennec1.0: --- → ?
blocking-fennec1.0: ? → beta+
Does this mean the we're also using the display port during painting when we should be using the dirtyRect? i.e. could this also be the explanation for large displaylist computation during paint?
We always have to recompute the display list for the whole displayport, by design.

(Maybe that can be improved, but certainly not before DLBI lands.)
https://hg.mozilla.org/mozilla-central/rev/372d32e0ea61
https://hg.mozilla.org/mozilla-central/rev/1f86ad4f883d

Leaving open as the second changeset is empty - not sure what the intention was?
Target Milestone: --- → Firefox 14
(Assignee)

Comment 13

6 years ago
Just didn't realize it had already landed.
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.