mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-09-07 10:06:03 +00:00
LibWeb: Add stub implementation of FontFaceSet and Document.fonts
This is now enough for duolingo to load and use its fallback fonts.
This commit is contained in:
parent
2c31d7dddc
commit
e10721f1b5
Notes:
sideshowbarker
2024-07-17 05:03:11 +09:00
Author: https://github.com/ADKaster
Commit: e10721f1b5
Pull-request: https://github.com/SerenityOS/serenity/pull/24255
Issue: https://github.com/SerenityOS/serenity/issues/22014
13 changed files with 174 additions and 1 deletions
49
Userland/Libraries/LibWeb/CSS/FontFaceSet.idl
Normal file
49
Userland/Libraries/LibWeb/CSS/FontFaceSet.idl
Normal file
|
@ -0,0 +1,49 @@
|
|||
#import <CSS/FontFace.idl>
|
||||
|
||||
dictionary FontFaceSetLoadEventInit : EventInit {
|
||||
sequence<FontFace> fontfaces = [];
|
||||
};
|
||||
|
||||
// FIXME
|
||||
// [Exposed=(Window,Worker)]
|
||||
//interface FontFaceSetLoadEvent : Event {
|
||||
// constructor(CSSOMString type, optional FontFaceSetLoadEventInit eventInitDict = {});
|
||||
// [SameObject] readonly attribute FrozenArray<FontFace> fontfaces;
|
||||
//};
|
||||
|
||||
enum FontFaceSetLoadStatus { "loading", "loaded" };
|
||||
|
||||
// https://drafts.csswg.org/css-font-loading/#fontfaceset
|
||||
[Exposed=(Window,Worker)]
|
||||
interface FontFaceSet : EventTarget {
|
||||
constructor(sequence<FontFace> initialFaces);
|
||||
|
||||
// FIXME: setlike<FontFace>;
|
||||
FontFaceSet add(FontFace font);
|
||||
// FIXME: boolean delete(FontFace font);
|
||||
// FIXME: clear();
|
||||
|
||||
// events for when loading state changes
|
||||
// FIXME: attribute EventHandler onloading;
|
||||
// FIXME: attribute EventHandler onloadingdone;
|
||||
// FIXME: attribute EventHandler onloadingerror;
|
||||
|
||||
// check and start loads if appropriate
|
||||
// and fulfill promise when all loads complete
|
||||
// FIXME: Promise<sequence<FontFace>> load(CSSOMString font, optional CSSOMString text = " ");
|
||||
Promise<sequence<FontFace>> load(CSSOMString font, optional CSSOMString text = "");
|
||||
|
||||
// return whether all fonts in the fontlist are loaded
|
||||
// (does not initiate load if not available)
|
||||
// FIXME: boolean check(CSSOMString font, optional CSSOMString text = " ");
|
||||
|
||||
// async notification that font loading and layout operations are done
|
||||
// FIXME: readonly attribute Promise<FontFaceSet> ready;
|
||||
|
||||
// loading state, "loading" while one or more fonts loading, "loaded" otherwise
|
||||
// FIXME: readonly attribute FontFaceSetLoadStatus status;
|
||||
};
|
||||
|
||||
interface mixin FontFaceSource {
|
||||
readonly attribute FontFaceSet fonts;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue