Commit Graph

43 Commits

Author SHA1 Message Date
Birunthan Mohanathas
735ccdd101 Bug 968520 - Add mozilla::fallible to Fallible{Auto,}TArray::SetLength calls. r=froydnj 2015-05-18 13:50:35 -07:00
Nicholas Nethercote
b31f8f25e5 Bug 1124545 - Avoid creating the mergedFeatures hash table when possible. r=jdaggett.
When scrolling all the way through
https://bugzilla.mozilla.org/show_bug.cgi?id=MNG, |mergedFeatures| gets
initialized more than 50,000 times -- each one involving a heap allocation for
the entry storage -- but it never has anything put into it.

This patch refactors MergeFontFeatures to move |mergedFeatures| inside it. It
now doesn't get created in the common case.

--HG--
extra : rebase_source : 5a8d44b30f90169b70e5f50a5e38bbe57f02b12b
2015-01-21 22:41:02 -08:00
Jonathan Kew
3478d8e504 Bug 1108616 - part 3 - Only do language-specific shaping when the language was explicitly tagged. r=jdaggett 2014-12-23 12:50:10 +00:00
Jonathan Watt
d6d15a2f78 Bug 1093811 - Convert the gfxFont::GetGlyphWidth() virtual method to take a Moz2D DrawTarget instead of a Thebes gfxContext. r=jfkthame 2014-11-10 21:41:41 +00:00
Jonathan Kew
b2c88c5dfe Bug 902762 pt 1 - Pass a 'vertical' flag to font shapers, and support vertical shaping through harfbuzz. r=jdaggett 2014-10-01 20:25:48 +01:00
Jonathan Kew
50b0ff2a5d bug 1066043 - split gfxFont.cpp and .h into more manageably-sized pieces. r=jdaggett
--HG--
rename : gfx/thebes/gfxFont.cpp => gfx/thebes/gfxFontEntry.cpp
rename : gfx/thebes/gfxFont.h => gfx/thebes/gfxFontEntry.h
rename : gfx/thebes/gfxFont.cpp => gfx/thebes/gfxGlyphExtents.cpp
rename : gfx/thebes/gfxFont.h => gfx/thebes/gfxGlyphExtents.h
rename : gfx/thebes/gfxFont.cpp => gfx/thebes/gfxTextRun.cpp
rename : gfx/thebes/gfxFont.h => gfx/thebes/gfxTextRun.h
2014-09-16 10:58:12 +01:00
John Daggett
b69e91abce Bug 961558 - add fallback support for font-variant-caps values. r=jfkthame 2014-06-23 12:09:16 +09:00
Ehsan Akhgari
4b12513f89 Bug 969866 - Use fallible allocations in some places in our font/text shaping code; r=jfkthame
It seems like the sizes for these data structures can be controlled from
Web content, and we are already prepared to deal with OOM conditions,
except that we are using infallible allocations by mistake.
2014-02-08 13:10:07 -05:00
Ehsan Akhgari
1b83407ce9 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
Ehsan Akhgari
3e096d9c3d Bug 939585 - Build gfx/thebes in unified mode; r=BenWa 2013-11-27 08:03:04 -05:00
Phil Ringnalda
022d398c91 Back out d280a1c64f76 (bug 939585) for Mac build bustage
CLOSED TREE
2013-11-24 18:02:14 -08:00
Benoit Girard
49ae528201 Bug 939585 - Build gfx/thebes in unified mode. r=ehsan,bjacob 2013-11-21 14:22:45 -05:00
Ehsan Akhgari
eff9a278ad Bug 924221 - Minimize the #includes in gfx/thebes; r=bjacob
--HG--
extra : rebase_source : af198eb9b9739ce718ba0d16c385624a722cde51
2013-10-07 19:15:59 -04:00
Robert O'Callahan
03e7828db2 Bug 910989. Remove nsTHashtable::Init, fallible allocation, and MT hashtables. r=ehsan,bsmedberg
--HG--
extra : rebase_source : 0787130b1814c74bfb38dc178de94022f0b2e64e
2013-09-02 20:41:57 +12:00
Jonathan Kew
3eb1fdd857 bug 847344 - refactor gfxFont/gfxFontEntry and associated classes for more efficient use of HarfBuzz and Graphite shaper APIs. r=roc 2013-05-16 17:29:20 +01:00
John Daggett
0eae803e8f Bug 549861 - reland font-variant subproperties with DOM-peer review. r=khuey 2013-05-20 11:59:20 +09:00
Ms2ger
7786ea6954 Backout bug 549861 (changesets 27fb48df15ce:7ecd4e3863b4) for insufficient review. 2013-05-19 20:23:19 +02:00
John Daggett
be11778d6b Bug 549861. Implement gfx support for font-variant-alternates. r=jkew 2013-05-13 18:45:37 +09:00
John Daggett
d664a50735 Bug 549861. Implement rendering support for simple font-variant properties. r=jkew 2013-05-13 18:45:36 +09:00
Jonathan Kew
581ef32c77 bug 836225 - handle supplementary-plane chars properly in graphite shaper. r=jdaggett 2013-02-13 23:40:24 +00:00
Jonathan Kew
d66002cc36 bug 833297 - ensure graphite shaper does not overwrite cluster information. r=jdaggett 2013-01-23 16:41:32 +00:00
Jonathan Kew
45b3edb7fe bug 831687 - make graphite shaping use hinted widths if implemented by the font. r=jdaggett 2013-01-21 09:24:24 +00:00
Jonathan Kew
8743c8e938 bug 831277 - (b) properly round glyph positions to appunits or pixels (as appropriate for the platform) in the graphite shaper. r=jdaggett 2013-01-21 09:24:08 +00:00
Jonathan Kew
32fd2a26de bug 825871 - refactor gfxTextRun and gfxShapedWord to share a common abstract base class (gfxShapedText) and shaping interface. r=roc 2013-01-04 18:35:37 +00:00
Jonathan Kew
42d1b03c30 bug 772640 - fix for incorrect glyph positioning in multi-glyph RTL clusters generated by Graphite shaping. r=jdaggett 2012-10-22 08:47:03 +01:00
Trevor Saunders
000b6e89a1 bug 798595 - remove useless prmem.h includes r=ehsan 2012-10-04 02:14:06 -04:00
Ehsan Akhgari
f603b68908 Bug 793408 - Remove some prtypes.h #includes from gfx; r=jrmuizel 2012-09-28 14:56:27 -04:00
Phil Ringnalda
1b76ccfe19 Back out 519f41fa596f (bug 793408) for Windows build bustage on a CLOSED TREE 2012-09-27 14:38:23 -07:00
Ehsan Akhgari
f1fd529b1c Bug 793408 - Remove some prtypes.h #includes from gfx; r=jrmuizel 2012-09-22 11:34:22 -04:00
Ehsan Akhgari
4192c26db6 Backout changeset 24f4f77fba76 (bug 793408) because of broken builds on a CLOSED TREE 2012-09-27 10:24:08 -04:00
Ehsan Akhgari
aa7494f465 Bug 793408 - Remove some prtypes.h #includes from gfx; r=jrmuizel 2012-09-22 11:34:22 -04:00
Randell Jesup
65539ef89c Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -04:00
Ehsan Akhgari
e368dc9c85 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
d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
John Daggett
bae4d92415 Bug 718539. Merge per-font and style rule font features. r=jkew 2012-04-26 15:26:03 +09:00
Jonathan Kew
14d5a8ace4 bug 745780 - update harfbuzz code to upstream commit 3cde23664fbbe9cd2ac1b8fd5eb2ea288309cc9c (2012-04-17). r=jdaggett a=mfinkle 2012-04-21 22:24:39 +01:00
Jonathan Kew
3cd1485d61 bug 745261 - check calls to SetupCairoFont for failure. r=jdaggett 2012-04-17 09:50:26 +01:00
Nathan Froyd
6dd9a94b6b Bug 700659 - Slay nsHashSets in gfx/thebes, round 2. r=jrmuizel 2012-02-27 11:19:36 -05:00
Jonathan Kew
c7fa86d451 bug 724826 pt 1 - move various Unicode property tables from gfx to intl. r=smontagu
--HG--
rename : gfx/thebes/gfxUnicodeProperties.h => intl/unicharutil/public/nsUnicodeProperties.h
rename : gfx/thebes/gfxUnicodeScriptCodes.h => intl/unicharutil/public/nsUnicodeScriptCodes.h
rename : gfx/thebes/gfxUnicodeProperties.cpp => intl/unicharutil/src/nsUnicodeProperties.cpp
rename : gfx/thebes/gfxUnicodePropertyData.cpp => intl/unicharutil/src/nsUnicodePropertyData.cpp
rename : gfx/thebes/genUnicodeScriptData.pl => intl/unicharutil/tools/genUnicodePropertyData.pl
2012-02-24 10:15:46 +00:00
Jonathan Kew
762e7ba46d bug 695857 - update harfbuzz code and adapt gfx/thebes for revised harfbuzz API. r=jdaggett
harfbuzz library code from upstream harfbuzz-ng commit f51e167436a51b890ffe3f7f7920498fa287acd9;
replaced HB_SCRIPT_* with MOZ_SCRIPT_* codes in gfx;
adapted for changes to HB function signatures.
2012-02-14 08:03:01 +00:00
Jonathan Kew
8b3e906164 bug 703100 - pt 2.1 - implement gfxShapedWord caching for gfxFont instances. r=roc 2011-12-06 12:39:19 +00:00
Jonathan Kew
cda15d7f51 bug 631479 (part 4) - implement gfxGraphiteShaper to handle text-shaping for graphite-enabled fonts. r=jdaggett 2011-12-09 22:32:29 +00:00