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

Issue 2493673002: Synchronize OffscreenCanvas content with the placeholder canvas (Closed)

Created:
4 years, 1 month ago by Justin Novosad
Modified:
4 years, 1 month ago
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, dglazkov+blink, Rik, blink-reviews-bindings_chromium.org, jbroman+watch_chromium.org, blink-reviews, f(malita), danakj+watch_chromium.org, ajuma+watch_chromium.org, Stephen Chennney, rwlbuis
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Synchronize OffscreenCanvas content with the placeholder canvas This change solves the problem of propagating frames committed by an OffscreenCanvas all the way to the placeholder canvas, whether it be in the same script context or not. This allows the placeholder canvas to be used as an image source, and to be printed. BUG=655278 TBR=kbr@chromium.org CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Committed: https://crrev.com/20ba52f0f6249c418d90244e3b7b1d8b317c30a4 Cr-Commit-Position: refs/heads/master@{#431953}

Patch Set 1 #

Patch Set 2 : added missing files #

Patch Set 3 : fix printing #

Total comments: 6

Patch Set 4 : build fix #

Total comments: 4

Patch Set 5 : fixes #

Total comments: 1

Patch Set 6 : compile fix #

Patch Set 7 : fix obsolete test #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+458 lines, -66 lines) Patch
A third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-placeholder-image-source.html View 1 1 chunk +48 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-placeholder-image-source-with-worker.html View 1 1 chunk +55 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-transferControlToOffscreen.html View 1 2 3 4 5 6 1 chunk +0 lines, -6 lines 0 comments Download
A third_party/WebKit/LayoutTests/printing/offscreencanvas-2d-printing.html View 1 2 1 chunk +20 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/printing/offscreencanvas-2d-printing-expected.html View 1 2 1 chunk +12 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/printing/offscreencanvas-webgl-printing.html View 1 2 1 chunk +20 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/printing/offscreencanvas-webgl-printing-expected.html View 1 2 1 chunk +12 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp View 1 2 3 4 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueDeserializer.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueSerializer.cpp View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueSerializerTest.cpp View 2 chunks +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/html/HTMLCanvasElement.h View 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/html/HTMLCanvasElement.cpp View 1 2 3 4 8 chunks +29 lines, -27 lines 0 comments Download
M third_party/WebKit/Source/core/offscreencanvas/OffscreenCanvas.h View 1 2 3 4 2 chunks +13 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/offscreencanvas/OffscreenCanvas.cpp View 1 2 3 4 5 3 chunks +4 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/modules/canvas/HTMLCanvasElementModule.cpp View 1 2 3 4 1 chunk +4 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/canvas/HTMLCanvasElementModuleTest.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp View 1 2 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/BUILD.gn View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/Image.h View 1 2 3 4 5 1 chunk +1 line, -0 lines 1 comment Download
M third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcher.h View 1 2 2 chunks +11 lines, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.h View 1 2 3 4 3 chunks +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp View 1 2 3 4 12 chunks +68 lines, -12 lines 0 comments Download
A third_party/WebKit/Source/platform/graphics/OffscreenCanvasPlaceholder.h View 1 2 3 1 chunk +53 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/platform/graphics/OffscreenCanvasPlaceholder.cpp View 1 2 3 4 1 chunk +89 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/StaticBitmapImage.h View 1 2 3 4 5 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 52 (34 generated)
Justin Novosad
PTAL
4 years, 1 month ago (2016-11-10 18:54:31 UTC) #5
xlai (Olivia)
https://codereview.chromium.org/2493673002/diff/40001/third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp File third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp (right): https://codereview.chromium.org/2493673002/diff/40001/third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp#newcode241 third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp:241: image->transfer(); In the case of gpu-accelerated offscreencanvas, this image ...
4 years, 1 month ago (2016-11-11 16:28:33 UTC) #16
xidachen
I have a high-level comment: With this patch, we are always sending resources from worker-->main ...
4 years, 1 month ago (2016-11-11 16:54:01 UTC) #17
xlai (Olivia)
On 2016/11/11 16:54:01, xidachen wrote: > I have a high-level comment: > With this patch, ...
4 years, 1 month ago (2016-11-11 20:49:35 UTC) #18
Justin Novosad
https://codereview.chromium.org/2493673002/diff/40001/third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp File third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp (right): https://codereview.chromium.org/2493673002/diff/40001/third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp#newcode241 third_party/WebKit/Source/platform/graphics/OffscreenCanvasFrameDispatcherImpl.cpp:241: image->transfer(); On 2016/11/11 16:28:33, xlai (Olivia) wrote: > In ...
4 years, 1 month ago (2016-11-11 22:09:00 UTC) #20
xlai (Olivia)
I check the logic flow and they lgtm me. Please fix the compilation and the ...
4 years, 1 month ago (2016-11-14 18:58:26 UTC) #30
Justin Novosad
On 2016/11/14 18:58:26, xlai (Olivia) wrote: > I check the logic flow and they lgtm ...
4 years, 1 month ago (2016-11-14 19:03:42 UTC) #31
xidachen
https://codereview.chromium.org/2493673002/diff/120001/third_party/WebKit/Source/platform/graphics/Image.h File third_party/WebKit/Source/platform/graphics/Image.h (right): https://codereview.chromium.org/2493673002/diff/120001/third_party/WebKit/Source/platform/graphics/Image.h#newcode87 third_party/WebKit/Source/platform/graphics/Image.h:87: virtual void transfer() {} I am not sure why ...
4 years, 1 month ago (2016-11-14 19:05:03 UTC) #32
Justin Novosad
On 2016/11/14 19:05:03, xidachen wrote: > https://codereview.chromium.org/2493673002/diff/120001/third_party/WebKit/Source/platform/graphics/Image.h > File third_party/WebKit/Source/platform/graphics/Image.h (right): > > https://codereview.chromium.org/2493673002/diff/120001/third_party/WebKit/Source/platform/graphics/Image.h#newcode87 > ...
4 years, 1 month ago (2016-11-14 19:08:34 UTC) #33
xidachen
On 2016/11/14 19:08:34, Justin Novosad wrote: > On 2016/11/14 19:05:03, xidachen wrote: > > > ...
4 years, 1 month ago (2016-11-14 19:09:20 UTC) #34
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/2493673002/120001
4 years, 1 month ago (2016-11-14 19:12:02 UTC) #37
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/303551)
4 years, 1 month ago (2016-11-14 19:34:51 UTC) #40
Justin Novosad
Added kbr and haraken as TBR for trivial changes in modules/webgl and bindings.
4 years, 1 month ago (2016-11-14 19:36:44 UTC) #41
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/2493673002/120001
4 years, 1 month ago (2016-11-14 19:38:16 UTC) #43
haraken
modules/ rs LGTM
4 years, 1 month ago (2016-11-14 19:41:26 UTC) #44
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/2493673002/120001
4 years, 1 month ago (2016-11-14 20:47:54 UTC) #48
commit-bot: I haz the power
Committed patchset #7 (id:120001)
4 years, 1 month ago (2016-11-14 23:14:15 UTC) #50
commit-bot: I haz the power
4 years, 1 month ago (2016-11-14 23:22:51 UTC) #52
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/20ba52f0f6249c418d90244e3b7b1d8b317c30a4
Cr-Commit-Position: refs/heads/master@{#431953}

Powered by Google App Engine
This is Rietveld 408576698