webrender: panels of remote webextensions are white

VERIFIED FIXED in Firefox 58

Status

()

defect
P1
normal
VERIFIED FIXED
2 years ago
2 years ago

People

(Reporter: darkspirit, Assigned: sotaro)

Tracking

(Blocks 2 bugs, {nightly-community})

Trunk
mozilla58
Unspecified
Windows 10
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox56 unaffected, firefox57 unaffected, firefox58 fixed)

Details

(Whiteboard: [wr-mvp][gfx-noted])

Attachments

(1 attachment, 4 obsolete attachments)

Nightly 57 x64 20170815100349 @ Debian Testing with webrender+servo enabled

STR:
1. Install the latest "pure webext version" from https://addons.mozilla.org/de/firefox/addon/ublock-origin/versions/beta

2. set
gfx.webrender.enabled;true
extensions.webextensions.remote;true (default)
and click on Ublock Origin's icon: the bubble is white, but you can hover things

3. set extensions.webextensions.remote;false
Now we can see its contents.

Please correct the bug title if you have more appropriate words for it or mark this as duplicate. I haven't found a bug with this search terms and also nothing open that blocked webrender. I might have tomatoes on my eyes.
(comment 0 = fresh profile on Windows 10)
I can't reproduce it in Nightly 57 x64 20170815100349 @ Debian Testing
and couldn't test it on a Mac of a friend yet.
Has STR: --- → yes
OS: Unspecified → Windows 10
On my Mac I can see the contents of the popup with webrender + remote webextensions turned on. (Note that remote webextensions is off by default on OS X, it's only on by default on Windows). I can reproduce the behaviour on Windows though.
(In reply to Jan Andre Ikenmeyer [:darkspirit] from comment #0)
> Nightly 57 x64 20170815100349 @ Debian Testing with webrender+servo enabled
I meant "Windows 10" there. I was tired, sorry.

Updated

2 years ago
See Also: → 1395592
Priority: P3 → P2
Whiteboard: [wr-mvp]
Whiteboard: [wr-mvp] → [wr-mvp][gfx-noted]
See Also: 1395592
Duplicate of this bug: 1395592
Duplicate of this bug: 1411929
Assignee

Updated

2 years ago
Assignee: nobody → sotaro.ikeda.g
Status: NEW → ASSIGNED
Priority: P2 → P1
Assignee

Comment 6

2 years ago
This is a transparent window's problem. Gecko does not support accelerated composition with transparent windows. Non webrender case, it fallback to BasicCompositor. But in WebRender case, it fallback to BasicLayerManager, since WebRender does not support  software composition nor support of mixed usage of ClientLayerManager and WebRenderLayerManager.

Then if panels of remote webextensions is loaded in content process, its rendering is not connected to Compositor.
Assignee

Comment 7

2 years ago
There seems to be 2 ways to solve the problem.
[1] Disable remote webextensions
[2] Add support of mixed usage of WebRender and BasicCompositor(only for transparent window).

[1] seems not ideal. [2] seems better solution, but it might becomes a bit complex.
(This reminds me of bug 1377321.)
Assignee

Comment 9

2 years ago
(In reply to Jan Andre Ikenmeyer [:darkspirit] from comment #8)
> (This reminds me of bug 1377321.)

Yes, it is also try to do similar thing. Bug 1333122 already did preparation work for [2].
Assignee

Comment 10

2 years ago
(In reply to Sotaro Ikeda [:sotaro] from comment #9)
> (In reply to Jan Andre Ikenmeyer [:darkspirit] from comment #8)
> > (This reminds me of bug 1377321.)
> 
> Bug 1333122 already did preparation work for [2].

But some implementation was removed by Bug 1351384. Current gecko controls and checks more about how LayerManager is created by puppet widget. Then we could try the way again, I think.
Assignee

Updated

2 years ago
Attachment #8924494 - Flags: review?(bugmail)
Comment on attachment 8924494 [details] [diff] [review]
patch - Use BasicCompositor if widget type does not support acceleration

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

The patch looks ok to me. I'd like Andrew to also take a look since he also worked on some of these fallback codepaths.
Attachment #8924494 - Flags: review?(bugmail)
Attachment #8924494 - Flags: review?(aosmond)
Attachment #8924494 - Flags: review+
Comment on attachment 8924494 [details] [diff] [review]
patch - Use BasicCompositor if widget type does not support acceleration

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

LGTM.
Attachment #8924494 - Flags: review?(aosmond) → review+

Comment 21

2 years ago
Pushed by sikeda@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/2dbd4a1032d0
Use BasicCompositor if widget type does not support acceleration r=aosmond,kats
https://hg.mozilla.org/mozilla-central/rev/2dbd4a1032d0
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla58
Verified fixed in Nightly 58 x64 20171108110838 de_DE @ Windows 10 1709 (Radeon RX480). Thank you!
fresh profile: extensions.webextensions.remote (default), gfx.webrender.enabled

https://addons.mozilla.org/firefox/addon/ublock-origin/ works as intended.
Status: RESOLVED → VERIFIED
Assignee

Updated

2 years ago
See Also: → 1416729
You need to log in before you can comment on or make changes to this bug.