Bug 1455805. Make CSS a namespace, not interface. r=heycam
authorBoris Zbarsky <bzbarsky@mit.edu>
Mon, 23 Apr 2018 12:36:10 -0400
changeset 415116 4a076254dccf0b9edbc194515554664672815175
parent 415115 7719f1bf977a0205694e7d9b5a872ec25b9d9f51
child 415117 cb7f6ce7dff5ecf1a5ae4186a86736a4afaf7b0d
push id33889
push useraciure@mozilla.com
push dateTue, 24 Apr 2018 01:14:50 +0000
treeherdermozilla-central@b35a1f66c452 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersheycam
bugs1455805
milestone61.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1455805. Make CSS a namespace, not interface. r=heycam MozReview-Commit-ID: LTYBNyGm1JS
dom/bindings/Bindings.conf
dom/webidl/CSS.webidl
testing/web-platform/meta/css/cssom/interfaces.html.ini
--- a/dom/bindings/Bindings.conf
+++ b/dom/bindings/Bindings.conf
@@ -162,20 +162,16 @@ DOMInterfaces = {
 'Coordinates': {
     'headerFile': 'nsGeoPosition.h'
 },
 
 'Crypto' : {
     'headerFile': 'Crypto.h'
 },
 
-'CSS': {
-    'concrete': False,
-},
-
 'CSS2Properties': {
     'nativeType': 'nsDOMCSSDeclaration'
 },
 
 'CSSConditionRule': {
     'concrete': False,
     'nativeType': 'mozilla::css::ConditionRule',
     'headerFile': 'mozilla/css/GroupRule.h',
--- a/dom/webidl/CSS.webidl
+++ b/dom/webidl/CSS.webidl
@@ -1,24 +1,25 @@
 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
 /* 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/css3-conditional/
+ * http://dev.w3.org/csswg/cssom/#the-css.escape%28%29-method
  *
  * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
  * liability, trademark and document use rules apply.
  */
 
-interface CSS {
+namespace CSS {
   [Throws]
-  static boolean supports(DOMString property, DOMString value);
+  boolean supports(DOMString property, DOMString value);
 
   [Throws]
-  static boolean supports(DOMString conditionText);
+  boolean supports(DOMString conditionText);
 };
 
 // http://dev.w3.org/csswg/cssom/#the-css.escape%28%29-method
-partial interface CSS {
-  static DOMString escape(DOMString ident);
+partial namespace CSS {
+  DOMString escape(DOMString ident);
 };
--- a/testing/web-platform/meta/css/cssom/interfaces.html.ini
+++ b/testing/web-platform/meta/css/cssom/interfaces.html.ini
@@ -306,8 +306,11 @@
     expected: FAIL
 
   [CSSStyleDeclaration interface: calling setPropertyPriority(CSSOMString, CSSOMString) on getComputedStyle(svg_element) with too few arguments must throw TypeError]
     expected: FAIL
 
   [CSS interface: operation escape(CSSOMString)]
     expected: FAIL
 
+  [CSS interface: existence and properties of interface object]
+    expected: FAIL
+    bug: https://github.com/w3c/web-platform-tests/issues/7583