2018-09-13 23:04:55 +03:00
|
|
|
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
2014-10-02 06:32:05 +04:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
|
|
|
* You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
*
|
|
|
|
* The origin of this IDL file is
|
|
|
|
* http://dev.w3.org/csswg/css-font-loading/#fontface-interface
|
|
|
|
*
|
|
|
|
* Copyright © 2014 W3C® (MIT, ERCIM, Keio, Beihang), All Rights Reserved. W3C
|
|
|
|
* liability, trademark and document use rules apply.
|
|
|
|
*/
|
|
|
|
|
|
|
|
typedef (ArrayBuffer or ArrayBufferView) BinaryData;
|
|
|
|
|
|
|
|
dictionary FontFaceDescriptors {
|
|
|
|
DOMString style = "normal";
|
|
|
|
DOMString weight = "normal";
|
|
|
|
DOMString stretch = "normal";
|
|
|
|
DOMString unicodeRange = "U+0-10FFFF";
|
|
|
|
DOMString variant = "normal";
|
|
|
|
DOMString featureSettings = "normal";
|
2018-02-14 14:02:05 +03:00
|
|
|
DOMString variationSettings = "normal";
|
2016-01-07 08:03:05 +03:00
|
|
|
DOMString display = "auto";
|
2014-10-02 06:32:05 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
enum FontFaceLoadStatus { "unloaded", "loading", "loaded", "error" };
|
|
|
|
|
|
|
|
// Bug 1072107 is for exposing this in workers.
|
|
|
|
// [Exposed=(Window,Worker)]
|
2019-09-27 18:26:14 +03:00
|
|
|
[Pref="layout.css.font-loading-api.enabled",
|
|
|
|
Exposed=Window]
|
2014-10-02 06:32:05 +04:00
|
|
|
interface FontFace {
|
2019-09-12 14:01:17 +03:00
|
|
|
[Throws]
|
|
|
|
constructor(DOMString family,
|
|
|
|
(DOMString or BinaryData) source,
|
|
|
|
optional FontFaceDescriptors descriptors = {});
|
|
|
|
|
2014-10-02 06:32:05 +04:00
|
|
|
[SetterThrows] attribute DOMString family;
|
|
|
|
[SetterThrows] attribute DOMString style;
|
|
|
|
[SetterThrows] attribute DOMString weight;
|
|
|
|
[SetterThrows] attribute DOMString stretch;
|
|
|
|
[SetterThrows] attribute DOMString unicodeRange;
|
|
|
|
[SetterThrows] attribute DOMString variant;
|
|
|
|
[SetterThrows] attribute DOMString featureSettings;
|
2018-02-14 14:02:05 +03:00
|
|
|
[SetterThrows, Pref="layout.css.font-variations.enabled"] attribute DOMString variationSettings;
|
2016-01-07 08:03:05 +03:00
|
|
|
[SetterThrows, Pref="layout.css.font-display.enabled"] attribute DOMString display;
|
2014-10-02 06:32:05 +04:00
|
|
|
|
|
|
|
readonly attribute FontFaceLoadStatus status;
|
|
|
|
|
2014-10-02 06:32:07 +04:00
|
|
|
[Throws]
|
2014-10-02 06:32:05 +04:00
|
|
|
Promise<FontFace> load();
|
|
|
|
|
2014-10-02 06:32:07 +04:00
|
|
|
[Throws]
|
2014-10-02 06:32:05 +04:00
|
|
|
readonly attribute Promise<FontFace> loaded;
|
|
|
|
};
|