Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(302)

Side by Side Diff: Source/web/WebDevToolsAgentImpl.h

Issue 996163002: Add an explicit dispose step for WebDevToolsAgentImpl. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | Source/web/WebDevToolsAgentImpl.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Google Inc. All rights reserved. 2 * Copyright (C) 2010 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 , public InspectorOverlay::Client 68 , public InspectorOverlay::Client
69 , public InspectorPageAgent::Client 69 , public InspectorPageAgent::Client
70 , public InspectorTracingAgent::Client 70 , public InspectorTracingAgent::Client
71 , public PageRuntimeAgent::Client 71 , public PageRuntimeAgent::Client
72 , public InspectorFrontendChannel 72 , public InspectorFrontendChannel
73 , public WebPageOverlay 73 , public WebPageOverlay
74 , private WebThread::TaskObserver { 74 , private WebThread::TaskObserver {
75 public: 75 public:
76 WebDevToolsAgentImpl(WebViewImpl*, WebDevToolsAgentClient*); 76 WebDevToolsAgentImpl(WebViewImpl*, WebDevToolsAgentClient*);
77 ~WebDevToolsAgentImpl() override; 77 ~WebDevToolsAgentImpl() override;
78 void dispose();
78 DECLARE_VIRTUAL_TRACE(); 79 DECLARE_VIRTUAL_TRACE();
79 80
80 void willBeDestroyed(); 81 void willBeDestroyed();
81 WebDevToolsAgentClient* client() { return m_client; } 82 WebDevToolsAgentClient* client() { return m_client; }
82 bool handleInputEvent(Page*, const WebInputEvent&); 83 bool handleInputEvent(Page*, const WebInputEvent&);
83 void flushPendingProtocolNotifications(); 84 void flushPendingProtocolNotifications();
84 void dispatchMessageFromFrontend(const String& message); 85 void dispatchMessageFromFrontend(const String& message);
85 86
86 // Instrumentation from web/ layer. 87 // Instrumentation from web/ layer.
87 void didCommitLoadForLocalFrame(LocalFrame*); 88 void didCommitLoadForLocalFrame(LocalFrame*);
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 void enableMobileEmulation(); 158 void enableMobileEmulation();
158 void disableMobileEmulation(); 159 void disableMobileEmulation();
159 bool handleGestureEvent(LocalFrame*, const PlatformGestureEvent&); 160 bool handleGestureEvent(LocalFrame*, const PlatformGestureEvent&);
160 bool handleMouseEvent(LocalFrame*, const PlatformMouseEvent&); 161 bool handleMouseEvent(LocalFrame*, const PlatformMouseEvent&);
161 bool handleTouchEvent(LocalFrame*, const PlatformTouchEvent&); 162 bool handleTouchEvent(LocalFrame*, const PlatformTouchEvent&);
162 bool handleKeyboardEvent(LocalFrame*, const PlatformKeyboardEvent&); 163 bool handleKeyboardEvent(LocalFrame*, const PlatformKeyboardEvent&);
163 164
164 WebDevToolsAgentClient* m_client; 165 WebDevToolsAgentClient* m_client;
165 WebViewImpl* m_webViewImpl; 166 WebViewImpl* m_webViewImpl;
166 bool m_attached; 167 bool m_attached;
168 #if ENABLE(ASSERT)
169 bool m_hasBeenDisposed;
170 #endif
167 171
168 RefPtrWillBeMember<InstrumentingAgents> m_instrumentingAgents; 172 RefPtrWillBeMember<InstrumentingAgents> m_instrumentingAgents;
169 OwnPtrWillBeMember<InjectedScriptManager> m_injectedScriptManager; 173 OwnPtrWillBeMember<InjectedScriptManager> m_injectedScriptManager;
170 OwnPtrWillBeMember<InspectorCompositeState> m_state; 174 OwnPtrWillBeMember<InspectorCompositeState> m_state;
171 OwnPtrWillBeMember<InspectorOverlay> m_overlay; 175 OwnPtrWillBeMember<InspectorOverlay> m_overlay;
172 OwnPtrWillBeMember<AsyncCallTracker> m_asyncCallTracker; 176 OwnPtrWillBeMember<AsyncCallTracker> m_asyncCallTracker;
173 177
174 RawPtrWillBeMember<InspectorDOMAgent> m_domAgent; 178 RawPtrWillBeMember<InspectorDOMAgent> m_domAgent;
175 RawPtrWillBeMember<InspectorPageAgent> m_pageAgent; 179 RawPtrWillBeMember<InspectorPageAgent> m_pageAgent;
176 RawPtrWillBeMember<InspectorCSSAgent> m_cssAgent; 180 RawPtrWillBeMember<InspectorCSSAgent> m_cssAgent;
(...skipping 21 matching lines...) Expand all
198 typedef Vector<RefPtr<JSONObject> > NotificationQueue; 202 typedef Vector<RefPtr<JSONObject> > NotificationQueue;
199 NotificationQueue m_notificationQueue; 203 NotificationQueue m_notificationQueue;
200 String m_stateCookie; 204 String m_stateCookie;
201 205
202 friend class DebuggerTask; 206 friend class DebuggerTask;
203 }; 207 };
204 208
205 } // namespace blink 209 } // namespace blink
206 210
207 #endif 211 #endif
OLDNEW
« no previous file with comments | « no previous file | Source/web/WebDevToolsAgentImpl.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698