Add a method to create ExtensionInstallPrompt from WebContents.

 - This allows us to provide a platform specific ExtensionInstallPrompt.
 - Moves some Browser referencens into a specific implementation.

BUG=117407

TEST=

Review URL: https://chromiumcodereview.appspot.com/10778021

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147277 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/extensions/webstore_inline_installer.cc b/chrome/browser/extensions/webstore_inline_installer.cc
index 09c7f40..50a63cb 100644
--- a/chrome/browser/extensions/webstore_inline_installer.cc
+++ b/chrome/browser/extensions/webstore_inline_installer.cc
@@ -12,9 +12,9 @@
 #include "chrome/browser/browser_process.h"
 #include "chrome/browser/extensions/crx_installer.h"
 #include "chrome/browser/extensions/extension_install_dialog.h"
+#include "chrome/browser/extensions/extension_install_ui.h"
 #include "chrome/browser/extensions/extension_service.h"
 #include "chrome/browser/profiles/profile.h"
-#include "chrome/browser/ui/browser_finder.h"
 #include "chrome/common/chrome_utility_messages.h"
 #include "chrome/common/extensions/extension.h"
 #include "chrome/common/extensions/extension_constants.h"
@@ -344,9 +344,6 @@
   manifest_.reset(manifest);
   icon_ = icon;
 
-  Browser* browser = browser::FindBrowserWithWebContents(web_contents());
-  CHECK(browser);
-
   ExtensionInstallPrompt::Prompt prompt(
       ExtensionInstallPrompt::INLINE_INSTALL_PROMPT);
   prompt.SetInlineInstallWebstoreData(localized_user_count_,
@@ -361,7 +358,8 @@
     return;
   }
 
-  install_ui_.reset(chrome::CreateExtensionInstallPromptWithBrowser(browser));
+  install_ui_.reset(
+      ExtensionInstallUI::CreateInstallPromptWithWebContents(web_contents()));
   install_ui_->ConfirmInlineInstall(this, dummy_extension_, &icon_, prompt);
   // Control flow finishes up in InstallUIProceed or InstallUIAbort.
 }