Bas Schouten
813aaf1e16
Bug 651858 - Part 9: Update canvas tests to deal with new Azure canvas. r=roc
2011-06-24 19:41:18 +02:00
Bas Schouten
50ad28ab7f
Bug 651858 - Part 6: Add the azure nsCanvasRenderingContext2D implementation. r=roc
2011-06-24 19:41:18 +02:00
Chris Leary
7922cf2289
Merge mozilla central and tracemonkey.
2011-06-20 16:49:20 -07:00
Nikhil Marathe
8d1eed62d4
Bug 664577 - Make sure non-SpiderMonkey users don't require knowledge about JSObject when using ArrayBuffers. r=mrbkap
2011-06-16 15:46:39 -04:00
Blake Kaplan
83446b873d
Backed out changeset 8b3dc129aed8. Missing bug number in the commit (bug 664577).
2011-06-16 16:57:51 -04:00
Nikhil Marathe
ced65c9a25
Make sure non-SpiderMonkey users don't require knowledge about JSObject when using ArrayBuffers. r=mrbkap
2011-06-16 15:46:39 -04:00
Nikhil Marathe
524b87e3d5
Bug 656519 - Fix consumers outside SpiderMonkey to use new ArrayBuffer APIs. r=mrbkap
...
--HG--
extra : rebase_source : f359987831611155029114b5f85080155c6a12d5
2011-06-14 15:37:21 -04:00
Robert O'Callahan
83ccc7f3f6
Bug 662898. Set canvas drawImage source pattern after any shadow is drawn, so the source doesn't get clobbered by the shadow drawing. r=jrmuizel
2011-06-13 13:41:51 +12:00
Philipp von Weitershausen
35bee2294f
Back out bug 662898 (changeset e01a18d61dd6) due to test_canvas.html failures.
2011-06-11 15:44:06 +02:00
Robert O'Callahan
f203bcef0c
Bug 662898. Set canvas drawImage source pattern after any shadow is drawn, so the source doesn't get clobbered by the shadow drawing. r=jrmuizel
2011-06-11 23:52:55 +12:00
Ms2ger
d0671160d0
Bug 663190 - Calling strokeRect with zero width or height should do nothing; r=smaug
2011-06-11 09:57:47 +02:00
Ms2ger
a6c4503b05
Bug 663194 - Calling drawImage with zero-size canvas should throw INVALID_STATE_ERR; r=sicking
2011-06-11 09:52:27 +02:00
Benoit Jacob
46f5712e1f
Bug 659842 - about:support was creating a WebGL context even if webgl.disabled=true - r=karlt
...
This patch removes SafeToCreateCanvas3DContext, and checks webgl.disabled in WebGLContext::SetDimensions.
2011-06-10 15:02:06 -04:00
Benoit Jacob
66919c207e
Bug 663162 - Update ANGLE to r686 - r=joedrew
...
Just an ANGLE update, plus updating the list of failed tests on WinXP, also now properly reporting on unexpeced success (using todo(true) instead of ok(false))
2011-06-10 14:59:08 -04:00
Chris Jones
a8b0ac4f8e
Bug 655926: Implement canvas.mozFillRule. sr=vlad
2011-06-09 19:15:13 -07:00
Peter Van der Beken
a6322dcbd6
Fix for bug 659580 (Flush CanvasImageCache on shutdown). r=roc.
...
--HG--
extra : rebase_source : 9752189ce8c9bd13795979cfa8d50311b5bf5b56
2011-04-13 17:34:06 -07:00
Benoit Jacob
3f7d139bd9
Bug 656277 - Prevent loading WebGL textures from cross-domain images - r=bzbarsky, a=jpr
...
This blocks using cross-domain images and tainted canvases as WebGL textures, in response to a timing attack allowing to get approximations of cross domain images' pixel data.
This is known to break legitimate Web content (e.g. bug 662570), so it's sad to have to land this. In the hopefully near future, a way forward will be implemented allowing affected Web content to resume working: we will allow cross-domain textures that have CORS approval. This is being coordinated with other WebGL implementers on the WebGL mailing lists.
2011-06-07 13:47:54 -04:00
Kyle Huey
7c8feff73e
Bug 661876: Fix tests to avoid using obsolete nsIDOMFile properties/methods.
2011-06-05 11:54:14 -07:00
Benjamin Peterson
be433a6891
Bug 405300 - ignore transformation in isPointInPath(). r=joe sr=roc
2011-06-03 07:50:14 +02:00
Dominic Fandrey
0ab2f46136
Bug 645398 - Substitute PR_(MAX|MIN|ABS|ROUNDUP) macro calls; r=roc
2011-06-02 14:56:50 +02:00
Ms2ger
4ee45e739a
Bug 629870 - Drop support for globalCompositeOperation=over,clear; r=sicking
2011-06-02 14:56:46 +02:00
Robert O'Callahan
ae2df1cd66
Adding test file to fix bustage for bug 662450
2011-06-17 16:16:45 +12:00
Robert O'Callahan
561601264e
Bug 662450. Test, r=jrmuizel
2011-06-17 15:46:06 +12:00
Robert O'Callahan
186867c591
Bug 656844. Test. r=joe
2011-06-17 15:37:27 +12:00
Ms2ger
86f87e082b
Bug 664107 - Calling drawImage with non-finite arguments should not throw; r=smaug
2011-06-15 09:39:50 +02:00
Neil Rashbrook
556e8dfd93
Bug 660536 Remove useless uses of PromiseFlat(C)String r=smaug
2011-06-09 21:17:58 +01:00
Mounir Lamouri
53c39f24f1
Merging cedar with mozilla-central.
2011-05-30 12:50:04 +02:00
Ed Morley
9e71e5b9ac
Bug 614515 - Remove MOZ_SVG conditions. r=roc
2011-05-30 09:34:50 +02:00
Robert O'Callahan
48d8d2b5f3
Bug 656844. Only draw shadows when 'source-over' operator is being used. r=joe
2011-05-30 15:28:01 +12:00
Benoit Jacob
2980ccd7c4
Bug 659349 - WebGL allows access to uninitialised graphics memory - r=jrmuizel
...
GLContext::ClearSafely() wasn't really safe, it was making naive assumptions about GL state and as a result, a WebGL script could obtain an uninitialized backbuffer.
2011-05-26 14:24:48 -04:00
Ms2ger
56c39feb5c
Bug 632513 - Handle non-finite values for setTransform per spec; r=jst
2011-05-26 10:06:32 +02:00
Ms2ger
460ca55119
Bug 632486 - Handle non-finite values for bezierCurveTo per spec; r=jst
2011-05-26 10:06:32 +02:00
Ms2ger
bcfcbc1d85
Bug 632482 - Handle non-finite values for arcTo per spec; r=jst
2011-05-26 10:06:31 +02:00
Brian O'Keefe
02a4c1c6d9
Bug 564388 - Make the 'quality' parameter to ToDataURL work for image/jpeg. Also fixes bug 401795 (handle excess arguments to ToDataURL by ignoring them). r=bz,roc
2011-05-26 09:28:26 +02:00
Benoit Jacob
2c0eb7e54e
Bug 657748 - Update ANGLE to r653 - a=joe
...
This ANGLE update fixes bugs, brings large performance improvements, and adds major new features that web devs are looking forward to: vertex shader texture lookup and float textures.
http://code.google.com/p/angleproject/
This update is also needed because the version we're currently using is the chrome_m10 branch and that's no longer maintained. This update will make it much easier to apply security fixes if needed.
2011-05-24 11:05:56 -04:00
Ms2ger
fb6f5dd0ca
Bug 655517 - Remove nsIDOMDocumentEvent; f=ehsan r=smaug
2011-05-23 18:46:36 +02:00
Nicholas Nethercote
30e92c3349
Bug 657327 - about:memory: merge the "mapped" and "heap used" trees, and make the resulting tree flatter. r=sdwilsh,Jesse, sr=roc.
2011-05-22 19:49:56 -07:00
Benoit Jacob
fedd4697f5
Bug 657556 - crash in WebGL uniform setters when no program is bound - r=cdiehl
...
This crash was occurring when no program is bound and the uniform object isn't bound to a program either. The fix is to properly check if a program is bound.
2011-05-20 15:53:54 -04:00
Benoit Jacob
3b22833d8a
Bug 636942 - stencil separate param validation must now occur on draw calls - r=jrmuizel
...
We were validating these params when they're set, and that was non-conformant behavior.
2011-05-20 15:53:53 -04:00
Benoit Jacob
a392b3f339
Bug 636913 - fix buffer-preserve-test.html so it works in the mochitest - r=joedrew
...
This was filed upstream at:
http://www.khronos.org/bugzilla/show_bug.cgi?id=472
This just moves around the canvas in the html so it's visible, so it actually gets composited. Otherwise the test fails.
2011-05-20 15:53:53 -04:00
Benoit Jacob
c8c2f484a2
Bug 636913 - implement the WebGL backbuffer clear semantics - r=joedrew
...
This implements the WebGL backbuffer clearing behavior when preserveDrawingBuffer=false
2011-05-20 15:53:53 -04:00
Benoit Jacob
58ec34d2c2
Bug 636913 - implement ForceClearFramebufferWithDefaultValues from the existing renderbuffer init code - r=joedrew
...
This is just moving code around, in preparation for implementing the WebGL buffer clear semantics in the next part.
2011-05-20 15:53:53 -04:00
Benoit Jacob
ee5166d905
Bug 636913 - state tracking needed for WebGL clear semantics - r=joedrew
...
We needed to remember more values instead of just passing them to the GL.
2011-05-20 15:53:53 -04:00
Benoit Jacob
841076288a
Bug 636913 - fix context options - r=joedrew
...
The WebGL context options were out of date.
2011-05-20 15:53:53 -04:00
Benoit Jacob
779f99fd6c
Bug 630672 - fixes for WebGL OES_texture_float extension - r=joedrew
...
This fixes a few issues in Vlad's patch: pass test, break reference cycle, fix leak
2011-05-20 15:53:53 -04:00
Vladimir Vukicevic
4b2230fe03
Bug 630672 - implement WebGL OES_texture_float extension - r=bjacob
...
This implements floating-point textures in WebGL
2011-05-20 15:53:53 -04:00
Benoit Jacob
398859cfe4
Bug 657201 - we must really avoid glValidateProgram() on Mac - r=cdiehl
...
We thought it was only crashy with NVIDIA, but it's now confirmed on ATI on Mac OS 10.6.7 too
It's OK to just not call it, as it's only a developer feature and not really useful in actual content.
2011-05-20 15:53:53 -04:00
Benoit Jacob
b9642f26a8
Bug 657190 - the WebGL mochitest is downloading images from internet - r=philor
...
This patch checks in the image in question so we don't download it from internet anymore. Was causing intermittent test failures.
2011-05-20 15:53:53 -04:00
Matt Woodrow
6ce859c7db
Bug 656947 - NULL check the current canvas context when attempting to increment the malloc count. r=bz
2011-05-20 10:12:12 -07:00
Benjamin Peterson
6ca89b9ae1
Bug 649618: toDataURL on a zero canvas should return "data:," r=joe
2011-05-20 00:28:45 +02:00
Mounir Lamouri
3646f63577
Merging cedar with mozilla-central.
2011-05-19 15:05:34 +02:00
Benjamin Peterson
00688a9856
Bug 421865 - Handle zero dimensions correctly in canvas GetWidthHeight(). r=joe sr=roc
2011-05-19 12:49:18 +02:00
Bas Schouten
007db48f46
Bug 620216 - Part 1: Use EXTEND_PAD when doing DrawImage. r=roc
2011-05-17 23:10:09 +00:00
Benoit Jacob
d1bac4c182
Bug 656752 - WebGL crash [@gleRunVertexSubmitImmediate()] - r=jrmuizel, a=clegnitto
...
Fix bookkeeping in webgl.bindBuffer()
2011-05-16 17:18:04 -04:00
Nicholas Nethercote
fe667a591e
Bug 655638 - Make the canvas memory reporter a non-heap reporter. r=bas.
2011-05-11 16:09:50 -07:00
Boris Zbarsky
ae3f14f1ba
Merge cedar with mozilla-central
2011-05-06 20:39:36 -04:00
Benoit Jacob
1f4e4cc378
Bug 653419 - check for null gl ptr in SetDimensions NOP path - r=joedrew
...
WebGLContext::SetDimensions has an early success exit path when the dimensions are unchanged. However it wasn't checking that the gl pointer was non-null. Thus, after a failed WebGL context creation, such a SetDimensions call could incorrectly "succeed", only to crash when dereferencing the gl pointer.
2011-05-06 14:44:26 -04:00
Benoit Jacob
d715011bf4
Bug 653419 - correctly mark WebGL context creation as successful - r=joedrew
...
WebGLContext::SetDimensions has early return paths in cases where the WebGL context does not need to get recreated. A bug made that be recorded as WebGL creation failures, giving "WebGL-" in crash reports. This patch fixes that.
2011-05-06 14:44:25 -04:00
Benoit Jacob
219a0971fb
Bug 648705 - memory corruption due to dangling pointers in WebGLProgram - r=joedrew
...
WebGLProgram has a data member,
nsTArray<WebGLShader*> mAttachedShaders;
and bug 648705 showed that the pointers in this array were sometimes dangling, leading to invalid writes at non-null addresses.
This patch makes these pointers be refptrs, so that they will keep alive the WebGLShaders they point to. So the mAttachedShaders member becomes
nsTArray<nsRefPtr<WebGLShader> > mAttachedShaders;
2011-05-06 14:44:23 -04:00
Ed Morley
ff5f79b83b
Bug 654463 - Remove WinCE code from content/* ; r=sicking
2011-05-04 09:25:50 +02:00
Nicholas Nethercote
6ef173ddbb
Bug 633653 - revamp about:memory. r=vlad,sdwilsh,dvander,gavin,ehsan,edwsmith; sr=benjamin.
2011-05-03 17:12:58 -07:00
Yury
f2320f7c06
Bug 451165. Fix ParseColorString to report errors when there's garbage at the end of the color. r=dbaron
2011-05-05 17:12:04 -04:00
Simon Montagu
ece92e21ce
Back out bug 263359 and bug 624798 because of performance regressions (bug 650189)
2011-04-27 11:47:18 +03:00
L. David Baron
25d74a36a4
Remove null-checks of nsCSSParser, since construction is infallible. (Bug 542058, patch 1) r=bzbarsky
...
Note that many callers already skipped the null-checks.
2011-04-21 20:17:31 -07:00
Zack Weinberg
51864c09d8
Bug 651017, part 1: minimize inclusion of ns*DeviceContext.h; move the printing error codes to nsIDeviceContextSpec.h; os2 small widget cleanup.
...
--HG--
extra : rebase_source : 5b7cebe68f71a760463e3522b159c7cde8a72f5e
2011-04-16 18:22:41 -07:00
Robert O'Callahan
d4c414cf18
Bug 641426. Part 8: Replace gfxRect::Outset/Inset with Inflate/Deflate. Also slip in a conversion constructor from nsIntRect to gfxRect. r=tnikkel
2011-04-19 15:07:51 +12:00
Robert O'Callahan
307547d062
Bug 641426. Part 3: Convert gfxRect::pos/size to x/y/width/height. r=joe,sr=cjones
2011-04-19 15:07:21 +12:00
Robert O'Callahan
73b97e72c4
Bug 641426. Part 2: Remove a bunch of direct gfxRect::pos/size usage. r=joe
2011-04-19 15:07:21 +12:00
Robert O'Callahan
17b91a87af
Bug 641426. Part 1: Create Point and Size templates. r=joe,sr=cjones
2011-04-19 15:07:21 +12:00
Rafael Ávila de Espíndola
21a1eff2cb
Bug 648871 - use NS_STDCALL_FUNCPROTO; r=bzbarsky
2011-04-14 13:51:19 -04:00
Zack Weinberg
f5a0843ac7
Bug 266236 part 9: Move nsBoundingMetrics to its own header and prune inclusions of nsRenderingContext.h.
...
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
rename : gfx/src/nsThebesRenderingContext.h => gfx/src/nsRenderingContext.h
extra : rebase_source : 92660748436f03475e011184e2828f1db0ad63e0
2011-04-07 18:04:40 -07:00
Jan Küchler
5ef6bf26cf
Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
...
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Ms2ger
6ee0b2b1da
Bug 589894 - Fix a number of build warnings in content/; r=smaug
2011-04-14 14:04:12 +02:00
Simon Montagu
8ade1e195e
Make all nsBidiPresUtils methods static. Bug 624798, r=roc
2011-04-13 12:23:49 +03:00
Ms2ger
c28b43a2a1
Bug 632511 - Handle non-finite values for scale per spec; r=peterv
2011-04-12 14:32:03 +02:00
Ms2ger
86c222a574
Bug 632481 - Handle non-finite values for arc per spec; r=peterv
2011-04-12 14:32:02 +02:00
Ms2ger
487af0c4c2
Bug 632476 - Handle non-finite values for fillRect, strokeRect per spec; r=peterv
2011-04-12 14:32:02 +02:00
Joe Drew
e0a8d65434
Bug 640887 - Ignore canvas-test on Windows XP, since it fails most of the time; r=bjacob
2011-04-11 09:12:17 -04:00
Marco Perez
e86148e927
Bug 647468 - make $(TAR) use stdin/stdout explicitly in content/canvas/test/webgl/Makefile.in; r=bjacob
2011-04-11 00:49:12 -04:00
Mats Palmgren
a704143976
Bug 647480 - Don't try to create a textrun using a null font. Setup a default font also when there is no pres shell. r=jfkthame
2011-04-10 22:01:01 +02:00
Ehsan Akhgari
a6cda7cb5c
Merge cedar into mozilla-central
2011-04-08 22:28:05 -07:00
Ms2ger
daeb0e2616
Bug 630029 - Throw INDEX_SIZE_ERR instead of SYNTAX_ERR when calling CanvasGradient.addColorStop with non-finite values; r=?sicking
2011-04-02 20:50:14 +02:00
Saint Wesonga ext:(%2C%20Ms2ger%20%3Cms2ger%40gmail.com%3E)
27054f013a
Bug 392751 - Allow out of bounds rects in getImageData; r=bz
2011-04-07 21:45:18 -07:00
Matt Woodrow
22b53f05ed
Bug 591358 - Report canvas element allocation sizes to the GC. r=gal
2011-04-07 16:58:08 -07:00
Matheus Kerschbaum
93480c6366
Bug 639754 - Remove MOZ_IPC checks since IPC is always built now; r=bsmedberg
2011-04-02 19:14:00 -07:00
Ms2ger
c0904e3ca3
Bug 629894 - createImageData and getImageData should work for sizes smaller than one pixel; r=bz
2011-04-02 20:42:07 +02:00
Yury
f5ac501833
Bug 630040 - Implement createImageData(ImageData); r=bz
2011-04-02 20:45:26 +02:00
Ms2ger
9da7592a07
Bug 630052, part c: Handle non-finite and negative arguments to createImageData and getImageData according to spec; r=bz
2011-04-02 14:19:03 -04:00
Ms2ger
6adaa50ff9
Bug 630052, part b: Reduce code duplication between CreateImageData and GetImageData; r=bz
2011-04-02 14:18:49 -04:00
Ms2ger
48d0794225
Bug 630052, part a: Add NS_finite API to nsMathUtils; r=bz
2011-04-02 14:18:40 -04:00
Ms2ger
75157756af
Bug 632516 - Handle non-finite values for translate per spec; r=roc
2011-04-01 15:31:35 -04:00
Ms2ger
5580363e6a
Bug 632515 - Handle non-finite values for transform per spec; r=roc
2011-04-01 15:31:35 -04:00
Ms2ger
52e0a6ab6d
Bug 632503 - Handle non-finite values for rect per spec; r=roc
2011-04-01 15:31:35 -04:00
Ms2ger
a621fafa13
Bug 632502 - Handle non-finite values for quadraticCurveTo per spec; r=roc
2011-04-01 15:31:35 -04:00
Ms2ger
09c1e8b000
Bug 632495 - Handle non-finite values for moveTo per spec; r=roc
2011-03-29 14:12:00 -04:00
Ms2ger
9c0180628b
Bug 632493 - Handle non-finite values for lineTo per spec; r=roc
2011-03-29 14:05:00 -04:00
Ms2ger
3cb1f8077b
Bug 630271 - Throw a TYPE_MISMATCH_ERR on createPattern(null); r=smaug
2011-04-01 15:31:34 -04:00
Ms2ger
938d8be616
Bug 630034 - Throw when attempting to create a radial gradient with negative radii; r=jmuizelaar
2011-03-31 11:47:00 -04:00
Ms2ger
93402fcdce
Bug 632474 - Throw a TYPE_MISMATCH_ERR on drawImage(null); r=sicking
2011-03-31 15:38:30 -04:00
Ehsan Akhgari
49fceed112
Backout the latest cedar merge wholesale until I test the correctness of the merge locally. This commit takes the tree state back to changeset 8d3f6093c425 (the last known good changeset before the merge)
2011-04-01 12:23:48 -04:00
Ehsan Akhgari
f2b4323534
Merge cedar into mozilla-central
2011-04-01 11:37:50 -04:00
Robert O'Callahan
c6e4498a20
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
e865324942
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
Ehsan Akhgari
de907a39be
Merge mozilla-central into cedar
2011-03-30 13:55:31 -04:00
Ehsan Akhgari
a0f4acae30
Merge cedar into mozilla-central
2011-03-30 13:53:35 -04:00
Ms2ger
b23a59837e
Bug 632508 - Handle non-finite values for rotate per spec; r=roc
2011-03-30 13:40:48 -04:00
Ms2ger
f50b65f0de
Bug 632505 - Handle non-finite values for shadow{OffsetX|OffsetY|Blur} per spec; r=smaug
2011-03-30 13:40:48 -04:00
Ms2ger
96e851647e
Bug 632464 - Handle non-finite values for globalAlpha per spec; r=smaug
2011-03-30 13:40:47 -04:00
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
Ms2ger
ff9e7daf3f
Bug 632474 - Throw a TYPE_MISMATCH_ERR on drawImage(null); r=sicking
2011-03-31 15:38:30 -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