Index: Source/core/inspector/InspectorCSSAgent.h |
diff --git a/Source/core/inspector/InspectorCSSAgent.h b/Source/core/inspector/InspectorCSSAgent.h |
index 5eafc008a6bf6e1b02ee28de69195d2122a73b5e..4a7864508997af94496151a30cbd279fbd67b451 100644 |
--- a/Source/core/inspector/InspectorCSSAgent.h |
+++ b/Source/core/inspector/InspectorCSSAgent.h |
@@ -67,7 +67,7 @@ class UpdateRegionLayoutTask; |
typedef HashMap<CSSStyleSheet*, RefPtr<InspectorStyleSheet> > CSSStyleSheetToInspectorStyleSheet; |
class InspectorCSSAgent |
- : public InspectorBaseAgent<InspectorCSSAgent> |
+ : public InspectorBaseAgent |
, public InspectorDOMAgent::DOMListener |
, public InspectorBackendDispatcher::CSSCommandHandler |
, public InspectorStyleSheet::Listener { |
@@ -100,9 +100,9 @@ public: |
static CSSStyleRule* asCSSStyleRule(CSSRule*); |
static bool cssErrorFilter(const CSSParserString& content, int propertyId, int errorType); |
- static PassOwnPtr<InspectorCSSAgent> create(InstrumentingAgents* instrumentingAgents, InspectorCompositeState* state, InspectorDOMAgent* domAgent, InspectorPageAgent* pageAgent) |
+ static PassRefPtr<InspectorCSSAgent> create(InstrumentingAgents* instrumentingAgents, InspectorState* state, PassRefPtr<InspectorDOMAgent> domAgent, PassRefPtr<InspectorPageAgent> pageAgent) |
{ |
- return adoptPtr(new InspectorCSSAgent(instrumentingAgents, state, domAgent, pageAgent)); |
+ return adoptRef(new InspectorCSSAgent(instrumentingAgents, state, domAgent, pageAgent)); |
} |
~InspectorCSSAgent(); |
@@ -159,7 +159,7 @@ private: |
class SetRuleSelectorAction; |
class AddRuleAction; |
- InspectorCSSAgent(InstrumentingAgents*, InspectorCompositeState*, InspectorDOMAgent*, InspectorPageAgent*); |
+ InspectorCSSAgent(InstrumentingAgents*, InspectorState*, PassRefPtr<InspectorDOMAgent>, PassRefPtr<InspectorPageAgent>); |
typedef HashMap<String, RefPtr<InspectorStyleSheet> > IdToInspectorStyleSheet; |
typedef HashMap<Node*, RefPtr<InspectorStyleSheetForInlineStyle> > NodeToInspectorStyleSheet; // bogus "stylesheets" with elements' inline styles |
@@ -197,8 +197,8 @@ private: |
void resetPseudoStates(); |
InspectorFrontend::CSS* m_frontend; |
- InspectorDOMAgent* m_domAgent; |
- InspectorPageAgent* m_pageAgent; |
+ RefPtr<InspectorDOMAgent> m_domAgent; |
+ RefPtr<InspectorPageAgent> m_pageAgent; |
IdToInspectorStyleSheet m_idToInspectorStyleSheet; |
CSSStyleSheetToInspectorStyleSheet m_cssStyleSheetToInspectorStyleSheet; |
@@ -216,6 +216,17 @@ private: |
friend class StyleSheetBinder; |
}; |
+class InspectorCSSController: public InspectorBaseController<InspectorCSSController, InspectorCSSAgent> { |
+public: |
+ |
+ static PassOwnPtr<InspectorCSSController> create(InstrumentingAgents* instrumentingAgents, InspectorCompositeState* compositeState, InspectorDOMController* domController, InspectorPageController* pageController) |
+ { |
+ return adoptPtr(new InspectorCSSController(instrumentingAgents, compositeState, domController, pageController)); |
+ } |
+ |
+protected: |
+ InspectorCSSController(InstrumentingAgents*, InspectorCompositeState*, InspectorDOMController*, InspectorPageController*); |
+}; |
} // namespace WebCore |