mirror of
https://github.com/servo/servo.git
synced 2025-08-06 06:00:15 +01:00
Support basic immutable CSSOM
This commit is contained in:
parent
2220fcdc0b
commit
177d6fa4ee
33 changed files with 861 additions and 43 deletions
17
components/script/dom/webidls/CSSFontFaceRule.webidl
Normal file
17
components/script/dom/webidls/CSSFontFaceRule.webidl
Normal file
|
@ -0,0 +1,17 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/css-fonts/#cssfontfacerule
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSFontFaceRule : CSSRule {
|
||||
// attribute DOMString family;
|
||||
// attribute DOMString src;
|
||||
// attribute DOMString style;
|
||||
// attribute DOMString weight;
|
||||
// attribute DOMString stretch;
|
||||
// attribute DOMString unicodeRange;
|
||||
// attribute DOMString variant;
|
||||
// attribute DOMString featureSettings;
|
||||
};
|
||||
|
12
components/script/dom/webidls/CSSGroupingRule.webidl
Normal file
12
components/script/dom/webidls/CSSGroupingRule.webidl
Normal file
|
@ -0,0 +1,12 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/cssom/#the-cssgroupingrule-interface
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSGroupingRule : CSSRule {
|
||||
// [SameObject] readonly attribute CSSRuleList cssRules;
|
||||
// unsigned long insertRule(DOMString rule, unsigned long index);
|
||||
// void deleteRule(unsigned long index);
|
||||
};
|
||||
|
14
components/script/dom/webidls/CSSKeyframesRule.webidl
Normal file
14
components/script/dom/webidls/CSSKeyframesRule.webidl
Normal file
|
@ -0,0 +1,14 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/css-animations/#interface-csskeyframesrule
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSKeyframesRule : CSSRule {
|
||||
// attribute DOMString name;
|
||||
// readonly attribute CSSRuleList cssRules;
|
||||
|
||||
// void appendRule(DOMString rule);
|
||||
// void deleteRule(DOMString select);
|
||||
// CSSKeyframeRule? findRule(DOMString select);
|
||||
};
|
9
components/script/dom/webidls/CSSMediaRule.webidl
Normal file
9
components/script/dom/webidls/CSSMediaRule.webidl
Normal file
|
@ -0,0 +1,9 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/cssom/#the-cssmediarule-interface
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSMediaRule : CSSGroupingRule {
|
||||
// [SameObject, PutForwards=mediaText] readonly attribute MediaList media;
|
||||
};
|
10
components/script/dom/webidls/CSSNamespaceRule.webidl
Normal file
10
components/script/dom/webidls/CSSNamespaceRule.webidl
Normal file
|
@ -0,0 +1,10 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/cssom/#the-cssnamespacerule-interface
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSNamespaceRule : CSSRule {
|
||||
// readonly attribute DOMString namespaceURI;
|
||||
// readonly attribute DOMString prefix;
|
||||
};
|
33
components/script/dom/webidls/CSSRule.webidl
Normal file
33
components/script/dom/webidls/CSSRule.webidl
Normal file
|
@ -0,0 +1,33 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/cssom/#the-cssrule-interface
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSRule {
|
||||
const unsigned short STYLE_RULE = 1;
|
||||
const unsigned short CHARSET_RULE = 2; // historical
|
||||
const unsigned short IMPORT_RULE = 3;
|
||||
const unsigned short MEDIA_RULE = 4;
|
||||
const unsigned short FONT_FACE_RULE = 5;
|
||||
const unsigned short PAGE_RULE = 6;
|
||||
const unsigned short MARGIN_RULE = 9;
|
||||
const unsigned short NAMESPACE_RULE = 10;
|
||||
|
||||
readonly attribute unsigned short type;
|
||||
attribute DOMString cssText;
|
||||
// readonly attribute CSSRule? parentRule;
|
||||
readonly attribute CSSStyleSheet? parentStyleSheet;
|
||||
};
|
||||
|
||||
// https://drafts.csswg.org/css-animations/#interface-cssrule-idl
|
||||
partial interface CSSRule {
|
||||
const unsigned short KEYFRAMES_RULE = 7;
|
||||
const unsigned short KEYFRAME_RULE = 8;
|
||||
};
|
||||
|
||||
// https://drafts.csswg.org/css-device-adapt/#css-rule-interface
|
||||
partial interface CSSRule {
|
||||
const unsigned short VIEWPORT_RULE = 15;
|
||||
};
|
||||
|
11
components/script/dom/webidls/CSSRuleList.webidl
Normal file
11
components/script/dom/webidls/CSSRuleList.webidl
Normal file
|
@ -0,0 +1,11 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/cssom/#cssrulelist
|
||||
// [LegacyArrayClass]
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSRuleList {
|
||||
getter CSSRule? item(unsigned long index);
|
||||
readonly attribute unsigned long length;
|
||||
};
|
10
components/script/dom/webidls/CSSStyleRule.webidl
Normal file
10
components/script/dom/webidls/CSSStyleRule.webidl
Normal file
|
@ -0,0 +1,10 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/cssom/#the-cssstylerule-interface
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSStyleRule : CSSRule {
|
||||
// attribute DOMString selectorText;
|
||||
// [SameObject, PutForwards=cssText] readonly attribute CSSStyleDeclaration style;
|
||||
};
|
12
components/script/dom/webidls/CSSStyleSheet.webidl
Normal file
12
components/script/dom/webidls/CSSStyleSheet.webidl
Normal file
|
@ -0,0 +1,12 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/cssom/#the-cssstylesheet-interface
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSStyleSheet : StyleSheet {
|
||||
// readonly attribute CSSRule? ownerRule;
|
||||
[SameObject] readonly attribute CSSRuleList cssRules;
|
||||
// unsigned long insertRule(DOMString rule, unsigned long index);
|
||||
// void deleteRule(unsigned long index);
|
||||
};
|
9
components/script/dom/webidls/CSSViewportRule.webidl
Normal file
9
components/script/dom/webidls/CSSViewportRule.webidl
Normal file
|
@ -0,0 +1,9 @@
|
|||
/* 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/. */
|
||||
|
||||
// https://drafts.csswg.org/css-device-adapt/#css-viewport-rule-interface
|
||||
[Exposed=(Window,Worker)]
|
||||
interface CSSViewportRule : CSSRule {
|
||||
// readonly attribute CSSStyleDeclaration style;
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue