Commit Graph

127 Commits

Author SHA1 Message Date
Jeremy Chen
c41d8342dd Bug 1347819 - change nsFont::languageOverride to store uint32_t directly. r=jfkthame
Since font-language-override can only have a single three-letter tag, and it is
eventually converted to uint32_t while creating gfxFontStyle, we should be able
to move the conversion ahead, to an earlier stage.

In this patch, we move the ParseFontLanguageOverride to nsRuleNode, so we could
do the nsString-to-uint32_t conversion during computing time.

MozReview-Commit-ID: LA4Bv3wV7K

--HG--
extra : rebase_source : 48059a9913d58363f78dea59b1b7811d9f038352
2017-03-23 21:59:55 +08:00
Jeff Muizelaar
da3210576b Bug 1119128. Eliminate gfxPangoFontGroup and gfxFontconfigUtils. r=lsalzman 2017-03-22 14:58:19 -04:00
Nicholas Nethercote
c2306345d5 Bug 1297658 - Avoid unnecessary checking in memory reporters. r=erahm.
This patch removes checking of all the callback calls in memory reporter
CollectReport() functions, because it's not useful.

The patch also does some associated clean-up.

- Replaces some uses of nsIMemoryReporterCallback with the preferred
  nsIHandleReportCallback typedef.

- Replaces aCallback/aCb/aClosure with aHandleRepor/aData for CollectReports()
  parameter names, for consistency.

- Adds MOZ_MUST_USE/[must_use] in a few places in nsIMemoryReporter.idl.

- Uses the MOZ_COLLECT_REPORT macro in all suitable places.

Overall the patch reduces code size by ~300 lines and reduces the size of
libxul by about 37 KiB on my Linux64 builds.

--HG--
extra : rebase_source : e94323614bd10463a0c5134a7276238a7ca1cf23
2016-08-24 15:23:45 +10:00
Jonathan Kew
fb5e0a3be3 Bug 1268021 - Implement memory reporting for the user-font cache. r=njn 2016-05-03 12:14:34 +01:00
Jonathan Kew
1be69b60f6 Backout 86bea1a981f9 (bug 1268021) for causing Windows crashes on a CLOSED TREE. 2016-05-03 13:36:28 +01:00
Jonathan Kew
a4e2a6456b Bug 1268878 - Include various of gfxFontEntry's sub-objects in memory reporting. r=njn 2016-05-03 12:14:35 +01:00
Jonathan Kew
d1f897d72c Bug 1268021 - Implement memory reporting for the user-font cache. r=njn 2016-05-03 12:14:34 +01:00
Jonathan Kew
28a9e2cf14 Bug 1265452 - Remove use of nsAutoPtr from gfx/thebes. r=jrmuizel 2016-04-15 20:45:37 +01:00
Christoph Kerschbaumer
9ab1648f67 Bug 1195172 - Use channel->ascynOpen2 layout/style/FontFaceSet.cpp (r=bz,cam) 2016-03-01 13:06:13 -08:00
John Daggett
535864fddf Bug 1188802 - only rebuild local webfont rules when needed. r=heycam 2016-02-08 10:11:39 +09:00
Carsten "Tomcat" Book
745be97723 Backed out changeset 2257088c6b04 (bug 1188802) 2016-02-05 11:19:11 +01:00
John Daggett
a4c7835ada Bug 1188802 - only rebuild local webfont rules when needed. r=heycam 2016-02-05 16:46:27 +09:00
John Daggett
ade0c810ea Bug 1157064 - implementation of font-display. r=heycam,khuey 2016-01-07 14:03:05 +09:00
John Daggett
14ad4bf8f6 Bug 1224975 - add telemetry for font loading. r=m_kato
--HG--
extra : rebase_source : ef31e321366f6edcc465ad9a4474c1e8287a6054
2015-11-25 14:48:16 +09:00
Nicholas Nethercote
d3b5a35826 Bug 1219476 (part 1) - Replace PRLogModuleInfo usage with LazyLogModule in gfx/. r=erahm.
--HG--
extra : rebase_source : 387c369dfdca8e5cca98dacf9ef97cd0b298d0c9
2015-10-28 20:45:42 -07:00
John Daggett
f4458274bd Bug 543715 p1 - distinguish between italic and oblique. r=jfkthame 2015-10-19 11:16:43 +09:00
Phil Ringnalda
adfbc1f710 Back out 2 changesets (bug 543715) because Mulet is why we can't have nice things
Backed out changeset 2d1d8e9b095c (bug 543715)
Backed out changeset bc90276ec090 (bug 543715)
2015-10-18 11:22:22 -07:00
John Daggett
72b6bcd6d6 Bug 543715 p1 - distinguish between italic and oblique. r=jfkthame 2015-10-18 22:17:46 +09: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
Cameron McCormack
4872fb60dc Bug 1163877 - Part 3: Update state on, and reflow documents for, all FontFaceSets that contain a FontFace whose user font entry updated. r=jdaggett 2015-10-16 17:10:14 +11:00
John Daggett
8995363ec7 Bug 1185812 - rejigger the ordering of fonts within a family to avoid obscure faces. r=heycam 2015-09-02 12:24:30 +09:00
Nicholas Nethercote
6903c4d3aa Bug 1182962 (part 1) - Use nsTHashtable::Iterator in gfxUserFontSet. r=jfkthame.
--HG--
extra : rebase_source : 33b6afcb2d314033964d8443ccb335eb8106d00f
2015-07-13 17:41:12 -07:00
Michael Layzell
bbe7e606d2 Bug 1168172 - Mark gfxUserFontEntry::mLoader as MOZ_NON_OWNING_REF. r=jtd
--HG--
extra : rebase_source : b0fb8094a9a089170a7538d5300b20c026e71a3d
2015-05-25 11:30:00 -04:00
Michael Layzell
6e3a4bba77 Bug 1167697 - Mark refs to gfxFontEntry in UserFontCache as MOZ_NON_OWNING_REF. r=jtd
--HG--
extra : rebase_source : 80dc502bcd131927ff105cbe97ec5995b630b774
2015-05-22 11:47:00 -04:00
Eric Rahm
67b91ff53a Bug 1162748 - Remove instances of #ifdef PR_LOGGING in graphics. r=froydnj
PR_LOGGING is now always defined, we can remove #ifdefs checking for it.
2015-05-08 14:37:01 -07:00
Mike Hommey
924c9eb636 Bug 1134923 - Remove NS_Alloc/NS_Realloc/NS_Free. r=nfroyd
They are kept around for the sake of the standalone glue, which is used
for e.g. webapprt, which doesn't have direct access to jemalloc, and thus
still needs a wrapper to go through the xpcom function list and get to
jemalloc from there.
2015-05-01 09:40:30 +09:00
John Daggett
16051fe356 Bug 935862 p2 - add various userfont lookup methods. r=heycam 2015-03-06 17:44:18 +09:00
Sid Stamm
7235c3b5b2 Bug 704320 - Add referrer policy support to stylesheet and CSS loads and fonts. (r=bz) 2014-11-18 08:46:47 -05:00
John Daggett
6f795700cb Bug 475891 - support unicode-range when matching userfonts (non-linux). r=jfkthame 2014-11-06 13:42:50 +09:00
John Daggett
556a622173 Bug 1083599 - fixup small problem with userfont logging. r=m_kato 2014-10-17 09:15:29 +09:00
Jonathan Kew
21fd93a194 Bug 1064737 pt 3 - Read metadata from a WOFF2 font if present. r=jdaggett 2014-10-04 11:46:54 +01:00
Jonathan Kew
0d2cfaf334 Bug 1064737 pt 2 - Support for WOFF2 as a webfont format. r=jdaggett 2014-10-04 11:36:05 +01:00
Cameron McCormack
103bb77e68 Bug 1028497 - Part 25: Support loading of fonts from ArrayBuffer{,View}s. r=bzbarsky,jdaggett 2014-10-02 12:32:09 +10:00
Cameron McCormack
d045185df5 Bug 1028497 - Part 14: Rename some methods to talk about UserFontEntry instead of FontFace. r=jdaggett
How that we have a class named "FontFace", it's a bit confusing for some
of the gfxUserFontSet methods to have "FontFace" in their names, so I'm
renaming them to mention "UserFontEntry" instead.
2014-10-02 12:32:07 +10:00
Cameron McCormack
f5bcec5617 Bug 1028497 - Part 9: Implement FontFace.status. r=jdaggett
We make gfxUserFontEntry::SetLoadState virtual so that we can hook into
changes and update FontFace::mStatus.  We can't just reflect the
gfxUserFontEntry's value in FontFace::Status() since the spec has
requirements about when exactly the status is set.
2014-10-02 12:32:06 +10:00
Cameron McCormack
4649da6d47 Bug 1028497 - Part 6: Have a FontFace::Entry class extending gfxUserFontEntry that can inform the FontFaceSet about loading. r=jdaggett
We can't make FontFace inherit from gfxUserFontEntry, since the former
is cycle collected.  So instead, we have a small class that inherits
from it that will override its virtual methods and forward things on to
the FontFace object.

We make gfxUserFontSet::CreateFontFace virtual so we can override it to
produce instances of our gfxUserFontEntry subclass.
2014-10-02 12:32:06 +10:00
Cameron McCormack
f5f01b6fc2 Bug 1028497 - Part 4: Move the nsUserFontSet object into FontFaceSet. r=jdaggett
This (a) moves ownership of the gfxUserFontSet into FontFaceSet, (b) moves
nearly all of the functionality of nsUserFontSet into FontFaceSet, and (c)
adds a class that inherits from gfxUserFontSet so that we can override some
of its virtual functions and delegate them to the FontFaceSet.
2014-10-02 12:32:05 +10:00
John Daggett
b0dafb656a Bug 998869 part 5 - lazily load userfonts (non-linux). r=jfkthame 2014-09-25 12:16:54 +09:00
John Daggett
245a756e02 Bug 998869 part 3 - rename userfont class methods. r=heycam 2014-09-25 12:16:53 +09:00
John Daggett
123c797bde Bug 1062058 part 3 - make userfont entry a container of the platform font entry. r=heycam 2014-09-08 16:23:20 +09:00
John Daggett
53967d717d Bug 1062058 part 2 - rename userfont classes and adjust flags. r=heycam 2014-09-08 16:23:20 +09:00
John Daggett
6f2c0ee7ec Bug 1062058 part 1 - avoid passing around proxy font entry object. r=heycam 2014-09-08 16:23:19 +09:00
Frédéric Wang
3ca9ad3ae3 Bug 1057488 - Part 3: Update OTS to 97d043dd8977751835ca8d33d773ae8416e456d5. r=jfkthame
--HG--
extra : rebase_source : a040d22b1758ae60b7bbafecbe35d0dc9891365a
2014-08-23 10:12:00 -04:00
Ehsan Akhgari
93ec08d11c Bug 1050610 - Fix more bad implicit constructors in gfx; r=roc
--HG--
extra : rebase_source : 5c6b62dbed81018370ce274e1913620ffb0ff7a2
2014-08-07 21:17:30 -04:00
Michael Wu
d807acf06e Follow up to bug 1035394 - Fix bustage from initializing fields in the wrong order on a CLOSED TREE, r=bustage 2014-08-11 17:53:06 -04:00
Michael Wu
0861dbb935 Bug 1036394 - Use CRC32 to query hidden fonts, r=jfkthame 2014-08-04 12:26:55 -04:00
Cameron McCormack
56f7613acc Bug 1037442 - Part 1: gfxFontFamily assertions on font entry family names should be case insensitive. r=jdaggett 2014-07-23 16:09:56 +10:00
Cameron McCormack
d134a8e4ee Bug 1031206 - Part 1: Split out creation and addition of font faces in gfxUserFontSet. r=jdaggett 2014-07-23 15:05:50 +10:00
Cameron McCormack
e01446872c Bug 1031202 - Factor out gfxMixedFontFamily lookup/creation into a helper function. r=jdaggett 2014-07-09 17:08:55 +10:00
Cameron McCormack
21933d916f Bug 1031187 - Part 1: Set mFamilyName eagerly on proxy and non-proxy gfxFontEntrys. r=jdaggett 2014-07-09 17:08:54 +10:00