FontFaceSet should be a setlike
Categories
(Core :: DOM: Core & HTML, defect, P3)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox52 | --- | affected |
People
(Reporter: bzbarsky, Assigned: jjaschke)
References
(Blocks 2 open bugs)
Details
(Keywords: webcompat:platform-bug)
User Story
user-impact-score:40
Attachments
(2 files, 12 obsolete files)
Comment 1•9 years ago
|
||
Comment 2•9 years ago
|
||
Comment 3•9 years ago
|
||
| Reporter | ||
Comment 4•9 years ago
|
||
Updated•9 years ago
|
Comment 5•9 years ago
|
||
| Reporter | ||
Comment 6•9 years ago
|
||
Comment 7•9 years ago
|
||
Comment 8•9 years ago
|
||
| Reporter | ||
Comment 9•9 years ago
|
||
Comment 11•9 years ago
|
||
Updated•7 years ago
|
Comment 12•3 years ago
|
||
The spec has significantly changed here, in a way that is supposed to allow us to do this. I filed bug 1782846 for that but I guess I should just dupe here.
Updated•3 years ago
|
Updated•3 years ago
|
Comment 14•3 years ago
|
||
Updated•3 years ago
|
Comment 19•2 years ago
|
||
FWIW this is actively causing cosmetic issues (wrong font and/or broken linewrapping) in evite invitations; see bug 1831949 comment 18 for details.
Updated•2 years ago
|
Updated•10 months ago
|
Updated•4 months ago
|
| Assignee | ||
Comment 20•3 months ago
|
||
| Assignee | ||
Comment 21•3 months ago
|
||
| Assignee | ||
Comment 22•3 months ago
|
||
WebIDL setlike<T> and maplike<K,V> declarations previously used a JS
Set/Map stored in a reserved slot. C++ code could not iterate the
backing data, forcing every interface to maintain a parallel C++ mirror.
This patch changes the WebIDL codegen so that setlike/maplike interfaces
are backed by C++-owned ECMASet/ECMAMap collections, provided through a
SetlikeMixin/MaplikeMixin base class. Generated method bodies call
directly into the C++ data structure instead of the JS API.
- Codegen emits SetlikeMixin/MaplikeMixin typedefs per binding namespace
- CGECMACollectionMethodGenerator generates method bodies for non-object
value types; interfaces with maplike<DOMString, object> fall back to
the existing JS Map/Set path - Physical-index iterators (ECMACollectionIterator.h) for ES-compatible
mutation-during-iteration semantics - New [NativeKeyType=Atom] extended attribute allows using nsAtom* as
the native key type with automatic conversion at the JS/C++ boundary
| Assignee | ||
Comment 23•3 months ago
|
||
| Assignee | ||
Comment 24•3 months ago
|
||
| Assignee | ||
Comment 25•3 months ago
|
||
| Assignee | ||
Comment 26•3 months ago
|
||
| Assignee | ||
Comment 27•3 months ago
|
||
| Assignee | ||
Comment 28•3 months ago
|
||
| Assignee | ||
Comment 29•3 months ago
|
||
| Assignee | ||
Comment 30•3 months ago
|
||
Highlight now inherits Highlight_Binding::SetlikeMixin which provides
the ECMASet storage and SetData() accessor. The parallel mRanges array
is removed since ECMASet supports direct C++ iteration.
| Assignee | ||
Comment 31•3 months ago
|
||
HighlightRegistry now uses [NativeKeyType=Atom] on its maplike declaration,
which stores nsAtom* keys natively with automatic string-to-atom conversion
at the JS/C++ boundary. This eliminates the parallel mHighlightsOrdered
array that was needed because the old JS Map used string keys while C++
code worked with atoms.
Comment 32•3 months ago
|
||
Comment on attachment 9567034 [details]
WIP: Bug 1311198, part 1 - Implement ECMA{Set|Map} in Gecko. r=edgar!
Revision D292469 was moved to bug 2030981. Setting attachment 9567034 [details] to obsolete.
Updated•3 months ago
|
Comment 33•3 months ago
|
||
Comment on attachment 9567035 [details]
Bug 1311198, part 2 - Introduce [DOMBackedStorage] for WebIDL setlike/maplike, provide SetlikeMixin/MaplikeMixin. r=edgar!
Revision D292470 was moved to bug 2030981. Setting attachment 9567035 [details] to obsolete.
Comment 34•3 months ago
|
||
Comment on attachment 9567036 [details]
WIP: Bug 1311198, part 3 - Migrate CustomStateSet to SetlikeMixin. r=keithamus!
Revision D292471 was moved to bug 2030984. Setting attachment 9567036 [details] to obsolete.
Comment 35•3 months ago
|
||
Comment on attachment 9567037 [details]
WIP: Bug 1311198, part 4 - Migrate ViewTransitionTypeSet to SetlikeMixin. r=emilio!
Revision D292472 was moved to bug 2030984. Setting attachment 9567037 [details] to obsolete.
Comment 36•3 months ago
|
||
Comment on attachment 9567038 [details]
WIP: Bug 1311198, part 5 - Migrate GPUSupportedFeatures and WGSLLanguageFeatures to SetlikeMixin. r=#webgpu-reviewers!
Revision D292473 was moved to bug 2030984. Setting attachment 9567038 [details] to obsolete.
Comment 37•3 months ago
|
||
Comment on attachment 9567040 [details]
WIP: Bug 1311198, part 6 - Migrate EventCounts to MaplikeMixin. r=smaug!
Revision D292475 was moved to bug 2030984. Setting attachment 9567040 [details] to obsolete.
Comment 38•3 months ago
|
||
Comment on attachment 9567041 [details]
WIP: Bug 1311198, part 7 - Migrate PlacesEventCounts to MaplikeMixin. r=mak!
Revision D292476 was moved to bug 2030984. Setting attachment 9567041 [details] to obsolete.
Comment 39•3 months ago
|
||
Comment on attachment 9567042 [details]
WIP: Bug 1311198, part 8 - Migrate AudioParamMap to MaplikeMixin. r=padenot!
Revision D292477 was moved to bug 2030984. Setting attachment 9567042 [details] to obsolete.
Comment 40•3 months ago
|
||
Comment on attachment 9567044 [details]
WIP: Bug 1311198, part 9 - Migrate MIDIInputMap and MIDIOutputMap to MaplikeMixin. r=padenot!
Revision D292479 was moved to bug 2030984. Setting attachment 9567044 [details] to obsolete.
| Assignee | ||
Comment 41•3 months ago
|
||
Updated•3 months ago
|
Updated•3 months ago
|
Updated•3 months ago
|
Description
•