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

Side by Side Diff: chrome/browser/ui/ash/launcher/launcher_controller_helper.cc

Issue 2523053004: Enhance chrome.app.window API for shelf integration with restore support (Closed)
Patch Set: Review v5 Created 4 years 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/ui/ash/launcher/launcher_controller_helper.h" 5 #include "chrome/browser/ui/ash/launcher/launcher_controller_helper.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "chrome/browser/browser_process.h" 10 #include "chrome/browser/browser_process.h"
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 arc_session_manager->IsArcManaged()) 162 arc_session_manager->IsArcManaged())
163 return false; 163 return false;
164 } 164 }
165 165
166 return true; 166 return true;
167 } 167 }
168 168
169 void LauncherControllerHelper::LaunchApp(const std::string& app_id, 169 void LauncherControllerHelper::LaunchApp(const std::string& app_id,
170 ash::LaunchSource source, 170 ash::LaunchSource source,
171 int event_flags) { 171 int event_flags) {
172 LaunchAppWithLaunchId(app_id, "", source, event_flags);
173 }
174
175 void LauncherControllerHelper::LaunchAppWithLaunchId(
176 const std::string& app_id,
177 const std::string& launch_id,
178 ash::LaunchSource source,
179 int event_flags) {
172 const ArcAppListPrefs* arc_prefs = GetArcAppListPrefs(); 180 const ArcAppListPrefs* arc_prefs = GetArcAppListPrefs();
173 if (arc_prefs && arc_prefs->IsRegistered(app_id)) { 181 if (arc_prefs && arc_prefs->IsRegistered(app_id)) {
174 arc::LaunchApp(profile_, app_id, event_flags); 182 arc::LaunchApp(profile_, app_id, event_flags);
175 return; 183 return;
176 } 184 }
177 185
178 // |extension| could be null when it is being unloaded for updating. 186 // |extension| could be null when it is being unloaded for updating.
179 const extensions::Extension* extension = GetExtensionByID(profile_, app_id); 187 const extensions::Extension* extension = GetExtensionByID(profile_, app_id);
180 if (!extension) 188 if (!extension)
181 return; 189 return;
(...skipping 15 matching lines...) Expand all
197 if (source != ash::LAUNCH_FROM_UNKNOWN && 205 if (source != ash::LAUNCH_FROM_UNKNOWN &&
198 app_id == extensions::kWebStoreAppId) { 206 app_id == extensions::kWebStoreAppId) {
199 // Get the corresponding source string. 207 // Get the corresponding source string.
200 std::string source_value = GetSourceFromAppListSource(source); 208 std::string source_value = GetSourceFromAppListSource(source);
201 209
202 // Set an override URL to include the source. 210 // Set an override URL to include the source.
203 GURL extension_url = extensions::AppLaunchInfo::GetFullLaunchURL(extension); 211 GURL extension_url = extensions::AppLaunchInfo::GetFullLaunchURL(extension);
204 params.override_url = net::AppendQueryParameter( 212 params.override_url = net::AppendQueryParameter(
205 extension_url, extension_urls::kWebstoreSourceField, source_value); 213 extension_url, extension_urls::kWebstoreSourceField, source_value);
206 } 214 }
215 params.launch_id = launch_id;
207 216
208 OpenApplication(params); 217 OpenApplication(params);
209 } 218 }
210 219
211 ArcAppListPrefs* LauncherControllerHelper::GetArcAppListPrefs() const { 220 ArcAppListPrefs* LauncherControllerHelper::GetArcAppListPrefs() const {
212 return ArcAppListPrefs::Get(profile_); 221 return ArcAppListPrefs::Get(profile_);
213 } 222 }
214 223
215 void LauncherControllerHelper::ExtensionEnableFlowFinished() { 224 void LauncherControllerHelper::ExtensionEnableFlowFinished() {
216 LaunchApp(extension_enable_flow_->extension_id(), ash::LAUNCH_FROM_UNKNOWN, 225 LaunchApp(extension_enable_flow_->extension_id(), ash::LAUNCH_FROM_UNKNOWN,
217 ui::EF_NONE); 226 ui::EF_NONE);
218 extension_enable_flow_.reset(); 227 extension_enable_flow_.reset();
219 } 228 }
220 229
221 void LauncherControllerHelper::ExtensionEnableFlowAborted(bool user_initiated) { 230 void LauncherControllerHelper::ExtensionEnableFlowAborted(bool user_initiated) {
222 extension_enable_flow_.reset(); 231 extension_enable_flow_.reset();
223 } 232 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/ash/launcher/launcher_controller_helper.h ('k') | chrome/browser/ui/extensions/app_launch_params.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698