Closed Bug 1569626 Opened 5 years ago Closed 5 years ago

Pres shell resolution leaks when user exits RDM, causing clipped rendering with WebRender

Categories

(DevTools :: Responsive Design Mode, defect, P1)

Desktop
Windows 10
defect

Tracking

(firefox-esr68 unaffected, firefox68 unaffected, firefox69 unaffected, firefox70 wontfix, firefox72 wontfix, firefox73 wontfix, firefox74 fixed)

RESOLVED FIXED
Firefox 74
Tracking Status
firefox-esr68 --- unaffected
firefox68 --- unaffected
firefox69 --- unaffected
firefox70 --- wontfix
firefox72 --- wontfix
firefox73 --- wontfix
firefox74 --- fixed

People

(Reporter: rdoghi, Assigned: bradwerth)

References

(Blocks 1 open bug)

Details

(Keywords: regression)

Attachments

(3 files)

Attached image 2019-07-29_10h51_36.png (deleted) —

[Affected versions]:
Nightly 70.0a1

[Affected platforms]:
Platforms: Windows 10

Precondtions:
Access FF and enter in about:config
Type devtools.responsive.metaViewport.enabled and set the value to "true"
Type gfx.webrender.all set to "true" and verify about:support for Composition (Webrender)

Steps :

  1. Launch the Firefox browser and reach twitter.com
  2. Hit Ctrl + Shift + M in order to start Responsive Design Mode and Select iPad from the device list.
  3. Hit Ctrl + Shift + M in order to Exit RDM.

Expected Results :
The page is properly displayed.

Actual Results :
The page is clipped when the user exits RDM.

Thoughts botond?

Flags: needinfo?(botond)
Blocks: wr-70
Priority: -- → P3

I can see such clipped rendering while the page is still loading, but after the loading finished, the page is rendered correctly (I am loading this bug 1569626 though). I am not sure this is the same as what Rares is seeing.

This appears to be a bug in RDM's meta viewport support, where we are allowing a pres shell resolution != 1 to "leak out" into the normal browsing environment even after we exit from RDM.

The pres shell resolution on desktop should never be anything other than 1 if we're not in RDM (modulo desktop zooming, which is not relevant here as the bug doesn't involve setting apz.allow_zooming=true).

Component: Graphics: WebRender → Responsive Design Mode
Flags: needinfo?(botond)
Product: Core → DevTools

Note that, while it doesn't cause the same clipped rendering artifact, the leaking of the pres shell resolution outside of the RDM session happens without WebRender too, and has the potential to cause problems there too.

Summary: Webrender clips the page when the user exits RDM → Pres shell resolution leaks when user exits RDM, causing clipped rendering with WebRender
Whiteboard: [rdm-reserve]

The product::component has been changed since the backlog priority was decided, so we're resetting it.
For more information, please visit auto_nag documentation.

Priority: P3 → --
Priority: -- → P3
Whiteboard: [rdm-reserve] → [rdm-mvp]
Priority: P3 → P2

I can no longer reproduce this. I think it's possible that this was resolved by the recent landing of Bug 1574016. Would you please see if you can still reproduce the bug?

Flags: needinfo?(rares.doghi)

Bugbug thinks this bug is a regression, but please revert this change in case of error.

Keywords: regression

I can still reproduce this in today's nightly.

Flags: needinfo?(rares.doghi)

Moving to Reserve Backlog to add Bug 1575097 which is required as part of the dependency path for remaining MVP bugs.

Priority: P2 → P3
Whiteboard: [rdm-mvp] → [rdm-reserve]
No longer blocks: wr-70

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

I can still reproduce this in today's nightly.

How about now? I can't reproduce (on macOS), and when I run mozregression back to 2019-08-19 I can't get it to fail there either. If you can reproduce, would you please run a mozregression so we know what we should be looking at?

Flags: needinfo?(botond)

I can't reproduce in today's nightly either (but I can in a 2019-08-19 nightly). I'll see if I can get a fix range.

Flags: needinfo?(botond)

The fix range points to bug 1578641, "Improve how tile clipping works in WR picture caching".

That's certainly plausible. It does suggest that the underlying problem (of the resolution leaking out from RDM) is still there, but we can probably treat that underlying issue as lower priority until we run into other user-visible symptoms of it.

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

The fix range points to bug 1578641, "Improve how tile clipping works in WR picture caching".

That's certainly plausible. It does suggest that the underlying problem (of the resolution leaking out from RDM) is still there, but we can probably treat that underlying issue as lower priority until we run into other user-visible symptoms of it.

Yeah, it's concerning that Bug 1578641 is characterized as a performance improvement, but on this issue is required for correct behavior. I'm still going to close this bug.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → WORKSFORME

New sightings of this are happening in Nightly.

Assignee: nobody → bwerth
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Status: REOPENED → ASSIGNED
Priority: P3 → P1
Whiteboard: [rdm-reserve] → fission-rdm-mvp
No longer blocks: dt-rdm-fission
Whiteboard: fission-rdm-mvp
Blocks: 1608352
Pushed by bwerth@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/5e1cba38501b
Part 1: Save and restore the presshell resolution when creating and destroying an MVM. r=botond
https://hg.mozilla.org/integration/autoland/rev/04bf7a2a0b8c
Part 2: Add a test that sets resolution before RDM, and checks it afterwards. r=mtigley
Status: ASSIGNED → RESOLVED
Closed: 5 years ago5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 74
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: