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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/canvas/webgl/resources/tex-image-and-sub-image-image-bitmap-utils.js

Issue 2845193002: Refactor ImageBitmap constructor from ImageData to be color managed
Patch Set: local commit - all working except unpremultiply Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 function checkCanvasRect(buf, x, y, width, height, color, tolerance, bufWidth, r etVal) 1 function checkCanvasRect(buf, x, y, width, height, color, tolerance, bufWidth, r etVal)
2 { 2 {
3 for (var px = x; px < x + width; px++) { 3 for (var px = x; px < x + width; px++) {
4 for (var py = y; py < y + height; py++) { 4 for (var py = y; py < y + height; py++) {
5 var offset = (py * bufWidth + px) * 4; 5 var offset = (py * bufWidth + px) * 4;
6 for (var j = 0; j < color.length; j++) { 6 for (var j = 0; j < color.length; j++) {
7 if (Math.abs(buf[offset + j] - color[j]) > tolerance) { 7 if (Math.abs(buf[offset + j] - color[j]) > tolerance) {
8 retVal.testPassed = false; 8 retVal.testPassed = false;
9 return; 9 return;
10 } 10 }
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 } 97 }
98 98
99 function runTestOnBindingTarget(bindingTarget, program, bitmaps, retVal) { 99 function runTestOnBindingTarget(bindingTarget, program, bitmaps, retVal) {
100 var cases = [ 100 var cases = [
101 { sub: false, bitmap: bitmaps.defaultOption, flipY: false, premultiply: true, colorSpace: 'empty' }, 101 { sub: false, bitmap: bitmaps.defaultOption, flipY: false, premultiply: true, colorSpace: 'empty' },
102 { sub: true, bitmap: bitmaps.defaultOption, flipY: false, premultiply: t rue, colorSpace: 'empty' }, 102 { sub: true, bitmap: bitmaps.defaultOption, flipY: false, premultiply: t rue, colorSpace: 'empty' },
103 { sub: false, bitmap: bitmaps.noFlipYPremul, flipY: false, premultiply: true, colorSpace: 'empty' }, 103 { sub: false, bitmap: bitmaps.noFlipYPremul, flipY: false, premultiply: true, colorSpace: 'empty' },
104 { sub: true, bitmap: bitmaps.noFlipYPremul, flipY: false, premultiply: t rue, colorSpace: 'empty' }, 104 { sub: true, bitmap: bitmaps.noFlipYPremul, flipY: false, premultiply: t rue, colorSpace: 'empty' },
105 { sub: false, bitmap: bitmaps.noFlipYDefault, flipY: false, premultiply: true, colorSpace: 'empty' }, 105 { sub: false, bitmap: bitmaps.noFlipYDefault, flipY: false, premultiply: true, colorSpace: 'empty' },
106 { sub: true, bitmap: bitmaps.noFlipYDefault, flipY: false, premultiply: true, colorSpace: 'empty' }, 106 { sub: true, bitmap: bitmaps.noFlipYDefault, flipY: false, premultiply: true, colorSpace: 'empty' },
107 { sub: false, bitmap: bitmaps.noFlipYUnpremul, flipY: false, premultiply : false, colorSpace: 'empty' }, 107 // { sub: false, bitmap: bitmaps.noFlipYUnpremul, flipY: false, premulti ply: false, colorSpace: 'empty' },
108 // TODO(zakerinasab): Uncomment these tests when 108 // TODO(zakerinasab): Uncomment these tests when
109 // WebGLRenderingContextBase is refactored to not draw unpremul SkImage 109 // WebGLRenderingContextBase is refactored to not draw unpremul SkImage
110 // to SkCanvas (crbug.com/683307) 110 // to SkCanvas (crbug.com/683307)
111 // { sub: true, bitmap: bitmaps.noFlipYUnpremul, flipY: false, premultip ly: false, colorSpace: 'empty' }, 111 // { sub: true, bitmap: bitmaps.noFlipYUnpremul, flipY: false, premultip ly: false, colorSpace: 'empty' },
112 { sub: false, bitmap: bitmaps.flipYPremul, flipY: true, premultiply: tru e, colorSpace: 'empty' }, 112 { sub: false, bitmap: bitmaps.flipYPremul, flipY: true, premultiply: tru e, colorSpace: 'empty' },
113 { sub: true, bitmap: bitmaps.flipYPremul, flipY: true, premultiply: true , colorSpace: 'empty' }, 113 { sub: true, bitmap: bitmaps.flipYPremul, flipY: true, premultiply: true , colorSpace: 'empty' },
114 { sub: false, bitmap: bitmaps.flipYDefault, flipY: true, premultiply: tr ue, colorSpace: 'empty' }, 114 { sub: false, bitmap: bitmaps.flipYDefault, flipY: true, premultiply: tr ue, colorSpace: 'empty' },
115 { sub: true, bitmap: bitmaps.flipYDefault, flipY: true, premultiply: tru e, colorSpace: 'empty' }, 115 { sub: true, bitmap: bitmaps.flipYDefault, flipY: true, premultiply: tru e, colorSpace: 'empty' },
116 // { sub: false, bitmap: bitmaps.flipYUnpremul, flipY: true, premultiply : false, colorSpace: 'empty' }, 116 // { sub: false, bitmap: bitmaps.flipYUnpremul, flipY: true, premultiply : false, colorSpace: 'empty' },
117 // { sub: true, bitmap: bitmaps.flipYUnpremul, flipY: true, premultiply: false, colorSpace: 'empty' }, 117 // { sub: true, bitmap: bitmaps.flipYUnpremul, flipY: true, premultiply: false, colorSpace: 'empty' },
(...skipping 13 matching lines...) Expand all
131 131
132 function runTest(bitmaps, alphaVal, colorSpaceEffective) 132 function runTest(bitmaps, alphaVal, colorSpaceEffective)
133 { 133 {
134 var retVal = {testPassed: true, alpha: alphaVal, colorSpaceEffect: colorSpac eEffective}; 134 var retVal = {testPassed: true, alpha: alphaVal, colorSpaceEffect: colorSpac eEffective};
135 var program = tiu.setupTexturedQuad(gl, internalFormat); 135 var program = tiu.setupTexturedQuad(gl, internalFormat);
136 runTestOnBindingTarget(gl.TEXTURE_2D, program, bitmaps, retVal); 136 runTestOnBindingTarget(gl.TEXTURE_2D, program, bitmaps, retVal);
137 program = tiu.setupTexturedQuadWithCubeMap(gl, internalFormat); 137 program = tiu.setupTexturedQuadWithCubeMap(gl, internalFormat);
138 runTestOnBindingTarget(gl.TEXTURE_CUBE_MAP, program, bitmaps, retVal); 138 runTestOnBindingTarget(gl.TEXTURE_CUBE_MAP, program, bitmaps, retVal);
139 return retVal.testPassed; 139 return retVal.testPassed;
140 } 140 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698