Chromium Code Reviews| OLD | NEW |
|---|---|
| 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_wrapper.h" | 5 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.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/autocomplete_history_manager.h" | 9 #include "chrome/browser/autocomplete_history_manager.h" |
| 10 #include "chrome/browser/autofill/autofill_external_delegate.h" | 10 #include "chrome/browser/autofill/autofill_external_delegate.h" |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 88 extension_tab_helper_.reset(new ExtensionTabHelper(this)); | 88 extension_tab_helper_.reset(new ExtensionTabHelper(this)); |
| 89 favicon_tab_helper_.reset(new FaviconTabHelper(contents)); | 89 favicon_tab_helper_.reset(new FaviconTabHelper(contents)); |
| 90 find_tab_helper_.reset(new FindTabHelper(contents)); | 90 find_tab_helper_.reset(new FindTabHelper(contents)); |
| 91 history_tab_helper_.reset(new HistoryTabHelper(contents)); | 91 history_tab_helper_.reset(new HistoryTabHelper(contents)); |
| 92 infobar_tab_helper_.reset(new InfoBarTabHelper(contents)); | 92 infobar_tab_helper_.reset(new InfoBarTabHelper(contents)); |
| 93 password_manager_delegate_.reset(new PasswordManagerDelegateImpl(this)); | 93 password_manager_delegate_.reset(new PasswordManagerDelegateImpl(this)); |
| 94 password_manager_.reset( | 94 password_manager_.reset( |
| 95 new PasswordManager(contents, password_manager_delegate_.get())); | 95 new PasswordManager(contents, password_manager_delegate_.get())); |
| 96 prefs_tab_helper_.reset(new PrefsTabHelper(contents)); | 96 prefs_tab_helper_.reset(new PrefsTabHelper(contents)); |
| 97 prerender_tab_helper_.reset(new prerender::PrerenderTabHelper(this)); | 97 prerender_tab_helper_.reset(new prerender::PrerenderTabHelper(this)); |
| 98 | |
| 99 #if !defined(OS_ANDROID) | |
| 98 print_view_manager_.reset(new printing::PrintViewManager(this)); | 100 print_view_manager_.reset(new printing::PrintViewManager(this)); |
|
jam
2012/02/28 16:11:32
nit: bring this down to line 125 so you only have
gone
2012/03/01 19:57:01
They seem to be explicitly separated in the code;
| |
| 101 #endif | |
| 102 | |
| 99 restore_tab_helper_.reset(new RestoreTabHelper(contents)); | 103 restore_tab_helper_.reset(new RestoreTabHelper(contents)); |
| 100 search_engine_tab_helper_.reset(new SearchEngineTabHelper(contents)); | 104 search_engine_tab_helper_.reset(new SearchEngineTabHelper(contents)); |
| 101 snapshot_tab_helper_.reset(new SnapshotTabHelper(contents)); | 105 snapshot_tab_helper_.reset(new SnapshotTabHelper(contents)); |
| 102 ssl_helper_.reset(new TabContentsSSLHelper(this)); | 106 ssl_helper_.reset(new TabContentsSSLHelper(this)); |
| 103 synced_tab_delegate_.reset(new TabContentsWrapperSyncedTabDelegate(this)); | 107 synced_tab_delegate_.reset(new TabContentsWrapperSyncedTabDelegate(this)); |
| 104 content_settings_.reset(new TabSpecificContentSettings(contents)); | 108 content_settings_.reset(new TabSpecificContentSettings(contents)); |
| 105 translate_tab_helper_.reset(new TranslateTabHelper(contents)); | 109 translate_tab_helper_.reset(new TranslateTabHelper(contents)); |
| 106 web_intent_picker_controller_.reset(new WebIntentPickerController(this)); | 110 web_intent_picker_controller_.reset(new WebIntentPickerController(this)); |
| 107 | 111 |
| 108 // Create the per-tab observers. | 112 // Create the per-tab observers. |
| 109 alternate_error_page_tab_observer_.reset( | 113 alternate_error_page_tab_observer_.reset( |
| 110 new AlternateErrorPageTabObserver(contents)); | 114 new AlternateErrorPageTabObserver(contents)); |
| 111 download_request_limiter_observer_.reset( | 115 download_request_limiter_observer_.reset( |
| 112 new DownloadRequestLimiterObserver(contents)); | 116 new DownloadRequestLimiterObserver(contents)); |
| 113 webnavigation_observer_.reset( | 117 webnavigation_observer_.reset( |
| 114 new ExtensionWebNavigationTabObserver(contents)); | 118 new ExtensionWebNavigationTabObserver(contents)); |
| 115 external_protocol_observer_.reset(new ExternalProtocolObserver(contents)); | 119 external_protocol_observer_.reset(new ExternalProtocolObserver(contents)); |
| 116 if (OmniboxSearchHint::IsEnabled(profile())) | 120 if (OmniboxSearchHint::IsEnabled(profile())) |
| 117 omnibox_search_hint_.reset(new OmniboxSearchHint(this)); | 121 omnibox_search_hint_.reset(new OmniboxSearchHint(this)); |
| 118 pdf_tab_observer_.reset(new PDFTabObserver(this)); | 122 pdf_tab_observer_.reset(new PDFTabObserver(this)); |
| 119 plugin_observer_.reset(new PluginObserver(this)); | 123 plugin_observer_.reset(new PluginObserver(this)); |
| 124 #if !defined(OS_ANDROID) | |
| 120 print_preview_.reset(new printing::PrintPreviewMessageHandler(contents)); | 125 print_preview_.reset(new printing::PrintPreviewMessageHandler(contents)); |
| 126 #endif | |
| 121 sad_tab_observer_.reset(new SadTabObserver(contents)); | 127 sad_tab_observer_.reset(new SadTabObserver(contents)); |
| 122 safe_browsing_tab_observer_.reset( | 128 safe_browsing_tab_observer_.reset( |
| 123 new safe_browsing::SafeBrowsingTabObserver(this)); | 129 new safe_browsing::SafeBrowsingTabObserver(this)); |
| 124 | 130 |
| 125 // Start the in-browser thumbnailing if the feature is enabled. | 131 // Start the in-browser thumbnailing if the feature is enabled. |
| 126 if (CommandLine::ForCurrentProcess()->HasSwitch( | 132 if (CommandLine::ForCurrentProcess()->HasSwitch( |
| 127 switches::kEnableInBrowserThumbnailing)) { | 133 switches::kEnableInBrowserThumbnailing)) { |
| 128 thumbnail_generation_observer_.reset(new ThumbnailGenerator); | 134 thumbnail_generation_observer_.reset(new ThumbnailGenerator); |
| 129 thumbnail_generation_observer_->StartThumbnailing(web_contents_.get()); | 135 thumbnail_generation_observer_->StartThumbnailing(web_contents_.get()); |
| 130 } | 136 } |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 182 | 188 |
| 183 //////////////////////////////////////////////////////////////////////////////// | 189 //////////////////////////////////////////////////////////////////////////////// |
| 184 // WebContentsObserver overrides | 190 // WebContentsObserver overrides |
| 185 | 191 |
| 186 void TabContentsWrapper::WebContentsDestroyed(WebContents* tab) { | 192 void TabContentsWrapper::WebContentsDestroyed(WebContents* tab) { |
| 187 // Destruction of the WebContents should only be done by us from our | 193 // Destruction of the WebContents should only be done by us from our |
| 188 // destructor. Otherwise it's very likely we (or one of the helpers we own) | 194 // destructor. Otherwise it's very likely we (or one of the helpers we own) |
| 189 // will attempt to access the TabContents and we'll crash. | 195 // will attempt to access the TabContents and we'll crash. |
| 190 DCHECK(in_destructor_); | 196 DCHECK(in_destructor_); |
| 191 } | 197 } |
| OLD | NEW |