Closed Bug 950368 Opened 11 years ago Closed 11 years ago

Make nsWindowsShellService's WriteBitmap act on a Moz2D SourceSurface instead of a Thebes gfxASurface

Categories

(Core :: Graphics, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla30

People

(Reporter: jwatt, Assigned: jwatt)

References

(Blocks 2 open bugs)

Details

Attachments

(1 file, 2 obsolete files)

As part of converting imgIContainer::GetFrame to return a Moz2D SourceSurface instead of a Thebes gfxASurface, we should nsWindowsShellService's WriteBitmap function act on a Moz2D SourceSurface instead of a Thebes gfxASurface.
Attached patch patch (obsolete) — Splinter Review
Not tested yet. May need some tweaks to get the rows and bytes written out in the correct order.
Blocks: 950372
Attached patch patch (obsolete) — Splinter Review
I had some trouble with linking, but this works.
Attachment #8347637 - Attachment is obsolete: true
Attachment #8385801 - Flags: review?(matt.woodrow)
Attached patch patchSplinter Review
Attachment #8385801 - Attachment is obsolete: true
Attachment #8385801 - Flags: review?(matt.woodrow)
Attachment #8385805 - Flags: review?(matt.woodrow)
Comment on attachment 8385805 [details] [diff] [review] patch Review of attachment 8385805 [details] [diff] [review]: ----------------------------------------------------------------- ::: browser/components/shell/src/nsWindowsShellService.cpp @@ +764,4 @@ > > + RefPtr<DataSourceSurface> dataSurface = > + thebesImageSurface->CopyToB8G8R8A8DataSourceSurface(); > + NS_ENSURE_TRUE(dataSurface, NS_ERROR_FAILURE); You could use Factory::CreateWrappingDataSourceSurface here instead of making an actual copy. I guess it doesn't matter much if GetFrame is about to change to return a SourceSurface.
Attachment #8385805 - Flags: review?(matt.woodrow) → review+
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla30
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: