Allow users to enable extensions in incognito. Requires
--enable-experimental-extension-apis . The UI needs work. Tab and window
events are hooked up so that they work with incognito tabs/windows when
enabled.

BUG=32365
BUG=36292

Review URL: http://codereview.chromium.org/657041

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40057 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/extension_dom_ui.h b/chrome/browser/extensions/extension_dom_ui.h
index 59a89a8fa..9d85ccb8 100644
--- a/chrome/browser/extensions/extension_dom_ui.h
+++ b/chrome/browser/extensions/extension_dom_ui.h
@@ -41,11 +41,12 @@
                                    bool has_callback);
 
   // ExtensionFunctionDispatcher::Delegate
-  virtual Browser* GetBrowser() const;
+  virtual Browser* GetBrowser(bool include_incognito) const;
   virtual ExtensionDOMUI* GetExtensionDOMUI() { return this; }
   virtual gfx::NativeWindow GetFrameNativeWindow();
 
   // ExtensionPopupHost::Delegate
+  virtual Browser* GetBrowser() const { return GetBrowser(true); }
   virtual RenderViewHost* GetRenderViewHost();
   virtual Profile* GetProfile();
   virtual gfx::NativeView GetNativeViewOfHost();