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

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

Issue 2771233002: Remove the wrapper functions content::RecordAction et al (Closed)
Patch Set: Rebased Created 3 years, 9 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 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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/browser_commands.h" 5 #include "chrome/browser/ui/browser_commands.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/metrics/histogram_macros.h" 8 #include "base/metrics/histogram_macros.h"
9 #include "base/metrics/user_metrics.h"
9 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
10 #include "build/build_config.h" 11 #include "build/build_config.h"
11 #include "chrome/app/chrome_command_ids.h" 12 #include "chrome/app/chrome_command_ids.h"
12 #include "chrome/browser/bookmarks/bookmark_model_factory.h" 13 #include "chrome/browser/bookmarks/bookmark_model_factory.h"
13 #include "chrome/browser/browser_process.h" 14 #include "chrome/browser/browser_process.h"
14 #include "chrome/browser/browsing_data/browsing_data_helper.h" 15 #include "chrome/browser/browsing_data/browsing_data_helper.h"
15 #include "chrome/browser/browsing_data/browsing_data_remover.h" 16 #include "chrome/browser/browsing_data/browsing_data_remover.h"
16 #include "chrome/browser/browsing_data/browsing_data_remover_factory.h" 17 #include "chrome/browser/browsing_data/browsing_data_remover_factory.h"
17 #include "chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h" 18 #include "chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h"
18 #include "chrome/browser/chrome_notification_types.h" 19 #include "chrome/browser/chrome_notification_types.h"
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 #include "components/web_modal/web_contents_modal_dialog_manager.h" 72 #include "components/web_modal/web_contents_modal_dialog_manager.h"
72 #include "components/zoom/page_zoom.h" 73 #include "components/zoom/page_zoom.h"
73 #include "components/zoom/zoom_controller.h" 74 #include "components/zoom/zoom_controller.h"
74 #include "content/public/browser/devtools_agent_host.h" 75 #include "content/public/browser/devtools_agent_host.h"
75 #include "content/public/browser/navigation_controller.h" 76 #include "content/public/browser/navigation_controller.h"
76 #include "content/public/browser/navigation_entry.h" 77 #include "content/public/browser/navigation_entry.h"
77 #include "content/public/browser/notification_service.h" 78 #include "content/public/browser/notification_service.h"
78 #include "content/public/browser/page_navigator.h" 79 #include "content/public/browser/page_navigator.h"
79 #include "content/public/browser/render_view_host.h" 80 #include "content/public/browser/render_view_host.h"
80 #include "content/public/browser/render_widget_host_view.h" 81 #include "content/public/browser/render_widget_host_view.h"
81 #include "content/public/browser/user_metrics.h"
82 #include "content/public/browser/web_contents.h" 82 #include "content/public/browser/web_contents.h"
83 #include "content/public/common/page_state.h" 83 #include "content/public/common/page_state.h"
84 #include "content/public/common/renderer_preferences.h" 84 #include "content/public/common/renderer_preferences.h"
85 #include "content/public/common/url_constants.h" 85 #include "content/public/common/url_constants.h"
86 #include "content/public/common/url_utils.h" 86 #include "content/public/common/url_utils.h"
87 #include "content/public/common/user_agent.h" 87 #include "content/public/common/user_agent.h"
88 #include "extensions/features/features.h" 88 #include "extensions/features/features.h"
89 #include "net/base/escape.h" 89 #include "net/base/escape.h"
90 #include "printing/features/features.h" 90 #include "printing/features/features.h"
91 #include "rlz/features/features.h" 91 #include "rlz/features/features.h"
(...skipping 279 matching lines...) Expand 10 before | Expand all | Expand 10 after
371 incognito = false; 371 incognito = false;
372 } 372 }
373 } else if (profile->IsGuestSession() || 373 } else if (profile->IsGuestSession() ||
374 (browser_defaults::kAlwaysOpenIncognitoWindow && 374 (browser_defaults::kAlwaysOpenIncognitoWindow &&
375 IncognitoModePrefs::ShouldLaunchIncognito( 375 IncognitoModePrefs::ShouldLaunchIncognito(
376 *base::CommandLine::ForCurrentProcess(), prefs))) { 376 *base::CommandLine::ForCurrentProcess(), prefs))) {
377 incognito = true; 377 incognito = true;
378 } 378 }
379 379
380 if (incognito) { 380 if (incognito) {
381 content::RecordAction(UserMetricsAction("NewIncognitoWindow")); 381 base::RecordAction(UserMetricsAction("NewIncognitoWindow"));
382 OpenEmptyWindow(profile->GetOffTheRecordProfile()); 382 OpenEmptyWindow(profile->GetOffTheRecordProfile());
383 } else { 383 } else {
384 content::RecordAction(UserMetricsAction("NewWindow")); 384 base::RecordAction(UserMetricsAction("NewWindow"));
385 SessionService* session_service = 385 SessionService* session_service =
386 SessionServiceFactory::GetForProfileForSessionRestore( 386 SessionServiceFactory::GetForProfileForSessionRestore(
387 profile->GetOriginalProfile()); 387 profile->GetOriginalProfile());
388 if (!session_service || 388 if (!session_service ||
389 !session_service->RestoreIfNecessary(std::vector<GURL>())) { 389 !session_service->RestoreIfNecessary(std::vector<GURL>())) {
390 OpenEmptyWindow(profile->GetOriginalProfile()); 390 OpenEmptyWindow(profile->GetOriginalProfile());
391 } 391 }
392 } 392 }
393 } 393 }
394 394
(...skipping 18 matching lines...) Expand all
413 AddSelectedTabWithURL(displayer.browser(), url, 413 AddSelectedTabWithURL(displayer.browser(), url,
414 ui::PAGE_TRANSITION_LINK); 414 ui::PAGE_TRANSITION_LINK);
415 } 415 }
416 416
417 bool CanGoBack(const Browser* browser) { 417 bool CanGoBack(const Browser* browser) {
418 return browser->tab_strip_model()->GetActiveWebContents()-> 418 return browser->tab_strip_model()->GetActiveWebContents()->
419 GetController().CanGoBack(); 419 GetController().CanGoBack();
420 } 420 }
421 421
422 void GoBack(Browser* browser, WindowOpenDisposition disposition) { 422 void GoBack(Browser* browser, WindowOpenDisposition disposition) {
423 content::RecordAction(UserMetricsAction("Back")); 423 base::RecordAction(UserMetricsAction("Back"));
424 424
425 if (CanGoBack(browser)) { 425 if (CanGoBack(browser)) {
426 WebContents* current_tab = 426 WebContents* current_tab =
427 browser->tab_strip_model()->GetActiveWebContents(); 427 browser->tab_strip_model()->GetActiveWebContents();
428 WebContents* new_tab = GetTabAndRevertIfNecessary(browser, disposition); 428 WebContents* new_tab = GetTabAndRevertIfNecessary(browser, disposition);
429 // If we are on an interstitial page and clone the tab, it won't be copied 429 // If we are on an interstitial page and clone the tab, it won't be copied
430 // to the new tab, so we don't need to go back. 430 // to the new tab, so we don't need to go back.
431 if ((new_tab == current_tab) || !current_tab->ShowingInterstitialPage()) 431 if ((new_tab == current_tab) || !current_tab->ShowingInterstitialPage())
432 new_tab->GetController().GoBack(); 432 new_tab->GetController().GoBack();
433 } 433 }
434 } 434 }
435 435
436 bool CanGoForward(const Browser* browser) { 436 bool CanGoForward(const Browser* browser) {
437 return browser->tab_strip_model()->GetActiveWebContents()-> 437 return browser->tab_strip_model()->GetActiveWebContents()->
438 GetController().CanGoForward(); 438 GetController().CanGoForward();
439 } 439 }
440 440
441 void GoForward(Browser* browser, WindowOpenDisposition disposition) { 441 void GoForward(Browser* browser, WindowOpenDisposition disposition) {
442 content::RecordAction(UserMetricsAction("Forward")); 442 base::RecordAction(UserMetricsAction("Forward"));
443 if (CanGoForward(browser)) { 443 if (CanGoForward(browser)) {
444 GetTabAndRevertIfNecessary(browser, disposition)-> 444 GetTabAndRevertIfNecessary(browser, disposition)->
445 GetController().GoForward(); 445 GetController().GoForward();
446 } 446 }
447 } 447 }
448 448
449 bool NavigateToIndexWithDisposition(Browser* browser, 449 bool NavigateToIndexWithDisposition(Browser* browser,
450 int index, 450 int index,
451 WindowOpenDisposition disposition) { 451 WindowOpenDisposition disposition) {
452 NavigationController* controller = 452 NavigationController* controller =
453 &GetTabAndRevertIfNecessary(browser, disposition)->GetController(); 453 &GetTabAndRevertIfNecessary(browser, disposition)->GetController();
454 if (index < 0 || index >= controller->GetEntryCount()) 454 if (index < 0 || index >= controller->GetEntryCount())
455 return false; 455 return false;
456 controller->GoToIndex(index); 456 controller->GoToIndex(index);
457 return true; 457 return true;
458 } 458 }
459 459
460 void Reload(Browser* browser, WindowOpenDisposition disposition) { 460 void Reload(Browser* browser, WindowOpenDisposition disposition) {
461 content::RecordAction(UserMetricsAction("Reload")); 461 base::RecordAction(UserMetricsAction("Reload"));
462 ReloadInternal(browser, disposition, false); 462 ReloadInternal(browser, disposition, false);
463 } 463 }
464 464
465 void ReloadBypassingCache(Browser* browser, WindowOpenDisposition disposition) { 465 void ReloadBypassingCache(Browser* browser, WindowOpenDisposition disposition) {
466 content::RecordAction(UserMetricsAction("ReloadBypassingCache")); 466 base::RecordAction(UserMetricsAction("ReloadBypassingCache"));
467 ReloadInternal(browser, disposition, true); 467 ReloadInternal(browser, disposition, true);
468 } 468 }
469 469
470 bool CanReload(const Browser* browser) { 470 bool CanReload(const Browser* browser) {
471 return !browser->is_devtools(); 471 return !browser->is_devtools();
472 } 472 }
473 473
474 void Home(Browser* browser, WindowOpenDisposition disposition) { 474 void Home(Browser* browser, WindowOpenDisposition disposition) {
475 content::RecordAction(UserMetricsAction("Home")); 475 base::RecordAction(UserMetricsAction("Home"));
476 476
477 std::string extra_headers; 477 std::string extra_headers;
478 #if BUILDFLAG(ENABLE_RLZ) 478 #if BUILDFLAG(ENABLE_RLZ)
479 // If the home page is a Google home page, add the RLZ header to the request. 479 // If the home page is a Google home page, add the RLZ header to the request.
480 PrefService* pref_service = browser->profile()->GetPrefs(); 480 PrefService* pref_service = browser->profile()->GetPrefs();
481 if (pref_service) { 481 if (pref_service) {
482 if (google_util::IsGoogleHomePageUrl( 482 if (google_util::IsGoogleHomePageUrl(
483 GURL(pref_service->GetString(prefs::kHomePage)))) { 483 GURL(pref_service->GetString(prefs::kHomePage)))) {
484 extra_headers = rlz::RLZTracker::GetAccessPointHttpHeader( 484 extra_headers = rlz::RLZTracker::GetAccessPointHttpHeader(
485 rlz::RLZTracker::ChromeHomePage()); 485 rlz::RLZTracker::ChromeHomePage());
(...skipping 27 matching lines...) Expand all
513 url, Referrer(), disposition, 513 url, Referrer(), disposition,
514 ui::PageTransitionFromInt( 514 ui::PageTransitionFromInt(
515 ui::PAGE_TRANSITION_AUTO_BOOKMARK | 515 ui::PAGE_TRANSITION_AUTO_BOOKMARK |
516 ui::PAGE_TRANSITION_HOME_PAGE), 516 ui::PAGE_TRANSITION_HOME_PAGE),
517 false); 517 false);
518 params.extra_headers = extra_headers; 518 params.extra_headers = extra_headers;
519 browser->OpenURL(params); 519 browser->OpenURL(params);
520 } 520 }
521 521
522 void OpenCurrentURL(Browser* browser) { 522 void OpenCurrentURL(Browser* browser) {
523 content::RecordAction(UserMetricsAction("LoadURL")); 523 base::RecordAction(UserMetricsAction("LoadURL"));
524 LocationBar* location_bar = browser->window()->GetLocationBar(); 524 LocationBar* location_bar = browser->window()->GetLocationBar();
525 if (!location_bar) 525 if (!location_bar)
526 return; 526 return;
527 527
528 GURL url(location_bar->GetDestinationURL()); 528 GURL url(location_bar->GetDestinationURL());
529 529
530 ui::PageTransition page_transition = location_bar->GetPageTransition(); 530 ui::PageTransition page_transition = location_bar->GetPageTransition();
531 WindowOpenDisposition open_disposition = 531 WindowOpenDisposition open_disposition =
532 location_bar->GetWindowOpenDisposition(); 532 location_bar->GetWindowOpenDisposition();
533 // A PAGE_TRANSITION_TYPED means the user has typed a URL. We do not want to 533 // A PAGE_TRANSITION_TYPED means the user has typed a URL. We do not want to
(...skipping 28 matching lines...) Expand all
562 extensions::ExtensionRegistry::Get(browser->profile()) 562 extensions::ExtensionRegistry::Get(browser->profile())
563 ->enabled_extensions().GetAppByURL(url); 563 ->enabled_extensions().GetAppByURL(url);
564 if (extension) { 564 if (extension) {
565 extensions::RecordAppLaunchType(extension_misc::APP_LAUNCH_OMNIBOX_LOCATION, 565 extensions::RecordAppLaunchType(extension_misc::APP_LAUNCH_OMNIBOX_LOCATION,
566 extension->GetType()); 566 extension->GetType());
567 } 567 }
568 #endif 568 #endif
569 } 569 }
570 570
571 void Stop(Browser* browser) { 571 void Stop(Browser* browser) {
572 content::RecordAction(UserMetricsAction("Stop")); 572 base::RecordAction(UserMetricsAction("Stop"));
573 browser->tab_strip_model()->GetActiveWebContents()->Stop(); 573 browser->tab_strip_model()->GetActiveWebContents()->Stop();
574 } 574 }
575 575
576 void NewWindow(Browser* browser) { 576 void NewWindow(Browser* browser) {
577 NewEmptyWindow(browser->profile()->GetOriginalProfile()); 577 NewEmptyWindow(browser->profile()->GetOriginalProfile());
578 } 578 }
579 579
580 void NewIncognitoWindow(Browser* browser) { 580 void NewIncognitoWindow(Browser* browser) {
581 NewEmptyWindow(browser->profile()->GetOffTheRecordProfile()); 581 NewEmptyWindow(browser->profile()->GetOffTheRecordProfile());
582 } 582 }
583 583
584 void CloseWindow(Browser* browser) { 584 void CloseWindow(Browser* browser) {
585 content::RecordAction(UserMetricsAction("CloseWindow")); 585 base::RecordAction(UserMetricsAction("CloseWindow"));
586 browser->window()->Close(); 586 browser->window()->Close();
587 } 587 }
588 588
589 void NewTab(Browser* browser) { 589 void NewTab(Browser* browser) {
590 content::RecordAction(UserMetricsAction("NewTab")); 590 base::RecordAction(UserMetricsAction("NewTab"));
591 // TODO(asvitkine): This is invoked programmatically from several places. 591 // TODO(asvitkine): This is invoked programmatically from several places.
592 // Audit the code and change it so that the histogram only gets collected for 592 // Audit the code and change it so that the histogram only gets collected for
593 // user-initiated commands. 593 // user-initiated commands.
594 UMA_HISTOGRAM_ENUMERATION("Tab.NewTab", TabStripModel::NEW_TAB_COMMAND, 594 UMA_HISTOGRAM_ENUMERATION("Tab.NewTab", TabStripModel::NEW_TAB_COMMAND,
595 TabStripModel::NEW_TAB_ENUM_COUNT); 595 TabStripModel::NEW_TAB_ENUM_COUNT);
596 596
597 if (browser->is_type_tabbed()) { 597 if (browser->is_type_tabbed()) {
598 AddTabAt(browser, GURL(), -1, true); 598 AddTabAt(browser, GURL(), -1, true);
599 browser->tab_strip_model()->GetActiveWebContents()->RestoreFocus(); 599 browser->tab_strip_model()->GetActiveWebContents()->RestoreFocus();
600 } else { 600 } else {
601 ScopedTabbedBrowserDisplayer displayer(browser->profile()); 601 ScopedTabbedBrowserDisplayer displayer(browser->profile());
602 Browser* b = displayer.browser(); 602 Browser* b = displayer.browser();
603 AddTabAt(b, GURL(), -1, true); 603 AddTabAt(b, GURL(), -1, true);
604 b->window()->Show(); 604 b->window()->Show();
605 // The call to AddBlankTabAt above did not set the focus to the tab as its 605 // The call to AddBlankTabAt above did not set the focus to the tab as its
606 // window was not active, so we have to do it explicitly. 606 // window was not active, so we have to do it explicitly.
607 // See http://crbug.com/6380. 607 // See http://crbug.com/6380.
608 b->tab_strip_model()->GetActiveWebContents()->RestoreFocus(); 608 b->tab_strip_model()->GetActiveWebContents()->RestoreFocus();
609 } 609 }
610 } 610 }
611 611
612 void CloseTab(Browser* browser) { 612 void CloseTab(Browser* browser) {
613 content::RecordAction(UserMetricsAction("CloseTab_Accelerator")); 613 base::RecordAction(UserMetricsAction("CloseTab_Accelerator"));
614 browser->tab_strip_model()->CloseSelectedTabs(); 614 browser->tab_strip_model()->CloseSelectedTabs();
615 } 615 }
616 616
617 bool CanZoomIn(content::WebContents* contents) { 617 bool CanZoomIn(content::WebContents* contents) {
618 return contents && !contents->IsCrashed() && 618 return contents && !contents->IsCrashed() &&
619 zoom::ZoomController::FromWebContents(contents)->GetZoomPercent() != 619 zoom::ZoomController::FromWebContents(contents)->GetZoomPercent() !=
620 contents->GetMaximumZoomPercent(); 620 contents->GetMaximumZoomPercent();
621 } 621 }
622 622
623 bool CanZoomOut(content::WebContents* contents) { 623 bool CanZoomOut(content::WebContents* contents) {
(...skipping 14 matching lines...) Expand all
638 sessions::TabRestoreService* service = 638 sessions::TabRestoreService* service =
639 TabRestoreServiceFactory::GetForProfile(browser->profile()); 639 TabRestoreServiceFactory::GetForProfile(browser->profile());
640 if (!service || service->entries().empty()) 640 if (!service || service->entries().empty())
641 return TabStripModelDelegate::RESTORE_NONE; 641 return TabStripModelDelegate::RESTORE_NONE;
642 if (service->entries().front()->type == sessions::TabRestoreService::WINDOW) 642 if (service->entries().front()->type == sessions::TabRestoreService::WINDOW)
643 return TabStripModelDelegate::RESTORE_WINDOW; 643 return TabStripModelDelegate::RESTORE_WINDOW;
644 return TabStripModelDelegate::RESTORE_TAB; 644 return TabStripModelDelegate::RESTORE_TAB;
645 } 645 }
646 646
647 void SelectNextTab(Browser* browser) { 647 void SelectNextTab(Browser* browser) {
648 content::RecordAction(UserMetricsAction("SelectNextTab")); 648 base::RecordAction(UserMetricsAction("SelectNextTab"));
649 browser->tab_strip_model()->SelectNextTab(); 649 browser->tab_strip_model()->SelectNextTab();
650 } 650 }
651 651
652 void SelectPreviousTab(Browser* browser) { 652 void SelectPreviousTab(Browser* browser) {
653 content::RecordAction(UserMetricsAction("SelectPrevTab")); 653 base::RecordAction(UserMetricsAction("SelectPrevTab"));
654 browser->tab_strip_model()->SelectPreviousTab(); 654 browser->tab_strip_model()->SelectPreviousTab();
655 } 655 }
656 656
657 void MoveTabNext(Browser* browser) { 657 void MoveTabNext(Browser* browser) {
658 content::RecordAction(UserMetricsAction("MoveTabNext")); 658 base::RecordAction(UserMetricsAction("MoveTabNext"));
659 browser->tab_strip_model()->MoveTabNext(); 659 browser->tab_strip_model()->MoveTabNext();
660 } 660 }
661 661
662 void MoveTabPrevious(Browser* browser) { 662 void MoveTabPrevious(Browser* browser) {
663 content::RecordAction(UserMetricsAction("MoveTabPrevious")); 663 base::RecordAction(UserMetricsAction("MoveTabPrevious"));
664 browser->tab_strip_model()->MoveTabPrevious(); 664 browser->tab_strip_model()->MoveTabPrevious();
665 } 665 }
666 666
667 void SelectNumberedTab(Browser* browser, int index) { 667 void SelectNumberedTab(Browser* browser, int index) {
668 if (index < browser->tab_strip_model()->count()) { 668 if (index < browser->tab_strip_model()->count()) {
669 content::RecordAction(UserMetricsAction("SelectNumberedTab")); 669 base::RecordAction(UserMetricsAction("SelectNumberedTab"));
670 browser->tab_strip_model()->ActivateTabAt(index, true); 670 browser->tab_strip_model()->ActivateTabAt(index, true);
671 } 671 }
672 } 672 }
673 673
674 void SelectLastTab(Browser* browser) { 674 void SelectLastTab(Browser* browser) {
675 content::RecordAction(UserMetricsAction("SelectLastTab")); 675 base::RecordAction(UserMetricsAction("SelectLastTab"));
676 browser->tab_strip_model()->SelectLastTab(); 676 browser->tab_strip_model()->SelectLastTab();
677 } 677 }
678 678
679 void DuplicateTab(Browser* browser) { 679 void DuplicateTab(Browser* browser) {
680 content::RecordAction(UserMetricsAction("Duplicate")); 680 base::RecordAction(UserMetricsAction("Duplicate"));
681 DuplicateTabAt(browser, browser->tab_strip_model()->active_index()); 681 DuplicateTabAt(browser, browser->tab_strip_model()->active_index());
682 } 682 }
683 683
684 bool CanDuplicateTab(const Browser* browser) { 684 bool CanDuplicateTab(const Browser* browser) {
685 return CanDuplicateTabAt(browser, browser->tab_strip_model()->active_index()); 685 return CanDuplicateTabAt(browser, browser->tab_strip_model()->active_index());
686 } 686 }
687 687
688 WebContents* DuplicateTabAt(Browser* browser, int index) { 688 WebContents* DuplicateTabAt(Browser* browser, int index) {
689 WebContents* contents = browser->tab_strip_model()->GetWebContentsAt(index); 689 WebContents* contents = browser->tab_strip_model()->GetWebContentsAt(index);
690 CHECK(contents); 690 CHECK(contents);
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
738 bool CanDuplicateTabAt(const Browser* browser, int index) { 738 bool CanDuplicateTabAt(const Browser* browser, int index) {
739 WebContents* contents = browser->tab_strip_model()->GetWebContentsAt(index); 739 WebContents* contents = browser->tab_strip_model()->GetWebContentsAt(index);
740 // If an interstitial is showing, do not allow tab duplication, since 740 // If an interstitial is showing, do not allow tab duplication, since
741 // the last committed entry is what would get duplicated and is not 741 // the last committed entry is what would get duplicated and is not
742 // what the user expects to duplicate. 742 // what the user expects to duplicate.
743 return contents && !contents->ShowingInterstitialPage() && 743 return contents && !contents->ShowingInterstitialPage() &&
744 contents->GetController().GetLastCommittedEntry(); 744 contents->GetController().GetLastCommittedEntry();
745 } 745 }
746 746
747 void ConvertPopupToTabbedBrowser(Browser* browser) { 747 void ConvertPopupToTabbedBrowser(Browser* browser) {
748 content::RecordAction(UserMetricsAction("ShowAsTab")); 748 base::RecordAction(UserMetricsAction("ShowAsTab"));
749 TabStripModel* tab_strip = browser->tab_strip_model(); 749 TabStripModel* tab_strip = browser->tab_strip_model();
750 WebContents* contents = 750 WebContents* contents =
751 tab_strip->DetachWebContentsAt(tab_strip->active_index()); 751 tab_strip->DetachWebContentsAt(tab_strip->active_index());
752 Browser* b = new Browser(Browser::CreateParams(browser->profile(), true)); 752 Browser* b = new Browser(Browser::CreateParams(browser->profile(), true));
753 b->tab_strip_model()->AppendWebContents(contents, true); 753 b->tab_strip_model()->AppendWebContents(contents, true);
754 b->window()->Show(); 754 b->window()->Show();
755 } 755 }
756 756
757 void Exit() { 757 void Exit() {
758 content::RecordAction(UserMetricsAction("Exit")); 758 base::RecordAction(UserMetricsAction("Exit"));
759 chrome::AttemptUserExit(); 759 chrome::AttemptUserExit();
760 } 760 }
761 761
762 void BookmarkCurrentPageIgnoringExtensionOverrides(Browser* browser) { 762 void BookmarkCurrentPageIgnoringExtensionOverrides(Browser* browser) {
763 content::RecordAction(UserMetricsAction("Star")); 763 base::RecordAction(UserMetricsAction("Star"));
764 764
765 BookmarkModel* model = 765 BookmarkModel* model =
766 BookmarkModelFactory::GetForBrowserContext(browser->profile()); 766 BookmarkModelFactory::GetForBrowserContext(browser->profile());
767 if (!model || !model->loaded()) 767 if (!model || !model->loaded())
768 return; // Ignore requests until bookmarks are loaded. 768 return; // Ignore requests until bookmarks are loaded.
769 769
770 GURL url; 770 GURL url;
771 base::string16 title; 771 base::string16 title;
772 WebContents* web_contents = 772 WebContents* web_contents =
773 browser->tab_strip_model()->GetActiveWebContents(); 773 browser->tab_strip_model()->GetActiveWebContents();
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
818 } 818 }
819 #endif 819 #endif
820 BookmarkCurrentPageIgnoringExtensionOverrides(browser); 820 BookmarkCurrentPageIgnoringExtensionOverrides(browser);
821 } 821 }
822 822
823 bool CanBookmarkCurrentPage(const Browser* browser) { 823 bool CanBookmarkCurrentPage(const Browser* browser) {
824 return CanBookmarkCurrentPageInternal(browser, true); 824 return CanBookmarkCurrentPageInternal(browser, true);
825 } 825 }
826 826
827 void BookmarkAllTabs(Browser* browser) { 827 void BookmarkAllTabs(Browser* browser) {
828 content::RecordAction(UserMetricsAction("BookmarkAllTabs")); 828 base::RecordAction(UserMetricsAction("BookmarkAllTabs"));
829 chrome::ShowBookmarkAllTabsDialog(browser); 829 chrome::ShowBookmarkAllTabsDialog(browser);
830 } 830 }
831 831
832 bool CanBookmarkAllTabs(const Browser* browser) { 832 bool CanBookmarkAllTabs(const Browser* browser) {
833 return browser->tab_strip_model()->count() > 1 && 833 return browser->tab_strip_model()->count() > 1 &&
834 !chrome::ShouldRemoveBookmarkOpenPagesUI(browser->profile()) && 834 !chrome::ShouldRemoveBookmarkOpenPagesUI(browser->profile()) &&
835 CanBookmarkCurrentPageInternal(browser, false); 835 CanBookmarkCurrentPageInternal(browser, false);
836 } 836 }
837 837
838 void SaveCreditCard(Browser* browser) { 838 void SaveCreditCard(Browser* browser) {
(...skipping 29 matching lines...) Expand all
868 void ManagePasswordsForPage(Browser* browser) { 868 void ManagePasswordsForPage(Browser* browser) {
869 WebContents* web_contents = 869 WebContents* web_contents =
870 browser->tab_strip_model()->GetActiveWebContents(); 870 browser->tab_strip_model()->GetActiveWebContents();
871 ManagePasswordsUIController* controller = 871 ManagePasswordsUIController* controller =
872 ManagePasswordsUIController::FromWebContents(web_contents); 872 ManagePasswordsUIController::FromWebContents(web_contents);
873 TabDialogs::FromWebContents(web_contents)->ShowManagePasswordsBubble( 873 TabDialogs::FromWebContents(web_contents)->ShowManagePasswordsBubble(
874 !controller->IsAutomaticallyOpeningBubble()); 874 !controller->IsAutomaticallyOpeningBubble());
875 } 875 }
876 876
877 void SavePage(Browser* browser) { 877 void SavePage(Browser* browser) {
878 content::RecordAction(UserMetricsAction("SavePage")); 878 base::RecordAction(UserMetricsAction("SavePage"));
879 WebContents* current_tab = browser->tab_strip_model()->GetActiveWebContents(); 879 WebContents* current_tab = browser->tab_strip_model()->GetActiveWebContents();
880 if (current_tab && current_tab->GetContentsMimeType() == "application/pdf") 880 if (current_tab && current_tab->GetContentsMimeType() == "application/pdf")
881 content::RecordAction(UserMetricsAction("PDF.SavePage")); 881 base::RecordAction(UserMetricsAction("PDF.SavePage"));
882 current_tab->OnSavePage(); 882 current_tab->OnSavePage();
883 } 883 }
884 884
885 bool CanSavePage(const Browser* browser) { 885 bool CanSavePage(const Browser* browser) {
886 // LocalState can be NULL in tests. 886 // LocalState can be NULL in tests.
887 if (g_browser_process->local_state() && 887 if (g_browser_process->local_state() &&
888 !g_browser_process->local_state()->GetBoolean( 888 !g_browser_process->local_state()->GetBoolean(
889 prefs::kAllowFileSelectionDialogs)) { 889 prefs::kAllowFileSelectionDialogs)) {
890 return false; 890 return false;
891 } 891 }
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
970 media_router::MediaRouterDialogController::GetOrCreateForWebContents( 970 media_router::MediaRouterDialogController::GetOrCreateForWebContents(
971 browser->tab_strip_model()->GetActiveWebContents()); 971 browser->tab_strip_model()->GetActiveWebContents());
972 if (!dialog_controller) 972 if (!dialog_controller)
973 return; 973 return;
974 974
975 dialog_controller->ShowMediaRouterDialog(); 975 dialog_controller->ShowMediaRouterDialog();
976 #endif // defined(ENABLE_MEDIA_ROUTER) 976 #endif // defined(ENABLE_MEDIA_ROUTER)
977 } 977 }
978 978
979 void EmailPageLocation(Browser* browser) { 979 void EmailPageLocation(Browser* browser) {
980 content::RecordAction(UserMetricsAction("EmailPageLocation")); 980 base::RecordAction(UserMetricsAction("EmailPageLocation"));
981 WebContents* wc = browser->tab_strip_model()->GetActiveWebContents(); 981 WebContents* wc = browser->tab_strip_model()->GetActiveWebContents();
982 DCHECK(wc); 982 DCHECK(wc);
983 983
984 std::string title = net::EscapeQueryParamValue( 984 std::string title = net::EscapeQueryParamValue(
985 base::UTF16ToUTF8(wc->GetTitle()), false); 985 base::UTF16ToUTF8(wc->GetTitle()), false);
986 std::string page_url = net::EscapeQueryParamValue(wc->GetURL().spec(), false); 986 std::string page_url = net::EscapeQueryParamValue(wc->GetURL().spec(), false);
987 std::string mailto = std::string("mailto:?subject=Fwd:%20") + 987 std::string mailto = std::string("mailto:?subject=Fwd:%20") +
988 title + "&body=%0A%0A" + page_url; 988 title + "&body=%0A%0A" + page_url;
989 platform_util::OpenExternal(browser->profile(), GURL(mailto)); 989 platform_util::OpenExternal(browser->profile(), GURL(mailto));
990 } 990 }
991 991
992 bool CanEmailPageLocation(const Browser* browser) { 992 bool CanEmailPageLocation(const Browser* browser) {
993 return browser->toolbar_model()->ShouldDisplayURL() && 993 return browser->toolbar_model()->ShouldDisplayURL() &&
994 browser->tab_strip_model()->GetActiveWebContents()->GetURL().is_valid(); 994 browser->tab_strip_model()->GetActiveWebContents()->GetURL().is_valid();
995 } 995 }
996 996
997 void CutCopyPaste(Browser* browser, int command_id) { 997 void CutCopyPaste(Browser* browser, int command_id) {
998 if (command_id == IDC_CUT) 998 if (command_id == IDC_CUT)
999 content::RecordAction(UserMetricsAction("Cut")); 999 base::RecordAction(UserMetricsAction("Cut"));
1000 else if (command_id == IDC_COPY) 1000 else if (command_id == IDC_COPY)
1001 content::RecordAction(UserMetricsAction("Copy")); 1001 base::RecordAction(UserMetricsAction("Copy"));
1002 else 1002 else
1003 content::RecordAction(UserMetricsAction("Paste")); 1003 base::RecordAction(UserMetricsAction("Paste"));
1004 browser->window()->CutCopyPaste(command_id); 1004 browser->window()->CutCopyPaste(command_id);
1005 } 1005 }
1006 1006
1007 void Find(Browser* browser) { 1007 void Find(Browser* browser) {
1008 content::RecordAction(UserMetricsAction("Find")); 1008 base::RecordAction(UserMetricsAction("Find"));
1009 FindInPage(browser, false, false); 1009 FindInPage(browser, false, false);
1010 } 1010 }
1011 1011
1012 void FindNext(Browser* browser) { 1012 void FindNext(Browser* browser) {
1013 content::RecordAction(UserMetricsAction("FindNext")); 1013 base::RecordAction(UserMetricsAction("FindNext"));
1014 FindInPage(browser, true, true); 1014 FindInPage(browser, true, true);
1015 } 1015 }
1016 1016
1017 void FindPrevious(Browser* browser) { 1017 void FindPrevious(Browser* browser) {
1018 content::RecordAction(UserMetricsAction("FindPrevious")); 1018 base::RecordAction(UserMetricsAction("FindPrevious"));
1019 FindInPage(browser, true, false); 1019 FindInPage(browser, true, false);
1020 } 1020 }
1021 1021
1022 void FindInPage(Browser* browser, bool find_next, bool forward_direction) { 1022 void FindInPage(Browser* browser, bool find_next, bool forward_direction) {
1023 ShowFindBar(browser); 1023 ShowFindBar(browser);
1024 if (find_next) { 1024 if (find_next) {
1025 base::string16 find_text; 1025 base::string16 find_text;
1026 FindTabHelper* find_helper = FindTabHelper::FromWebContents( 1026 FindTabHelper* find_helper = FindTabHelper::FromWebContents(
1027 browser->tab_strip_model()->GetActiveWebContents()); 1027 browser->tab_strip_model()->GetActiveWebContents());
1028 #if defined(OS_MACOSX) 1028 #if defined(OS_MACOSX)
1029 // We always want to search for the current contents of the find bar on 1029 // We always want to search for the current contents of the find bar on
1030 // OS X. For regular profile it's always the current find pboard. For 1030 // OS X. For regular profile it's always the current find pboard. For
1031 // Incognito window it's the newest value of the find pboard content and 1031 // Incognito window it's the newest value of the find pboard content and
1032 // user-typed text. 1032 // user-typed text.
1033 FindBar* find_bar = browser->GetFindBarController()->find_bar(); 1033 FindBar* find_bar = browser->GetFindBarController()->find_bar();
1034 find_text = find_bar->GetFindText(); 1034 find_text = find_bar->GetFindText();
1035 #endif 1035 #endif
1036 find_helper->StartFinding(find_text, forward_direction, false); 1036 find_helper->StartFinding(find_text, forward_direction, false);
1037 } 1037 }
1038 } 1038 }
1039 1039
1040 void Zoom(Browser* browser, content::PageZoom zoom) { 1040 void Zoom(Browser* browser, content::PageZoom zoom) {
1041 zoom::PageZoom::Zoom(browser->tab_strip_model()->GetActiveWebContents(), 1041 zoom::PageZoom::Zoom(browser->tab_strip_model()->GetActiveWebContents(),
1042 zoom); 1042 zoom);
1043 } 1043 }
1044 1044
1045 void FocusToolbar(Browser* browser) { 1045 void FocusToolbar(Browser* browser) {
1046 content::RecordAction(UserMetricsAction("FocusToolbar")); 1046 base::RecordAction(UserMetricsAction("FocusToolbar"));
1047 browser->window()->FocusToolbar(); 1047 browser->window()->FocusToolbar();
1048 } 1048 }
1049 1049
1050 void FocusLocationBar(Browser* browser) { 1050 void FocusLocationBar(Browser* browser) {
1051 content::RecordAction(UserMetricsAction("FocusLocation")); 1051 base::RecordAction(UserMetricsAction("FocusLocation"));
1052 browser->window()->SetFocusToLocationBar(true); 1052 browser->window()->SetFocusToLocationBar(true);
1053 } 1053 }
1054 1054
1055 void FocusSearch(Browser* browser) { 1055 void FocusSearch(Browser* browser) {
1056 // TODO(beng): replace this with FocusLocationBar 1056 // TODO(beng): replace this with FocusLocationBar
1057 content::RecordAction(UserMetricsAction("FocusSearch")); 1057 base::RecordAction(UserMetricsAction("FocusSearch"));
1058 browser->window()->GetLocationBar()->FocusSearch(); 1058 browser->window()->GetLocationBar()->FocusSearch();
1059 } 1059 }
1060 1060
1061 void FocusAppMenu(Browser* browser) { 1061 void FocusAppMenu(Browser* browser) {
1062 content::RecordAction(UserMetricsAction("FocusAppMenu")); 1062 base::RecordAction(UserMetricsAction("FocusAppMenu"));
1063 browser->window()->FocusAppMenu(); 1063 browser->window()->FocusAppMenu();
1064 } 1064 }
1065 1065
1066 void FocusBookmarksToolbar(Browser* browser) { 1066 void FocusBookmarksToolbar(Browser* browser) {
1067 content::RecordAction(UserMetricsAction("FocusBookmarksToolbar")); 1067 base::RecordAction(UserMetricsAction("FocusBookmarksToolbar"));
1068 browser->window()->FocusBookmarksToolbar(); 1068 browser->window()->FocusBookmarksToolbar();
1069 } 1069 }
1070 1070
1071 void FocusInfobars(Browser* browser) { 1071 void FocusInfobars(Browser* browser) {
1072 content::RecordAction(UserMetricsAction("FocusInfobars")); 1072 base::RecordAction(UserMetricsAction("FocusInfobars"));
1073 browser->window()->FocusInfobars(); 1073 browser->window()->FocusInfobars();
1074 } 1074 }
1075 1075
1076 void FocusNextPane(Browser* browser) { 1076 void FocusNextPane(Browser* browser) {
1077 content::RecordAction(UserMetricsAction("FocusNextPane")); 1077 base::RecordAction(UserMetricsAction("FocusNextPane"));
1078 browser->window()->RotatePaneFocus(true); 1078 browser->window()->RotatePaneFocus(true);
1079 } 1079 }
1080 1080
1081 void FocusPreviousPane(Browser* browser) { 1081 void FocusPreviousPane(Browser* browser) {
1082 content::RecordAction(UserMetricsAction("FocusPreviousPane")); 1082 base::RecordAction(UserMetricsAction("FocusPreviousPane"));
1083 browser->window()->RotatePaneFocus(false); 1083 browser->window()->RotatePaneFocus(false);
1084 } 1084 }
1085 1085
1086 void ToggleDevToolsWindow(Browser* browser, DevToolsToggleAction action) { 1086 void ToggleDevToolsWindow(Browser* browser, DevToolsToggleAction action) {
1087 if (action.type() == DevToolsToggleAction::kShowConsolePanel) 1087 if (action.type() == DevToolsToggleAction::kShowConsolePanel)
1088 content::RecordAction(UserMetricsAction("DevTools_ToggleConsole")); 1088 base::RecordAction(UserMetricsAction("DevTools_ToggleConsole"));
1089 else 1089 else
1090 content::RecordAction(UserMetricsAction("DevTools_ToggleWindow")); 1090 base::RecordAction(UserMetricsAction("DevTools_ToggleWindow"));
1091 DevToolsWindow::ToggleDevToolsWindow(browser, action); 1091 DevToolsWindow::ToggleDevToolsWindow(browser, action);
1092 } 1092 }
1093 1093
1094 bool CanOpenTaskManager() { 1094 bool CanOpenTaskManager() {
1095 #if !defined(OS_ANDROID) 1095 #if !defined(OS_ANDROID)
1096 return true; 1096 return true;
1097 #else 1097 #else
1098 return false; 1098 return false;
1099 #endif 1099 #endif
1100 } 1100 }
1101 1101
1102 void OpenTaskManager(Browser* browser) { 1102 void OpenTaskManager(Browser* browser) {
1103 #if !defined(OS_ANDROID) 1103 #if !defined(OS_ANDROID)
1104 content::RecordAction(UserMetricsAction("TaskManager")); 1104 base::RecordAction(UserMetricsAction("TaskManager"));
1105 chrome::ShowTaskManager(browser); 1105 chrome::ShowTaskManager(browser);
1106 #else 1106 #else
1107 NOTREACHED(); 1107 NOTREACHED();
1108 #endif 1108 #endif
1109 } 1109 }
1110 1110
1111 void OpenFeedbackDialog(Browser* browser) { 1111 void OpenFeedbackDialog(Browser* browser) {
1112 content::RecordAction(UserMetricsAction("Feedback")); 1112 base::RecordAction(UserMetricsAction("Feedback"));
1113 chrome::ShowFeedbackPage(browser, std::string(), std::string()); 1113 chrome::ShowFeedbackPage(browser, std::string(), std::string());
1114 } 1114 }
1115 1115
1116 void ToggleBookmarkBar(Browser* browser) { 1116 void ToggleBookmarkBar(Browser* browser) {
1117 content::RecordAction(UserMetricsAction("ShowBookmarksBar")); 1117 base::RecordAction(UserMetricsAction("ShowBookmarksBar"));
1118 ToggleBookmarkBarWhenVisible(browser->profile()); 1118 ToggleBookmarkBarWhenVisible(browser->profile());
1119 } 1119 }
1120 1120
1121 void ShowAppMenu(Browser* browser) { 1121 void ShowAppMenu(Browser* browser) {
1122 // We record the user metric for this event in AppMenu::RunMenu. 1122 // We record the user metric for this event in AppMenu::RunMenu.
1123 browser->window()->ShowAppMenu(); 1123 browser->window()->ShowAppMenu();
1124 } 1124 }
1125 1125
1126 void ShowAvatarMenu(Browser* browser) { 1126 void ShowAvatarMenu(Browser* browser) {
1127 browser->window()->ShowAvatarBubbleFromAvatarButton( 1127 browser->window()->ShowAvatarBubbleFromAvatarButton(
1128 BrowserWindow::AVATAR_BUBBLE_MODE_DEFAULT, signin::ManageAccountsParams(), 1128 BrowserWindow::AVATAR_BUBBLE_MODE_DEFAULT, signin::ManageAccountsParams(),
1129 signin_metrics::AccessPoint::ACCESS_POINT_AVATAR_BUBBLE_SIGN_IN, true); 1129 signin_metrics::AccessPoint::ACCESS_POINT_AVATAR_BUBBLE_SIGN_IN, true);
1130 } 1130 }
1131 1131
1132 void OpenUpdateChromeDialog(Browser* browser) { 1132 void OpenUpdateChromeDialog(Browser* browser) {
1133 if (UpgradeDetector::GetInstance()->is_outdated_install()) { 1133 if (UpgradeDetector::GetInstance()->is_outdated_install()) {
1134 content::NotificationService::current()->Notify( 1134 content::NotificationService::current()->Notify(
1135 chrome::NOTIFICATION_OUTDATED_INSTALL, 1135 chrome::NOTIFICATION_OUTDATED_INSTALL,
1136 content::NotificationService::AllSources(), 1136 content::NotificationService::AllSources(),
1137 content::NotificationService::NoDetails()); 1137 content::NotificationService::NoDetails());
1138 } else if (UpgradeDetector::GetInstance()->is_outdated_install_no_au()) { 1138 } else if (UpgradeDetector::GetInstance()->is_outdated_install_no_au()) {
1139 content::NotificationService::current()->Notify( 1139 content::NotificationService::current()->Notify(
1140 chrome::NOTIFICATION_OUTDATED_INSTALL_NO_AU, 1140 chrome::NOTIFICATION_OUTDATED_INSTALL_NO_AU,
1141 content::NotificationService::AllSources(), 1141 content::NotificationService::AllSources(),
1142 content::NotificationService::NoDetails()); 1142 content::NotificationService::NoDetails());
1143 } else { 1143 } else {
1144 content::RecordAction(UserMetricsAction("UpdateChrome")); 1144 base::RecordAction(UserMetricsAction("UpdateChrome"));
1145 browser->window()->ShowUpdateChromeDialog(); 1145 browser->window()->ShowUpdateChromeDialog();
1146 } 1146 }
1147 } 1147 }
1148 1148
1149 void DistillCurrentPage(Browser* browser) { 1149 void DistillCurrentPage(Browser* browser) {
1150 DistillCurrentPageAndView(browser->tab_strip_model()->GetActiveWebContents()); 1150 DistillCurrentPageAndView(browser->tab_strip_model()->GetActiveWebContents());
1151 } 1151 }
1152 1152
1153 bool CanRequestTabletSite(WebContents* current_tab) { 1153 bool CanRequestTabletSite(WebContents* current_tab) {
1154 return current_tab && 1154 return current_tab &&
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
1216 if (!entry) 1216 if (!entry)
1217 return; 1217 return;
1218 1218
1219 ViewSource(browser, contents, entry->GetURL(), entry->GetPageState()); 1219 ViewSource(browser, contents, entry->GetURL(), entry->GetPageState());
1220 } 1220 }
1221 1221
1222 void ViewSource(Browser* browser, 1222 void ViewSource(Browser* browser,
1223 WebContents* contents, 1223 WebContents* contents,
1224 const GURL& url, 1224 const GURL& url,
1225 const content::PageState& page_state) { 1225 const content::PageState& page_state) {
1226 content::RecordAction(UserMetricsAction("ViewSource")); 1226 base::RecordAction(UserMetricsAction("ViewSource"));
1227 DCHECK(contents); 1227 DCHECK(contents);
1228 1228
1229 WebContents* view_source_contents = contents->Clone(); 1229 WebContents* view_source_contents = contents->Clone();
1230 DCHECK(view_source_contents->GetController().CanPruneAllButLastCommitted()); 1230 DCHECK(view_source_contents->GetController().CanPruneAllButLastCommitted());
1231 view_source_contents->GetController().PruneAllButLastCommitted(); 1231 view_source_contents->GetController().PruneAllButLastCommitted();
1232 NavigationEntry* last_committed_entry = 1232 NavigationEntry* last_committed_entry =
1233 view_source_contents->GetController().GetLastCommittedEntry(); 1233 view_source_contents->GetController().GetLastCommittedEntry();
1234 if (!last_committed_entry) 1234 if (!last_committed_entry)
1235 return; 1235 return;
1236 1236
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
1288 } 1288 }
1289 1289
1290 bool CanViewSource(const Browser* browser) { 1290 bool CanViewSource(const Browser* browser) {
1291 return !browser->is_devtools() && 1291 return !browser->is_devtools() &&
1292 browser->tab_strip_model()->GetActiveWebContents()->GetController(). 1292 browser->tab_strip_model()->GetActiveWebContents()->GetController().
1293 CanViewSource(); 1293 CanViewSource();
1294 } 1294 }
1295 1295
1296 #if BUILDFLAG(ENABLE_EXTENSIONS) 1296 #if BUILDFLAG(ENABLE_EXTENSIONS)
1297 void CreateApplicationShortcuts(Browser* browser) { 1297 void CreateApplicationShortcuts(Browser* browser) {
1298 content::RecordAction(UserMetricsAction("CreateShortcut")); 1298 base::RecordAction(UserMetricsAction("CreateShortcut"));
1299 extensions::TabHelper::FromWebContents( 1299 extensions::TabHelper::FromWebContents(
1300 browser->tab_strip_model()->GetActiveWebContents())-> 1300 browser->tab_strip_model()->GetActiveWebContents())->
1301 CreateApplicationShortcuts(); 1301 CreateApplicationShortcuts();
1302 } 1302 }
1303 1303
1304 void CreateBookmarkAppFromCurrentWebContents(Browser* browser) { 1304 void CreateBookmarkAppFromCurrentWebContents(Browser* browser) {
1305 content::RecordAction(UserMetricsAction("CreateHostedApp")); 1305 base::RecordAction(UserMetricsAction("CreateHostedApp"));
1306 extensions::TabHelper::FromWebContents( 1306 extensions::TabHelper::FromWebContents(
1307 browser->tab_strip_model()->GetActiveWebContents())-> 1307 browser->tab_strip_model()->GetActiveWebContents())->
1308 CreateHostedAppFromWebContents(); 1308 CreateHostedAppFromWebContents();
1309 } 1309 }
1310 1310
1311 bool CanCreateApplicationShortcuts(const Browser* browser) { 1311 bool CanCreateApplicationShortcuts(const Browser* browser) {
1312 return extensions::TabHelper::FromWebContents( 1312 return extensions::TabHelper::FromWebContents(
1313 browser->tab_strip_model()->GetActiveWebContents())-> 1313 browser->tab_strip_model()->GetActiveWebContents())->
1314 CanCreateApplicationShortcuts(); 1314 CanCreateApplicationShortcuts();
1315 } 1315 }
(...skipping 18 matching lines...) Expand all
1334 true)); 1334 true));
1335 app_browser->tab_strip_model()->AppendWebContents(contents, true); 1335 app_browser->tab_strip_model()->AppendWebContents(contents, true);
1336 1336
1337 contents->GetMutableRendererPrefs()->can_accept_load_drops = false; 1337 contents->GetMutableRendererPrefs()->can_accept_load_drops = false;
1338 contents->GetRenderViewHost()->SyncRendererPrefs(); 1338 contents->GetRenderViewHost()->SyncRendererPrefs();
1339 app_browser->window()->Show(); 1339 app_browser->window()->Show();
1340 } 1340 }
1341 #endif // BUILDFLAG(ENABLE_EXTENSIONS) 1341 #endif // BUILDFLAG(ENABLE_EXTENSIONS)
1342 1342
1343 } // namespace chrome 1343 } // namespace chrome
OLDNEW
« no previous file with comments | « chrome/browser/ui/browser_command_controller.cc ('k') | chrome/browser/ui/browser_commands_chromeos.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698