Commit Graph

1440 Commits

Author SHA1 Message Date
Masatoshi Kimura
4b5034efa3 Bug 804834 - Part 1: Fix tests depending on E4X for-each in content JS. r=waldo 2012-12-21 20:47:52 +09:00
Robert Longson
5b4ea62d49 Bug 821960 - Implement tearoffs for remaining SVG types. r=jwatt 2012-12-21 09:18:58 +00:00
Cameron McCormack
154f38b92a Bug 793617 - Implement mask-type property. r=dbaron,longsonr 2012-12-21 11:15:22 +11:00
Jonathan Watt
12fdf8dc38 Bug 813531 - Part 2: Stop reconstructing the entire SVG frame tree after the initial reflow of nsSVGOuterSVGFrame frames that have a viewBox. r=roc. 2012-12-18 02:25:16 +00:00
Jonathan Watt
57e52e7f84 Bug 802628 - Part 1, Kill nsSVGUtils::InvalidateAndScheduleReflowSVG. r=mattwoodrow. 2012-11-28 09:42:13 +00:00
Masayuki Nakano
4581677d83 Bug 813445 part.3 Remove NS_EVENT_FLAG_CANT_CANCEL and NS_EVENT_FLAG_CANT_BUBBLE r=smaug 2012-12-16 10:26:03 +09:00
Jeff Walden
120886ca73 Bug 820570 - Move mozilla::DebugOnly into DebugOnly.h to pare down the grab-baggish Util.h. r=Ms2ger 2012-12-14 18:58:45 -05:00
Robert Longson
926311ef79 Bug 820629 - animateTransform should not animate non-transform-type attributes (follow-up to correct type) r=dholbert 2012-12-14 17:16:43 +00:00
Robert Longson
d0c8136a6d Bug 820629 - animateTransform should not animate non-transform-type attributes r=dholbert 2012-12-12 19:07:58 +00:00
Robert Longson
8135aadc67 Bug 812890 - spot light filters do not process limiting cone angle properly. r=cam 2012-12-10 12:14:25 +00:00
Cameron McCormack
7c7b6bb3e0 Bug 819731 - Remove contentStyleType and contentScriptType from SVGSVGElement. r=longsonr 2012-12-10 12:33:10 +11:00
Saurabh Anand
6de7befa37 Bug 818817 - Fix some compiler warnings, r=Ms2ger 2012-12-09 22:53:19 +05:30
Benedict Singer
8b16d029d1 Bug 787134 - Make links not in a document or with an invalid href respond to :link selector. r=bzbarsky 2012-12-07 09:35:14 -05:00
Robert Longson
aba24e2cf7 Bug 817439 r=dholbert 2012-12-05 10:59:26 +00:00
Tom Schuster
9271842e43 Bug 676619 - Implementation of the download attribute for links. r=smaug 2012-12-02 21:55:52 +01:00
Daniel Holbert
3d97e1a8f1 Bug 793308: Remove unneeded/unused "#include string.h" from some SVG c++ files. r=longsonr 2012-11-28 23:13:02 -08:00
Seth Fowler
cd421a0e5e Bug 812241 - Remove disabled test warnings. r=khuey 2012-11-20 16:13:04 -08:00
Zack Weinberg
662e668d9f Bug 516091: Split CSS error reporting to its own file and class. Allows CSS scanner to become a stack object. r=dbaron 2012-11-15 11:36:15 -05:00
Benoit Jacob
986ee1a065 Bug 807437 - Eliminate redundant Traverse/Unlink CC macros - part 1: automatic changes - r=mccr8 2012-11-15 02:32:40 -05:00
Boris Zbarsky
05ba9f02c1 Bug 811449 part 8. Get rid of nsGenericElement. r=peterv 2012-11-14 14:10:08 -08:00
Peter Van der Beken
0a5f44ada8 Fix for bug 807075 (New DOM binding APIs for HTMLElement). r=bz.
--HG--
extra : rebase_source : 842b9397d2b050f880c44d3366bcc838e6615fd5
2012-11-11 00:30:15 +01:00
Ed Morley
35b84cb08f Backout 54c4f2ff78e3 (bug 807075) for Windows compilation errors 2012-11-14 16:45:28 +00:00
Peter Van der Beken
f19ca9b71f Fix for bug 807075 (New DOM binding APIs for HTMLElement). r=bz.
--HG--
extra : rebase_source : 9afce481cd0a5c8a1014c8c9b0aad7d6665aaa82
2012-11-11 00:30:15 +01:00
Peter Van der Beken
b2ba5959ec Fix for bug 804950 (New DOM binding APIs for Element). r=bz.
--HG--
extra : rebase_source : a8691ead07dfa8ecca812396047627dc15474d83
2012-10-16 13:51:00 +02:00
Ed Morley
33efb139e8 Bug 701060 - Disable test_bug401046.html & test_lang.xhtml for too many intermittent failures 2012-11-06 22:26:56 +00:00
Jacek Szpot
761b11160f Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Aryeh Gregor
70c46f800c Bug 801425 - Make hasFeature() and isSupported() always return true for non-SVG features; r=bz 2012-10-15 13:59:38 +02:00
Robert Longson
27341fb426 Bug 644534 - Make SMIL animation work when content is transformed through XSLT. r=bzbarsky 2012-10-23 09:21:49 +01:00
Robert Longson
8dc4bfd15f Bug 801317 - Support transforms in SVG fragment identifiers. r=dholbert 2012-10-22 10:13:24 +01:00
Peter Van der Beken
9af14c557f Fix for bug 801083 (Remove old proxy-based list bindings). r=bz. 2012-10-13 14:50:24 +02:00
Peter Van der Beken
e4c543b77c Fix for bug 773780 (Add API for new DOM bindings for Node). r=bz.
--HG--
extra : rebase_source : 5dd51c4ad5274da9235c8c341b0531f234e95a91
2012-10-09 14:31:24 +02:00
Aryeh Gregor
c24a828b17 Bug 799905 - .URL and .compatMode should be defined on Document, not HTMLDocument; r=bz 2012-10-11 14:48:31 +02:00
Josh Matthews
c8eb573b6f Bug 505385 - Part 18: Reduce number of notifications - START_REQUEST/START_CONTAINER -> SIZE_AVAILABLE, remove START_DECODE and START_FRAME. Rename remaining ones for clarity. r=joe 2012-10-12 12:11:23 -04:00
Josh Matthews
f905bcf9ea Bug 505385 - Part 13: Remove OnStopContainer and make OnStopDecode a true decode notification. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
b84562cef3 Bug 505385 - Part 11: Create a new imgINotificationObserver interface to replace all uses of imgIContainerObserver and imgIDecoderObserver outside of image/. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
138935b14a Back out bug 585385 for build bustage. 2012-10-11 21:58:24 -04:00
Josh Matthews
fcd1ce5c84 Bug 505385 - Part 18: Reduce number of notifications - START_REQUEST/START_CONTAINER -> SIZE_AVAILABLE, remove START_DECODE and START_FRAME. Rename remaining ones for clarity. r=joe 2012-10-11 21:34:24 -04:00
Josh Matthews
1d3700a537 Bug 505385 - Part 13: Remove OnStopContainer and make OnStopDecode a true decode notification. r=joe 2012-10-11 21:34:23 -04:00
Josh Matthews
abbb0715c2 Bug 505385 - Part 11: Create a new imgINotificationObserver interface to replace all uses of imgIContainerObserver and imgIDecoderObserver outside of image/. r=joe 2012-10-11 21:34:23 -04:00
Boris Zbarsky
b9ca5298cb Bug 795221 part 5. Hook up <svg:style> elements to cycle collect their stylesheet. r=smaug
--HG--
rename : content/html/content/crashtests/795221-1.html => content/html/content/crashtests/795221-4.html
2012-10-07 22:39:09 -04:00
Jeff Muizelaar
62bb43ba59 Bug 792199. Only decode visible images immediately when switching to a tab. r=joe
This creates a new method 'StartDecoding' which does a RequestDecode and some
decoding of the image.

--HG--
extra : rebase_source : 89c1c2f40e3dfb6e025939ebf3257f81ce429501
2012-10-04 16:02:15 -04:00
Peter Van der Beken
6cf9f896da Fix for bug 791774 (Hook DOM lists up to the new DOM bindings). r=bz.
--HG--
extra : rebase_source : 873020edd9cd3defc932d77bd26b5d65ebf263cb
2012-06-13 17:18:30 +02:00
Kyle Huey
43e58e33c8 Bug 760331: Coalesce data for inline style across nodes. r=bz
This patch enables sharing of an nsAttrValue's MiscContainer between nodes for style rules.  MiscContainers of type eCSSStyleRule are now refcounted (with some clever struct packing to ensure that the amount of memory allocated for MiscContainer remains unchanged on 32 and 64 bit).  This infrastructure can be used to share most MiscContainer types in the future if we find advantages to sharing other types than just eCSSStyleRuley.  A cache mapping strings to MiscContainers has been added to nsHTMLCSSStyleSheet.  MiscContainers can be shared between nsAttrValues when one nsAttrValue is SetTo another nsAttrValue or when there is a cache hit in this cache.  This patch also adds the ability to tell a style rule that it belongs to an nsHTMLCSSStyleSheet, with appropriate accessor functions to separate that from the existing case of belonging to an nsCSSStyleSheet.

The primary use case is to reduce memory use for pages that have lots of inline style attributes with the same value.  This can happen easily with large pages that are automatically generated.  An (admittedly pathological) testcase in Bug 686975 sees over 250 MB of memory savings with this change.  Reusing the same MiscContainer for multiple nodes saves the overhead of maintaining separate copies of the string containing the serialized value of the style attribute and of creating separate style rules for each node.  Eliminating duplicate style rules enables further savings in layout through style context sharing.  The testcase sees the amount of memory used by style contexts go from over 250 MB to 10 KB.

Because the cache is based on the text value of the style attribute, it will not handle attributes that have different text values but are parsed into identical style rules.  We also do not attempt to share MiscContainers when the node's base URI differs from the document URI.  The effect of these limitations is expected to be low.
2012-09-30 09:40:24 -07:00
Robert Longson
fc986af9d2 Bug 729139 - Accept negative radius arcs in markup. r=jwatt 2012-09-29 11:19:13 +01:00
Isaac Aggrey
481e7dfb0b Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
Matt Woodrow
82af1f91f2 Bug 539356 - Disable test_text.html on android since it crashes on armv6. r=roc 2012-09-29 01:12:39 +12:00
Alexandre Dumont
9bb8822425 Bug 596753: Flatten layout/svg/base/src into layout/svg. r=dholbert
--HG--
rename : layout/svg/base/src/Makefile.in => layout/svg/Makefile.in
rename : layout/svg/base/src/SVGFEContainerFrame.cpp => layout/svg/SVGFEContainerFrame.cpp
rename : layout/svg/base/src/SVGFEImageFrame.cpp => layout/svg/SVGFEImageFrame.cpp
rename : layout/svg/base/src/SVGFELeafFrame.cpp => layout/svg/SVGFELeafFrame.cpp
rename : layout/svg/base/src/SVGFEUnstyledLeafFrame.cpp => layout/svg/SVGFEUnstyledLeafFrame.cpp
rename : layout/svg/base/src/SVGViewFrame.cpp => layout/svg/SVGViewFrame.cpp
rename : layout/svg/base/src/nsISVGChildFrame.h => layout/svg/nsISVGChildFrame.h
rename : layout/svg/base/src/nsISVGGlyphFragmentNode.h => layout/svg/nsISVGGlyphFragmentNode.h
rename : layout/svg/base/src/nsISVGSVGFrame.h => layout/svg/nsISVGSVGFrame.h
rename : layout/svg/base/src/nsSVGAFrame.cpp => layout/svg/nsSVGAFrame.cpp
rename : layout/svg/base/src/nsSVGClipPathFrame.cpp => layout/svg/nsSVGClipPathFrame.cpp
rename : layout/svg/base/src/nsSVGClipPathFrame.h => layout/svg/nsSVGClipPathFrame.h
rename : layout/svg/base/src/nsSVGContainerFrame.cpp => layout/svg/nsSVGContainerFrame.cpp
rename : layout/svg/base/src/nsSVGContainerFrame.h => layout/svg/nsSVGContainerFrame.h
rename : layout/svg/base/src/nsSVGEffects.cpp => layout/svg/nsSVGEffects.cpp
rename : layout/svg/base/src/nsSVGEffects.h => layout/svg/nsSVGEffects.h
rename : layout/svg/base/src/nsSVGFilterFrame.cpp => layout/svg/nsSVGFilterFrame.cpp
rename : layout/svg/base/src/nsSVGFilterFrame.h => layout/svg/nsSVGFilterFrame.h
rename : layout/svg/base/src/nsSVGFilterInstance.cpp => layout/svg/nsSVGFilterInstance.cpp
rename : layout/svg/base/src/nsSVGFilterInstance.h => layout/svg/nsSVGFilterInstance.h
rename : layout/svg/base/src/nsSVGFilterPaintCallback.h => layout/svg/nsSVGFilterPaintCallback.h
rename : layout/svg/base/src/nsSVGForeignObjectFrame.cpp => layout/svg/nsSVGForeignObjectFrame.cpp
rename : layout/svg/base/src/nsSVGForeignObjectFrame.h => layout/svg/nsSVGForeignObjectFrame.h
rename : layout/svg/base/src/nsSVGGFrame.cpp => layout/svg/nsSVGGFrame.cpp
rename : layout/svg/base/src/nsSVGGFrame.h => layout/svg/nsSVGGFrame.h
rename : layout/svg/base/src/nsSVGGenericContainerFrame.cpp => layout/svg/nsSVGGenericContainerFrame.cpp
rename : layout/svg/base/src/nsSVGGenericContainerFrame.h => layout/svg/nsSVGGenericContainerFrame.h
rename : layout/svg/base/src/nsSVGGeometryFrame.cpp => layout/svg/nsSVGGeometryFrame.cpp
rename : layout/svg/base/src/nsSVGGeometryFrame.h => layout/svg/nsSVGGeometryFrame.h
rename : layout/svg/base/src/nsSVGGlyphFrame.cpp => layout/svg/nsSVGGlyphFrame.cpp
rename : layout/svg/base/src/nsSVGGlyphFrame.h => layout/svg/nsSVGGlyphFrame.h
rename : layout/svg/base/src/nsSVGGradientFrame.cpp => layout/svg/nsSVGGradientFrame.cpp
rename : layout/svg/base/src/nsSVGGradientFrame.h => layout/svg/nsSVGGradientFrame.h
rename : layout/svg/base/src/nsSVGImageFrame.cpp => layout/svg/nsSVGImageFrame.cpp
rename : layout/svg/base/src/nsSVGInnerSVGFrame.cpp => layout/svg/nsSVGInnerSVGFrame.cpp
rename : layout/svg/base/src/nsSVGInnerSVGFrame.h => layout/svg/nsSVGInnerSVGFrame.h
rename : layout/svg/base/src/nsSVGIntegrationUtils.cpp => layout/svg/nsSVGIntegrationUtils.cpp
rename : layout/svg/base/src/nsSVGIntegrationUtils.h => layout/svg/nsSVGIntegrationUtils.h
rename : layout/svg/base/src/nsSVGMarkerFrame.cpp => layout/svg/nsSVGMarkerFrame.cpp
rename : layout/svg/base/src/nsSVGMarkerFrame.h => layout/svg/nsSVGMarkerFrame.h
rename : layout/svg/base/src/nsSVGMaskFrame.cpp => layout/svg/nsSVGMaskFrame.cpp
rename : layout/svg/base/src/nsSVGMaskFrame.h => layout/svg/nsSVGMaskFrame.h
rename : layout/svg/base/src/nsSVGOuterSVGFrame.cpp => layout/svg/nsSVGOuterSVGFrame.cpp
rename : layout/svg/base/src/nsSVGOuterSVGFrame.h => layout/svg/nsSVGOuterSVGFrame.h
rename : layout/svg/base/src/nsSVGPaintServerFrame.cpp => layout/svg/nsSVGPaintServerFrame.cpp
rename : layout/svg/base/src/nsSVGPaintServerFrame.h => layout/svg/nsSVGPaintServerFrame.h
rename : layout/svg/base/src/nsSVGPathGeometryFrame.cpp => layout/svg/nsSVGPathGeometryFrame.cpp
rename : layout/svg/base/src/nsSVGPathGeometryFrame.h => layout/svg/nsSVGPathGeometryFrame.h
rename : layout/svg/base/src/nsSVGPatternFrame.cpp => layout/svg/nsSVGPatternFrame.cpp
rename : layout/svg/base/src/nsSVGPatternFrame.h => layout/svg/nsSVGPatternFrame.h
rename : layout/svg/base/src/nsSVGStopFrame.cpp => layout/svg/nsSVGStopFrame.cpp
rename : layout/svg/base/src/nsSVGSwitchFrame.cpp => layout/svg/nsSVGSwitchFrame.cpp
rename : layout/svg/base/src/nsSVGTSpanFrame.cpp => layout/svg/nsSVGTSpanFrame.cpp
rename : layout/svg/base/src/nsSVGTSpanFrame.h => layout/svg/nsSVGTSpanFrame.h
rename : layout/svg/base/src/nsSVGTextContainerFrame.cpp => layout/svg/nsSVGTextContainerFrame.cpp
rename : layout/svg/base/src/nsSVGTextContainerFrame.h => layout/svg/nsSVGTextContainerFrame.h
rename : layout/svg/base/src/nsSVGTextFrame.cpp => layout/svg/nsSVGTextFrame.cpp
rename : layout/svg/base/src/nsSVGTextFrame.h => layout/svg/nsSVGTextFrame.h
rename : layout/svg/base/src/nsSVGTextPathFrame.cpp => layout/svg/nsSVGTextPathFrame.cpp
rename : layout/svg/base/src/nsSVGTextPathFrame.h => layout/svg/nsSVGTextPathFrame.h
rename : layout/svg/base/src/nsSVGUseFrame.cpp => layout/svg/nsSVGUseFrame.cpp
rename : layout/svg/base/src/nsSVGUtils.cpp => layout/svg/nsSVGUtils.cpp
rename : layout/svg/base/src/nsSVGUtils.h => layout/svg/nsSVGUtils.h
rename : layout/svg/base/src/resources/content/svgBindings.xml => layout/svg/resources/content/svgBindings.xml
rename : layout/svg/base/src/svg.css => layout/svg/svg.css
2012-09-24 23:01:21 +02:00
Cameron McCormack
a159762d42 Bug 793612 - Make nsSVGArcConverter robust against zero-sized arc segments. r=longsonr 2012-09-24 22:07:41 +10:00
Reuben Morais
5f9bd65741 Bug 793440 - Fix tautological constant out of range check on DOMSVGTransform.cpp. r=longsonr 2012-09-22 20:48:27 -04:00
Robert Longson
9f1158e270 Bug 567848 - Split content methods from nsSVGUtils into SVGContentUtils. r=dholbert
--HG--
rename : layout/svg/base/src/nsSVGUtils.cpp => content/svg/content/src/SVGContentUtils.cpp
rename : layout/svg/base/src/nsSVGUtils.h => content/svg/content/src/SVGContentUtils.h
2012-09-22 20:26:05 +01:00