Commit Graph

1083 Commits

Author SHA1 Message Date
Benoit Jacob
1bb06ab264 Bug 705668 - Remove IIDs on WebGL implementation classes - r=ehsan
These IIDs were used in the past to check, using do_QueryInterface, that the objects passed to WebGL functions were really of the expected type. Now that WebGL classes are marked 'builtinclass' in the IDL and that check has been removed (see bug 638328), none of that is needed anymore.
2011-12-04 14:15:42 -05:00
Ms2ger
b4a02080cc Bug 705435 - Remove dead code: CanvasUtils::LogMessage{f,}; r=bjacob 2011-12-03 22:50:17 +01:00
Ms2ger
4879be0711 Bug 704088 - Pass dom::Element to nsLayoutUtils::SurfaceFromElement; r=bz 2011-12-03 22:50:16 +01:00
Doug Sherk
a9cd727f00 Bug 660070: catch EGL_CONTEXT_LOST and send WebGL an event for it r=bjacob
Catches the EGL_CONTEXT_LOST error which occurs after driver resets, and sends a
WebGL context the canvas event webglcontextlost when this occurs.
2011-12-02 23:52:35 -08:00
Benoit Jacob
4cd22aea90 Bug 705663 - Fix braindead WebGLTexture::HasImageInfoAt - r=jrmuizel 2011-11-28 14:30:28 -05:00
Jeff Gilbert
a3b143816e Bug 702058 - Prefer CGL+FBOs by default on Mac - r=bjacob 2011-11-23 16:49:02 -08:00
Michael Wu
fec7797d9c Bug 703307 - Fix build/crash in gonk, r=cjones 2011-11-22 11:51:51 -08:00
Doug Sherk
ddca88f162 Bug 656824: fixed invalid return type on loseContext and restoreContext r=bjacob 2011-11-18 22:57:29 -05:00
Doug Sherk
ae918111a2 Bug 656824: changed WebGL robustness timer to not get reset after each draw operation r=bjacob
This patch should improve performance of the robustness timer by not resetting
it each time a draw operation happens. It still checks if there's any activity
and, if not, it will stop firing it. It includes a single extra timer firing
after activity dies to make sure we don't miss anything. Also includes a fix for
robustness being marked as existing when it really isn't.
2011-11-18 22:57:29 -05:00
Doug Sherk
55f0c47354 Bug 699626: patch reftest analyzer and WebGL reftests r=dbaron 2011-11-18 22:57:29 -05:00
Jeff Muizelaar
89aee6469c Bug 666312. Check surface status instead of surface existance. r=mwoodrow
We always have cairo surfaces now instead of having NULL ones. We should
check the status instead. This fixes crashes with the quartz and skia
azure backends.
2011-11-19 01:39:14 +13:00
Matt Woodrow
3794a15891 Bug 702517 - Mark tests that fail in chrome as passing. r=jrmuizel 2011-11-18 17:00:38 +13:00
Matt Woodrow
0b21d3a24b Bug 702517 - Expose skia backend as a GfxInfo property and use it to mark tests as passing. r=jrmuizel 2011-11-18 17:00:38 +13:00
Marco Castelluccio
65fe650cde Bug 699258 - Get skia backend compiling and running on Windows. r=mattwoodrow 2011-11-18 17:00:37 +13:00
Brian O'Keefe
2f33710188 Bug 650720 - Fix the JPEG and BMP encoders to composite onto black, instead of white. r=joe 2011-11-14 11:21:19 +13:00
Matt Brubeck
d9a00c1f73 Back out 5ddda2b25e28 and 3abfdb807a4f (bug 699258) for crashes in WinXP tests 2011-11-11 17:49:47 -08:00
Marco Castelluccio
f70d384da0 Bug 699258 - Part 2: [Skia] Get Skia backend working on Windows. 2011-11-11 15:51:00 -05:00
Ted Mielczarek
ceb591acdb bug 693595 - Add WebGLExtensionStandardDerivatives to WebGLContextNotSupported. r=bjacob 2011-10-19 10:01:27 -04:00
Doug Sherk
dc75ce31b4 Bug 665578: prevented ANGLE built-in function emulation on OS X 10.7 and newer r=bjacob 2011-11-07 19:33:51 -05:00
Benoit Jacob
70ce6801c5 Bug 665578 - Backed out changeset 82a297b0d0d3 for compile error 2011-11-07 17:32:07 -05:00
Doug Sherk
54955983e0 Bug 665578: prevented ANGLE built-in function emulation on OS X 10.7 and newer r=bjacob 2011-11-07 17:13:34 -05:00
Ed Morley
6a998be2c5 Backout 4997c6f8b24d (bug 616542) for causing locally run mochitest-browser-chrome test runs to fail 2011-11-05 18:35:59 +00:00
Rail Aliiev
364e83c545 Bug 616542 - Shorten file path length of mochitest; r=ted 2011-11-04 21:13:42 +00:00
Doug Sherk
e3bbb80d57 Bug 699626: fix TEST-UNEXPECTED-FAIL > TEST-KNOWN-FAIL in WebGL reftests r=burning 2011-11-03 19:05:16 -07:00
Benoit Jacob
163b4e0b37 Bug 699516 - Rename WEBKIT_lose_context to WEBGL_EXT_lose_context - r=dsherk
See today's discussion on public_webgl list. WEBGL_EXT_lose_context will be officially created in a few days.
2011-11-03 20:29:57 -04:00
Benoit Jacob
5d2b8328d9 Bug 699522 - WebGL lose_context extension was not listed by webgl.getSupportedExtensions() - r=dsherk 2011-11-03 15:52:52 -04:00
Doug Sherk
5794b1ff48 Bug 693703: added additional logging information for mochitests, incl. image reference differences r=bjacob
Added some code to print to dump output of WebGL mochitest failures. Also added
special code to handle incorrect reference images. It will now provide the user
with a way to compare the reference and actual drawings.
2011-11-03 10:50:40 -04:00
Doug Sherk
504f8b7886 Bug 682496 - fixed program-test.html test failures - r=bjacob
Fixed programs and shaders so that when they're marked for deletion and then detached completely, are deleted.
2011-11-03 10:50:40 -04:00
Doug Sherk
9b48259c92 Bug 697211: fixed stride not being returned correctly from getVertexAttrib r=jgilbert 2011-11-03 10:50:40 -04:00
Doug Sherk
42ae249746 Bug 695912: allow forcing MSAA on r=jgilbert
Allows forcing MSAA on even if we determine through the blocklist that the user
probably shouldn't be running it.
2011-11-03 10:50:40 -04:00
Doug Sherk
72f02b078a Bug 695912: implemented antialiasing blocklisting r=jgilbert
Antialiasing can be blocked through the downloaded blocklist now, as well as
static analysis compiled into the OS-specific handlers for graphics features.
2011-11-03 10:50:40 -04:00
Matt Woodrow
b74458f46e Bug 698318 - Share ArcToBezier code. r=jrmuizel 2011-11-03 08:55:03 +13:00
Matt Woodrow
bc5c7f13cf Bug 688367 - Add Skia backend to Azure. r=jrmuizel 2011-11-03 08:55:03 +13:00
Matt Woodrow
807731094a Bug 688342 - Make nsCanvasRenderingContext2D support Azure backends other than Direct2D. r=Bas 2011-11-03 08:55:03 +13:00
Benoit Jacob
35ae2edbb5 Bug 698856 - Mark one WebGL test page as expected to pass on Windows - no review, m1 orange fix 2011-11-02 11:25:32 -04:00
Benoit Jacob
7eb31233c8 Bug 698856 - Upgrade WebGL conformance test suite to r15981 - no review
The upstream is

   https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/

This changeset also updates our lists of failing tests, and the garbageCollect() call before each test page is now done on all platforms, instead of only on linux, as it's now clear that we've been having this problem everywhere.
2011-11-02 08:44:41 -04:00
Matt Brubeck
8f2d57ae91 Back out be8056caccb4 (Bug 698856) because of test failures 2011-11-02 07:33:54 -07:00
Benoit Jacob
6685d29617 Bug 698856 - Upgrade WebGL conformance test suite to r15981 - no review
The upstream is

   https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/

This changeset also updates our lists of failing tests, and the garbageCollect() call before each test page is now done on all platforms, instead of only on linux, as it's now clear that we've been having this problem everywhere.
2011-11-02 08:44:41 -04:00
Phil Ringnalda
d52b47a0b0 Back out 773e9705c61b (bug 697211) for orange 2011-10-31 19:02:50 -07:00
Doug Sherk
f5666cf39b Bug 697211 - fixed stride not being returned correctly from getVertexAttrib. r=jgilbert 2011-10-31 17:49:55 -07:00
Doug Sherk
0e41e843ea Bug 697757 - WebGL context fix for alpha being improperly set on OSX. r=jgilbert
If we request alpha and it isn't enabled, or we request it off and it gets
enabled, we now fail the pbuffer creation and fall back to FBOs. This is bad for
performance but allows us to pass the conformance test in this case.
2011-10-31 17:49:55 -07:00
Jeff Gilbert
947980965b Bug 697753 - Fix WebGL conf. errors in framebuffer-object-attachment - r=bjacob 2011-10-31 16:55:01 -07:00
Jeff Gilbert
4f29336b92 Bug 698088 - Rebind previous state after initializing fake-black textures - r=bjacob 2011-10-31 16:55:01 -07:00
Jeff Gilbert
5b4030b08d Bug 697560 - Generate WebGL errors in readPixels according to spec - r=bjacob
* * *
Bug 697560 - Disallow conformance failures on read-pixels-test - r=bjacob
2011-10-31 16:55:01 -07:00
Jeff Gilbert
4ce6514d96 Bug 697168 - Removes WebGL overloads for untyped ArrayBuffers where disallowed - r=bjacob 2011-10-31 16:55:00 -07:00
Benoit Jacob
0618beb3c4 Bug 677543 - Not clearing WebGL framebuffer in teapot demo - r=jgilbert
We are supposed to clear the WebGL framebuffer after it's been presented to the compositor and before the next draw operation, and were using the wrong way to know when we got composited. The right way is DidTransactionCallback.
2011-10-31 17:14:12 -04:00
Jonathan Watt
8a0b72332d Bug 695303 - Add a mozilla::clamped function to replace NS_CLAMP (so side affects of args are evaluated no more than once) and NS_MIN(max, NS_MAX(val, min)) (to make code clearer). r=bsmedberg. 2011-10-28 19:33:28 +01:00
Marco Bonardo
ddb3e139c0 Backout d9da4de6579c (Bug 682496) for M1 leaks. 2011-10-27 00:13:39 +02:00
Doug Sherk
1c15893d0b Bug 656824: Implemented ARB_robustness to detect driver resets in WebGL, only on GLX for now - r=bjacob
This patch implements ARB_robustness on GLX and allows scripts to handle driver resets
through events. The changes in this patch are very sweeping; they hit almost
every NS_IMETHODIMP function within WebGLContextGL.cpp and WebGLContext.cpp.
More work must be done on this to support EGL_CONTEXT_LOST.
2011-10-26 16:00:44 -04:00
Doug Sherk
46fabc604a Bug 682496: fixed program-test.html test failures
Fixed programs and shaders so that when they're marked for deletion and then detached completely, are deleted.
2011-10-26 16:00:44 -04:00
Benoit Jacob
c1d168ebeb Bug 697450 - Several WebGL texel unpack/pack functions are not inlined spontaneously, at least by GCC - r=jgilbert 2011-10-26 16:00:44 -04:00
Matt Woodrow
528fd16322 Bug 691976 - NULL check the JSContext before using JS_updateMallocCounter. r=Bas 2011-10-26 16:13:24 +13:00
Benoit Jacob
257620bd20 Bug 696889 - Upgrade ANGLE to r802 - no review
This is syncing us with the ANGLE project at

   http://code.google.com/p/angleproject/

Also, with this new ANGLE revision, two WebGL conformance tests are now passing on windows so this patch removes them from failing_tests_windows.txt.

--HG--
rename : gfx/angle/angle-instrinsic-msvc2005.patch => gfx/angle/angle-intrinsic-msvc2005.patch
2011-10-25 08:58:43 -04:00
Benoit Jacob
c3e7a55d14 Bug 696844 - Upgrade WebGL conformance test suite to r15892 - no review
This is just syncing us with the upstreal WebGL conformance tests from

  https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/conformance/

Also reenabling the quickCheckAPI tests, updating the list of failing tests (only one part of quickCheckAPI added to the list) and added 3 lines of code to ignore empty lines in the lists of failing tests to get a correct count.
2011-10-25 08:48:39 -04:00
Benoit Jacob
f3f0162ab6 Bug 665578 - Use ANGLE's built-in-function-emulation feature on Mac - r=jrmuizel 2011-10-23 22:46:40 -04:00
Benoit Jacob
5c20d35fbd Bug 696009 and bug 695947 - frequent linux-pgo intermittent oranges since Bug 615976 (WebGL AA) landed - no review, fix bustage
We've seen frequent intermittent failures in WebGL tests since WebGL AA landed. This turns out to be OOM conditions leading to failure to create WebGL contexts, due to the fact that the JS engine keeps too many unreferenced WebGL contexts around before it decides to GC (bug 617453). This patch makes us trigger the GC before every WebGL test page (there are 300 of them) which has proved to solve the problem on tryserver, with 18 green runs without any orange: https://tbpl.mozilla.org/?tree=Try&rev=789cf49fdc63

Failures occured most of the time on 32bit linux-pgo but have been observed on 64bit too, see bug 695947 comment 6.
2011-10-22 13:48:47 -04:00
Phil Ringnalda
c6dfbab328 Back out 9fa7d2c8ec2d and a0784cecf9bd (bug 696009 and bug 695947) to investigate the unlikely but apparent way they broke a Linux debug browser-chrome test by touching a mochitest-1 test 2011-10-22 17:44:58 -07:00
Benoit Jacob
ae75560ba5 Bug 696009 - Fix trivial mistake in a0784cecf9bd which would have caused us to use this fix on all platforms whereas it is only needed on linux - r=bustage 2011-10-22 13:55:20 -04:00
Benoit Jacob
9e02528283 Bug 696009 and bug 695947 - frequent linux-pgo intermittent oranges since Bug 615976 (WebGL AA) landed - no review, fix bustage
We've seen frequent intermittent failures in WebGL tests since WebGL AA landed. This turns out to be OOM conditions leading to failure to create WebGL contexts, due to the fact that the JS engine keeps too many unreferenced WebGL contexts around before it decides to GC (bug 617453). This patch makes us trigger the GC before every WebGL test page (there are 300 of them) which has proved to solve the problem on tryserver, with 18 green runs without any orange: https://tbpl.mozilla.org/?tree=Try&rev=789cf49fdc63

Failures occured most of the time on 32bit linux-pgo but have been observed on 64bit too, see bug 695947 comment 6.
2011-10-22 13:48:47 -04:00
Jeff Gilbert
9f229b37a7 Bug 615976 - Fix ResizeOffscreenFBO to attempt resize without AA if resize with AA failed - r=bjacob 2011-10-19 15:09:57 -04:00
Jeff Gilbert
7f1312bd00 Bug 615976 - Adds support for samples in ContextFormat, pref 'webgl.max-samples' - r=bjacob 2011-10-19 15:09:57 -04:00
Jeff Gilbert
445287a1f5 Bug 615976 - Fix WebGL to default to trying to have anti-aliasing - r=bjacob 2011-10-19 15:09:57 -04:00
Jeff Gilbert
441efd5332 Bug 681791 - Fixes GLContext::ResizeOffscreen leaving a mess on failure - r=bjacob 2011-10-19 15:09:57 -04:00
Benoit Jacob
99bb756bd6 Back out Jeff's patches because they lack a Bug number and/or a r= field. Sorry, should have checked that. Re-landing. 2011-10-19 15:31:33 -04:00
Jeff Gilbert
03bb734c28 Fix ResizeOffscreenFBO to attempt resize without AA if resize with AA failed 2011-10-19 15:09:57 -04:00
Jeff Gilbert
656a0adcc0 Adds support for samples in ContextFormat, pref 'webgl.max-samples' 2011-10-19 15:09:57 -04:00
Jeff Gilbert
6c395a3be5 Fix WebGL to default to trying to have anti-aliasing 2011-10-19 15:09:57 -04:00
Jeff Gilbert
46d6e15195 Bug 681791 - Fixes GLContext::ResizeOffscreen leaving a mess on failure
* * *
try: -b do -p all -u all -t all
2011-10-19 15:09:57 -04:00
Olli Pettay
e5b7e8ee46 Bug 682420 - Rename nsINode::GetOwnerDoc to nsINode::OwnerDoc, part 2, r=jst
--HG--
extra : rebase_source : 53dc2ec386f6e4147587e6be3c53d297ad71d57a
2011-10-18 14:19:44 +03:00
Olli Pettay
a86b1a4d43 Bug 682420 - Rename nsINode::GetOwnerDoc to nsINode::OwnerDoc, part 1, r=jst
--HG--
extra : rebase_source : baf1a25cdea68d499a7673fdf96e27b5a12dc83c
2011-10-18 13:53:36 +03:00
Ehsan Akhgari
2a602a5685 Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Benoit Jacob
8eeed3c374 Bug 694730 - Upgrade WebGL conformance test suite to r15815 - no review
The 1.0.1 release is really close, and upgrading now allows us to give feedback and make sure that all tests are passable.

The canonical URL for this test suite is
  https://cvs.khronos.org/svn/repos/registry/trunk/public/webgl/sdk/tests/webgl-conformance-tests.html

--HG--
rename : content/canvas/test/webgl/conformance/include.vs => content/canvas/test/webgl/conformance/glsl/misc/include.vs
2011-10-16 21:19:28 -04:00
Benoit Jacob
6831dd8707 Bug 638328 - fix bug in assertion, bad usage of queryinterface - r=roc
do_QueryInterface itself doesn't assign to the nsresult, have to assign to a nsCOMPtr
2011-10-14 10:01:15 -04:00
Benoit Jacob
a9b2e70434 Bug 638328 - use builtinclass and remove do_QueryInterface - r=peterv 2011-10-13 08:09:22 -04:00
Christoph Diehl
3fcd8718cf Bug 686732 - Implement minimal-capabilities WebGL mode - r=bjacob 2011-10-13 08:09:22 -04:00
Jonathan Kew
3c4257e0d9 bug 693610 - accumulate advanceSum so that we don't overlap successive glyph runs when drawing text to azure canvas. r=bas 2011-10-12 08:27:28 +01:00
Bas Schouten
6d7ff7c737 Bug 691137: Use proper coordinates when adding a device space quadratic curve. r=roc 2011-10-11 02:35:52 +02:00
Ms2ger
02983e60f6 Bug 691156 - Handle putImageData(nonfinite) correctly; r=bz 2011-10-08 12:18:53 +02:00
Ms2ger
f30af024c2 Bug 689046 - Ensure createPattern(zero-size canvas) throws; r=roc 2011-10-08 12:18:51 +02:00
Ms2ger
fbef8a05f9 Bug 691184 - Add test_2d.text.align.(default|invalid).html & test_2d.text.baseline.(default|invalid).html from Philip Taylor's canvas tests; r=smaug 2011-10-07 10:24:38 +01:00
Ed Morley
6d7bc0dfbd Bug 691184 - Don't throw on setting ctx.textAlign & ctx.textBaseline to bogus values, spec says to ignore; r=smaug 2011-10-07 10:24:37 +01:00
Ed Morley
0424aad1ba (No bug) Remove CRLFs that have crept into test_canvas.html; rs=bz 2011-10-07 10:24:37 +01:00
Bas Schouten
e89848a4cc Bug 655836: Use Snapshot API for drawing one Azure canvas to another. r=roc 2011-10-05 01:12:23 +02:00
Brian Hackett
e89780c40d Remove jsobj.h from installed headers, bug 690943. r=luke 2011-10-04 07:06:54 -07:00
Justin Lebar
01cb8b32e2 Bug 686345 - Don't subtract from our count of canvas's memory if we never added to the count. r=jmuizelaar 2011-10-03 12:35:32 -04:00
Marco Bonardo
708de44700 Merge mozilla-central to mozilla-inbound 2011-10-03 17:13:54 +02:00
Benoit Jacob
3b0d019742 Bug 522193 - WebGL calls are slow because of memory allocation churning - r=roc
WebGL objects keep an array of refptrs of other WebGL objects owning references to them. In practical cases, the size of this array can oscillate between 0 and 2 at high frequency. nsTArray throws away its whole storage (mHdr) when its size hits 0. This patch makes us use a nsAutoTArray with a pre-allocated size of 2 or 8 depending on WebGL object types.
2011-10-03 08:41:56 -04:00
Atul Aggarwal
e9468a5526 Bug 673820 - Rewriting StringToInteger function to match behavior of Rules for parsing Integers specified in spec. r=jonas f=mounir,Ms2ger,dbaron 2011-10-01 19:30:27 +05:30
Doug Sherk
5b5702d6a4 Bug 684853: implement OES_standard_derivatives
Implemented OES_standard_derivatives and fallbacks if it isn't available. Exposes dFdx, dFdy, and fwidth functions to WebGL scripts.
2011-10-01 00:45:50 -04:00
Benoit Jacob
93ca6f5084 Bug 684882 - on Macs with Intel GPUs, limit cube map size to 512 - r=jrmuizel 2011-09-29 10:13:49 -04:00
Benoit Jacob
b79d3d9d20 Bug 684882 - back out db67bdba5ca8 2011-09-29 10:13:49 -04:00
Benoit Jacob
50ebdccf9f Bug 684882 - back out b4fd4fd0dc3f 2011-09-29 10:13:49 -04:00
Michael Wu
d8e503c38b Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Benoit Jacob
ca2a58f371 Bug 630728 - Intermittent test_webgl_conformance_test_suite.html | Test expected to fail, but passed: conformance/texture-npot.html; r=ehsan 2011-09-29 00:06:03 -04:00
Ehsan Akhgari
b542efd4e6 Bug 666414 - Prevent AddRef and Release from being called on the pointers wrapped in nsCOMPtr and nsRefPtr; r=bsmedberg 2011-09-16 16:22:44 -04:00
Benoit Jacob
e0690707cd Bug 684882 - Random video memory grabbed into WebGL cube map textures on Mac OS, including on 10.7.1, on Intel GPUs - r=jrmuizel
This patch does 3 things on Macs with Intel GPUs:
 * prevents attaching a cube map to a framebuffer.
     Test case: http://codeflow.org/webgl/irradiance/
 * skips glGenerateMipmaps on cube maps
 * since cube maps are now missing their mipmaps, prevents setting on them a minification filter that requires a mipmap, but only from OpenGL's point of view, not from WebGL's.
2011-09-23 20:29:40 -04:00
Benoit Jacob
c8be5c56a0 Bug 686398 - WebGL crash, addressing Texture ImageInfo out of bounds - r=jrmuizel
We were not checking that ImageInfoAt(level, face) existed before dereferencing it.
2011-09-22 02:57:26 -04:00
Benoit Jacob
b26a2af7ce Bug 685793 - WebGL buffer overflow issue and access to out of range memory - r=jrmuizel
We were not checking for integer overflow in a required-buffer-size computation. Fixing this by using CheckedInt.
2011-09-22 02:55:10 -04:00
Boris Zbarsky
bd01572fc8 Bug 444641 part 4. Remove the data: special-casing for images in canvas, since we now set the right principal for data: images. r=roc 2011-09-20 17:00:42 -04:00
Jeff Muizelaar
6f22e3e5d3 Bug 684859. Add telemetry to track when 2d or webgl canvas is used. r=bas
--HG--
extra : transplant_source : %FB5%40%FA%3A%2Cg%AF%14W%D3%E8%D1y%03%25%D1%E9%22%AB
2011-09-19 16:08:56 -04:00