A tab which is moved out of the window and back becomes empty for an unusual long moment

VERIFIED FIXED in Firefox 64

Status

()

defect
P2
normal
VERIFIED FIXED
9 months ago
9 months ago

People

(Reporter: darkspirit, Assigned: sotaro)

Tracking

(Blocks 1 bug, {nightly-community, regression, regressionwindow-wanted})

Trunk
mozilla64
x86_64
Windows 10
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox-esr60 disabled, firefox62 disabled, firefox63 disabled, firefox64 fixed)

Details

()

Attachments

(3 attachments)

Win10, GTX 1060

mozregression --launch 2018-09-16 --pref gfx.webrender.all:true -a about:newtab -a https://html.spec.whatwg.org/

A regression date would have to be before 2018-01-15 which has already been bad.

It can be fixed by unfocusing the window (clicking on the desktop background).
I wasn't able to reproduce this bug with gfx.webrender.force-disabled:true.

Sometimes it's also reproducible with https://www.amazon.com/, but it stays blank only for a short moment.
Assignee

Comment 1

9 months ago
I take a look.
Assignee: nobody → sotaro.ikeda.g
Assignee

Comment 2

9 months ago
The problem might happens since we removed layers during using webrender.
about:newtab can also be that bad.
https://www.youtube.com/watch?v=Scxs7L0vhZ4
From my perception this can happen too easily. It isn't slowness. I just need to unfocus the window or interact with website content, e.g. by hovering or clicking, to make it visible again.
Hi Sotaro -- Would it make sense for me to re-assign this to someone else?  You have a lot of bugs on your plate.  Thanks!
Flags: needinfo?(sotaro.ikeda.g)
Assignee

Comment 6

9 months ago
I have a possible fix patch. It address the problem for me. I am going to progress the bug. Thanks!
Flags: needinfo?(sotaro.ikeda.g)
Assignee

Comment 7

9 months ago
Without WebRender, ClientLayerManager can use same layer resources during Tab move between windows. But with WebRender, WebRenderLayerManager cannot retain WebRender resources in during Tab move between windows.

When Tab is moved between windows, WebRenderLayerManager frees all WebRender related resources in WebRenderBridgeChild::RecvWrUpdated(). Then child side needs to trigger repaints to trigger WebRenderLayerManager transaction.
Assignee

Updated

9 months ago
Attachment #9012788 - Flags: review?(matt.woodrow)
Attachment #9012788 - Flags: review?(matt.woodrow) → review+

Comment 10

9 months ago
Pushed by sikeda@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/94a87c720eee
Schedule repaint if WebRender is updated by tab move r=mattwoodrow

Comment 11

9 months ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/94a87c720eee
Status: NEW → RESOLVED
Closed: 9 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Verified fixed. Thank you!
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.