Commit Graph

265 Commits

Author SHA1 Message Date
Birunthan Mohanathas
245cd6a02f Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Ting-Yu Lin
60711ad8f1 Bug 1227927 Part 3 - Use ranged-based for-loop to rewrite some simple loops in part 2. r=mats 2016-01-29 22:42:15 +08:00
Ting-Yu Lin
122e5b9aeb Bug 1227927 Part 2 - Remove nsIFrame::GetFirstPrincipalChild(). r=mats 2016-01-29 22:42:14 +08:00
Xidorn Quan
ca146f45ac Bug 1230034 part 5 - Convert all frame properties which use DeleteValue and ReleaseValue as destructor to be typesafe. r=dbaron
By changing signature of those two functions, we make compiler complain about
all their existing uses, so we can find all of them and convert them.

Some of the callsites of Get() with those properties are also converted, but not
all of them. It is fine because if there is any incorrect conversion, compilers
is able to find out now. So they are completely typesafe.
2016-01-28 14:23:59 +11:00
Xidorn Quan
8e2ada8719 Bug 1230034 part 4 - Make FramePropertyDescriptor to be a template. r=froydnj,dbaron
This patch makes methods of FramePropertyTable and FrameProperties to be
simple template wrapper functions. Then it converts all references to
FramePropertyDescriptor to use "void" parameter to simulate the current
unsafe behavior.

SmallValueHolder is used for storing small values like int32_t, float,
which can fit in the size of a pointer directly, and thus no lifetime
management is needed.
2016-01-28 14:23:59 +11:00
Cameron McCormack
6b1e514145 Bug 1240635 - Interpret glyph x-offsets on SVG vertical text paths in the correct direction. r=longsonr 2016-01-19 19:23:40 +11:00
Nicholas Nethercote
bb5a4f7dc2 Bug 1232852 (part 4) - Remove some unused parameters in and around layout/base/. r=heycam. 2016-01-05 16:08:17 -08:00
Nicholas Nethercote
dc8d23a85d Bug 1229202 (part 3) - Make gfxContextAutoDisableSubpixelAntialiasing take a DrawTarget instead of a gfxContext. r=mattwoodrow. 2015-12-02 15:32:16 -08:00
Bas Schouten
3af4882b81 Bug 1210560 - Part 2: Convert some simple users to use PushGroupForBlendBack. r=jrmuizel 2015-11-11 16:15:39 +01:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Nathan Froyd
bf7f6dda03 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Nicholas Nethercote
7b071516f8 Bug 1208283 (part 1) - Change gfxPattern's single-arg constructor to take a gfx::Color& instead of a gfxRGBA&. r=jwatt. 2015-09-24 17:50:46 -07:00
Robert O'Callahan
5bde6d4aaa Bug 1184842. Pass aOldValue to all mutation observers. r=peterv 2015-07-25 18:01:19 +12:00
Nathan Froyd
92a8124fef Bug 1161627 - part 2 - machine-convert TemporaryRef<T> to already_AddRefed<T>; r=ehsan
This conversion was done with the script:

  find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl' | \
    egrep -v 'cairo-win32-refptr.h|RefPtr.h|TestRefPtr.cpp' | \
    xargs sed -i -e 's/mozilla::TemporaryRef</already_AddRefed</g' \
                 -e 's/TemporaryRef</already_AddRefed</g'

Manual fixups were performed in the following instances:

- We handled mfbt/RefPtr.h manually so as to not convert TemporaryRef itself
  into already_AddRefed.

- The following files had explicit Move() calls added to make up for the lack
  of a copy constructor on already_AddRefed:

  dom/base/ImageEncoder.cpp
  dom/media/MediaTaskQueue.{h,cpp}
  dom/media/webaudio/PannerNode.cpp

- A redundant overload for MediaTaskQueue::Dispatch was deleted.

- A few manual fixups were required in mfbt/tests/TestRefPtr.cpp.

- Comments, using declarations, and forward declarations relating to
  TemporaryRef in dom/canvas/ and gfx/layers/ were changed to refer to
  already_AddRefed.
2015-06-17 10:00:52 -04:00
Jonathan Watt
4c8328b768 Bug 923193, part 4 - Implement support for the 'transform-origin' property in SVG. r=heycam 2015-05-24 22:40:37 +01:00
Jonathan Kew
f0061d09b7 Bug 1157951 patch 1 - Rename fields and variables in nsCharClipDisplayItem etc using VisIStart/End instead of left/right. r=roc 2015-04-29 08:18:53 +01:00
Jonathan Kew
f75bd319ee Bug 1156366 - Support vertical writing modes and upright/sideways glyph orientation in SVG text-on-a-path. r=longsonr 2015-04-25 09:10:19 +01:00
Jonathan Kew
aadb34001e Bug 1153510 - Improve handling of vertical writing mode in SVG text frames. r=longsonr 2015-04-20 18:05:47 +01:00
Jonathan Kew
abdd22ef41 Backout changeset 0b070d503800 (bug 1153510) for mochitest orange on a CLOSED TREE 2015-04-20 18:51:20 +01:00
Jonathan Kew
601441d26f Bug 1153510 - Improve handling of vertical writing mode in SVG text frames. r=longsonr 2015-04-20 18:05:47 +01:00
Robert Longson
65527541f4 Bug 1142982 - implement dominant-baseline=middle properly. r=heycam 2015-04-08 16:18:33 +01:00
Cameron McCormack
66ce5e5693 Bug 1149542 - Part 2: Track undisplayed characters before empty text frames properly. r=dholbert 2015-04-06 09:12:06 -04:00
Cameron McCormack
0cff5ed69c Bug 1149542 - Part 1: Return early from SVG text layout if we discover mPositions is not long enough. r=dholbert 2015-04-06 09:11:55 -04:00
Mats Palmgren
3f92be8fe8 Bug 1148833 part 3 - Remove nsIFrame::WillReflow and add a non-virtual MarkInReflow method instead that sets NS_FRAME_IN_REFLOW. Call it at the start of Reflow(). r=roc 2015-03-29 22:38:40 +00:00
Ehsan Akhgari
ea41d8de48 Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
This patch was automatically generated using the following script:

function convert() {
echo "Converting $1 to $2..."
find . \
       ! -wholename "*/.git*" \
       ! -wholename "obj-ff-dbg*" \
         -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 MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Xidorn Quan
9b1b278564 Bug 1143558 part 1 - Fix line break suppression when newline is significant. r=roc 2015-03-17 19:10:15 +11:00
Robert Longson
cfbaf4aa9c Bug 1141636 - "Dubious loop test in nsSVGElement::GetAnimatedLengthListValues". r=cam f=longsonr 2015-03-12 00:39:00 +01:00
Carsten "Tomcat" Book
1c53699b29 Backed out changeset 5ad9cc334725 (bug 1141636) for suspicion of causing failures in wr tests 2015-03-12 13:05:40 +01:00
Robert Longson
56df54e15b Bug 1141636 - call GetAnimatedLengthListValues with valid arguments. r=heycam 2015-03-12 09:04:47 +00:00
Andrea Marchesini
2ce3453b15 Bug 1134280 - Get rid of Tag() - patch 2.12 - layout/style, layout/svg - Fix all the occurrences, m=smaug, r=surkov 2015-03-03 11:09:00 +00:00
Andrea Marchesini
6b10d5e43e Bug 1134280 - Get rid of Tag() - patch 1 - Is{HTML,XUL,MathML,SVG}Element and IsAnyOf{HTML,XUL,MathML,SVG}Elements, r=smaug 2015-03-03 11:08:59 +00:00
Jonathan Watt
b532b4c22e Bug 1136486 - Simplify the SVG text rendering callbacks by getting rid of NotifyBeforeSVGGlyphPainted and NotifyAfterSVGGlyphPainted. r=heycam 2015-02-17 22:01:54 +00:00
Jonathan Watt
77e18f01bd Bug 1135913, part 4 - Unify SVGTextFrame's NotifyBeforeSelectionDecorationLine and NotifySelectionDecorationLinePathEmitted callbacks. r=heycam 2015-02-04 13:51:22 +00:00
Jonathan Watt
39a2f4feb2 Bug 1135913, part 3 - Unify SVGTextFrame's NotifyBeforeDecorationLine and NotifyDecorationLinePathEmitted callbacks. r=heycam 2015-02-03 20:00:18 +00:00
Robert Longson
0e75f37f69 Bug 1130888 - SVG text on path fill color does not render properly when preceded by RTL text. r=heycam 2015-02-13 20:15:27 +00:00
Nicholas Nethercote
0247de46d8 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo. 2015-02-09 14:34:50 -08:00
Andrew McCreight
e048a7df33 Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00
Nicholas Nethercote
40ab0270d5 Bug 1127201 (part 2) - Convert all NS_ABORT_IF_FALSE calls to MOZ_ASSERT. r=Waldo. 2015-02-04 20:05:36 -08:00
Seth Fowler
72fb0505de Bug 1128356 - Add template functions for common frame property destructors. r=dbaron 2015-02-04 15:22:27 -08:00
Jonathan Watt
0d0ce5c404 Bug 1127114, part 2 - Unify SVGTextFrame's NotifyBeforeSelectionBackground and NotifySelectionBackgroundPathEmitted callbacks. r=heycam 2015-01-27 16:32:24 +00:00
Jonathan Watt
d63b2b5b7d Bug 1123946 - Convert SVGTextDrawPathCallbacks filling to Moz2D. r=Bas 2015-01-21 16:23:30 +00:00
Robert Longson
8fcba7202d Bug 1123194 - make textPath work with a path that is display:none r=heycam 2015-01-20 14:07:26 +00:00
Robert O'Callahan
60ef9c392a Bug 1099977. Part 2: Make gfxFont::Measure return an empty bounding-box when all glyphs are invisible. r=jfkthame 2014-11-18 23:23:45 +13:00
Robert Longson
ca4ae009ea Bug 1109860 - getBBox incorrect with bidirectional text character. r=heycam 2015-01-02 16:47:47 +00:00
Robert Longson
2ee31095f7 Bug 1111222 - Use HasNonScalingStroke() more. r=dholbert 2014-12-17 13:58:31 +00:00
Jonathan Watt
da86fe12cc Bug 1107414 - Get rid of gfxContext::FillWithOpacity. r=mattwoodrow 2014-12-02 14:29:44 -08:00
Robert Longson
a9586a0bab Bug 1090936 - Make invalidation of rendering observers asynchronous. r=jwatt 2014-11-06 09:30:11 +00:00
Jonathan Watt
5d65b7ab3a Bug 1093066 - Get rid of gfxContext's Stroke() methods. r=mattwoodrow 2014-11-05 09:16:37 +00:00
Jonathan Watt
fd90b8fa16 Bug 1091321, part 5 - Convert nsSVGMarkerFrame::PaintMark and related code from nsRenderingContext to gfxContext. r=longsonr 2014-10-31 20:08:54 +00:00
Jonathan Watt
d9921394d7 Bug 1091321, part 4 - Convert nsISVGChildFrame::PaintSVG and related code from nsRenderingContext to gfxContext. r=longsonr 2014-10-31 20:08:54 +00:00