Commit Graph

704 Commits

Author SHA1 Message Date
Yury
83ae98f843 Bug 629875 - Handle negative arguments to drawImage; r=jmuizelaar 2011-03-30 14:55:13 +02:00
Ms2ger
e68c465383 Bug 632469 - Handle non-finite values for clearRect per spec; r=smaug 2011-03-29 22:24:53 -04:00
Ms2ger
bf7288aa6e Bug 630511 - Lowercase mime type argument to toDataURL; r=sicking 2011-03-29 22:24:53 -04:00
Ehsan Akhgari
73a35597a9 Merge mozilla-central into cedar 2011-03-28 14:39:03 -04:00
Robert O'Callahan
4ca813ae6e Bug 622072. Part 3: Support empty transactions for canvas layers. r=tnikkel
The basic idea is that whenever a layer transaction updates the window, we clear out the invalidation state for the canvas rendering context,
using a DidTransactionCallback registered on the layer(s) for the canvas, which calls MakeContextClean.

The DidTransactionCallbacks are directed to the user data attached to the Layer, which holds a strong reference to the canvas element. This
ensures that the element lives as long as the layer. Layers are destroyed when the presentation is torn down (including if the frame is destroyed),
so we can't have a leak here. The reference to the canvas element is only strong because the layer might briefly outlive the frame (the layer
won't be destroyed until the next paint of the window).

This patch moves responsibility for calling CanvasLayer::Updated and nsFrame::MarkLayersActive from the canvas context to nsHTMLCanvasElement::InvalidateFrame.
We call Updated on the retained CanvasLayer, if there is one; any other CanvasLayers created for this canvas would only be used once, and have Updated
called on them in BuildLayer when created.
2011-03-28 12:59:47 +13:00
Robert O'Callahan
6536947736 Bug 622072. Part 1: Remove rect parameter from Updated() and change implementations to defer updates to render time. r=bas
The rectangle parameter is currently not used --- all callers always pass the full canvas bounds. In the long term,
we probably won't want this parameter since all implementations should be doing accelerated drawing direct to buffers
with no intermediate copies, hence there will be no need to optimize the size of those copies. Plus, performance-sensitive
testcases tend to paint most or all of the canvas on every frame anyway.
2011-03-28 12:59:46 +13:00
Ms2ger
548bbd157d Bug 494744. Fix testcase to actually test what it means to test. r=roc 2011-03-28 12:49:11 -04:00
Benjamin Smedberg
47387e2693 Bug 617539 - Merge nsIDOMWebGLRenderingContext_MOZILLA_2_0_BRANCH, r=jrmuizel 2011-03-25 11:03:35 -04:00
Mounir Lamouri
5c636d8313 Bug 610212 - canvas.width and canvas.height should be reflected as unsigned int. r=jst 2011-03-25 12:40:55 +01:00
Robert O'Callahan
6880cc64d6 Bug 639689. Part 5: Track whether the current path in the canvas context is empty. If it is, then optimize path save/restore to not make a copy of the current path. r=joe 2011-03-24 16:13:59 +13:00
Robert O'Callahan
6efae32538 Bug 639689. Part 4: Optimize Redraw by creating custom RedrawUser, which avoids having to do user->device rectangle transformation if we've already invalidated the full canvas. Also, if the last batch of canvas drawing operations contained many operations causing us to invalidate the full canvas, assume that the next batch will also contain many operations and invalidate the full canvas in the first operation of the batch, r=joe 2011-03-24 16:13:58 +13:00
Robert O'Callahan
3dd0479a61 Bug 639689. Part 3: Remove unnecessary full context save/restore, and redundant SetPattern call. r=joe 2011-03-24 16:13:58 +13:00
Robert O'Callahan
4bccc6ddf8 Bug 639689. Part 2: Some trivial cleanup and microoptimizations. r=joe 2011-03-24 16:13:58 +13:00
Robert O'Callahan
6826c493e7 Bug 639689. Part 1: Cache nsIImageLoadingContent pointer to avoid expensive do_QueryInterface in CanvasImageCache::Lookup hit path. r=joe 2011-03-24 16:13:58 +13:00
Robert O'Callahan
82c852c903 Bug 638241. Test that painting an <img>, changing its src attribute and then painting the <img> again paints the new image. 2011-03-24 16:13:58 +13:00
Robert O'Callahan
0788ccd0dd Bug 638241. Use a cache to avoid redoing SurfaceForElement and DoDrawImageSecurityCheck. r=bzbarsky 2011-03-24 16:13:56 +13:00
Robert O'Callahan
c83de15a66 Bug 638241. Part 1: remove useless QI. r=bzbarsky 2011-03-24 16:13:18 +13:00
L. David Baron
802da587ae Merge layout work from projects/birch, part 2. 2011-03-23 17:39:29 -07:00
Ehsan Akhgari
ca95c68a1e Merge mozilla-central into cedar 2011-03-23 18:29:19 -04:00
Craig Topper
72d7c1f754 Bug 576831 part 4. Remove nsICSSStyleRule and use mozilla::css::StyleRule instead. r=bzbarsky
--HG--
rename : layout/style/nsCSSStyleRule.cpp => layout/style/StyleRule.cpp
rename : layout/style/nsICSSStyleRule.h => layout/style/StyleRule.h
2011-03-10 21:48:57 -05:00
L. David Baron
4a7745e74d Remove tracking of which font families are quirky, since we no longer use the information. (Bug 636040) r=jdaggett 2011-03-03 13:18:42 -08:00
Benoit Jacob
be066bd5d0 Bug 635059 - Update WebGL test suite to version 1.0.0 from khronos.org - a=NPOTB 2011-03-03 11:02:36 -05:00
Benoit Jacob
c97dc1d43a Bug 635068 - WebGL test array-unit-tests.html fails - r=jag, a=blocking2.0 2011-03-03 11:02:35 -05:00
Benoit Jacob
7f1f831a27 Bug 627464 - Annotate crash reports if the forced-enabled prefs are set - r=jrmuizel, a=joe 2011-03-02 15:50:36 -05:00
Benoit Jacob
5e3a96aa87 Bug 632587 - 3/3 - add isContextLost - r=jrmuizel, a=joe 2011-03-01 17:25:22 -05:00
Benoit Jacob
7d7c017074 Bug 632587 - 2/3 - add isContextLost - r=jrmuizel, a=blocking2.0 2011-03-01 17:25:22 -05:00
Vladimir Vukicevic
a4aac0595c Bug 632587 - 1/3 - implement getSupportedExtensions - r=bjacob, a=blocking2.0 2011-03-01 17:25:22 -05:00
Benoit Jacob
e7797b975e Bug 636613 - Let WebGL mochitest run on Windows XP - r=jrmuizel, a=joe 2011-03-01 17:25:22 -05:00
Benoit Jacob
c39751ce2b Bug 636906 - GFX blacklisting not affecting WebGL; r=joe a=hardblocker 2011-02-28 15:14:33 -08:00
Benoit Jacob
84ea51cd32 Bug 636002 - better messages about attrib index validation - r=jrmuizel, a=joe 2011-02-24 17:17:34 -05:00
Benoit Jacob
16d3658b63 Bug 636356 - WebGL crash [@mozilla::WebGLBuffer::ZeroDataIfElementArray] - r=jrmuizel, a=joe 2011-02-24 17:17:34 -05:00
Benoit Jacob
ad8f7fa5c9 Bug 635666 - part 3/3 - WebGL crash [@mozilla::WebGLContext::CopyTexSubImage2D] - r=jrmuizel, a=joe 2011-02-24 17:17:34 -05:00
Benoit Jacob
7b38bd3532 Bug 635666 - part 2/3 - WebGL crash [@mozilla::WebGLContext::CopyTexSubImage2D] - r=jrmuizel, a=joe 2011-02-24 17:17:34 -05:00
Benoit Jacob
39d78774a8 Bug 635666 - part 1/3 - WebGL crash [@mozilla::WebGLContext::CopyTexSubImage2D] - r=jrmuizel, a=joe 2011-02-24 17:17:34 -05:00
Benoit Jacob
d6905754de Bug 631420 - OS X WebGL crash with too-small attrib 0 + optimizations - r=vlad, a=blocking2.0 2011-02-24 17:17:34 -05:00
Wes Johnston
1ae3289ab2 backout logging for bug 634532 a=cleanup-test, DONTBUILD 2011-02-17 11:33:50 -08:00
Wes Johnston
6f5dee4313 Bug 634532 - Add some logging to debug random oranges r=dougt, a=input-is-good 2011-02-16 09:45:26 -08:00
Hiroyuki Ikezoe
0a3d5cd1ed Bug 496673 - Needless check in nsCanvasRenderingContext2D::Render; r=vlad a=joe
--HG--
extra : rebase_source : 530762971207ea48fefd60c477e3bb7379ba00eb
2011-02-15 17:09:35 -05:00
Benoit Jacob
bf6803e6ae Bug 634032 - remove FIXME in test list filenames - r=vlad, a=joe
--HG--
rename : content/canvas/test/webgl/00_testFIXME_list.txt => content/canvas/test/webgl/00_test_list.txt
rename : content/canvas/test/webgl/conformance/00_testFIXME_list.txt => content/canvas/test/webgl/conformance/00_test_list.txt
2011-02-14 16:39:55 -05:00
Benoit Jacob
f1f9b80cdd Bug 631643 - Check for ARB_ES2_compatibility before using it, fix MAX_VARYING_VECTORS emulation, clean up getParameters - r=vlad, a=jrmuizel 2011-02-11 18:11:30 -05:00
Benoit Jacob
7f6e80fbdd Bug 633622 - Make the webgl mochitest use ANGLE on test machines - r=vlad, a=hardblocker 2011-02-14 12:04:54 -05:00
Kyle Huey
c9434a9a90 Backing out Bug 632587. a=bsmedberg 2011-02-14 10:58:35 -05:00
Kyle Huey
af523adca3 Backed out changeset 7ed4cb02ffbf 2011-02-14 10:57:49 -05:00
Vladimir Vukicevic
cbdf33fdbe Bug 632587 - implement getSupportedExtensions - r=bjacob, a=blocker 2011-02-11 18:11:30 -05:00
Benoit Jacob
414569f071 oops -- fix list of webgl tests expected to fail -- r+a=bustage 2011-02-12 17:12:08 -05:00
Benoit Jacob
b0a4e99d3c Bug 632546 - pass is-object test - r=vlad, a=jrmuizel 2011-02-11 18:11:30 -05:00
Benoit Jacob
a271bc267f Bug 631707 - pass buffer-data-array-buffer... again - r=vlad, a=jrmuizel 2011-02-11 18:11:30 -05:00
Kyle Huey
9132ccf4bc Backout 2011-02-11 23:08:16 -05:00
Benoit Jacob
aeb24b4fe0 Bug 632546 - pass is-object test - r=vlad, a=jrmuizel 2011-02-11 18:11:30 -05:00
Benoit Jacob
9d4789070f Bug 631707 - pass buffer-data-array-buffer... again - r=vlad, a=jrmuizel 2011-02-11 18:11:30 -05:00