Closed
Bug 997014
Opened 10 years ago
Closed 10 years ago
Remove nsICanvasRenderingContextInternal::Render
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
FIXED
mozilla31
People
(Reporter: mattwoodrow, Assigned: mattwoodrow)
References
Details
Attachments
(6 files)
7.38 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
18.52 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
7.82 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
6.69 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
14.38 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
1.98 KB,
patch
|
roc
:
review+
|
Details | Diff | Splinter Review |
This function heavily relies on Thebes, and we have GetSurfaceSnapshot as a Moz2D version already.
Assignee | ||
Updated•10 years ago
|
Assignee: nobody → matt.woodrow
Assignee | ||
Comment 1•10 years ago
|
||
This implements GetSurfaceSnapshot for WebGL and lets us indicate if the returned data is un-premultplied.
Attachment #8407312 -
Flags: review?(roc)
Assignee | ||
Comment 2•10 years ago
|
||
The Moz2D UnpremultiplyDataSurface function here might conflict with your mutable data source surface changes.
Attachment #8407313 -
Flags: review?(roc)
Assignee | ||
Comment 3•10 years ago
|
||
Attachment #8407314 -
Flags: review?(roc)
Assignee | ||
Comment 4•10 years ago
|
||
The comment in this file says it's meant to go away, so away it shall go.
Attachment #8407315 -
Flags: review?(roc)
Assignee | ||
Comment 5•10 years ago
|
||
Apart from just converting to Moz2D, this also moves most of the complexity of dealing with unpremultiplied data out of SurfaceFromElement and into WebGL (the only place that uses it).
Attachment #8407316 -
Flags: review?(roc)
Assignee | ||
Comment 6•10 years ago
|
||
This code served a useful purpose when we had moz2d *and* thebes canvases, but now it's just a duplicate of SurfaceFromElement.
Attachment #8407375 -
Flags: review?(roc)
Comment on attachment 8407312 [details] [diff] [review] Part 1: Improve GetSurfaceSnapshot Review of attachment 8407312 [details] [diff] [review]: ----------------------------------------------------------------- ::: content/canvas/public/nsICanvasRenderingContextInternal.h @@ +93,5 @@ > NS_IMETHOD GetThebesSurface(gfxASurface **surface) = 0; > > // This gets an Azure SourceSurface for the canvas, this will be a snapshot > // of the canvas at the time it was called. > + virtual mozilla::TemporaryRef<mozilla::gfx::SourceSurface> GetSurfaceSnapshot(uint32_t aFlags = 0, bool* aPremultAlpha = nullptr) = 0; We don't need a separate flag, right? If aPremultAlpha is null, then we say the result surface must be premultiplied, otherwise we allow it to be premultiplied or not and set *aPremultAlpha to indicate which. ::: content/canvas/src/WebGLContext.cpp @@ +1423,5 @@ > + dt->DrawSurface(source, > + Rect(0, 0, mWidth, mHeight), > + Rect(0, 0, mWidth, mHeight), > + DrawSurfaceOptions(), > + DrawOptions(1.0f, CompositionOp::OP_SOURCE)); We don't have any code for in-place vertical flipping of a gfxImageSurface? Too bad.
Attachment #8407312 -
Flags: review?(roc) → review+
Attachment #8407313 -
Flags: review?(roc) → review+
Attachment #8407314 -
Flags: review?(roc) → review+
Attachment #8407315 -
Flags: review?(roc) → review+
Attachment #8407316 -
Flags: review?(roc) → review+
Attachment #8407375 -
Flags: review?(roc) → review+
Assignee | ||
Comment 8•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/ce1fe33d58a0 https://hg.mozilla.org/integration/mozilla-inbound/rev/20b75bf44c1e https://hg.mozilla.org/integration/mozilla-inbound/rev/39296ccf8936 https://hg.mozilla.org/integration/mozilla-inbound/rev/29ed3c34af5e https://hg.mozilla.org/integration/mozilla-inbound/rev/8681fc7a918b https://hg.mozilla.org/integration/mozilla-inbound/rev/6ba917df6b41
Comment 9•10 years ago
|
||
sorry had to backout this changes for test failures like https://tbpl.mozilla.org/php/getParsedLog.php?id=37986531&tree=Mozilla-Inbound
Assignee | ||
Comment 10•10 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/54ac1366823a https://hg.mozilla.org/integration/mozilla-inbound/rev/6e72c7a1d9d9 https://hg.mozilla.org/integration/mozilla-inbound/rev/ecb6a42d32ff https://hg.mozilla.org/integration/mozilla-inbound/rev/2d7b34276247 https://hg.mozilla.org/integration/mozilla-inbound/rev/c609ffeef524 https://hg.mozilla.org/integration/mozilla-inbound/rev/abc11addc2d1
Comment 11•10 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/54ac1366823a https://hg.mozilla.org/mozilla-central/rev/6e72c7a1d9d9 https://hg.mozilla.org/mozilla-central/rev/ecb6a42d32ff https://hg.mozilla.org/mozilla-central/rev/2d7b34276247 https://hg.mozilla.org/mozilla-central/rev/c609ffeef524 https://hg.mozilla.org/mozilla-central/rev/abc11addc2d1
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla31
You need to log in
before you can comment on or make changes to this bug.
Description
•