Bug 134883

Summary: [CANVAS] Remove unsupported globalCompositeOperation mode from 2d context.
Product: WebKit Reporter: KwangHyuk <hyuki.kim>
Component: CanvasAssignee: Nobody <webkit-unassigned>
Status: RESOLVED INVALID    
Severity: Normal CC: buildbot, commit-queue, rniwa
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
patch
none
patch
darin: review-, buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2
none
Archive of layout-test-results from webkit-ews-08 for mac-mountainlion
none
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion none

Description KwangHyuk 2014-07-14 09:08:15 PDT
According to the 2d context specification (http://www.w3.org/TR/2dcontext/), unsupported composition operation strings are removed.
Comment 1 KwangHyuk 2014-07-14 09:10:44 PDT
Created attachment 234855 [details]
patch
Comment 2 WebKit Commit Bot 2014-07-14 09:11:49 PDT
Attachment 234855 [details] did not pass style-queue:


ERROR: Source/WebCore/ChangeLog:10:  You should remove the 'No new tests' and either add and list tests, or explain why no new tests were possible.  [changelog/nonewtests] [5]
Total errors found: 1 in 1 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 KwangHyuk 2014-07-14 09:22:43 PDT
Created attachment 234857 [details]
patch

Add reason of no tests to Changelog.
Comment 4 Build Bot 2014-07-14 10:11:09 PDT
Comment on attachment 234857 [details]
patch

Attachment 234857 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/5818854517243904

New failing tests:
canvas/philip/tests/2d.composite.image.source-over.html
canvas/philip/tests/2d.composite.canvas.destination-in.html
canvas/philip/tests/2d.composite.image.destination-over.html
canvas/philip/tests/2d.composite.canvas.copy.html
canvas/philip/tests/2d.composite.solid.xor.html
canvas/philip/tests/2d.composite.canvas.source-in.html
canvas/philip/tests/2d.composite.canvas.destination-out.html
canvas/philip/tests/2d.composite.canvas.source-atop.html
canvas/philip/tests/2d.composite.solid.destination-over.html
canvas/philip/tests/2d.composite.image.xor.html
canvas/philip/tests/2d.composite.solid.destination-out.html
canvas/philip/tests/2d.composite.solid.source-atop.html
canvas/philip/tests/2d.composite.image.source-in.html
canvas/philip/tests/2d.composite.image.source-atop.html
canvas/philip/tests/2d.composite.image.lighter.html
canvas/philip/tests/2d.composite.image.destination-out.html
canvas/philip/tests/2d.composite.globalComposite.html
canvas/philip/tests/2d.composite.image.destination-atop.html
canvas/philip/tests/2d.composite.solid.lighter.html
canvas/philip/tests/2d.composite.image.destination-in.html
canvas/philip/tests/2d.composite.solid.source-out.html
canvas/philip/tests/2d.composite.image.copy.html
canvas/philip/tests/2d.composite.operation.default.html
canvas/philip/tests/2d.composite.solid.destination-atop.html
canvas/philip/tests/2d.composite.canvas.destination-over.html
canvas/philip/tests/2d.composite.canvas.destination-atop.html
canvas/philip/tests/2d.composite.canvas.lighter.html
canvas/philip/tests/2d.composite.canvas.xor.html
canvas/philip/tests/2d.composite.canvas.source-over.html
canvas/philip/tests/2d.composite.solid.copy.html
Comment 5 Build Bot 2014-07-14 10:11:13 PDT
Created attachment 234861 [details]
Archive of layout-test-results from webkit-ews-09 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-09  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 6 KwangHyuk 2014-07-14 10:12:55 PDT
This issue is more complex than my idea. compositeOperatorNames are shared by others. :(
Comment 7 Build Bot 2014-07-14 10:28:09 PDT
Comment on attachment 234857 [details]
patch

Attachment 234857 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/5195773679501312

New failing tests:
canvas/philip/tests/2d.composite.image.source-over.html
canvas/philip/tests/2d.composite.canvas.destination-in.html
canvas/philip/tests/2d.composite.image.destination-over.html
canvas/philip/tests/2d.composite.canvas.copy.html
canvas/philip/tests/2d.composite.solid.xor.html
canvas/philip/tests/2d.composite.canvas.source-in.html
canvas/philip/tests/2d.composite.canvas.destination-out.html
canvas/philip/tests/2d.composite.canvas.source-atop.html
canvas/philip/tests/2d.composite.solid.destination-over.html
canvas/philip/tests/2d.composite.image.xor.html
canvas/philip/tests/2d.composite.solid.destination-out.html
canvas/philip/tests/2d.composite.solid.source-atop.html
canvas/philip/tests/2d.composite.image.source-in.html
canvas/philip/tests/2d.composite.image.source-atop.html
canvas/philip/tests/2d.composite.image.lighter.html
canvas/philip/tests/2d.composite.image.destination-out.html
canvas/philip/tests/2d.composite.globalComposite.html
canvas/philip/tests/2d.composite.image.destination-atop.html
canvas/philip/tests/2d.composite.solid.lighter.html
canvas/philip/tests/2d.composite.image.destination-in.html
canvas/philip/tests/2d.composite.solid.source-out.html
canvas/philip/tests/2d.composite.image.copy.html
canvas/philip/tests/2d.composite.operation.default.html
canvas/philip/tests/2d.composite.solid.destination-atop.html
canvas/philip/tests/2d.composite.canvas.destination-over.html
canvas/philip/tests/2d.composite.canvas.destination-atop.html
canvas/philip/tests/2d.composite.canvas.lighter.html
canvas/philip/tests/2d.composite.canvas.xor.html
canvas/philip/tests/2d.composite.canvas.source-over.html
canvas/philip/tests/2d.composite.solid.copy.html
Comment 8 Build Bot 2014-07-14 10:28:13 PDT
Created attachment 234865 [details]
Archive of layout-test-results from webkit-ews-08 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-08  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 9 Build Bot 2014-07-14 10:38:42 PDT
Comment on attachment 234857 [details]
patch

Attachment 234857 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.appspot.com/results/6321673586343936

New failing tests:
canvas/philip/tests/2d.composite.image.source-over.html
canvas/philip/tests/2d.composite.canvas.destination-in.html
canvas/philip/tests/2d.composite.image.destination-over.html
canvas/philip/tests/2d.composite.canvas.copy.html
canvas/philip/tests/2d.composite.solid.xor.html
canvas/philip/tests/2d.composite.canvas.source-in.html
canvas/philip/tests/2d.composite.canvas.destination-out.html
canvas/philip/tests/2d.composite.canvas.source-atop.html
canvas/philip/tests/2d.composite.solid.destination-over.html
canvas/philip/tests/2d.composite.image.xor.html
canvas/philip/tests/2d.composite.solid.destination-out.html
canvas/philip/tests/2d.composite.solid.source-atop.html
canvas/philip/tests/2d.composite.image.source-in.html
canvas/philip/tests/2d.composite.image.source-atop.html
canvas/philip/tests/2d.composite.image.lighter.html
canvas/philip/tests/2d.composite.image.destination-out.html
canvas/philip/tests/2d.composite.globalComposite.html
canvas/philip/tests/2d.composite.image.destination-atop.html
canvas/philip/tests/2d.composite.solid.lighter.html
canvas/philip/tests/2d.composite.image.destination-in.html
canvas/philip/tests/2d.composite.solid.source-out.html
canvas/philip/tests/2d.composite.image.copy.html
canvas/philip/tests/2d.composite.operation.default.html
canvas/philip/tests/2d.composite.solid.destination-atop.html
canvas/philip/tests/2d.composite.canvas.destination-over.html
canvas/philip/tests/2d.composite.canvas.destination-atop.html
canvas/philip/tests/2d.composite.canvas.lighter.html
canvas/philip/tests/2d.composite.canvas.xor.html
canvas/philip/tests/2d.composite.canvas.source-over.html
canvas/philip/tests/2d.composite.solid.copy.html
Comment 10 Build Bot 2014-07-14 10:38:46 PDT
Created attachment 234866 [details]
Archive of layout-test-results from webkit-ews-04 for mac-mountainlion

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: webkit-ews-04  Port: mac-mountainlion  Platform: Mac OS X 10.8.5
Comment 11 Darin Adler 2014-07-14 14:13:48 PDT
Comment on attachment 234857 [details]
patch

Can’t just remove these names without renumbering the constants they correspond to!

Are you sure these modes are unimplemented on all platforms? How did you determine this?
Comment 12 KwangHyuk 2014-07-14 17:56:20 PDT
(In reply to comment #11)

First of all, thank you for your review.

> (From update of attachment 234857 [details])
> Can’t just remove these names without renumbering the constants they correspond to!
> 
I agree with you, so I am thinking the way how I can solve it. :)


> Are you sure these modes are unimplemented on all platforms? How did you determine this?

There is test cases like this.
LayoutTests/canvas/philip/tests/2d.composite.operation.clear.html
Comment 13 KwangHyuk 2014-07-15 01:07:58 PDT
> Are you sure these modes are unimplemented on all platforms? How did you determine this?

I could find article about dark operation and some browsers still support it.

http://www.rekim.com/2011/02/11/html5-canvas-globalcompositeoperation-browser-handling/

For now, I seem to understand the reason why you asked it. :)

Thank you and this bug would be better to be closed.