summaryrefslogtreecommitdiffstats
path: root/chrome/browser/ui/tab_contents
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/ui/tab_contents')
-rw-r--r--chrome/browser/ui/tab_contents/tab_contents_wrapper.cc3
-rw-r--r--chrome/browser/ui/tab_contents/tab_contents_wrapper.h15
2 files changed, 13 insertions, 5 deletions
diff --git a/chrome/browser/ui/tab_contents/tab_contents_wrapper.cc b/chrome/browser/ui/tab_contents/tab_contents_wrapper.cc
index 08eea8d..b9c464e 100644
--- a/chrome/browser/ui/tab_contents/tab_contents_wrapper.cc
+++ b/chrome/browser/ui/tab_contents/tab_contents_wrapper.cc
@@ -11,7 +11,6 @@
#include "chrome/browser/autofill/autofill_manager.h"
#include "chrome/browser/automation/automation_tab_helper.h"
#include "chrome/browser/content_settings/tab_specific_content_settings.h"
-#include "chrome/browser/download/download_request_limiter_observer.h"
#include "chrome/browser/extensions/api/web_navigation/web_navigation_api.h"
#include "chrome/browser/extensions/extension_tab_helper.h"
#include "chrome/browser/external_protocol/external_protocol_observer.h"
@@ -126,8 +125,6 @@ TabContentsWrapper::TabContentsWrapper(WebContents* contents)
// Create the per-tab observers.
alternate_error_page_tab_observer_.reset(
new AlternateErrorPageTabObserver(contents, profile()));
- download_request_limiter_observer_.reset(
- new DownloadRequestLimiterObserver(contents));
webnavigation_observer_.reset(
new extensions::WebNavigationTabObserver(contents));
external_protocol_observer_.reset(new ExternalProtocolObserver(contents));
diff --git a/chrome/browser/ui/tab_contents/tab_contents_wrapper.h b/chrome/browser/ui/tab_contents/tab_contents_wrapper.h
index 83a5d3f..3bff9f2 100644
--- a/chrome/browser/ui/tab_contents/tab_contents_wrapper.h
+++ b/chrome/browser/ui/tab_contents/tab_contents_wrapper.h
@@ -22,7 +22,6 @@ class BlockedContentTabHelper;
class BookmarkTabHelper;
class ConstrainedWindowTabHelper;
class CoreTabHelper;
-class DownloadRequestLimiterObserver;
class ExtensionTabHelper;
class ExternalProtocolObserver;
class FaviconTabHelper;
@@ -75,6 +74,19 @@ class SafeBrowsingTabObserver;
// Wraps WebContents and all of its supporting objects in order to control
// their ownership and lifetime.
//
+// WARNING: Not every place where HTML can run has a TabContentsWrapper. This
+// class is *only* used in a visible, actual, tab inside a browser. Examples of
+// things that do not have tab wrappers include:
+// - Extension background pages and popup bubbles
+// - HTML notification bubbles
+// - Screensavers on Chrome OS
+// - Other random places we decide to display HTML over time
+//
+// Consider carefully whether your feature is something that makes sense only
+// when a tab is displayed, or could make sense in other cases we use HTML. It
+// may makes sense to push down into WebContents and make configurable, or at
+// least to make easy for other WebContents hosts to include and support.
+//
// TODO(avi): Eventually, this class will become TabContents as far as
// the browser front-end is concerned.
class TabContentsWrapper : public content::WebContentsObserver {
@@ -271,7 +283,6 @@ class TabContentsWrapper : public content::WebContentsObserver {
// and silently do their thing live here.)
scoped_ptr<AlternateErrorPageTabObserver> alternate_error_page_tab_observer_;
- scoped_ptr<DownloadRequestLimiterObserver> download_request_limiter_observer_;
scoped_ptr<extensions::WebNavigationTabObserver> webnavigation_observer_;
scoped_ptr<ExternalProtocolObserver> external_protocol_observer_;
scoped_ptr<OmniboxSearchHint> omnibox_search_hint_;