Closed Bug 1538711 Opened 6 years ago Closed 6 years ago

Responsive Design Mode viewport clips into title bar when scrolling with WR enabled

Categories

(Core :: Graphics: WebRender, defect, P2)

67 Branch
defect

Tracking

()

RESOLVED FIXED
mozilla68
Tracking Status
firefox-esr60 --- unaffected
firefox66 --- unaffected
firefox67 --- disabled
firefox68 --- fixed

People

(Reporter: Fanolian+BMO, Assigned: kvark)

References

(Regression)

Details

(Keywords: nightly-community, regression, reproducible)

Attachments

(2 files, 1 obsolete file)

Attached video RDM clipping (deleted) —

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Firefox/68.0
Build ID: 20190325095153

Steps to reproduce

  1. Open Responsive Design Mode.
  2. Make viewport long enough so a scrollbar appears on the side of the browser (not viewport).
  3. Scroll up and down with that scrollbar.

Actual result
Viewport clips into titlebar. (Please refer to the attached video.)

Workaround
Disable WebRender.

System info
OS: Windows 10 1809
GPU: Nvidia GeForce GTX 760
Driver: 419.67 (released on 2019-03-25)

The regression range is https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=7b26b83385998b30acad1feb4ee02a4059eaafe2&tochange=5fa1f6433408d804a98025029a3ed38260a81dce.
There are some WR bugs (bug 1529378, bug 1523080) and some in Graphics (bug 1521466, bug 1523080). Mozregression is not helpful further bisecting the regression range.

Has Regression Range: --- → yes
Has STR: --- → yes

Kats, could this have been caused by bug 1523080?

Blocks: wr-68
Flags: needinfo?(kats)
Priority: -- → P3

It's possible, yeah. I can bisect with local builds to verify. Leaving needinfo on me for now.

Yup, it was caused by bug 1523080.

Assignee: nobody → kats
Blocks: 1523080
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: needinfo?(kats)

I investigated this a bit, and am not totally sure what's going wrong here. The clip on the Iframe WRDL item seems to be correct, and the rootmost stacking context on the content pipeline has a ClipId::root() as the clip_id. That gets translated to the Iframe's clip as intended by the iframe flattening process. So as far as I can tell the clip chain setup seems fine and the problem must be deeper in WR. However I'll take a closer look at a capture and see if I can figure out what's happening.

Some more notes:

  1. Turning off APZ or at least setting apz.drag.enabled to false makes this easier to repro and debug. This also implies the problem is not specific to APZ and is about how WR is rendering the static display list.

  2. After some digging I found what appears to be a bug, I think this line should be initializing mScrollId to wr::wr_root_scroll_node_id(). This was causing a couple of display items near the start of the list to have what appeared to be incorrect spatial IDs. However, making this change didn't fix the issue in this bug. I've kicked off a try push with that change anyway to see if it has any impact on reftests.

  3. Pretty sure now the problem is deeper inside WR. The items inside the content pipeline's root stacking context don't have their clip set to the pipeline clip, but the root stacking context which encloses those items does, so they should really still be getting clipped just fine.

Dzmitry, do you have cycles to look into this? It would be much faster for you than it will be for me.

Flags: needinfo?(dmalyshau)

was able to repro on macOS (not linux), looking now

Assignee: kats → dmalyshau
Status: NEW → ASSIGNED
Flags: needinfo?(dmalyshau)
Attached file [WIP] WR clip dirty picture cache regions (obsolete) (deleted) —

When a picture cache tile is dirty, we need to apply the local clip to items drawn there.

Blocks: wr-67
No longer blocks: wr-68
Priority: P3 → P2
Attached file Fix tile cache clip chain in WR (deleted) —
Attachment #9054588 - Attachment is obsolete: true
No longer blocks: 1523080
Regressed by: 1523080
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla68
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: