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

Side by Side Diff: chrome/browser/ui/startup/startup_browser_creator_impl.cc

Issue 10700130: Introduce LaunchParams struct for opening chrome apps. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix bad merge Created 8 years, 5 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 | Annotate | Revision Log
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/startup/startup_browser_creator_impl.h" 5 #include "chrome/browser/ui/startup/startup_browser_creator_impl.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/environment.h" 10 #include "base/environment.h"
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after
425 const Extension* extension; 425 const Extension* extension;
426 if (!GetAppLaunchContainer(profile, app_id, &extension, &launch_container)) 426 if (!GetAppLaunchContainer(profile, app_id, &extension, &launch_container))
427 return false; 427 return false;
428 428
429 // If the user doesn't want to open a tab, fail. 429 // If the user doesn't want to open a tab, fail.
430 if (launch_container != extension_misc::LAUNCH_TAB) 430 if (launch_container != extension_misc::LAUNCH_TAB)
431 return false; 431 return false;
432 432
433 RecordCmdLineAppHistogram(); 433 RecordCmdLineAppHistogram();
434 434
435 WebContents* app_tab = application_launch::OpenApplicationTab( 435 WebContents* app_tab = application_launch::OpenApplication(
436 profile, extension, GURL(), NEW_FOREGROUND_TAB); 436 application_launch::LaunchParams(profile, extension,
437 extension_misc::LAUNCH_TAB, NEW_FOREGROUND_TAB));
437 return (app_tab != NULL); 438 return (app_tab != NULL);
438 } 439 }
439 440
440 bool StartupBrowserCreatorImpl::OpenApplicationWindow( 441 bool StartupBrowserCreatorImpl::OpenApplicationWindow(
441 Profile* profile, 442 Profile* profile,
442 content::WebContents** out_app_contents) { 443 content::WebContents** out_app_contents) {
443 // Set |out_app_contents| to NULL early on (just in case). 444 // Set |out_app_contents| to NULL early on (just in case).
444 if (out_app_contents) 445 if (out_app_contents)
445 *out_app_contents = NULL; 446 *out_app_contents = NULL;
446 447
(...skipping 13 matching lines...) Expand all
460 461
461 // TODO(skerner): Could pass in |extension| and |launch_container|, 462 // TODO(skerner): Could pass in |extension| and |launch_container|,
462 // and avoid calling GetAppLaunchContainer() both here and in 463 // and avoid calling GetAppLaunchContainer() both here and in
463 // OpenApplicationTab(). 464 // OpenApplicationTab().
464 465
465 if (launch_container == extension_misc::LAUNCH_TAB) 466 if (launch_container == extension_misc::LAUNCH_TAB)
466 return false; 467 return false;
467 468
468 RecordCmdLineAppHistogram(); 469 RecordCmdLineAppHistogram();
469 470
471 application_launch::LaunchParams params(profile, extension,
472 launch_container, NEW_WINDOW);
473 params.command_line = &command_line_;
470 WebContents* tab_in_app_window = application_launch::OpenApplication( 474 WebContents* tab_in_app_window = application_launch::OpenApplication(
471 profile, extension, launch_container, GURL(), NEW_WINDOW, 475 params);
472 &command_line_);
473 476
474 if (out_app_contents) 477 if (out_app_contents)
475 *out_app_contents = tab_in_app_window; 478 *out_app_contents = tab_in_app_window;
476 479
477 // Platform apps fire off a launch event which may or may not open a window. 480 // Platform apps fire off a launch event which may or may not open a window.
478 return (tab_in_app_window != NULL || extension->is_platform_app()); 481 return (tab_in_app_window != NULL || extension->is_platform_app());
479 } 482 }
480 483
481 if (url_string.empty()) 484 if (url_string.empty())
482 return false; 485 return false;
(...skipping 11 matching lines...) Expand all
494 url.SchemeIs(chrome::kFileScheme)) { 497 url.SchemeIs(chrome::kFileScheme)) {
495 if (profile->GetExtensionService()->IsInstalledApp(url)) { 498 if (profile->GetExtensionService()->IsInstalledApp(url)) {
496 RecordCmdLineAppHistogram(); 499 RecordCmdLineAppHistogram();
497 } else { 500 } else {
498 AppLauncherHandler::RecordAppLaunchType( 501 AppLauncherHandler::RecordAppLaunchType(
499 extension_misc::APP_LAUNCH_CMD_LINE_APP_LEGACY); 502 extension_misc::APP_LAUNCH_CMD_LINE_APP_LEGACY);
500 } 503 }
501 504
502 WebContents* app_tab = application_launch::OpenAppShortcutWindow( 505 WebContents* app_tab = application_launch::OpenAppShortcutWindow(
503 profile, 506 profile,
504 url, 507 url);
505 true); // Update app info.
506 508
507 if (out_app_contents) 509 if (out_app_contents)
508 *out_app_contents = app_tab; 510 *out_app_contents = app_tab;
509 511
510 return (app_tab != NULL); 512 return (app_tab != NULL);
511 } 513 }
512 } 514 }
513 return false; 515 return false;
514 } 516 }
515 517
(...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after
901 // New: 903 // New:
902 prefs->GetString(prefs::kHomePage), 904 prefs->GetString(prefs::kHomePage),
903 prefs->GetBoolean(prefs::kHomePageIsNewTabPage), 905 prefs->GetBoolean(prefs::kHomePageIsNewTabPage),
904 prefs->GetBoolean(prefs::kShowHomeButton), 906 prefs->GetBoolean(prefs::kShowHomeButton),
905 // Backup: 907 // Backup:
906 backup_homepage, 908 backup_homepage,
907 backup_homepage_is_ntp, 909 backup_homepage_is_ntp,
908 backup_show_home_button)); 910 backup_show_home_button));
909 } 911 }
910 } 912 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/extensions/application_launch.cc ('k') | chrome/browser/ui/views/ash/extension_utils.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698