New issue
Advanced search Search tips
Starred by 5 users
Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Bug

Blocked on:
issue 680635

Blocking:
issue 563816



Sign in to add a comment
Upstreaming OffscreenCanvas test to web-platform-tests and KhronosGroup/WebGL
Project Member Reported by xlai@chromium.org, Oct 25 2016 Back to list
A placeholder bug for certain fixes on OffscreenCanvas that are minor
to ensure correct functionalities that are ready to ship.

 
Comment 2 by xlai@chromium.org, Nov 7 2016
Components: Blink>Canvas
Cc: xlai@chromium.org junov@chromium.org
Owner: xidac...@chromium.org
Summary: Upstreaming OffscreenCanvas test to web-platform-tests (was: Ensure correct functioning of OffscreenCanvas)
We should upstream sufficient test cases to web-platform-tests, to make sure that all browsers are compatible.
Project Member Comment 4 by bugdroid1@chromium.org, Nov 21 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8e9a7bc6d79b084d3562563d2c2aa06c3390965d

commit 8e9a7bc6d79b084d3562563d2c2aa06c3390965d
Author: xidachen <xidachen@chromium.org>
Date: Mon Nov 21 22:24:42 2016

Fix a small error in exception handling in convertToBlob

The spec for convertToBlob is here:
https://html.spec.whatwg.org/multipage/scripting.html#dom-offscreencanvas-converttoblob

There are three cases where this API should throw exception, and we don't
have the test to cover that.

Also, our code does not handle the third case in the above spec.

This CL adds layout tests to cover the exception cases and fix the third
case.

BUG=659260

Review-Url: https://codereview.chromium.org/2520973002
Cr-Commit-Position: refs/heads/master@{#433673}

[add] https://crrev.com/8e9a7bc6d79b084d3562563d2c2aa06c3390965d/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-convertToBlob-exceptions.html
[add] https://crrev.com/8e9a7bc6d79b084d3562563d2c2aa06c3390965d/third_party/WebKit/LayoutTests/http/tests/security/cross-origin-OffscreenCanvas2D-convertToBlob.html
[modify] https://crrev.com/8e9a7bc6d79b084d3562563d2c2aa06c3390965d/third_party/WebKit/Source/core/offscreencanvas/OffscreenCanvas.cpp

Summary: Upstreaming OffscreenCanvas test to web-platform-tests and KhronosGroup/WebGL (was: Upstreaming OffscreenCanvas test to web-platform-tests)
Project Member Comment 6 by bugdroid1@chromium.org, Dec 1 2016
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/65114caf515dfa0d606a4189a7b10d65d51c8a7a

commit 65114caf515dfa0d606a4189a7b10d65d51c8a7a
Author: xidachen <xidachen@chromium.org>
Date: Thu Dec 01 17:25:19 2016

Make OffscreenCanvas 2D context support globalAlpha

We have already supported globalCompositeOperation, but globalAlpha is
not exposed yet.

This CL expose this attributes. Similar to the globalCompositeOperation,
the implementation is already there, we just need to expose it in the
.idl file.

The layout test is copied from fast/canvas/2d.composite.globalAlpha.fillPath.html,
with very small tweak.

BUG=659260

Review-Url: https://codereview.chromium.org/2526693003
Cr-Commit-Position: refs/heads/master@{#435634}

[add] https://crrev.com/65114caf515dfa0d606a4189a7b10d65d51c8a7a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-globalAlpha-expected.html
[add] https://crrev.com/65114caf515dfa0d606a4189a7b10d65d51c8a7a/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-2d-globalAlpha.html
[modify] https://crrev.com/65114caf515dfa0d606a4189a7b10d65d51c8a7a/third_party/WebKit/LayoutTests/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt
[modify] https://crrev.com/65114caf515dfa0d606a4189a7b10d65d51c8a7a/third_party/WebKit/LayoutTests/virtual/service-worker-navigation-preload/http/tests/serviceworker/webexposed/global-interface-listing-service-worker-expected.txt
[modify] https://crrev.com/65114caf515dfa0d606a4189a7b10d65d51c8a7a/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-dedicated-worker-expected.txt
[modify] https://crrev.com/65114caf515dfa0d606a4189a7b10d65d51c8a7a/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/65114caf515dfa0d606a4189a7b10d65d51c8a7a/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-shared-worker-expected.txt
[modify] https://crrev.com/65114caf515dfa0d606a4189a7b10d65d51c8a7a/third_party/WebKit/Source/modules/offscreencanvas2d/OffscreenCanvasRenderingContext2D.idl

Comment 7 by xlai@chromium.org, Jan 9 2017
xidachen@: Is this issue already fixed?
Status: Fixed
sorry about that, yes, it has been fixed.
Comment 9 by junov@chromium.org, Jan 16 2017
Actually, let's keep it open.

More tests have been added since the last push.
Let's do a final update after the feature is 100% complete.

Comment 10 by junov@chromium.org, Jan 16 2017
Owner: xlai@chromium.org
Status: Assigned
Comment 11 Deleted
Comment 12 by junov@chromium.org, Jan 19 2017
Blockedon: 680635
Comment 13 Deleted
Project Member Comment 14 by bugdroid1@chromium.org, Feb 24 2017
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5ce8692f118a0f554fa98574be0c5446b8f0b8fe

commit 5ce8692f118a0f554fa98574be0c5446b8f0b8fe
Author: xlai <xlai@chromium.org>
Date: Fri Feb 24 21:39:52 2017

Handle OffscreenCanvas.convertToBlob exceptions: EncodingError & InvalidStateError

This CL handle two new exceptions:
1. EncodingError exception when convertToBlob fails encoding; the test case we
use here is to attempt encoding webp that exceeds max dimension. This is
consistent with new spec change: https://github.com/whatwg/html/pull/2343
2. InvalidStateError exception when convertToBlob is calling on an OffscreenCanvas
without rendering contexts. Spec change needs to be done later on.

Meanwhile, this CL also fixed crash bug in the corner case when convertToBlob
with webp image type fails.

BUG=659260,  563830 

Review-Url: https://codereview.chromium.org/2695343002
Cr-Commit-Position: refs/heads/master@{#452935}

[modify] https://crrev.com/5ce8692f118a0f554fa98574be0c5446b8f0b8fe/third_party/WebKit/LayoutTests/fast/canvas/OffscreenCanvas-convertToBlob-exceptions.html
[modify] https://crrev.com/5ce8692f118a0f554fa98574be0c5446b8f0b8fe/third_party/WebKit/Source/core/html/canvas/CanvasAsyncBlobCreator.cpp
[modify] https://crrev.com/5ce8692f118a0f554fa98574be0c5446b8f0b8fe/third_party/WebKit/Source/core/offscreencanvas/OffscreenCanvas.cpp

Sign in to add a comment