summaryrefslogtreecommitdiffstats
path: root/chrome/browser/extensions/extension_function_dispatcher.h
diff options
context:
space:
mode:
authoraa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-25 21:15:02 +0000
committeraa@chromium.org <aa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-03-25 21:15:02 +0000
commita91afcbaed24615861a2c2ddb61ce51827c17e6e (patch)
tree5f6b6d31e3a929559eaa7841501f9f2798b66e85 /chrome/browser/extensions/extension_function_dispatcher.h
parent02dc409419c556ab9feb505788d02dd21c472101 (diff)
downloadchromium_src-a91afcbaed24615861a2c2ddb61ce51827c17e6e.zip
chromium_src-a91afcbaed24615861a2c2ddb61ce51827c17e6e.tar.gz
chromium_src-a91afcbaed24615861a2c2ddb61ce51827c17e6e.tar.bz2
Re-land 42631: The problem was that notifications aren't implemented on linux/views yet.
TBR=rafaelw@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42671 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions/extension_function_dispatcher.h')
-rw-r--r--chrome/browser/extensions/extension_function_dispatcher.h14
1 files changed, 11 insertions, 3 deletions
diff --git a/chrome/browser/extensions/extension_function_dispatcher.h b/chrome/browser/extensions/extension_function_dispatcher.h
index 18cce3b..86342cc 100644
--- a/chrome/browser/extensions/extension_function_dispatcher.h
+++ b/chrome/browser/extensions/extension_function_dispatcher.h
@@ -77,12 +77,15 @@ class ExtensionFunctionDispatcher {
// Resets all functions to their initial implementation.
static void ResetFunctions();
+ // Creates an instance for the specified RenderViewHost and URL. If the URL
+ // does not contain a valid extension, returns NULL.
+ static ExtensionFunctionDispatcher* Create(RenderViewHost* render_view_host,
+ Delegate* delegate,
+ const GURL& url);
+
// Retrieves a vector of all EFD instances.
static std::set<ExtensionFunctionDispatcher*>* all_instances();
- ExtensionFunctionDispatcher(RenderViewHost* render_view_host,
- Delegate* delegate,
- const GURL& url);
~ExtensionFunctionDispatcher();
Delegate* delegate() { return delegate_; }
@@ -123,6 +126,11 @@ class ExtensionFunctionDispatcher {
RenderViewHost* render_view_host() { return render_view_host_; }
private:
+ ExtensionFunctionDispatcher(RenderViewHost* render_view_host,
+ Delegate* delegate,
+ Extension* extension,
+ const GURL& url);
+
// We need to keep a pointer to the profile because we use it in the dtor
// in sending EXTENSION_FUNCTION_DISPATCHER_DESTROYED, but by that point
// the render_view_host_ has been deleted.