Commit Graph

97 Commits

Author SHA1 Message Date
Jonathan Kew
f1bd9b8155 Bug 1282248 - Declare a bunch of gfxTextRun measurement/drawing methods and related helpers as const. r=m_kato 2016-06-27 17:41:55 +01:00
Cameron McCormack (:heycam)
544ad99393 Bug 1270001 - Rename NS_STYLE_TEXT_TRANSFORM_FULLWIDTH to use underscores consistently. r=xidorn
This renaming helps with auto-generated code in stylo.
2016-05-03 23:32:00 +02:00
Aryeh Gregor
c00d4b886e Bug 1193762 part 7 - Use .get() when assigning to variables; r=froydnj
Unlike when returning an nsCOMPtr in a ternary operator or passing to a
function, I used .get() here, since the operation is actually unsafe and
deserves to be marked explicitly.
2016-05-01 21:29:23 +03:00
Xidorn Quan
8f0254cf82 Bug 1097499 part 9 - Transform full-width characters to non-full-width correspondents for combined text. r=jfkthame
MozReview-Commit-ID: CXntBz9HPJu
2016-04-22 09:18:41 +10:00
Jonathan Kew
e6846dd2c6 Bug 1265459 - Replace uses of nsAutoPtr<gfxTextRun> with UniquePtr, and let MakeTextRun and similar methods return a UniquePtr. r=jrmuizel 2016-04-19 17:13:28 +01:00
Nicholas Nethercote
7f7c26ed62 Bug 1260871 - Remove do_GetAtom() and rename NS_NewAtom() as NS_Atomize(). r=erahm.
do_GetAtom() is currently just a synonym for NS_NewAtom().
2016-03-29 10:09:43 +11:00
Xidorn Quan
0547ab650a 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
2016-03-08 15:56:18 +08:00
Carsten "Tomcat" Book
1d112f4b74 Backed out changeset bf004c055beb (bug 1251995) 2016-03-07 12:18:19 +01:00
Xidorn Quan
15658bb242 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
2016-02-29 16:50:17 +08:00
Birunthan Mohanathas
bfee0fb40c Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda
d871b9515f 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
245cd6a02f Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Nicholas Nethercote
7fabd8754f Bug 1231550 - Use DrawTarget instead of gfxContext and/or nsRenderingContext in many places in font/text code. r=jfkthame.
AutoTextRun now only needs a DrawTarget instead of an nsRenderingContext, and
similar nsRenderingContext/gfxContext-to-DrawTarget replacements can be
propagated a long way up the call graph. This patch replaces 93 occurrences of
nsRenderingContext and 135 occurrences of gfxContext with DrawTarget; that's
13% of them.

The patch is mostly plumbing changes. A couple of not-entirely-plumbing
changes:

- It adds a comment about the null check in
  gfxGlyphExtents::GetTightGlyphExtentsAppUnits().

- A couple of functions simply had an unused gfxContext or nsRenderingContext
  parameter removed, e.g. SetLineBreaks().
2015-12-15 13:56:41 -08:00
Nicholas Nethercote
be50c42d8b Bug 1232822 (part 4) - Remove unused argument from SetPotentialLineBreaks(). r=jfkthame. 2015-12-15 13:56:40 -08: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
Nicholas Nethercote
37d91ed8fe Bug 1188745 - Rename nsTArray::SizeOfExcludingThis() as ShallowSizeOfExcludingThis(). r=froydnj.
This makes it clearer that, unlike how SizeOf*() functions usually work, this
doesn't measure any children hanging off the array.

And do likewise for nsTObserverArray.
2015-07-28 23:24:24 -07:00
Dragana Damjanovic
f5e3e71a6d Bug 905127 - Part 2 - remove unnecessary nsNetUtil.h includes r=jduell 2015-07-06 07:55:00 +02:00
Jonathan Kew
4ceb7c15cd Bug 1134216 - Preserve line-break flags properly when applying text-transform conversions. r=smontagu 2015-02-22 19:39:36 +00:00
Mats Palmgren
54161f79fd Bug 1133243 - Fix compilation problem hidden by unified sources. r=heycam 2015-02-15 18:45:48 +00:00
Cameron McCormack
3677bbe1e6 Bug 1067755 - Store relevant style data rather than style context pointers on transformed text runs. r=jdaggett 2015-02-10 21:30:25 +11:00
Carsten "Tomcat" Book
e960b59110 Backed out changeset cab2c930fa02 (bug 1067755) for static analysis build bustage 2015-02-10 11:15:33 +01:00
Cameron McCormack
e70e377e33 Bug 1067755 - Store relevant style data rather than style context pointers on transformed text runs. r=jdaggett 2015-02-10 20:35:59 +11:00
Jonathan Kew
840c68ec31 Bug 619521 - Part 1: Send a notification of any scripts for which font coverage is lacking. r=jdaggett 2014-12-22 16:35:54 +00:00
Jonathan Kew
1973511697 Bug 1108616 - part 1 - Language-specific text-transform casing behavior should only be used when content was explicitly tagged for language. r=dbaron 2014-12-23 12:50:10 +00:00
Jonathan Kew
03b0ef6aae bug 1057331 - add orientation flags to gfxShapedText/gfxTextRun and to glyph runs within the text run, and split glyph runs on orientation changes. r=jdaggett 2014-09-16 12:25:45 +01:00
Jonathan Kew
edbb012cde bug 1048050 - ignore region (or other) subtags when checking for language-specific casing behavior. r=smontagu 2014-08-11 09:49:11 +01:00
Jonathan Kew
be66060264 bug 1018805 - implement custom lowercasing behavior for Irish. r=smontagu 2014-06-02 12:48:01 +01:00
Jonathan Kew
1d566b2581 bug 1014639 - part 2 - use IrishCasing in nsCaseTransformTextRunFactory::TransformString to provide correct Irish uppercasing. r=smontagu 2014-06-01 23:18:03 +01:00
Jonathan Kew
81b881b627 bug 1014639 - part 0 - (preliminary cleanup) split GreekCasing out into its own file to reduce clutter in nsUnicharUtils.cpp. r=smontagu 2014-06-01 23:17:41 +01:00
Jonathan Kew
a41f710764 bug 1015603 part 6 - remove nsFontVariantTextRunFactory from layout, leaving gfx to handle small-caps. r=roc 2014-05-26 14:23:32 +01:00
Jonathan Kew
f23b049d12 bug 1015603 part 2 - move the special Greek uppercasing code from nsTextRunTransformations to intl/unicharutil. r=roc 2014-05-26 14:23:31 +01:00
Jonathan Kew
7915cc9c2d bug 1015603 part 1 - factor out case transformation from nsCaseTransformTextRunFactory::RebuildTextRun into a separate function. r=roc 2014-05-26 14:23:30 +01:00
Ehsan Akhgari
68bfe70f09 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.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 PRUnichar char16_t
2014-01-04 10:02:17 -05:00
James Kitchener
e1cec479dd Bug 114365 - Textrun transformations and TextFrame changes for mathvariant. r=roc 2013-12-02 11:49:27 -05:00
Ehsan Akhgari
1fe743715d Bug 924221 - Minimize the #includes in gfx/thebes; r=bjacob 2013-10-07 19:15:59 -04:00
Ehsan Akhgari
06d49ffd4d Bug 907883 - Minimize #includes in layout/generic; r=roc 2013-08-22 14:32:52 -04:00
Catalin Iacob
0ac9ab6089 Bug 798914 (part 6) - Followup: move MemoryReporting.h include after the cpp's own header include. r=njn. 2013-06-30 18:26:39 +02:00
Catalin Iacob
f88cdc0744 Bug 798914 (part 5) - Use newly introduced mozilla::MallocSizeOf instead of nsMallocSizeOfFun. r=njn. 2013-06-23 14:03:39 +02:00
L. David Baron
ca6c366dc6 Bug 781360 patch 3: Rename {nsIFrame,nsStyleContext,nsComputedDOMStyle}::GetStyle* to Style*, since they can never return null. r=dholbert
Except for the changes in:
  layout/generic/nsIFrame.h (part)
  layout/style/nsComputedDOMStyle.h (all)
  layout/style/nsRuleNode.cpp (part)
  layout/style/nsStyleContext.cpp (part)
  layout/style/nsStyleContext.h (part)
(see patch 3b in the bug), this patch was written with the sed script:
s/\<GetStyle\(Font\|Color\|List\|Text\|Visibility\|Quotes\|UserInterface\|TableBorder\|SVG\|Background\|Position\|TextReset\|Display\|Content\|UIReset\|Table\|Margin\|Padding\|Border\|Outline\|XUL\|SVGReset\|Column\)\>/Style\1/g
2013-02-16 13:51:02 -08:00
Jonathan Kew
9dabc1cae7 bug 774560 pt 2 - implement text-transform:full-width. r=smontagu 2012-11-09 09:43:48 +00:00
Ehsan Akhgari
243c878d26 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
8b4a23fc4c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
David Zbarsky
9050aef271 Bug 763350 - Clean up some includes in content/ and dom/ r=smaug 2012-07-01 16:45:59 -07:00
Gervase Markham
cb6a072c2a Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Jonathan Kew
6afea10f35 bug 752176 - only read the style array for valid offsets within the textrun. r=smontagu 2012-05-06 15:55:12 +01:00
Jonathan Kew
6671dd1f87 bug 307039 - implement Greek-specific uppercasing for text-transform & small-caps. r=past 2012-05-03 08:57:18 +01:00
Jonathan Kew
f2a6bec5bd bug 744357 - implement mappings from Unicode's SpecialCasing.txt for text-transform. r=smontagu 2012-04-24 18:53:39 +01:00
Jonathan Kew
6507554492 bug 740120 - implement context-sensitive mapping for Greek sigma in text-transform:lowercase. r=smontagu 2012-04-15 15:52:47 +01:00
Jonathan Kew
84142618d7 bug 745454 - don't lose line-break flag when merging case-transformed characters in text run. r=smontagu 2012-04-15 15:52:47 +01:00
Ms2ger
f3de1285e1 Bug 741048: Remove gfxAtoms. r=roc 2012-03-30 23:08:46 -07:00