Граф коммитов

66 Коммитов

Автор SHA1 Сообщение Дата
Jonathan Kew 49c97adb4e Bug 1411625 - Remove the constructor from gfxShapedText::CompressedGlyph to make it a trivial class, and provide a couple of convenience "factory" methods to create simple and complex glyph values. r=andi 2017-11-11 15:32:58 +00:00
Jonathan Kew 0aa24e331c Bug 1412355 - Replace the mXOffset/mYOffset fields in DetailedGlyph records with a gfx::Point that stores glyph offsets in line-orientation-relative coordinates. r=jrmuizel 2017-10-30 14:55:42 +00:00
Sebastian Hengst 8968724f1a Backed out changeset 4905048de8d1 (bug 1412355) for frequently failing reftest layout/reftests/writing-mode/1248248-1-orientation-break-glyphrun.html on Linux x64 debug and asan. r=backout
--HG--
extra : amend_source : 61e56c97354c788bfd03aa551e911a1aff14006e
2017-10-28 16:39:59 +02:00
Jonathan Kew 8397a853b8 Bug 1412355 - Replace the mXOffset/mYOffset fields in DetailedGlyph records with a gfx::Point that stores glyph offsets in line-orientation-relative coordinates. r=jrmuizel 2017-10-28 11:37:35 +01:00
Jonathan Kew f25ad51b7c Bug 1405148 - part 2 - Map the 'smcp' OpenType feature to its AAT feature-selector equivalent when shaping via Core Text. r=jrmuizel 2017-10-11 22:12:43 +01:00
Jonathan Kew 660b6f8f61 Bug 1403166 - For Khmer AAT fonts, enable the Line Initial Smart Swashes feature, which is (incorrectly) required for some vowels to render properly. r=jrmuizel 2017-10-11 22:12:42 +01:00
Jonathan Kew d31af3f5c1 Bug 1370927 - For Oriya AAT fonts (as for Bengali and Kannada) enable the Line Initial Smart Swashes feature, which is (incorrectly) required for split-vowel matras to render properly. r=jrmuizel 2017-10-11 22:12:42 +01:00
Jonathan Kew 1151db8b05 Bug 1398133 - Simplify gfxCoreTextShaper code by removing legacy code only needed on 10.7 and earlier. r=jrmuizel 2017-09-14 22:45:26 +01:00
Jonathan Kew 6f0d451756 Bug 1352528 - Hoist call to GetRoundOffsetsToPixels out of the inner loop of text shaping. r=jrmuizel 2017-04-03 17:49:17 +01:00
Jonathan Kew d6f651d360 Bug 1321031 pt 4 - Preserve variations settings if gfxCoreTextShaper needs to instantiate a new CTFont. r=jrmuizel 2017-01-06 16:35:12 +00:00
Ryan VanderMeulen e897fba434 Backed out 6 changesets (bug 1321031) for bustage.
Backed out changeset e0be4f5390fb (bug 1321031)
Backed out changeset ba071046f8ab (bug 1321031)
Backed out changeset 7cb4242dc636 (bug 1321031)
Backed out changeset bc58e479eb58 (bug 1321031)
Backed out changeset c551913ae892 (bug 1321031)
Backed out changeset f4ae57d5358f (bug 1321031)

CLOSED TREE
2017-01-06 12:46:27 -05:00
Jonathan Kew a926c70f28 Bug 1321031 pt 4 - Preserve variations settings if gfxCoreTextShaper needs to instantiate a new CTFont. r=jrmuizel 2017-01-06 16:35:12 +00:00
Andi-Bogdan Postelnicu 70b7835557 Bug 1317637 - Replace integer literals which are cast to bool in gfx/. r=jrmuizel
MozReview-Commit-ID: 12hwCenQ3qL

--HG--
extra : rebase_source : 8eef835f2e9d0a1b40b54ee0b2a14f8dfc37e726
2016-11-15 11:12:27 +02:00
Nicholas Nethercote b71747b2ac Bug 1299727 - Rename NS_WARN_IF_FALSE as NS_WARNING_ASSERTION. r=erahm.
The new name makes the sense of the condition much clearer. E.g. compare:

  NS_WARN_IF_FALSE(!rv.Failed());

with:

  NS_WARNING_ASSERTION(!rv.Failed());

The new name also makes it clearer that it only has effect in debug builds,
because that's standard for assertions.

--HG--
extra : rebase_source : 886e57a9e433e0cb6ed635cc075b34b7ebf81853
2016-09-01 15:01:16 +10:00
Jonathan Kew c60f6a1ae4 Bug 1266391 - Introduce an enum class mozilla::unicode::Script, and use this instead of bare integers to specify script codes for better type checking. r=masayuki 2016-04-21 18:58:59 +01:00
Birunthan Mohanathas 690e6fe38b Bug 1235261 - Part 3: Switch remaining uses of AutoFallibleTArray to AutoTArray. r=froydnj
This is effectively a no-op because the affected array operations already use
`mozilla::fallible`.
2016-02-02 17:36:30 +02: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 720fce4f80 Bug 1235261 - Part 3: Switch remaining uses of AutoFallibleTArray to AutoTArray. r=froydnj
This is effectively a no-op because the affected array operations already use
`mozilla::fallible`.
2016-01-31 17:12:12 +02:00
Birunthan Mohanathas 373593275e Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Nicholas Nethercote 06e901cb9f 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().

--HG--
extra : rebase_source : 8f56994bb4d254a86788b17ab2864ebc758a7e6b
2015-12-15 13:56:41 -08:00
Jonathan Kew 9137c3ddf5 Bug 739117 - Avoid bidi-wrapping the text to be shaped if Core Text direction override API is available. r=jdaggett 2015-12-30 20:29:48 +00:00
Jonathan Kew 722e5d85bf Backed out changeset a7c9fc3f1701 (bug 739117) for unexpected Core Text crashes. 2015-12-29 09:08:24 +00:00
Jonathan Kew f90087f1fa Bug 739117 - Avoid bidi-wrapping the text to be shaped if Core Text direction override API is available. r=jdaggett 2015-12-29 08:23:28 +00:00
Jonathan Kew d7a175fd88 Bug 1230497 - Ignore font fallback in Core Text shaping if it's just for a join-control character. r=jdaggett 2015-12-07 19:22:06 -05:00
Nathan Froyd 634bee4a27 Bug 1216644 - part 1 - simple s/nsAutoArrayPtr/UniquePtr/ changes in gfx/; r=jrmuizel
This patch handles all the cases where we just want to swap out
nsAutoArrayPtr for UniquePtr and don't require code changes other than
updating uses that implicitly converted to T* to follow UniquePtr's
conventions.
2015-10-20 13:13:35 -04:00
Chris Peterson e7dc549743 Bug 1204400 - Fix -Wshadow warnings in gfx/thebes and suppress those from Skia headers. r=BenWa 2015-09-11 20:30:14 -07:00
Birunthan Mohanathas 735ccdd101 Bug 968520 - Add mozilla::fallible to Fallible{Auto,}TArray::SetLength calls. r=froydnj 2015-05-18 13:50:35 -07:00
Jonathan Kew fc8f673c98 Bug 1153460 - Followup to fix warnings-as-errors build failure on a CLOSED TREE. r=bustage. 2015-04-14 10:00:59 +01:00
Jonathan Kew 09f251f3bc Bug 1153460 - Support new Fitzpatrick emoji modifiers and regional symbol indicators in Apple Color Emoji font. r=jdaggett 2015-04-14 09:37:53 +01:00
Jonathan Kew a309bff7b9 Bug 686225 - Work around buggy AAT fonts for Bengali and Kannada scripts. r=jdaggett 2015-03-25 08:25:49 +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 ac48776ad3 Bug 923007 - Check for unexpected font substitution during Core Text shaping, and fall back to harfbuzz if this occurs. r=jdaggett 2014-09-26 09:20:20 +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
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
Birunthan Mohanathas 3440613a39 Bug 713082 - Part 2: Rename Util.h to ArrayUtils.h. r=Waldo
--HG--
rename : mfbt/Util.h => mfbt/ArrayUtils.h
2013-12-08 21:52:54 -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 bb7810ceea Bug 924019 - Do not assume that PRUnichar and UniChar/unichar are the same type; r=smichaud 2013-10-10 12:59:40 -04: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
Birunthan Mohanathas c742394e75 Bug 784739 - Switch from NULL to nullptr in gfx/thebes/; r=ehsan 2013-07-31 11:44:31 -04:00
Mats Palmgren b7ae90666d 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
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 9c1f586890 bug 811312 - part 1 - remove the ATSFontEntry class (not needed on 10.6 and later). r=jdaggett 2012-11-19 10:01:43 +00: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