David Zbarsky
3dbafb9767
Bug 846908 - Move functions from nsISMILAnimationElement to SVGAnimationElement r=birtles
2013-03-18 23:18:45 -04:00
Mats Palmgren
d5826be6d7
Bug 786533 - Replace NS_MIN/NS_MAX with std::min/std::max and #include <algorithm> where needed. r=ehsan
2013-01-15 13:22:03 +01:00
Kyle Huey
1ccfbe810b
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
Isaac Aggrey
a53c93b026
Bug 795351: Replace LL_MAXINT, LL_MININT, LL_MAXUINT with stdint versions; r=ehsan
2012-09-28 14:55:23 -05:00
Ehsan Akhgari
8c296bbcd4
Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
...
This patch was generated by a script. Here's the source of the script for
future reference:
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.c" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t
convert PRIntn int
convert PRUintn unsigned
convert PRSize size_t
convert PROffset32 int32_t
convert PROffset64 int64_t
convert PRPtrdiff ptrdiff_t
convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Aryeh Gregor
57c0ad57fb
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
Gervase Markham
87620f5676
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Brian Birtles
c289211542
Bug 755603 - Remove broken frozen to-animation behavior; r=dholbert
2012-05-21 08:48:38 +09:00
Nicholas Nethercote
ba5600fd65
Bug 711895 - Tweak the warning options used for GCC builds (3rd attempt). r=waldo,derf,khuey,mhommey.
...
--HG--
extra : rebase_source : 20540c9b838ee3be6cb0847c1b90fdc3bd44059d
2012-03-21 22:21:16 -07:00
Nicholas Nethercote
256772d52e
Backed out changeset 0124795a8cbb (bug 711895) due to i10n build bustage. r=me.
2012-03-21 21:46:27 -07:00
Nicholas Nethercote
1859bc3ea6
Bug 711895 - Tweak the warning options used for GCC builds (2nd attempt). r=waldo,derf,khuey,mhommey,jwatt.
2012-03-15 19:40:00 -07:00
Brian Birtles
c3e2428129
Bug 728758 - Detect animations removed from top of compositor stack and recomposite; r=dholbert
2012-02-24 09:45:40 +09:00
Jonathan Watt
5f19b9b508
Bug 726582 - Prevent nsSMILCSSProperty::ValueFromString from reading uninitialized out-param aPreventCachingOfSandwich. r=dholbert.
...
--HG--
extra : rebase_source : 1a766e42f4b3f323fcf5d4de4d3ba96be1ec8b15
2012-02-13 18:24:51 +00:00
Daniel Holbert
d08be04b58
Bug 699325: Make calcMode="paced" smil animation fall back to calcMode="discrete" when its values have 0 distance between them. r=birtles
2011-11-04 00:21:58 -07: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
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
Brian Birtles
a819b6b88c
Bug 682184 part 2 - Add nsSMILTimeValue::IsResolved; r=dholbert
2011-09-07 09:20:40 +09:00
Brian Birtles
08eeeda336
Bug 682184 part 1 - Rename nsSMILTimeValue::IsResolved to IsDefinite; r=dholbert
2011-09-07 09:20:40 +09:00
Ehsan Akhgari
78f4e1ccb9
Revert to 176fae7de173 which was fine.
...
Sorry for breaking the history, won't trust TBPL, ever again. :(
2011-09-02 09:15:54 -04:00
Ehsan Akhgari
a171549936
Revert to changeset e6fc4594c22e which was the last one to get a green Win7 tp run
2011-09-02 09:03:08 -04:00
Brian Birtles
4471d78fff
Bug 681645 - SMIL: accommodate floating-point errors in discrete animations; r=dholbert
2011-09-02 08:13:45 +09:00
Daniel Holbert
56f8c6a91d
Bug 678822: Skip call to nsSMILAnimationFunction::GetAccumulate() if we've had parse errors. r=birtles
2011-08-15 17:58:52 -07:00
Cameron McCormack
c0000045de
Bug 651036 - SMIL: Make discrete to-animations behave consistently with discrete from-to animations r=dholbert
2011-04-20 14:05:29 +12:00
Daniel Holbert
e8961b4743
Bug 617817: Don't automatically recompose <set> & indefinite-duration animations, since we know they always have the same effect. r=birtles a=roc
2010-12-10 10:33:13 -08:00
timeless@mozdev.org
2e15d9fa67
Bug 577905 mark DEBUG only variables as ifdef DEBUG in svg
...
r=dholbert a=roc
--HG--
extra : rebase_source : 1ff1359b298ffc5f273f3d0448e0e676d0d95069
2010-07-11 15:30:35 +03:00
Brian Birtles
ecbab21a00
Bug 614879 - SVG SMIL: Fix indefinite to-animation; r=dholbert, a=roc
...
--HG--
extra : rebase_source : 9abf06da6a8e24f814623c370e66d77ec467c0e6
2010-12-05 13:13:31 +00:00
Brian Birtles
c15a012ecd
Bug 611927 - SVG SMIL: Fix assertion when attempting to add to NULL base value; r=dholbert; a=roc
2010-11-24 08:31:17 +09:00
Brian Birtles
896e0f43f0
Bug 603917 - SVG SMIL: Allow some forms of animation even if base value is not animatable; r=dholbert; a=blocking-2.0
2010-11-10 08:21:04 +09:00
Brian Birtles
deb48ddddd
Bug 557885 - SVG SMIL: Support keyTimes for calcMode=discrete; r=dholbert; a=blocking-betaN
2010-09-18 12:46:48 +09:00
Brian Birtles
36e7527d9a
Bug 544855 - Make discrete to-animation only visit to value, r=dholbert, a=blocking-betaN+
2010-08-18 19:20:24 +09:00
Brian Birtles
7581213bbc
Bug 485157: SMIL event timing, part 4 refactor nsIContent usage to use mozilla::dom::Element instead, r=dholbert, sr=roc, a=roc
2010-08-18 19:20:24 +09:00
Felipe CorrĂȘa da Silva Sanches
57a4d6e3e9
Bug 554704: Rename "aCanCache" param (for nsISMILAttr::ValueFromString), r=dholbert, r=jwatt
2010-06-23 17:30:55 -07:00
Daniel Holbert
c240503b49
Bug 436418, patch F: SVG/SMIL animateMotion - add support for keyPoints attribute. r=roc
2010-04-28 16:00:54 -07:00
Daniel Holbert
49730afb12
Bug 436418, patch E: SVG/SMIL animateMotion - add support for <animateMotion> element and its core logic. r=roc
2010-04-28 16:00:54 -07:00
Daniel Holbert
499364814d
Bug 436418, patch C3: SVG/SMIL animateMotion - add "TreatSingleValueAsStatic" helper method, to assist nsSMILAnimationFunction subclasses in customizing animation behavior. r=roc
2010-04-28 16:00:53 -07:00
Daniel Holbert
02cf40a28a
Bug 436418, patch C2: SVG/SMIL animateMotion - move nsSMILAnimationFunction error-flag-handling code from a macro to a method. r=roc
2010-04-28 16:00:53 -07:00
Daniel Holbert
522a227913
Bug 555026: In SMIL animation, ignore keyTimes attr when in paced calcMode. r=roc
2010-04-06 14:39:29 -07:00
Daniel Holbert
349c8a3d2a
Bug 556841: In paced-calcMode SMIL animation, don't bother computing distance in trivial 2-values case. r=roc
2010-04-05 09:59:42 -07:00
Daniel Holbert
8a432e2ae4
Bug 554687 patch 2: Use nsSMILValue::Swap instead of operator= where appropriate. r=roc
2010-03-26 12:24:07 -07:00
Daniel Holbert
f5b5986626
Backed out changeset 1bcf725bb32f due to PR_STATIC_ASSERT failure on ppc
2010-03-25 09:21:10 -07:00
Daniel Holbert
7a1b4bf825
Bug 554687 patch 2: Use nsSMILValue::Swap instead of operator= where appropriate. r=roc
2010-03-25 09:02:03 -07:00
Saint Wesonga
f78442c0ad
Bug 523417 - "warning: invoking macro NS_ENSURE_SUCCESS argument 2: empty macro arguments are undefined in ISO C90 and ISO C++98" in DOM worker code. r=jst
2010-02-22 18:41:21 +01:00
Daniel Holbert
9123e91013
Bug 533291 Patch E: Add another outparam to nsISMILAttr::ValueFromString, to let us know whether we can re-use the parsed result in the future. r=roc
2010-02-20 13:13:11 -08:00
Daniel Holbert
abcd247e08
Bug 533291 Patch D: Cache base value with each SMIL compositor, since we need to recompose when base value changes. r=roc
2010-02-20 13:13:11 -08:00
Daniel Holbert
6512adf203
Bug 533291 Patch C: When an inactive nsSMILAnimationFunction has changed, force its target to recompose during that sample. r=roc
2010-02-20 13:13:11 -08:00
Daniel Holbert
c85d4fe6db
Bug 533291 Patch B: Add method nsSMILAnimationFunction::UpdateCachedTarget, to tell when an animation function's target has changed. r=roc
2010-02-20 13:13:11 -08:00
Daniel Holbert
07c873628f
Bug 542731: Add 'explicit' label to all single-arg constructors in SMIL code. r=roc
2010-02-11 11:40:50 -08:00
Jae-Seong Lee-Russo
513e9cf886
Bug 517553: Remove '=='/'!=' 'PR_FALSE'/'PR_TRUE'
2010-02-07 10:52:43 -05:00
Daniel Holbert
86c7eaa0cd
Bug 542731: SMIL misc code cleanup: remove trailing '.' from warning messages, to prevent the '.:' in output like 'ASSERTION: blah blah.: /path/to/file:NN'. (no changes outside of assertion/warning message text)
2010-01-28 01:50:30 -08:00
Brian Birtles
d7a66e59c4
Bug 474743 Patch D: Implement syncbase logic. r=dholbert sr=roc
2010-01-12 12:00:49 -08:00