Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upwebgl: Implement toDataURL() #19147
Closed
webgl: Implement toDataURL() #19147
Labels
Comments
|
With respect to the origin handling, https://www.khronos.org/registry/webgl/specs/latest/1.0/#4.2 seems like the relevant section here. The note that "these rules imply that the origin-clean flag for a canvas rendered using WebGL will never be set to false" seems particularly interesting. |
|
Added a citation of that spec text. |
|
I'm looking into this today, apparently all the |
bors-servo
added a commit
that referenced
this issue
Mar 23, 2018
Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes #19147) <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20400) <!-- Reviewable:end -->
bors-servo
added a commit
that referenced
this issue
Mar 23, 2018
Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes #19147) <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20400) <!-- Reviewable:end -->
bors-servo
added a commit
that referenced
this issue
Mar 23, 2018
Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes #19147) <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20400) <!-- Reviewable:end -->
bors-servo
added a commit
that referenced
this issue
Mar 24, 2018
Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes #19147) <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20400) <!-- Reviewable:end -->
bors-servo
added a commit
that referenced
this issue
Mar 24, 2018
Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes #19147) <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20400) <!-- Reviewable:end -->
bors-servo
added a commit
that referenced
this issue
Mar 24, 2018
Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes #19147) <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20400) <!-- Reviewable:end -->
pmocher
pushed a commit
to Brody-Eastwood/servo
that referenced
this issue
Mar 30, 2018
# This is the 1st commit message: resolved merge conflict # This is the commit message servo#2: style(capture_webrender): use eprintln for error output # This is the commit message servo#3: Fix some more WebGL methods # This is the commit message servo#4: Implement OES_element_index_uint (fixes servo#20384) # This is the commit message servo#5: Use mozjs 0.4 # This is the commit message servo#6: Add safe `handle` function for rooted heap values # This is the commit message servo#7: Use unsafe Heap::handle wherever needed # This is the commit message servo#8: Change WebGL function signatures accepting typed arrays # This is the commit message servo#9: Adapt function bodies for usage with typed array args # This is the commit message servo#10: Adapt uniform[fv] and similar to accept typed array args # This is the commit message servo#11: Appease test-tidy # This is the commit message servo#12: Fix sanity check in vertex attrib # This is the commit message servo#13: Fix indentation # This is the commit message servo#14: Unify argument auto rooting in codegen # This is the commit message servo#15: Add codegen test for function overloads taking typed array args # This is the commit message servo#16: Use safe to_vec() for typed arrays in WebGL bindings # This is the commit message servo#17: Bug 1448138 - Rename string DataFlags::SHARED to REFCOUNTED to make it clearer to those reading the code. (Servo changes.) r=erahm # This is the commit message servo#18: Used the zip function to iterate over both vectors simultaneously instead of an index variable and unwrapping the result. # This is the commit message servo#19: Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes servo#19147) # This is the commit message servo#20: Update web-platform-tests to revision d04a8fc02b85bd32799691759c8c05ead07cd939 # This is the commit message servo#21: Implement missing checks in WebGLRenderingContext::GetBufferParameter # This is the commit message servo#22: Implement WebGLRenderingContextBase.getAttachedShaders # This is the commit message servo#23: Implement missing WebGLShader checks Methods compileShader and getShaderParameter should emit an error when the shader has been deleted. # This is the commit message servo#24: Add constructors for typed arrays in DOMMatrix and DOMMatrixReadOnly # This is the commit message servo#25: feat(webidl): expose arraybuffer overload in body idl # This is the commit message servo#26: feat(consume_body): implement consume_body accepts arraybuffer # This is the commit message servo#27: refactor(consume_body): json stored in roottraceablebox # This is the commit message servo#28: test(wpt): update fetch test metadata # This is the commit message servo#29: Implement gl.getParameter(gl.ALIASED_POINT_SIZE_RANGE) # This is the commit message servo#30: TextDecoder's Decode now receives a BufferSource as input # This is the commit message servo#31: Update mozjs. # This is the commit message servo#32: Switches WriteValue to use BufferSource # This is the commit message servo#33: Switches characteristic to use BufferSource # This is the commit message servo#34: Updates Bluetooth type to use BufferSource # This is the commit message servo#35: Websockets send typed arrays now # This is the commit message servo#36: Dedupe lazy_static🎉 🎉 🎉 # This is the commit message servo#37: Statically allocate static atoms. # This is the commit message servo#38: Update web-platform-tests to revision d04a8fc02b85bd32799691759c8c05ead07cd939 # This is the commit message servo#39: refactor(websocket): do not borrow sender anymore
Brody-Eastwood
added a commit
to Brody-Eastwood/servo
that referenced
this issue
Mar 30, 2018
Brody-Eastwood
added a commit
to Brody-Eastwood/servo
that referenced
this issue
Mar 30, 2018
Squashed commit: [263660b] Converted tabs to spaces [9e809f6] Removed files that shouldn't be in the repo. [20fe052] Use ByteBuf for the canvas messages The type Vec<u8> is super unefficient to work with in Serde if all you want to represent is a simple blob. [3b9d272] refactor(websocket): do not borrow sender anymore [4885da6] removed 'unused import' build warning [e3711e2] Update web-platform-tests to revision d04a8fc02b85bd32799691759c8c05ead07cd939 [aafcefd] finished associating CanvasId to layout [3fdc5d5] Websockets send typed arrays now [36e8cdd] setting up canvas id in layout [45ee9b4] fix time measure [7783b1a] Updates Bluetooth type to use BufferSource [3adbd69] Switches characteristic to use BufferSource [d361227] Switches WriteValue to use BufferSource [1171f75] timed test to drawImage from one canvas to another [bdef1e3] Update mozjs. [00238ce] TextDecoder's Decode now receives a BufferSource as input [dba43fd] test(wpt): update fetch test metadata [79ffa61] Implement gl.getParameter(gl.ALIASED_POINT_SIZE_RANGE) [ffeca22] Implement missing WebGLShader checks Methods compileShader and getShaderParameter should emit an error when the shader has been deleted. [cd29bc7] Implement WebGLRenderingContextBase.getAttachedShaders [a976440] Implement missing checks in WebGLRenderingContext::GetBufferParameter [7a0566a] Update web-platform-tests to revision d04a8fc02b85bd32799691759c8c05ead07cd939 [7ef9b26] Add constructors for typed arrays in DOMMatrix and DOMMatrixReadOnly [87801ae] Use safe to_vec() for typed arrays in WebGL bindings [b5be714] Unify argument auto rooting in codegen [f1d916b] Fix indentation [81a7a34] Fix sanity check in vertex attrib [70b4428] Appease test-tidy [32b2794] Adapt uniform[fv] and similar to accept typed array args [cb6cae4] Adapt function bodies for usage with typed array args [1e031cf] Change WebGL function signatures accepting typed arrays [f1137de] Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes servo#19147) [3b2b261] Use mozjs 0.4 [421787d] style(capture_webrender): use eprintln for error output [fb6b041] refactor(build): generate revision into out_dir [ba0b578] refactor(build): generate revision via build.rs [3e4a00f] Implement OES_element_index_uint (fixes servo#20384) [8e3e5ba] Fix some more WebGL methods [1c24c5c] Initial steps finally builds! [fc6cba0] Implements profiler for blocked recv [a2aeb0c] Implement gl.getParameter(gl.VIEWPORT) [8034dd2] Implement gl.getParameter(gl.CURRENT_PROGRAM) [2ca56bf] Make some WebGL parameters non-optional (fixes servo#8753) Those parameters aren't optional in the current spec. The test element-array-buffer-delete-recreate.html now fails because we don't actually implement gl.getParameter(gl.CURRENT_PROGRAM). [6aaa41c] style: Update bindings. Signed-off-by: Emilio Cobos ?lvarez <emilio@crisal.io> [3824dee] style: Rename StyleContext to ComputedStyle. Bug: 1447483 Reviewed-by: jwatt MozReview-Commit-ID: KATZ6DkmpVY Signed-off-by: Emilio Cobos ?lvarez <emilio@crisal.io> [b4110f8] Implement WebGL getFramebufferAttachmentParameter API [7a57aff] loop until we exhausted all the servo events [af056a5] Use the --device-pixel-ratio in opt instead of /components/servo/ [2281fd6] remove useless pref [3fe5092] split window code and browser code in two different files [da28857] move key code into dedicated file [c695b91] forward EmbedderMsg to embedder [4f31467] Reduce the number of calls to the embedder by grouping the screen and window coordinates into one structure [37005b0] Update web-platform-tests to revision 26e8a76d7fbea0721468e791a325444ac9939a4f [639d640] Progress on initial steps [c60eb09] fix(keyevent): do not emit default ignorable codepoint [0722c7c] Second shot at initial steps [f504022] initial shot at initial steps [0ee53a7] feat(capture_webrender): write webrender revision into text [82b63c7] build(mach): generate webrender revision via cargo lockfile [7e9b877] introduce layout query timestamp [510eff9] extract querymsg from ReflowGoal
Brody-Eastwood
added a commit
to Brody-Eastwood/servo
that referenced
this issue
Mar 30, 2018
Squashed commit: [263660b] Converted tabs to spaces [9e809f6] Removed files that shouldn't be in the repo. [20fe052] Use ByteBuf for the canvas messages The type Vec<u8> is super unefficient to work with in Serde if all you want to represent is a simple blob. [3b9d272] refactor(websocket): do not borrow sender anymore [4885da6] removed 'unused import' build warning [e3711e2] Update web-platform-tests to revision d04a8fc02b85bd32799691759c8c05ead07cd939 [aafcefd] finished associating CanvasId to layout [3fdc5d5] Websockets send typed arrays now [36e8cdd] setting up canvas id in layout [45ee9b4] fix time measure [7783b1a] Updates Bluetooth type to use BufferSource [3adbd69] Switches characteristic to use BufferSource [d361227] Switches WriteValue to use BufferSource [1171f75] timed test to drawImage from one canvas to another [bdef1e3] Update mozjs. [00238ce] TextDecoder's Decode now receives a BufferSource as input [dba43fd] test(wpt): update fetch test metadata [79ffa61] Implement gl.getParameter(gl.ALIASED_POINT_SIZE_RANGE) [ffeca22] Implement missing WebGLShader checks Methods compileShader and getShaderParameter should emit an error when the shader has been deleted. [cd29bc7] Implement WebGLRenderingContextBase.getAttachedShaders [a976440] Implement missing checks in WebGLRenderingContext::GetBufferParameter [7a0566a] Update web-platform-tests to revision d04a8fc02b85bd32799691759c8c05ead07cd939 [7ef9b26] Add constructors for typed arrays in DOMMatrix and DOMMatrixReadOnly [87801ae] Use safe to_vec() for typed arrays in WebGL bindings [b5be714] Unify argument auto rooting in codegen [f1d916b] Fix indentation [81a7a34] Fix sanity check in vertex attrib [70b4428] Appease test-tidy [32b2794] Adapt uniform[fv] and similar to accept typed array args [cb6cae4] Adapt function bodies for usage with typed array args [1e031cf] Change WebGL function signatures accepting typed arrays [f1137de] Implement HTMLCanvasElement.toDataURL for WebGL canvas (fixes servo#19147) [3b2b261] Use mozjs 0.4 [421787d] style(capture_webrender): use eprintln for error output [fb6b041] refactor(build): generate revision into out_dir [ba0b578] refactor(build): generate revision via build.rs [3e4a00f] Implement OES_element_index_uint (fixes servo#20384) [8e3e5ba] Fix some more WebGL methods [1c24c5c] Initial steps finally builds! [fc6cba0] Implements profiler for blocked recv [a2aeb0c] Implement gl.getParameter(gl.VIEWPORT) [8034dd2] Implement gl.getParameter(gl.CURRENT_PROGRAM) [2ca56bf] Make some WebGL parameters non-optional (fixes servo#8753) Those parameters aren't optional in the current spec. The test element-array-buffer-delete-recreate.html now fails because we don't actually implement gl.getParameter(gl.CURRENT_PROGRAM). [6aaa41c] style: Update bindings. Signed-off-by: Emilio Cobos ?lvarez <emilio@crisal.io> [3824dee] style: Rename StyleContext to ComputedStyle. Bug: 1447483 Reviewed-by: jwatt MozReview-Commit-ID: KATZ6DkmpVY Signed-off-by: Emilio Cobos ?lvarez <emilio@crisal.io> [b4110f8] Implement WebGL getFramebufferAttachmentParameter API [7a57aff] loop until we exhausted all the servo events [af056a5] Use the --device-pixel-ratio in opt instead of /components/servo/ [2281fd6] remove useless pref [3fe5092] split window code and browser code in two different files [da28857] move key code into dedicated file [c695b91] forward EmbedderMsg to embedder [4f31467] Reduce the number of calls to the embedder by grouping the screen and window coordinates into one structure [37005b0] Update web-platform-tests to revision 26e8a76d7fbea0721468e791a325444ac9939a4f [639d640] Progress on initial steps [c60eb09] fix(keyevent): do not emit default ignorable codepoint [0722c7c] Second shot at initial steps [f504022] initial shot at initial steps [0ee53a7] feat(capture_webrender): write webrender revision into text [82b63c7] build(mach): generate webrender revision via cargo lockfile [7e9b877] introduce layout query timestamp [510eff9] extract querymsg from ReflowGoal
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I'm starting on this, as it's the source of a lot of errors in the webgl conformance tests. Open questions so far:
This is part of #10209