Closed Bug 1282364 Opened 3 years ago Closed 3 years ago

Split up gfxWindowsPlatform

Categories

(Core :: Graphics, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla50
Tracking Status
firefox50 --- fixed

People

(Reporter: dvander, Assigned: dvander)

References

(Blocks 1 open bug)

Details

Attachments

(3 files, 1 obsolete file)

... and friends. We don't want to initialize gfxPlatform in the GPU process since it carries a ton of baggage with it. The first step at least is separating out D3D11 device logic.
This introduces a new DeviceManagerD3D11 class to hold all the various D3D11 objects we create. Currently it just wraps gfxWindowsPlatform. Additionally, the platform accessors are now hidden, and all callers have been fixed up to go through DeviceManagerD3D11.
Attachment #8774213 - Flags: review?(matt.woodrow)
Attached patch part 2, move checks out (obsolete) — Splinter Review
Move the ten bazillion lines of D3D11 device validation logic out of gfxWindowsPlatform into a new D3D11Checks.cpp. I put GetDxgiDesc in there too since it's only ever used for validation.

(note: the moz.build changes are not right, but unified builds broke horribly when I added a second file so I'll go back and fix that at the end of this queue.)
Attachment #8774232 - Flags: review?(matt.woodrow)
This is not enough to make the D3D11 compositor usable on the GPU process yet. But it's the most annoying step to review.

This is all code motion.
Attachment #8774250 - Flags: review?(matt.woodrow)
Attachment #8774213 - Flags: review?(matt.woodrow) → review+
Correct patch - sorry about that.
Attachment #8774232 - Attachment is obsolete: true
Attachment #8774232 - Flags: review?(matt.woodrow)
Attachment #8774545 - Flags: review?(matt.woodrow)
Attachment #8774545 - Flags: review?(matt.woodrow) → review+
Attachment #8774250 - Flags: review?(matt.woodrow) → review+
Pushed by danderson@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/d1cd9be20f92
Add DeviceManagerD3D11 as a wrapper around gfxWindowsPlatform. (bug 1282364 part 1, r=mattwoodrow)
https://hg.mozilla.org/integration/mozilla-inbound/rev/007d791665b8
Move D3D11 checking logic out of gfxWindowsPlatform. (bug 1282364 part 2, r=mattwoodrow)
https://hg.mozilla.org/integration/mozilla-inbound/rev/8508083db4ac
Move D3D11 device creation out of gfxWindowsPlatform. (bug 1282364 part 3, r=mattwoodrow)
https://hg.mozilla.org/mozilla-central/rev/d1cd9be20f92
https://hg.mozilla.org/mozilla-central/rev/007d791665b8
https://hg.mozilla.org/mozilla-central/rev/8508083db4ac
Status: ASSIGNED → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla50
You need to log in before you can comment on or make changes to this bug.