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

Side by Side Diff: chrome/browser/ui/tab_contents/tab_contents.cc

Issue 10961051: Switch PluginObserver to use WebContentsUserData. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/tab_contents/tab_contents.h" 5 #include "chrome/browser/ui/tab_contents/tab_contents.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/lazy_instance.h" 8 #include "base/lazy_instance.h"
9 #include "chrome/browser/autofill/autocomplete_history_manager.h" 9 #include "chrome/browser/autofill/autocomplete_history_manager.h"
10 #include "chrome/browser/autofill/autofill_external_delegate.h" 10 #include "chrome/browser/autofill/autofill_external_delegate.h"
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 extensions::TabHelper::CreateForWebContents(contents); 134 extensions::TabHelper::CreateForWebContents(contents);
135 favicon_tab_helper_.reset(new FaviconTabHelper(contents)); 135 favicon_tab_helper_.reset(new FaviconTabHelper(contents));
136 find_tab_helper_.reset(new FindTabHelper(contents)); 136 find_tab_helper_.reset(new FindTabHelper(contents));
137 history_tab_helper_.reset(new HistoryTabHelper(contents)); 137 history_tab_helper_.reset(new HistoryTabHelper(contents));
138 hung_plugin_tab_helper_.reset(new HungPluginTabHelper(contents)); 138 hung_plugin_tab_helper_.reset(new HungPluginTabHelper(contents));
139 infobar_tab_helper_.reset(new InfoBarTabHelper(contents)); 139 infobar_tab_helper_.reset(new InfoBarTabHelper(contents));
140 MetroPinTabHelper::CreateForWebContents(contents); 140 MetroPinTabHelper::CreateForWebContents(contents);
141 password_manager_delegate_.reset(new PasswordManagerDelegateImpl(this)); 141 password_manager_delegate_.reset(new PasswordManagerDelegateImpl(this));
142 password_manager_.reset( 142 password_manager_.reset(
143 new PasswordManager(contents, password_manager_delegate_.get())); 143 new PasswordManager(contents, password_manager_delegate_.get()));
144 PluginObserver::CreateForWebContents(contents);
144 prefs_tab_helper_.reset(new PrefsTabHelper(contents)); 145 prefs_tab_helper_.reset(new PrefsTabHelper(contents));
145 prerender_tab_helper_.reset(new prerender::PrerenderTabHelper(this)); 146 prerender_tab_helper_.reset(new prerender::PrerenderTabHelper(this));
146 search_engine_tab_helper_.reset(new SearchEngineTabHelper(contents)); 147 search_engine_tab_helper_.reset(new SearchEngineTabHelper(contents));
147 chrome::search::SearchTabHelper::CreateForWebContents(contents); 148 chrome::search::SearchTabHelper::CreateForWebContents(contents);
148 SnapshotTabHelper::CreateForWebContents(contents); 149 SnapshotTabHelper::CreateForWebContents(contents);
149 SSLTabHelper::CreateForWebContents(contents); 150 SSLTabHelper::CreateForWebContents(contents);
150 synced_tab_delegate_.reset(new TabContentsSyncedTabDelegate(this)); 151 synced_tab_delegate_.reset(new TabContentsSyncedTabDelegate(this));
151 translate_tab_helper_.reset(new TranslateTabHelper(contents)); 152 translate_tab_helper_.reset(new TranslateTabHelper(contents));
152 zoom_controller_.reset(new ZoomController(this)); 153 zoom_controller_.reset(new ZoomController(this));
153 154
154 #if defined(ENABLE_AUTOMATION) 155 #if defined(ENABLE_AUTOMATION)
155 automation_tab_helper_.reset(new AutomationTabHelper(contents)); 156 automation_tab_helper_.reset(new AutomationTabHelper(contents));
156 #endif 157 #endif
157 158
158 #if defined(ENABLE_CAPTIVE_PORTAL_DETECTION) 159 #if defined(ENABLE_CAPTIVE_PORTAL_DETECTION)
159 captive_portal::CaptivePortalTabHelper::CreateForWebContents(contents); 160 captive_portal::CaptivePortalTabHelper::CreateForWebContents(contents);
160 #endif 161 #endif
161 162
162 #if !defined(OS_ANDROID) 163 #if !defined(OS_ANDROID)
163 if (OmniboxSearchHint::IsEnabled(profile())) 164 if (OmniboxSearchHint::IsEnabled(profile()))
164 OmniboxSearchHint::CreateForWebContents(contents); 165 OmniboxSearchHint::CreateForWebContents(contents);
165 PDFTabHelper::CreateForWebContents(contents); 166 PDFTabHelper::CreateForWebContents(contents);
166 SadTabHelper::CreateForWebContents(contents); 167 SadTabHelper::CreateForWebContents(contents);
167 web_intent_picker_controller_.reset(new WebIntentPickerController(this)); 168 web_intent_picker_controller_.reset(new WebIntentPickerController(this));
168 #endif 169 #endif
169 170
170 external_protocol_observer_.reset(new ExternalProtocolObserver(contents)); 171 external_protocol_observer_.reset(new ExternalProtocolObserver(contents));
171 navigation_metrics_recorder_.reset(new NavigationMetricsRecorder(contents)); 172 navigation_metrics_recorder_.reset(new NavigationMetricsRecorder(contents));
172 pepper_broker_observer_.reset(new PepperBrokerObserver(contents)); 173 pepper_broker_observer_.reset(new PepperBrokerObserver(contents));
173 plugin_observer_.reset(new PluginObserver(this));
174 safe_browsing_tab_observer_.reset( 174 safe_browsing_tab_observer_.reset(
175 new safe_browsing::SafeBrowsingTabObserver(this)); 175 new safe_browsing::SafeBrowsingTabObserver(this));
176 webnavigation_observer_.reset( 176 webnavigation_observer_.reset(
177 new extensions::WebNavigationTabObserver(contents)); 177 new extensions::WebNavigationTabObserver(contents));
178 178
179 #if defined(ENABLE_PRINTING) 179 #if defined(ENABLE_PRINTING)
180 printing::PrintPreviewMessageHandler::CreateForWebContents(contents); 180 printing::PrintPreviewMessageHandler::CreateForWebContents(contents);
181 printing::PrintViewManager::CreateForWebContents(contents); 181 printing::PrintViewManager::CreateForWebContents(contents);
182 #endif 182 #endif
183 183
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 242
243 //////////////////////////////////////////////////////////////////////////////// 243 ////////////////////////////////////////////////////////////////////////////////
244 // WebContentsObserver overrides 244 // WebContentsObserver overrides
245 245
246 void TabContents::WebContentsDestroyed(WebContents* tab) { 246 void TabContents::WebContentsDestroyed(WebContents* tab) {
247 // Destruction of the WebContents should only be done by us from our 247 // Destruction of the WebContents should only be done by us from our
248 // destructor. Otherwise it's very likely we (or one of the helpers we own) 248 // destructor. Otherwise it's very likely we (or one of the helpers we own)
249 // will attempt to access the WebContents and we'll crash. 249 // will attempt to access the WebContents and we'll crash.
250 DCHECK(in_destructor_); 250 DCHECK(in_destructor_);
251 } 251 }
OLDNEW
« chrome/browser/plugins/plugin_observer.h ('K') | « chrome/browser/ui/tab_contents/tab_contents.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698