Commit Graph

129 Commits

Author SHA1 Message Date
Xidorn Quan
40f8859cc1 Bug 1251995 part 6 - Use struct to pass params for nsTextFrame::PaintText* functions. r=jfkthame
MozReview-Commit-ID: NTEUm8TY8N

--HG--
extra : source : d1f1d14ddf9df26f07a28a36e54216b8ad6ff5fb
2016-03-08 15:56:18 +08:00
Xidorn Quan
e1002ffcb3 Bug 1251995 part 5 - Unify units of dirty rect used for painting text frame. r=jfkthame
MozReview-Commit-ID: BK7j6y7lBV3

--HG--
extra : source : 4403438493793ddfa7356cab2438d050f8a66da1
2016-03-08 15:56:18 +08:00
Xidorn Quan
b3ea3fa801 Bug 1251995 part 2 - Add gfxTextRun::Range to replace parameter pairs like (offset, length) and (start, end). r=jfkthame
Although this makes some places more complicated, code should generally
be simpler and clearer. It could slightly improve performance on x64 for
functions with more than four parameters, since it makes more data be
passed via registers rather than the stack.

MozReview-Commit-ID: D0GM2Jyrr6W

--HG--
extra : source : bd88a2e478e23edf1845f724a32fef908c8cc007
2016-03-08 15:56:18 +08:00
Xidorn Quan
ab357753a9 Bug 1251995 part 1 - Add helper functions to simplify code. r=jfkthame
MozReview-Commit-ID: 6UBvmEpo12f

--HG--
extra : source : d14cafc0e378ab7356c32a0b469ed783244aa48b
2016-03-08 15:56:18 +08:00
Carsten "Tomcat" Book
41a0c1ddb8 Backed out changeset d88221aad093 (bug 1251995) for reftest failures 2016-03-07 12:18:40 +01:00
Carsten "Tomcat" Book
b9f86983b1 Backed out changeset bf004c055beb (bug 1251995) 2016-03-07 12:18:19 +01:00
Carsten "Tomcat" Book
26ad32ef03 Backed out changeset ac1d42c669be (bug 1251995) 2016-03-07 12:18:14 +01:00
Carsten "Tomcat" Book
cf20e3d145 Backed out changeset c36e12ded845 (bug 1251995) 2016-03-07 12:18:13 +01:00
Xidorn Quan
a6408cb861 Bug 1251995 part 6 - Use struct to pass params for nsTextFrame::PaintText* functions. r=jfkthame
MozReview-Commit-ID: NTEUm8TY8N

--HG--
extra : rebase_source : 134dd6abcb3cbc61f61b9466be5675b1a0436684
2016-03-01 17:43:06 +08:00
Xidorn Quan
0a4c762195 Bug 1251995 part 5 - Unify units of dirty rect used for painting text frame. r=jfkthame
MozReview-Commit-ID: BK7j6y7lBV3

--HG--
extra : rebase_source : 38b5544d3e572927b64d8066a61bfa9711400199
2016-03-01 16:28:27 +08:00
Xidorn Quan
8e3206382b Bug 1251995 part 2 - Add gfxTextRun::Range to replace parameter pairs like (offset, length) and (start, end). r=jfkthame
Although this makes some places more complicated, code should generally
be simpler and clearer. It could slightly improve performance on x64 for
functions with more than four parameters, since it makes more data be
passed via registers rather than the stack.

MozReview-Commit-ID: D0GM2Jyrr6W

--HG--
extra : rebase_source : 29961e56b5fe14b244046b3dc52b1f922c206218
2016-02-29 16:50:17 +08:00
Xidorn Quan
5b1f34e2f6 Bug 1251995 part 1 - Add helper functions to simplify code. r=jfkthame
MozReview-Commit-ID: 6UBvmEpo12f

--HG--
extra : rebase_source : e967015366b727f199fe3febedc70f1f43f19725
2016-03-04 19:20:43 +08:00
Birunthan Mohanathas
d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda
d381b4bca6 Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas
373593275e Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Ting-Yu Lin
2d02ad0652 Bug 1227927 Part 3 - Use ranged-based for-loop to rewrite some simple loops in part 2. r=mats
--HG--
extra : commitid : CcdpGdlMNIk
extra : rebase_source : 9c184cb8107bf6276c237d03d240f8755fd61553
2016-01-29 22:42:15 +08:00
Ting-Yu Lin
1889f6bc41 Bug 1227927 Part 2 - Remove nsIFrame::GetFirstPrincipalChild(). r=mats
--HG--
extra : commitid : 5qtaK1nS8RC
extra : rebase_source : dcc98f423b2446269beb6fa6a9d092ae8213f38e
2016-01-29 22:42:14 +08:00
Xidorn Quan
e397870be2 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.

--HG--
extra : source : 808415985d3d446f18941eb007a9be9d69d180ce
2016-01-28 14:23:59 +11:00
Xidorn Quan
6ad1442a53 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.

--HG--
extra : source : 88b2723cddf119d73d8a442d8238b50406e9d604
2016-01-28 14:23:59 +11:00
Cameron McCormack
1e4ade314b 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
fd7ca876ef Bug 1232852 (part 4) - Remove some unused parameters in and around layout/base/. r=heycam.
--HG--
extra : rebase_source : 68642322a9fc78bb7eace1501b75003241a44507
2016-01-05 16:08:17 -08:00
Nicholas Nethercote
757eb4ec8c Bug 1229202 (part 3) - Make gfxContextAutoDisableSubpixelAntialiasing take a DrawTarget instead of a gfxContext. r=mattwoodrow.
--HG--
extra : rebase_source : 63851ac1725451c7607c00b345ce3334ff749246
2015-12-02 15:32:16 -08:00
Bas Schouten
d4041dbed1 Bug 1210560 - Part 2: Convert some simple users to use PushGroupForBlendBack. r=jrmuizel 2015-11-11 16:15:39 +01:00
Nathan Froyd
01583602a9 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

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Nathan Froyd
583afa0965 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
25d52ffe9f Bug 1208283 (part 1) - Change gfxPattern's single-arg constructor to take a gfx::Color& instead of a gfxRGBA&. r=jwatt.
--HG--
extra : rebase_source : 09fece3af01326be1ea7a5c29d52266323f09ade
2015-09-24 17:50:46 -07:00
Robert O'Callahan
1e49288224 Bug 1184842. Pass aOldValue to all mutation observers. r=peterv
--HG--
extra : commitid : CYjyQn3BAqb
extra : rebase_source : ef153c7cf1e08a058d8de6a76dbe7dc343a299fb
2015-07-25 18:01:19 +12:00
Nathan Froyd
974d8120f2 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
13ebd5c893 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
ed4f94f6c0 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
4475b452c8 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
ddd0c9c133 Bug 1153510 - Improve handling of vertical writing mode in SVG text frames. r=longsonr 2015-04-20 18:05:47 +01:00
Jonathan Kew
d6d23c7bc2 Backout changeset 0b070d503800 (bug 1153510) for mochitest orange on a CLOSED TREE 2015-04-20 18:51:20 +01:00
Jonathan Kew
33ba188037 Bug 1153510 - Improve handling of vertical writing mode in SVG text frames. r=longsonr 2015-04-20 18:05:47 +01:00
Robert Longson
7407a9449d Bug 1142982 - implement dominant-baseline=middle properly. r=heycam 2015-04-08 16:18:33 +01:00
Cameron McCormack
78af8ddb6c Bug 1149542 - Part 2: Track undisplayed characters before empty text frames properly. r=dholbert 2015-04-06 09:12:06 -04:00
Cameron McCormack
9970f9a1af 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
ed9ed2d61a 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
883849ee32 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
25df7941eb Bug 1143558 part 1 - Fix line break suppression when newline is significant. r=roc
--HG--
extra : source : c700ba786622769700d740c6761ca5a66879b761
2015-03-17 19:10:15 +11:00
Robert Longson
42783f00a8 Bug 1141636 - "Dubious loop test in nsSVGElement::GetAnimatedLengthListValues". r=cam f=longsonr
--HG--
extra : rebase_source : be584aae6e5b242feea81056dab7684cf0476d39
2015-03-12 00:39:00 +01:00
Carsten "Tomcat" Book
3f60990baf Backed out changeset 5ad9cc334725 (bug 1141636) for suspicion of causing failures in wr tests 2015-03-12 13:05:40 +01:00
Robert Longson
40c622e1ff Bug 1141636 - call GetAnimatedLengthListValues with valid arguments. r=heycam 2015-03-12 09:04:47 +00:00
Andrea Marchesini
522d158529 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
2c4f63331f 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
6c3e865ef2 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
513fc5ff83 Bug 1135913, part 4 - Unify SVGTextFrame's NotifyBeforeSelectionDecorationLine and NotifySelectionDecorationLinePathEmitted callbacks. r=heycam 2015-02-04 13:51:22 +00:00
Jonathan Watt
9dd15de828 Bug 1135913, part 3 - Unify SVGTextFrame's NotifyBeforeDecorationLine and NotifyDecorationLinePathEmitted callbacks. r=heycam 2015-02-03 20:00:18 +00:00
Robert Longson
e05352fc8e 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
242708cf72 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo.
--HG--
extra : rebase_source : 488e401ff87e31a2074c4108c4df0572d9536667
2015-02-09 14:34:50 -08:00