Cameron McCormack
2fadc51f72
Bug 1352531 - Make dom::FontFace cache its gfxCharacterMap instead of rebuilding it every time. r=dbaron
...
MozReview-Commit-ID: INmKPdC9dq5
--HG--
extra : rebase_source : a7f0636168784227fb2b6a381fa72cf652038c12
2017-04-20 17:00:59 +10:00
Cameron McCormack
cbeb477e95
Bug 1356103 - Part 8: Use PostTraversalTasks to deal with FontFaceSet's Promise and DOM event dispatch during Servo traversal. r=bholley
...
The PostTraversalTask does not take a strong reference to the FontFaceSet
object, since as a DOM object, we can't call AddRef/Release on it
from the Servo style worker threads. The FontFaceSet is held on to
by the nsIDocument, and only cleared during cycle collection, which
should not occur between the font metrics request and the
PostTraversalTask running.
MozReview-Commit-ID: 5aKIg4DIQ4w
--HG--
extra : rebase_source : a7b63582b3610491fbcb4e2b931d55681e626513
2017-04-30 14:55:22 +08:00
Iris Hsiao
0a6db9e69f
Backed out 12 changesets (bug 1356103) for build bustage at PostTraversalTask.h
...
Backed out changeset 9fb487252c28 (bug 1356103)
Backed out changeset 301237c65945 (bug 1356103)
Backed out changeset 7bc3a4861a39 (bug 1356103)
Backed out changeset 2f383d89184b (bug 1356103)
Backed out changeset a03112e1c9d5 (bug 1356103)
Backed out changeset c60b4c9cbd83 (bug 1356103)
Backed out changeset 34280baeaabe (bug 1356103)
Backed out changeset 31a0881cfb47 (bug 1356103)
Backed out changeset 529d037f9c33 (bug 1356103)
Backed out changeset 1c7831db6b07 (bug 1356103)
Backed out changeset 559f06e32df3 (bug 1356103)
Backed out changeset 784865d234cd (bug 1356103)
2017-05-04 17:56:25 +08:00
Cameron McCormack
9133a05c63
Bug 1356103 - Part 8: Use PostTraversalTasks to deal with FontFaceSet's Promise and DOM event dispatch during Servo traversal. r=bholley
...
The PostTraversalTask does not take a strong reference to the FontFaceSet
object, since as a DOM object, we can't call AddRef/Release on it
from the Servo style worker threads. The FontFaceSet is held on to
by the nsIDocument, and only cleared during cycle collection, which
should not occur between the font metrics request and the
PostTraversalTask running.
MozReview-Commit-ID: 5aKIg4DIQ4w
--HG--
extra : rebase_source : 50ca5f2d8af42cfbeb6808aa755a4670bdf293bd
2017-04-30 14:55:22 +08:00
Xidorn Quan
c84000415d
Bug 1345696 part 2 - Move nsCSSFontFaceRule to a separate header. r=heycam
...
MozReview-Commit-ID: 5UsODlVQV7a
--HG--
extra : rebase_source : 48ed07a86666fd313786ca03818947b10ca7a2ce
2017-03-29 10:20:40 +11:00
Ting-Yu Lin
44a41925d3
Bug 1338446 Part 6 - Label LoadTimer in nsFontFaceLoader::StartedLoading. r=heycam
...
Delete #include "mozilla/Logging.h" because it has been included.
Add FontFaceSet::Document() to get valid document for nsFontFaceLoader.
MozReview-Commit-ID: IAXM9UgvjOE
--HG--
extra : rebase_source : e5aa8aadea5e2f9f2e5d73cc718318cf97471d3f
2017-03-14 21:57:34 +08:00
Cameron McCormack
ce8648a50f
Bug 1337658 - Do less copying when dispatching FontFaceLoadingEvents. r=bz
...
MozReview-Commit-ID: 8z1Tof8lL4g
--HG--
extra : rebase_source : 9c7abd85f94b481c15d1f30c1773a2eebbe9ec9f
2017-02-07 22:53:00 +08:00
Ehsan Akhgari
97a4ddfbdf
Bug 1309867 - Part 1: Create FontFaceSet's ready promise lazily; r=heycam
...
This should help avoid calling into the JS engine in the middle of
painting.
2016-10-18 16:19:00 -07:00
Ehsan Akhgari
c31db08864
Backout bug 1309867 for test failures
2016-10-18 11:35:07 -04:00
Ehsan Akhgari
225c6de9ba
Bug 1309867 - Part 1: Create FontFaceSet's ready promise lazily; r=heycam
...
This should help avoid calling into the JS engine in the middle of
painting.
2016-10-18 09:39:27 -04:00
Xidorn Quan
2f49a48a09
Bug 1304302 part 10 - Replace all uses of StyleSheetHandle. r=heycam
...
This commit is generated by the following commands with some minor
manual adjustment:
find . \( -name '*.h' -or -name '*.cpp' \) -not -path './layout/style/StyleSheet*' -exec sed -i -b \
-e '/^\(#include\|using\)/s/StyleSheetHandle/StyleSheet/g' \
-e 's/\(mozilla::\)\?StyleSheetHandle::RefPtr/RefPtr<\1StyleSheet>/g' \
-e 's/StyleSheetHandle()/nullptr/g' \
-e 's/->AsStyleSheet()//g' \
-e 's/StyleSheetHandle/StyleSheet*/g' {} +
sed -i -b 's/sheet->AsVoidPtr()/sheet.get()/' layout/style/Loader.cpp
sed -i -b 's/AsHandle()/this/' layout/style/StyleSheet.cpp
MozReview-Commit-ID: 7abdvlKHukd
--HG--
extra : source : e5682242db07203b5a91810fe1e243c955310588
2016-09-26 22:03:25 +10:00
Christoph Kerschbaumer
9ab1648f67
Bug 1195172 - Use channel->ascynOpen2 layout/style/FontFaceSet.cpp (r=bz,cam)
2016-03-01 13:06:13 -08:00
Cameron McCormack
0ecd5593cc
Bug 1244074
- Part 4: Use StyleSheetHandle instead of concrete style sheet class in most places. r=dholbert
2016-02-24 18:01:12 +11:00
Kyle Huey
91efc5a86c
Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug
2016-01-30 09:05:36 -08: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
Cameron McCormack
2f1046d287
Bug 1216043 - Rename nsStyleSheet::sheetType and make it an enum class. r=dbaron
...
The only substantive change here, apart from a few variables changing in
size from uint16_t to uint8_t, is FontFaceSet's use of SheetType::Unknown
(0xFF) instead of 0 for FontFaceRecords for script-created FontFaces.
2015-10-20 10:16:20 +11: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
Cameron McCormack
38ebbe2248
Bug 1193019 - Rename CSSFontFaceLoadEvent to FontFaceSetLoadEvent. r=khuey
...
--HG--
rename : dom/webidl/CSSFontFaceLoadEvent.webidl => dom/webidl/FontFaceSetLoadEvent.webidl
2015-08-11 12:19:52 +10:00
Cameron McCormack
00d76a3dd6
Bug 1183484 - Cycle collect FontFaceSetIterator. r=bzbarsky
2015-07-16 17:35:17 +10:00
Birunthan Mohanathas
a8939590de
Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
...
The bulk of this commit was generated by running:
run-clang-tidy.py \
-checks='-*,llvm-namespace-comment' \
-header-filter=^/.../mozilla-central/.* \
-fix
2015-07-13 08:25:42 -07:00
Cameron McCormack
55dbc6f840
Bug 1072102 - Part 1: Implement FontFaceSet load and check. r=jdaggett,bzbarsky
2015-06-27 11:41:10 +10:00
Cameron McCormack
69b3f6b78a
Bug 1163879 - Remove FontFaceSet::mUnavailableFontFaces. r=jdaggett
2015-06-27 11:39:54 +10:00
Cameron McCormack
42cdaef960
Bug 1161413 - Part 5: Cancel font loads on FontFaceSet destruction. r=jdaggett
2015-06-27 11:39:54 +10:00
Cameron McCormack
57866b6af6
Bug 1161413 - Part 1: Create FontFaceSet with a document rather than a pres context. r=jdaggett
2015-06-27 11:39:54 +10:00
Cameron McCormack
c888a98f5a
Bug 1162850 - Don't stop looking for style sheet load finishes after the FontFaceSet gets a DOMContentLoaded. r=jdaggett
2015-05-13 15:06:52 +10:00
Cameron McCormack
bf9d92cf41
Bug 1163865 - Remove [Throws] from FontFaceSet.delete. r=smaug
2015-05-13 12:24:34 +10:00
Cameron McCormack
184c096a54
Bug 1154148 - Create a FontFaceSet's UserFontSet eagerly. r=jdaggett
2015-05-09 14:46:49 +10:00
Cameron McCormack
b1f66da064
Bug 1072101 - Part 5: Remove indexed property access on FontFaceSet. r=peterv
2015-03-31 14:05:33 +11:00
Cameron McCormack
8f0c4021e3
Bug 1072101 - Part 3: Implement FontFaceSet.forEach. r=peterv
2015-03-31 14:05:33 +11:00
Cameron McCormack
07051e8f27
Bug 1072101 - Part 2: Implement FontFaceSet.{entries,values}. r=peterv
2015-03-31 14:05:33 +11:00
Cameron McCormack
d5707c9f36
Bug 1072101 - Part 1: Implement FontFaceSet.size. r=peterv
2015-03-31 14:05:33 +11:00
Andrea Marchesini
e6f385fb3d
Bug 1148527 - Indentation fix after bug 1145631, r=ehsan
2015-03-27 18:52:19 +00:00
Cameron McCormack
7ad91f675c
Bug 1145506 - Make FontFace constructor fail on invalid src strings but otherwise create user font entries immediately. r=jdaggett
2015-03-27 21:13:21 +11:00
Cameron McCormack
49a40c98f7
Bug 1145937 - Don't set FontFaceSet status to Loaded between a font download completion and the document reflow. r=jdaggett
2015-03-27 21:05:22 +11:00
Cameron McCormack
8b9fe566c3
Bug 1144977 - Part 1: Don't include FontFace objects in more than one loadingdone/loadingerror event. r=jdaggett
2015-03-27 21:05:22 +11:00
Cameron McCormack
fc1e3c1406
Bug 1144450 - Part 4: Replace uses of mReadyIsResolved with mStatus, as they're equivalent. r=jdaggett
2015-03-24 19:34:32 +11:00
Cameron McCormack
8f5e101baf
Bug 1144450 - Part 3: Replace uses of mDispatchedLoadingEvent with mStatus, as they're equivalent. r=jdaggett
2015-03-24 19:34:32 +11: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
Boris Zbarsky
dc24477d79
Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
...
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp. The
rest of this diff was generated by running the following commands:
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'
find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Ehsan Akhgari
8a04f8a90c
Bug 1118426 - Mark virtual overridden functions as MOZ_OVERRIDE in layout/style; r=dbaron
2015-01-06 23:33:51 -05:00
Cameron McCormack
3fe0848250
Bug 1092570 - Avoid exposing FontFace(Set) constructors when the Font Loading API pref is not set. r=bzbarsky
2014-11-11 14:53:55 +11:00
John Daggett
f1655f6098
Bug 1079422 - eliminate the ptr to FontFace within @font-face rules. r=heycam
2014-10-09 16:03:56 +09:00
John Daggett
8e365c0de8
Bug 1079422 - backout changeset 7fceb8bf84d2. r=heycam
2014-10-09 16:03:28 +09:00
Ehsan Akhgari
ee4122c03a
Bug 1079324 - Fix some more bad implicit constructors in layout; r=dholbert
2014-09-24 09:16:53 -04:00
Cameron McCormack
c47631b0ac
Bug 1077746 - Move FontFace pointer from nsCSSFontFaceRule to a table on FontFaceSet. r=jdaggett
2014-10-06 15:29:35 +11:00