chrome/browser/ui/views/extensions/extension_install_dialog_view.cc
// Runs on the FILE thread. Check if the launcher is present and then show
// the install dialog with an appropriate |show_launcher_opt_in|.
Runs on the FILE thread. Check if the launcher is present and then show
the install dialog with an appropriate |show_launcher_opt_in|.
Runs on the FILE thread . Check if the launcher is present and then show the install dialog with an appropriate |show_launcher_opt_in| .
void CheckLauncherAndShowDialog(content::WebContents* parent_web_contents,
                                ExtensionInstallPrompt::Delegate* delegate,
                                const ExtensionInstallPrompt::Prompt& prompt) {
  DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::FILE));
#if defined(OS_WIN)
  bool present = chrome_launcher_support::IsAppLauncherPresent();
#else
  NOTREACHED();
  bool present = false;
#endif
  content::BrowserThread::PostTask(
      content::BrowserThread::UI,
      FROM_HERE,
      base::Bind(&DoShowDialog, parent_web_contents, delegate, prompt,
                 !present));
}
void CheckLauncherAndShowDialog ( content :: WebContents * parent_web_contents , ExtensionInstallPrompt :: Delegate * delegate , const ExtensionInstallPrompt :: Prompt & prompt ) { DCHECK ( content :: BrowserThread :: CurrentlyOn ( content :: BrowserThread :: FILE ) ) ; #if defined ( OS_WIN ) bool present = chrome_launcher_support :: IsAppLauncherPresent ( ) ; #else NOTREACHED ( ) ; bool present = false ; #endif content :: BrowserThread :: PostTask ( content :: BrowserThread :: UI , FROM_HERE , base :: Bind ( & DoShowDialog , parent_web_contents , delegate , prompt , ! present ) ) ; }
Runs on the FILE thread.
Runs on the FILE thread .