diff options
10 files changed, 96 insertions, 43 deletions
diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/resources/square-with-colorspin-profile.png b/third_party/WebKit/LayoutTests/fast/canvas/webgl/resources/square-with-colorspin-profile.png Binary files differnew file mode 100644 index 0000000..5c8927c --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/canvas/webgl/resources/square-with-colorspin-profile.png diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/resources/tex-image-and-sub-image-image-bitmap-utils.js b/third_party/WebKit/LayoutTests/fast/canvas/webgl/resources/tex-image-and-sub-image-image-bitmap-utils.js index fe6e884..fc01d51 100644 --- a/third_party/WebKit/LayoutTests/fast/canvas/webgl/resources/tex-image-and-sub-image-image-bitmap-utils.js +++ b/third_party/WebKit/LayoutTests/fast/canvas/webgl/resources/tex-image-and-sub-image-image-bitmap-utils.js @@ -13,7 +13,7 @@ function checkCanvasRect(buf, x, y, width, height, color, tolerance, bufWidth, r } } -function runOneIteration(useTexSubImage2D, bindingTarget, program, bitmap, flipY, premultiplyAlpha, retVal) +function runOneIteration(useTexSubImage2D, bindingTarget, program, bitmap, flipY, premultiplyAlpha, retVal, colorspace = 'empty') { gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT); // Enable writes to the RGBA channels @@ -61,12 +61,21 @@ function runOneIteration(useTexSubImage2D, bindingTarget, program, bitmap, flipY var bl = greenColor; var br = premultiplyAlpha ? ((retVal.alpha == 0.5) ? halfGreen : (retVal.alpha == 1) ? greenColor : blackColor) : greenColor; + var blueColor = [0, 0, 255]; + if (colorspace == 'none') { + tl = tr = bl = br = blueColor; + } else if (colorspace == 'default' || colorspace == 'notprovided') { + tl = tr = bl = br = redColor; + } + var loc; if (bindingTarget == gl.TEXTURE_CUBE_MAP) { loc = gl.getUniformLocation(program, "face"); } var tolerance = (retVal.alpha == 0) ? 0 : 3; + if (colorspace == 'default' || colorspace == 'none' || colorspace == 'notprovided') + tolerance = 13; // For linux and win, the tolerance can be 8. for (var tt = 0; tt < targets.length; ++tt) { if (bindingTarget == gl.TEXTURE_CUBE_MAP) { gl.uniform1i(loc, targets[tt]); @@ -89,27 +98,40 @@ function runOneIteration(useTexSubImage2D, bindingTarget, program, bitmap, flipY function runTestOnBindingTarget(bindingTarget, program, bitmaps, retVal) { var cases = [ - { sub: false }, - { sub: true }, + { sub: false, bitmap: bitmaps.defaultOption, flipY: false, premultiply: true, colorspace: 'empty' }, + { sub: true, bitmap: bitmaps.defaultOption, flipY: false, premultiply: true, colorspace: 'empty' }, + { sub: false, bitmap: bitmaps.noFlipYPremul, flipY: false, premultiply: true, colorspace: 'empty' }, + { sub: true, bitmap: bitmaps.noFlipYPremul, flipY: false, premultiply: true, colorspace: 'empty' }, + { sub: false, bitmap: bitmaps.noFlipYDefault, flipY: false, premultiply: true, colorspace: 'empty' }, + { sub: true, bitmap: bitmaps.noFlipYDefault, flipY: false, premultiply: true, colorspace: 'empty' }, + { sub: false, bitmap: bitmaps.noFlipYUnpremul, flipY: false, premultiply: false, colorspace: 'empty' }, + { sub: true, bitmap: bitmaps.noFlipYUnpremul, flipY: false, premultiply: false, colorspace: 'empty' }, + { sub: false, bitmap: bitmaps.flipYPremul, flipY: true, premultiply: true, colorspace: 'empty' }, + { sub: true, bitmap: bitmaps.flipYPremul, flipY: true, premultiply: true, colorspace: 'empty' }, + { sub: false, bitmap: bitmaps.flipYDefault, flipY: true, premultiply: true, colorspace: 'empty' }, + { sub: true, bitmap: bitmaps.flipYDefault, flipY: true, premultiply: true, colorspace: 'empty' }, + { sub: false, bitmap: bitmaps.flipYUnpremul, flipY: true, premultiply: false, colorspace: 'empty' }, + { sub: true, bitmap: bitmaps.flipYUnpremul, flipY: true, premultiply: false, colorspace: 'empty' }, + { sub: false, bitmap: bitmaps.colorspaceDef, flipY: false, premultiply: true, colorspace: retVal.colorspaceEffect ? 'notprovided' : 'empty' }, + { sub: true, bitmap: bitmaps.colorspaceDef, flipY: false, premultiply: true, colorspace: retVal.colorspaceEffect ? 'notprovided' : 'empty' }, + { sub: false, bitmap: bitmaps.colorspaceNone, flipY: false, premultiply: true, colorspace: retVal.colorspaceEffect ? 'none' : 'empty' }, + { sub: true, bitmap: bitmaps.colorspaceNone, flipY: false, premultiply: true, colorspace: retVal.colorspaceEffect ? 'none' : 'empty' }, + { sub: false, bitmap: bitmaps.colorspaceDefault, flipY: false, premultiply: true, colorspace: retVal.colorspaceEffect ? 'default' : 'empty' }, + { sub: true, bitmap: bitmaps.colorspaceDefault, flipY: false, premultiply: true, colorspace: retVal.colorspaceEffect ? 'default' : 'empty' }, ]; for (var i in cases) { - runOneIteration(cases[i].sub, bindingTarget, program, bitmaps.defaultOption, false, true, retVal); - runOneIteration(cases[i].sub, bindingTarget, program, bitmaps.noFlipYPremul, false, true, retVal); - runOneIteration(cases[i].sub, bindingTarget, program, bitmaps.noFlipYDefault, false, true, retVal); - runOneIteration(cases[i].sub, bindingTarget, program, bitmaps.noFlipYUnpremul, false, false, retVal); - runOneIteration(cases[i].sub, bindingTarget, program, bitmaps.flipYPremul, true, true, retVal); - runOneIteration(cases[i].sub, bindingTarget, program, bitmaps.flipYDefault, true, true, retVal); - runOneIteration(cases[i].sub, bindingTarget, program, bitmaps.flipYUnpremul, true, false, retVal); + runOneIteration(cases[i].sub, bindingTarget, program, cases[i].bitmap, cases[i].flipY, + cases[i].premultiply, retVal, cases[i].colorspace); } } -function runTest(bitmaps, alphaVal) +function runTest(bitmaps, alphaVal, colorspaceEffective) { - var retVal = {testPassed: true, alpha: alphaVal}; + var retVal = {testPassed: true, alpha: alphaVal, colorspaceEffect: colorspaceEffective}; var program = tiu.setupTexturedQuad(gl, internalFormat); runTestOnBindingTarget(gl.TEXTURE_2D, program, bitmaps, retVal); -// program = tiu.setupTexturedQuadWithCubeMap(gl, internalFormat); -// runTestOnBindingTarget(gl.TEXTURE_CUBE_MAP, program, bitmaps, retVal); + program = tiu.setupTexturedQuadWithCubeMap(gl, internalFormat); + runTestOnBindingTarget(gl.TEXTURE_CUBE_MAP, program, bitmaps, retVal); return retVal.testPassed; } diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-blob.html b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-blob.html index a3b109c..055cb09 100644 --- a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-blob.html +++ b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-blob.html @@ -21,7 +21,8 @@ var blackColor = [0, 0, 0]; var halfRed = [128, 0, 0]; var halfGreen = [0, 128, 0]; -var blob = null; +var blob1 = null; +var blob2 = null; function promiseRejected() { @@ -43,16 +44,19 @@ function generateTest() gl.clearColor(0,0,0,1); gl.clearDepth(1); - var p1 = createImageBitmap(blob).then(function(imageBitmap) { bitmaps.defaultOption = imageBitmap }); - var p2 = createImageBitmap(blob, {imageOrientation: "none", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.noFlipYPremul = imageBitmap }); - var p3 = createImageBitmap(blob, {imageOrientation: "none", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.noFlipYDefault = imageBitmap }); - var p4 = createImageBitmap(blob, {imageOrientation: "none", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.noFlipYUnpremul = imageBitmap }); - var p5 = createImageBitmap(blob, {imageOrientation: "flipY", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.flipYPremul = imageBitmap }); - var p6 = createImageBitmap(blob, {imageOrientation: "flipY", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.flipYDefault = imageBitmap }); - var p7 = createImageBitmap(blob, {imageOrientation: "flipY", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.flipYUnpremul = imageBitmap }); - Promise.all([p1, p2, p3, p4, p5, p6, p7]).then(function() { + var p1 = createImageBitmap(blob1).then(function(imageBitmap) { bitmaps.defaultOption = imageBitmap }); + var p2 = createImageBitmap(blob1, {imageOrientation: "none", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.noFlipYPremul = imageBitmap }); + var p3 = createImageBitmap(blob1, {imageOrientation: "none", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.noFlipYDefault = imageBitmap }); + var p4 = createImageBitmap(blob1, {imageOrientation: "none", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.noFlipYUnpremul = imageBitmap }); + var p5 = createImageBitmap(blob1, {imageOrientation: "flipY", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.flipYPremul = imageBitmap }); + var p6 = createImageBitmap(blob1, {imageOrientation: "flipY", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.flipYDefault = imageBitmap }); + var p7 = createImageBitmap(blob1, {imageOrientation: "flipY", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.flipYUnpremul = imageBitmap }); + var p8 = createImageBitmap(blob2).then(function(imageBitmap) { bitmaps.colorspaceDef = imageBitmap }); + var p9 = createImageBitmap(blob2, {colorspaceConversion: "none"}).then(function(imageBitmap) { bitmaps.colorspaceNone = imageBitmap }); + var p10 = createImageBitmap(blob2, {colorspaceConversion: "default"}).then(function(imageBitmap) { bitmaps.colorspaceDefault = imageBitmap }); + Promise.all([p1, p2, p3, p4, p5, p6, p7, p8, p9, p10]).then(function() { var alphaVal = 0.5; - var testPassed = runTest(bitmaps, alphaVal); + var testPassed = runTest(bitmaps, alphaVal, true); if (testPassed) pass(); finishJSTest(); @@ -68,13 +72,20 @@ function init() testRunner.overridePreference("WebKitWebGLEnabled", "1"); testRunner.dumpAsText(); } - var xhr = new XMLHttpRequest(); - xhr.open("GET", 'resources/red-green-semi-transparent.png'); - xhr.responseType = 'blob'; - xhr.send(); - xhr.onload = function() { - blob = xhr.response; - generateTest(); + var xhr1 = new XMLHttpRequest(); + xhr1.open("GET", 'resources/red-green-semi-transparent.png'); + xhr1.responseType = 'blob'; + xhr1.send(); + xhr1.onload = function() { + blob1 = xhr1.response; + var xhr2 = new XMLHttpRequest(); + xhr2.open("GET", 'resources/square-with-colorspin-profile.png'); + xhr2.responseType = 'blob'; + xhr2.send(); + xhr2.onload = function() { + blob2 = xhr2.response; + generateTest(); + } } } diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-canvas.html b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-canvas.html index 74dd83c..97cd5fd 100644 --- a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-canvas.html +++ b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-canvas.html @@ -69,9 +69,12 @@ function generateTest() var p5 = createImageBitmap(testCanvas, {imageOrientation: "flipY", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.flipYPremul = imageBitmap }); var p6 = createImageBitmap(testCanvas, {imageOrientation: "flipY", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.flipYDefault = imageBitmap }); var p7 = createImageBitmap(testCanvas, {imageOrientation: "flipY", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.flipYUnpremul = imageBitmap }); - Promise.all([p1, p2, p3, p4, p5, p6, p7]).then(function() { + var p8 = createImageBitmap(testCanvas).then(function(imageBitmap) { bitmaps.colorspaceDef = imageBitmap }); + var p9 = createImageBitmap(testCanvas, {colorspaceConversion: "none"}).then(function(imageBitmap) { bitmaps.colorspaceNone = imageBitmap }); + var p10 = createImageBitmap(testCanvas, {colorspaceConversion: "default"}).then(function(imageBitmap) { bitmaps.colorspaceDefault = imageBitmap }); + Promise.all([p1, p2, p3, p4, p5, p6, p7, p8, p9, p10]).then(function() { var alphaVal = 0.5; - var testPassed = runTest(bitmaps, alphaVal); + var testPassed = runTest(bitmaps, alphaVal, false); if (testPassed) pass(); finishJSTest(); diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image-bitmap.html b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image-bitmap.html index d3116d0..75928662 100644 --- a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image-bitmap.html +++ b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image-bitmap.html @@ -59,9 +59,12 @@ function generateTest() var p5 = createImageBitmap(bitmap, {imageOrientation: "flipY", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.flipYPremul = imageBitmap }); var p6 = createImageBitmap(bitmap, {imageOrientation: "flipY", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.flipYDefault = imageBitmap }); var p7 = createImageBitmap(bitmap, {imageOrientation: "flipY", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.flipYUnpremul = imageBitmap }); - Promise.all([p1, p2, p3, p4, p5, p6, p7]).then(function() { + var p8 = createImageBitmap(bitmap).then(function(imageBitmap) { bitmaps.colorspaceDef = imageBitmap }); + var p9 = createImageBitmap(bitmap, {colorspaceConversion: "none"}).then(function(imageBitmap) { bitmaps.colorspaceNone = imageBitmap }); + var p10 = createImageBitmap(bitmap, {colorspaceConversion: "default"}).then(function(imageBitmap) { bitmaps.colorspaceDefault = imageBitmap }); + Promise.all([p1, p2, p3, p4, p5, p6, p7, p8, p9, p10]).then(function() { var alphaVal = 0; - var testPassed = runTest(bitmaps, alphaVal); + var testPassed = runTest(bitmaps, alphaVal, false); if (testPassed) pass(); finishJSTest(); diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image-data.html b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image-data.html index 60c3c38..deaf45d 100644 --- a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image-data.html +++ b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image-data.html @@ -56,9 +56,12 @@ function generateTest() var p5 = createImageBitmap(imageData, {imageOrientation: "flipY", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.flipYPremul = imageBitmap }); var p6 = createImageBitmap(imageData, {imageOrientation: "flipY", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.flipYDefault = imageBitmap }); var p7 = createImageBitmap(imageData, {imageOrientation: "flipY", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.flipYUnpremul = imageBitmap }); - Promise.all([p1, p2, p3, p4, p5, p6, p7]).then(function() { + var p8 = createImageBitmap(imageData).then(function(imageBitmap) { bitmaps.colorspaceDef = imageBitmap }); + var p9 = createImageBitmap(imageData, {colorspaceConversion: "none"}).then(function(imageBitmap) { bitmaps.colorspaceNone = imageBitmap }); + var p10 = createImageBitmap(imageData, {colorspaceConversion: "default"}).then(function(imageBitmap) { bitmaps.colorspaceDefault = imageBitmap }); + Promise.all([p1, p2, p3, p4, p5, p6, p7, p8, p9, p10]).then(function() { var alphaVal = 0; - var testPassed = runTest(bitmaps, alphaVal); + var testPassed = runTest(bitmaps, alphaVal, false); if (testPassed) pass(); finishJSTest(); diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image.html b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image.html index 93e1b34..185ca8f 100644 --- a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image.html +++ b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-image.html @@ -50,9 +50,12 @@ function generateTest() var p5 = createImageBitmap(image, {imageOrientation: "flipY", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.flipYPremul = imageBitmap }); var p6 = createImageBitmap(image, {imageOrientation: "flipY", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.flipYDefault = imageBitmap }); var p7 = createImageBitmap(image, {imageOrientation: "flipY", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.flipYUnpremul = imageBitmap }); - Promise.all([p1, p2, p3, p4, p5, p6, p7]).then(function() { + var p8 = createImageBitmap(image).then(function(imageBitmap) { bitmaps.colorspaceDef = imageBitmap }); + var p9 = createImageBitmap(image, {colorspaceConversion: "none"}).then(function(imageBitmap) { bitmaps.colorspaceNone = imageBitmap }); + var p10 = createImageBitmap(image, {colorspaceConversion: "default"}).then(function(imageBitmap) { bitmaps.colorspaceDefault = imageBitmap }); + Promise.all([p1, p2, p3, p4, p5, p6, p7, p8, p9, p10]).then(function() { var alphaVal = 0.5; - var testPassed = runTest(bitmaps, alphaVal); + var testPassed = runTest(bitmaps, alphaVal, false); if (testPassed) pass(); finishJSTest(); diff --git a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-video.html b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-video.html index f0ee8c8..77b3450 100644 --- a/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-video.html +++ b/third_party/WebKit/LayoutTests/fast/canvas/webgl/tex-image-and-sub-image-2d-image-bitmap-from-video.html @@ -50,9 +50,12 @@ function generateTest() var p5 = createImageBitmap(video, {imageOrientation: "flipY", premultiplyAlpha: "premultiply"}).then(function(imageBitmap) { bitmaps.flipYPremul = imageBitmap }); var p6 = createImageBitmap(video, {imageOrientation: "flipY", premultiplyAlpha: "default"}).then(function(imageBitmap) { bitmaps.flipYDefault = imageBitmap }); var p7 = createImageBitmap(video, {imageOrientation: "flipY", premultiplyAlpha: "none"}).then(function(imageBitmap) { bitmaps.flipYUnpremul = imageBitmap }); - Promise.all([p1, p2, p3, p4, p5, p6, p7]).then(function() { + var p8 = createImageBitmap(video).then(function(imageBitmap) { bitmaps.colorspaceDef = imageBitmap }); + var p9 = createImageBitmap(video, {colorspaceConversion: "none"}).then(function(imageBitmap) { bitmaps.colorspaceNone = imageBitmap }); + var p10 = createImageBitmap(video, {colorspaceConversion: "default"}).then(function(imageBitmap) { bitmaps.colorspaceDefault = imageBitmap }); + Promise.all([p1, p2, p3, p4, p5, p6, p7, p8, p9, p10]).then(function() { var alphaVal = 1; - var testPassed = runTest(bitmaps, alphaVal); + var testPassed = runTest(bitmaps, alphaVal, false); if (testPassed) pass(); finishJSTest(); diff --git a/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.cpp b/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.cpp index 9c36630..acfb0f08 100644 --- a/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.cpp +++ b/third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.cpp @@ -222,7 +222,10 @@ void ImageBitmapFactories::ImageBitmapLoader::decodeImageOnDecoderThread(WebTask ImageDecoder::AlphaOption alphaOp = ImageDecoder::AlphaPremultiplied; if (m_options.premultiplyAlpha() == "none") alphaOp = ImageDecoder::AlphaNotPremultiplied; - OwnPtr<ImageDecoder> decoder(ImageDecoder::create(*sharedBuffer, alphaOp, ImageDecoder::GammaAndColorProfileApplied)); + ImageDecoder::GammaAndColorProfileOption colorspaceOp = ImageDecoder::GammaAndColorProfileApplied; + if (m_options.colorspaceConversion() == "none") + colorspaceOp = ImageDecoder::GammaAndColorProfileIgnored; + OwnPtr<ImageDecoder> decoder(ImageDecoder::create(*sharedBuffer, alphaOp, colorspaceOp)); RefPtr<SkImage> frame; if (decoder) { decoder->setData(sharedBuffer.get(), true); diff --git a/third_party/WebKit/Source/core/imagebitmap/ImageBitmapOptions.idl b/third_party/WebKit/Source/core/imagebitmap/ImageBitmapOptions.idl index 3ed9742..56f842e 100644 --- a/third_party/WebKit/Source/core/imagebitmap/ImageBitmapOptions.idl +++ b/third_party/WebKit/Source/core/imagebitmap/ImageBitmapOptions.idl @@ -6,7 +6,9 @@ [RuntimeEnabled=ExperimentalCanvasFeatures] enum ImageOrientation { "none", "flipY" }; [RuntimeEnabled=ExperimentalCanvasFeatures] enum PremultiplyAlpha { "none", "premultiply", "default" }; +[RuntimeEnabled=ExperimentalCanvasFeatures] enum ColorspaceConversion { "none", "default" }; dictionary ImageBitmapOptions { - [RuntimeEnabled=ExperimentalCanvasFeatures] PremultiplyAlpha premultiplyAlpha = "default"; [RuntimeEnabled=ExperimentalCanvasFeatures] ImageOrientation imageOrientation = "none"; + [RuntimeEnabled=ExperimentalCanvasFeatures] PremultiplyAlpha premultiplyAlpha = "default"; + [RuntimeEnabled=ExperimentalCanvasFeatures] ColorspaceConversion colorspaceConversion = "default"; }; |