Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(24)

Issue 2425113002: Fix the linear-rgb canvas color space so that it renders (Closed)

Created:
4 years, 2 months ago by Justin Novosad
Modified:
4 years, 2 months ago
Reviewers:
xidachen, zakerinasab
CC:
chromium-reviews, krit, dshwang, drott+blinkwatch_chromium.org, blink-reviews-platform-graphics_chromium.org, ajuma+watch-canvas_chromium.org, blink-reviews-html_chromium.org, pdr+graphicswatchlist_chromium.org, jbroman, Justin Novosad, haraken, dglazkov+blink, Rik, f(malita), blink-reviews-paint_chromium.org, blink-reviews, piman+watch_chromium.org, danakj+watch_chromium.org, ajuma+watch_chromium.org, Stephen Chennney, rwlbuis
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix the linear-rgb canvas color space so that it renders This change fixes colorSpace:"linear-rgb" for 2D canvas so that the skia rendering pipeline actually renders correctly into its backing. The results still do not propagate to the display, but they are inspectable via getImageData. The main issue was that skia only support linear transfer curves when the color type is 16-bit float. Also, getImage data had to work around some output format limitations in skia BUG=634542 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Committed: https://crrev.com/75885ebb694faeabc19dd751561a82a582703793 Cr-Commit-Position: refs/heads/master@{#426558}

Patch Set 1 #

Total comments: 5
Unified diffs Side-by-side diffs Delta from patch set Stats (+212 lines, -85 lines) Patch
A third_party/WebKit/LayoutTests/fast/canvas/canvas-getImageData-linear-rgb.html View 1 chunk +44 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/html/HTMLCanvasElement.h View 1 chunk +2 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp View 7 chunks +19 lines, -20 lines 0 comments Download
M third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h View 2 chunks +2 lines, -0 lines 2 comments Download
M third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.cpp View 1 chunk +9 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/HTMLCanvasPainterTest.cpp View 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/canvas2d/CanvasRenderingContext2DTest.cpp View 2 chunks +6 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/Canvas2DImageBufferSurface.h View 1 chunk +9 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.h View 3 chunks +4 lines, -1 line 1 comment Download
M third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridge.cpp View 5 chunks +12 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/Canvas2DLayerBridgeTest.cpp View 11 chunks +17 lines, -12 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp View 4 chunks +44 lines, -8 lines 2 comments Download
M third_party/WebKit/Source/platform/graphics/ImageBufferSurface.h View 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/ImageBufferSurface.cpp View 1 chunk +6 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.h View 2 chunks +6 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurface.cpp View 2 chunks +5 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/RecordingImageBufferSurfaceTest.cpp View 1 chunk +4 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/UnacceleratedImageBufferSurface.h View 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/UnacceleratedImageBufferSurface.cpp View 1 chunk +5 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.h View 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/gpu/AcceleratedImageBufferSurface.cpp View 2 chunks +5 lines, -4 lines 0 comments Download

Messages

Total messages: 18 (10 generated)
Justin Novosad
PTAL
4 years, 2 months ago (2016-10-17 22:05:04 UTC) #4
zakerinasab
https://codereview.chromium.org/2425113002/diff/1/third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp File third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp (right): https://codereview.chromium.org/2425113002/diff/1/third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp#newcode400 third_party/WebKit/Source/platform/graphics/ImageBuffer.cpp:400: When creating the SkImageInfo the color space is set ...
4 years, 2 months ago (2016-10-18 15:12:42 UTC) #9
xidachen
lgtm with nits. https://codereview.chromium.org/2425113002/diff/1/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h File third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h (right): https://codereview.chromium.org/2425113002/diff/1/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h#newcode89 third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h:89: SkColorType colorType() const; Should we make ...
4 years, 2 months ago (2016-10-18 15:40:37 UTC) #10
Justin Novosad
https://codereview.chromium.org/2425113002/diff/1/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h File third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h (right): https://codereview.chromium.org/2425113002/diff/1/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h#newcode89 third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h:89: SkColorType colorType() const; On 2016/10/18 15:40:37, xidachen wrote: > ...
4 years, 2 months ago (2016-10-18 17:02:41 UTC) #11
zakerinasab
On 2016/10/18 17:02:41, Justin Novosad wrote: > https://codereview.chromium.org/2425113002/diff/1/third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h > File third_party/WebKit/Source/core/html/canvas/CanvasRenderingContext.h > (right): > > ...
4 years, 2 months ago (2016-10-18 18:54:23 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2425113002/1
4 years, 2 months ago (2016-10-20 17:35:18 UTC) #14
commit-bot: I haz the power
Committed patchset #1 (id:1)
4 years, 2 months ago (2016-10-20 19:18:43 UTC) #16
commit-bot: I haz the power
4 years, 2 months ago (2016-10-21 13:21:10 UTC) #18
Message was sent while issue was closed.
Patchset 1 (id:??) landed as
https://crrev.com/75885ebb694faeabc19dd751561a82a582703793
Cr-Commit-Position: refs/heads/master@{#426558}

Powered by Google App Engine
This is Rietveld 408576698