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

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

Issue 5168004: Revert 66646 - Add "open as window" menu item to NTP app menu.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 10 years, 1 month 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
« no previous file with comments | « chrome/browser/ui/browser.h ('k') | chrome/browser/ui/browser_init.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/browser.h" 5 #include "chrome/browser/ui/browser.h"
6 6
7 #if defined(OS_WIN) 7 #if defined(OS_WIN)
8 #include <shellapi.h> 8 #include <shellapi.h>
9 #include <windows.h> 9 #include <windows.h>
10 #endif // OS_WIN 10 #endif // OS_WIN
(...skipping 480 matching lines...) Expand 10 before | Expand all | Expand 10 after
491 } 491 }
492 492
493 // static 493 // static
494 // TODO(erikkay): There are multiple reasons why this could fail. Should 494 // TODO(erikkay): There are multiple reasons why this could fail. Should
495 // this function return an error reason as well so that callers can show 495 // this function return an error reason as well so that callers can show
496 // reasonable errors? 496 // reasonable errors?
497 TabContents* Browser::OpenApplication(Profile* profile, 497 TabContents* Browser::OpenApplication(Profile* profile,
498 const std::string& app_id, 498 const std::string& app_id,
499 TabContents* existing_tab) { 499 TabContents* existing_tab) {
500 ExtensionsService* extensions_service = profile->GetExtensionsService(); 500 ExtensionsService* extensions_service = profile->GetExtensionsService();
501 if (!extensions_service->is_ready())
502 return NULL;
501 503
502 // If the extension with |app_id| could't be found, most likely because it 504 // If the extension with |app_id| could't be found, most likely because it
503 // was uninstalled. 505 // was uninstalled.
504 const Extension* extension = 506 const Extension* extension =
505 extensions_service->GetExtensionById(app_id, false); 507 extensions_service->GetExtensionById(app_id, false);
506 if (!extension) 508 if (!extension)
507 return NULL; 509 return NULL;
508 510
509 return OpenApplication(profile, extension, extension->launch_container(), 511 return OpenApplication(profile, extension, extension->launch_container(),
510 existing_tab); 512 existing_tab);
511 } 513 }
512 514
513 // static 515 // static
514 TabContents* Browser::OpenApplication( 516 TabContents* Browser::OpenApplication(
515 Profile* profile, 517 Profile* profile,
516 const Extension* extension, 518 const Extension* extension,
517 extension_misc::LaunchContainer container, 519 extension_misc::LaunchContainer container,
518 TabContents* existing_tab) { 520 TabContents* existing_tab) {
519 TabContents* tab = NULL; 521 TabContents* tab = NULL;
520 522
521 UMA_HISTOGRAM_ENUMERATION("Extensions.AppLaunchContainer", container, 100); 523 UMA_HISTOGRAM_ENUMERATION("Extensions.AppLaunchContainer", container, 100);
522 524
525 // The app is not yet open. Load it.
523 switch (container) { 526 switch (container) {
524 case extension_misc::LAUNCH_WINDOW: 527 case extension_misc::LAUNCH_WINDOW:
525 tab = Browser::OpenApplicationWindow(profile,
526 extension->GetFullLaunchURL());
527 break;
528 case extension_misc::LAUNCH_PANEL: 528 case extension_misc::LAUNCH_PANEL:
529 tab = Browser::OpenApplicationWindow(profile, extension, container, 529 tab = Browser::OpenApplicationWindow(profile, extension, container,
530 GURL()); 530 GURL());
531 break; 531 break;
532 case extension_misc::LAUNCH_TAB: { 532 case extension_misc::LAUNCH_TAB: {
533 tab = Browser::OpenApplicationTab(profile, extension, existing_tab); 533 tab = Browser::OpenApplicationTab(profile, extension, existing_tab);
534 break; 534 break;
535 } 535 }
536 default: 536 default:
537 NOTREACHED(); 537 NOTREACHED();
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
581 // OnDidGetApplicationInfo, which calls 581 // OnDidGetApplicationInfo, which calls
582 // web_app::UpdateShortcutForTabContents when it sees UPDATE_SHORTCUT as 582 // web_app::UpdateShortcutForTabContents when it sees UPDATE_SHORTCUT as
583 // pending web app action. 583 // pending web app action.
584 browser->pending_web_app_action_ = UPDATE_SHORTCUT; 584 browser->pending_web_app_action_ = UPDATE_SHORTCUT;
585 } 585 }
586 586
587 return contents; 587 return contents;
588 } 588 }
589 589
590 // static 590 // static
591 TabContents* Browser::OpenApplicationWindow(Profile* profile, const GURL& url) { 591 TabContents* Browser::OpenApplicationWindow(Profile* profile, GURL& url) {
592 return OpenApplicationWindow(profile, NULL, extension_misc::LAUNCH_WINDOW, 592 return OpenApplicationWindow(profile, NULL, extension_misc::LAUNCH_WINDOW,
593 url); 593 url);
594 } 594 }
595 595
596 // static 596 // static
597 TabContents* Browser::OpenApplicationTab(Profile* profile, 597 TabContents* Browser::OpenApplicationTab(Profile* profile,
598 const Extension* extension, 598 const Extension* extension,
599 TabContents* existing_tab) { 599 TabContents* existing_tab) {
600 Browser* browser = BrowserList::GetLastActiveWithProfile(profile); 600 Browser* browser = BrowserList::GetLastActiveWithProfile(profile);
601 TabContents* contents = NULL; 601 TabContents* contents = NULL;
(...skipping 3516 matching lines...) Expand 10 before | Expand all | Expand 10 after
4118 NOTREACHED(); 4118 NOTREACHED();
4119 return false; 4119 return false;
4120 } 4120 }
4121 4121
4122 void Browser::CreateInstantIfNecessary() { 4122 void Browser::CreateInstantIfNecessary() {
4123 if (type() == TYPE_NORMAL && InstantController::IsEnabled(profile()) && 4123 if (type() == TYPE_NORMAL && InstantController::IsEnabled(profile()) &&
4124 !profile()->IsOffTheRecord()) { 4124 !profile()->IsOffTheRecord()) {
4125 instant_.reset(new InstantController(profile_, this)); 4125 instant_.reset(new InstantController(profile_, this));
4126 } 4126 }
4127 } 4127 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/browser.h ('k') | chrome/browser/ui/browser_init.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698