Closed Bug 1591004 Opened 5 years ago Closed 5 years ago

Implement OS compositor interface on Windows

Categories

(Core :: Graphics: WebRender, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla72
Tracking Status
firefox72 --- fixed

People

(Reporter: sotaro, Assigned: sotaro)

References

(Blocks 1 open bug)

Details

Attachments

(2 files, 4 obsolete files)

With Bug 1589512 , we could implement OS compositor interface on Windows.

Attached patch wip (obsolete) — Splinter Review

The patch did not work well yet. Sometimes, some parts of page were rendered.

Attached patch 0001-WIP.patchSplinter Review

The problem is that when we call eglMakeCurrent(), it doesn't bind the default framebuffer in all conditions. For now, I just hacked it to always bind to the default framebuffer surface (0) when binding a native surface. This seems to work fine, but is not 100% correct in all cases. I'll add a proper fix next week for this. But it should be enough to continue prototyping with :)

The other parts of the patch are to enable clips and enable the DC surface rendering. I also had to disable the static pref stuff locally, I think that was missing from your WIP patch?

Assignee: nobody → gwatson
Depends on: 1591346
Depends on: 1589512
Assignee: gwatson → nobody

(In reply to Glenn Watson [:gw] from comment #2)

The other parts of the patch are to enable clips and enable the DC surface rendering. I also had to disable the static pref stuff locally, I think that was missing from your WIP patch?

static pref "gfx.webrender.compositor" was added to change os compositor usage on/off. Doesn't it work for you? I am going to update wip patch with your patch and bug 1591346.

Depends on: 1591752
Attached patch wip (obsolete) — Splinter Review

Rebased.

Attachment #9104379 - Attachment is obsolete: true
Attachment #9104519 - Attachment is obsolete: true

This implementation is off by default (behind gfx.webrender.compositor) until various bugs and inefficiencies are fixed.

Differential https://phabricator.services.mozilla.com/D51034

Attachment #9105119 - Attachment is obsolete: true
Blocks: 1592509
Pushed by sikeda.birchill@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/18ecc5b3d77b First pass of OS compositor implementation on Windows r=gw
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla72
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: