Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(267)

Side by Side Diff: chrome/browser/apps/install_chrome_app.cc

Issue 1637943003: Remove HostDesktopType from BrowserList::GetInstance() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@screen-wrapper-land
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/apps/install_chrome_app.h" 5 #include "chrome/browser/apps/install_chrome_app.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/strings/stringprintf.h" 9 #include "base/strings/stringprintf.h"
10 #include "chrome/browser/browser_process.h" 10 #include "chrome/browser/browser_process.h"
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 73
74 namespace install_chrome_app { 74 namespace install_chrome_app {
75 75
76 void InstallChromeApp(const std::string& app_id) { 76 void InstallChromeApp(const std::string& app_id) {
77 if (!crx_file::id_util::IdIsValid(app_id)) 77 if (!crx_file::id_util::IdIsValid(app_id))
78 return; 78 return;
79 79
80 // At the moment InstallChromeApp() is called immediately after handling 80 // At the moment InstallChromeApp() is called immediately after handling
81 // startup URLs, so a browser is guaranteed to be created. If that changes we 81 // startup URLs, so a browser is guaranteed to be created. If that changes we
82 // may need to start a browser or browser session here. 82 // may need to start a browser or browser session here.
83 Browser* browser = 83 Browser* browser = BrowserList::GetInstance()->get(0);
84 BrowserList::GetInstance(chrome::HOST_DESKTOP_TYPE_NATIVE)->get(0);
85 DCHECK(browser); 84 DCHECK(browser);
86 85
87 content::OpenURLParams params(GetAppInstallUrl(app_id), 86 content::OpenURLParams params(GetAppInstallUrl(app_id),
88 content::Referrer(), 87 content::Referrer(),
89 NEW_FOREGROUND_TAB, 88 NEW_FOREGROUND_TAB,
90 ui::PAGE_TRANSITION_AUTO_TOPLEVEL, 89 ui::PAGE_TRANSITION_AUTO_TOPLEVEL,
91 false); 90 false);
92 browser->OpenURL(params); 91 browser->OpenURL(params);
93 92
94 ExtensionRegistry* registry = ExtensionRegistry::Get(browser->profile()); 93 ExtensionRegistry* registry = ExtensionRegistry::Get(browser->profile());
95 // Skip if this app is already installed or blacklisted. For disabled or 94 // Skip if this app is already installed or blacklisted. For disabled or
96 // or terminated apps, going through the installation flow should re-enable 95 // or terminated apps, going through the installation flow should re-enable
97 // them. 96 // them.
98 const extensions::Extension* installed_extension = registry->GetExtensionById( 97 const extensions::Extension* installed_extension = registry->GetExtensionById(
99 app_id, ExtensionRegistry::ENABLED | ExtensionRegistry::BLACKLISTED); 98 app_id, ExtensionRegistry::ENABLED | ExtensionRegistry::BLACKLISTED);
100 // TODO(jackhou): For installed apps, maybe we should do something better, 99 // TODO(jackhou): For installed apps, maybe we should do something better,
101 // e.g. show the app list (and re-add it to the taskbar). 100 // e.g. show the app list (and re-add it to the taskbar).
102 if (installed_extension) 101 if (installed_extension)
103 return; 102 return;
104 103
105 WebstoreInstallWithPromptAppsOnly* installer = 104 WebstoreInstallWithPromptAppsOnly* installer =
106 new WebstoreInstallWithPromptAppsOnly( 105 new WebstoreInstallWithPromptAppsOnly(
107 app_id, browser->profile(), browser->window()->GetNativeWindow()); 106 app_id, browser->profile(), browser->window()->GetNativeWindow());
108 installer->BeginInstall(); 107 installer->BeginInstall();
109 } 108 }
110 109
111 } // namespace install_chrome_app 110 } // namespace install_chrome_app
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/download/download_browsertest.cc » ('j') | chrome/browser/memory/tab_manager.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698