Bug 1427512 - Part 3: Remove nsIDOMCSSMediaRule. r=xidorn,jryans draft
authorCameron McCormack <cam@mcc.id.au>
Mon, 01 Jan 2018 15:57:41 +1100
changeset 717704 1d9a0bac9a11d7d58dbaaa6ce44ee0e821e8b776
parent 717703 64e37072ee172d55323fe5de7dbdbab893ecd062
child 717705 7e7f2b4e77cbe1efdc35d38031c483b7b57f9e82
push id94746
push userbmo:cam@mcc.id.au
push dateTue, 09 Jan 2018 10:21:54 +0000
reviewersxidorn, jryans
bugs1427512
milestone59.0a1
Bug 1427512 - Part 3: Remove nsIDOMCSSMediaRule. r=xidorn,jryans MozReview-Commit-ID: L62wFJqJcm6
devtools/server/actors/object.js
dom/interfaces/css/moz.build
dom/interfaces/css/nsIDOMCSSMediaRule.idl
layout/style/CSSMediaRule.cpp
layout/style/CSSMediaRule.h
layout/style/GroupRule.cpp
layout/style/GroupRule.h
--- a/devtools/server/actors/object.js
+++ b/devtools/server/actors/object.js
@@ -1711,17 +1711,17 @@ DebuggerServer.ObjectActorPreviewers.Obj
         };
         return true;
       default:
         return false;
     }
   },
 
   function CSSMediaRule({obj, hooks}, grip, rawObj) {
-    if (isWorker || !rawObj || !(rawObj instanceof Ci.nsIDOMCSSMediaRule)) {
+    if (isWorker || !rawObj || obj.class != "CSSMediaRule") {
       return false;
     }
     grip.preview = {
       kind: "ObjectWithText",
       text: hooks.createValueGrip(rawObj.conditionText),
     };
     return true;
   },
--- a/dom/interfaces/css/moz.build
+++ b/dom/interfaces/css/moz.build
@@ -12,17 +12,16 @@ XPIDL_SOURCES += [
     'nsIDOMCSSConditionRule.idl',
     'nsIDOMCSSCounterStyleRule.idl',
     'nsIDOMCSSFontFaceRule.idl',
     'nsIDOMCSSFontFeatureValuesRule.idl',
     'nsIDOMCSSGroupingRule.idl',
     'nsIDOMCSSImportRule.idl',
     'nsIDOMCSSKeyframeRule.idl',
     'nsIDOMCSSKeyframesRule.idl',
-    'nsIDOMCSSMediaRule.idl',
     'nsIDOMCSSPageRule.idl',
     'nsIDOMCSSPrimitiveValue.idl',
     'nsIDOMCSSRule.idl',
     'nsIDOMCSSRuleList.idl',
     'nsIDOMCSSStyleDeclaration.idl',
     'nsIDOMCSSStyleRule.idl',
     'nsIDOMCSSStyleSheet.idl',
     'nsIDOMCSSUnknownRule.idl',
deleted file mode 100644
--- a/dom/interfaces/css/nsIDOMCSSMediaRule.idl
+++ /dev/null
@@ -1,17 +0,0 @@
-/* -*- 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/. */
-
-#include "nsIDOMCSSConditionRule.idl"
-
-interface nsIDOMMediaList;
-
-/**
- * Interface for @media rules in the CSS OM.
- */
-[scriptable, uuid(6cf9c5b2-fa0f-43c0-aa50-ef85b4756e3a)]
-interface nsIDOMCSSMediaRule : nsIDOMCSSConditionRule
-{
-  readonly attribute nsIDOMMediaList   media;
-};
--- a/layout/style/CSSMediaRule.cpp
+++ b/layout/style/CSSMediaRule.cpp
@@ -14,17 +14,16 @@ namespace dom {
 
 NS_IMPL_ADDREF_INHERITED(CSSMediaRule, css::ConditionRule)
 NS_IMPL_RELEASE_INHERITED(CSSMediaRule, css::ConditionRule)
 
 // QueryInterface implementation for CSSMediaRule
 NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(CSSMediaRule)
   NS_INTERFACE_MAP_ENTRY(nsIDOMCSSGroupingRule)
   NS_INTERFACE_MAP_ENTRY(nsIDOMCSSConditionRule)
-  NS_INTERFACE_MAP_ENTRY(nsIDOMCSSMediaRule)
 NS_INTERFACE_MAP_END_INHERITING(css::ConditionRule)
 
 // nsIDOMCSSGroupingRule methods
 NS_IMETHODIMP
 CSSMediaRule::GetCssRules(nsIDOMCSSRuleList** aRuleList)
 {
   return GroupRule::GetCssRules(aRuleList);
 }
@@ -37,25 +36,16 @@ CSSMediaRule::InsertRule(const nsAString
 }
 
 NS_IMETHODIMP
 CSSMediaRule::DeleteRule(uint32_t aIndex)
 {
   return GroupRule::DeleteRule(aIndex);
 }
 
-// nsIDOMCSSMediaRule methods
-NS_IMETHODIMP
-CSSMediaRule::GetMedia(nsIDOMMediaList* *aMedia)
-{
-  NS_ENSURE_ARG_POINTER(aMedia);
-  NS_IF_ADDREF(*aMedia = Media());
-  return NS_OK;
-}
-
 void
 CSSMediaRule::SetConditionText(const nsAString& aConditionText,
                                ErrorResult& aRv)
 {
   nsresult rv = static_cast<nsIDOMCSSConditionRule*>(this)->
     SetConditionText(aConditionText);
   if (NS_FAILED(rv)) {
     aRv.Throw(rv);
--- a/layout/style/CSSMediaRule.h
+++ b/layout/style/CSSMediaRule.h
@@ -3,23 +3,23 @@
 /* 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/. */
 
 #ifndef mozilla_dom_CSSMediaRule_h
 #define mozilla_dom_CSSMediaRule_h
 
 #include "mozilla/css/GroupRule.h"
-#include "nsIDOMCSSMediaRule.h"
+#include "nsIDOMCSSConditionRule.h"
 
 namespace mozilla {
 namespace dom {
 
 class CSSMediaRule : public css::ConditionRule
-                   , public nsIDOMCSSMediaRule
+                   , public nsIDOMCSSConditionRule
 {
 protected:
   using ConditionRule::ConditionRule;
   virtual ~CSSMediaRule() {}
 
 public:
   NS_DECL_ISUPPORTS_INHERITED
 
@@ -29,19 +29,16 @@ public:
   using Rule::GetType;
 
   // nsIDOMCSSGroupingRule interface
   NS_DECL_NSIDOMCSSGROUPINGRULE
 
   // nsIDOMCSSConditionRule interface
   NS_IMETHOD SetConditionText(const nsAString& aConditionText) override = 0;
 
-  // nsIDOMCSSMediaRule interface
-  NS_DECL_NSIDOMCSSMEDIARULE
-
   // WebIDL interface
   uint16_t Type() const override { return nsIDOMCSSRule::MEDIA_RULE; }
   // Our XPCOM GetConditionText is OK
   void SetConditionText(const nsAString& aConditionText,
                         ErrorResult& aRv) final;
   virtual MediaList* Media() = 0;
 
   JSObject* WrapObject(JSContext* aCx,
--- a/layout/style/GroupRule.cpp
+++ b/layout/style/GroupRule.cpp
@@ -339,17 +339,16 @@ GroupRule::AppendRulesToCssText(nsAStrin
     rule->GetCssText(cssText);
     aCssText.AppendLiteral("  ");
     aCssText.Append(cssText);
     aCssText.Append('\n');
   }
   aCssText.Append('}');
 }
 
-// nsIDOMCSSMediaRule methods
 nsresult
 GroupRule::GetCssRules(nsIDOMCSSRuleList* *aRuleList)
 {
   NS_ADDREF(*aRuleList = CssRules());
   return NS_OK;
 }
 
 CSSRuleList*
--- a/layout/style/GroupRule.h
+++ b/layout/style/GroupRule.h
@@ -199,17 +199,17 @@ public:
   uint32_t InsertRule(const nsAString& aRule, uint32_t aIndex,
                       ErrorResult& aRv);
   void DeleteRule(uint32_t aIndex, ErrorResult& aRv);
 
 protected:
   // to help implement nsIDOMCSSRule
   void AppendRulesToCssText(nsAString& aCssText) const;
 
-  // to implement methods on nsIDOMCSSMediaRule
+  // to implement methods on nsIDOMCSSGroupingRule
   nsresult GetCssRules(nsIDOMCSSRuleList* *aRuleList);
   nsresult InsertRule(const nsAString & aRule, uint32_t aIndex,
                       uint32_t* _retval);
   nsresult DeleteRule(uint32_t aIndex);
 
   // Must only be called if this is a Gecko GroupRule.
   IncrementalClearCOMRuleArray& GeckoRules() {
     return mInner.as<GeckoGroupRuleRules>().mRules;