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

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

Issue 498573003: Add relaunch into ASH and desktop support for Chrome on Windows 7. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed build error Created 6 years, 4 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/browser_command_controller.h" 5 #include "chrome/browser/ui/browser_command_controller.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/prefs/pref_service.h" 8 #include "base/prefs/pref_service.h"
9 #include "chrome/app/chrome_command_ids.h" 9 #include "chrome/app/chrome_command_ids.h"
10 #include "chrome/browser/browser_process.h" 10 #include "chrome/browser/browser_process.h"
(...skipping 442 matching lines...) Expand 10 before | Expand all | Expand 10 after
453 ConvertPopupToTabbedBrowser(browser_); 453 ConvertPopupToTabbedBrowser(browser_);
454 break; 454 break;
455 case IDC_FULLSCREEN: 455 case IDC_FULLSCREEN:
456 #if defined(OS_MACOSX) 456 #if defined(OS_MACOSX)
457 chrome::ToggleFullscreenWithChromeOrFallback(browser_); 457 chrome::ToggleFullscreenWithChromeOrFallback(browser_);
458 #else 458 #else
459 chrome::ToggleFullscreenMode(browser_); 459 chrome::ToggleFullscreenMode(browser_);
460 #endif 460 #endif
461 break; 461 break;
462 462
463 #if defined(USE_ASH)
464 case IDC_TOGGLE_ASH_DESKTOP:
465 chrome::ToggleAshDesktop();
466 break;
467 #endif
468
469 #if defined(OS_CHROMEOS) 463 #if defined(OS_CHROMEOS)
470 case IDC_VISIT_DESKTOP_OF_LRU_USER_2: 464 case IDC_VISIT_DESKTOP_OF_LRU_USER_2:
471 case IDC_VISIT_DESKTOP_OF_LRU_USER_3: 465 case IDC_VISIT_DESKTOP_OF_LRU_USER_3:
472 ExecuteVisitDesktopCommand(id, browser_->window()->GetNativeWindow()); 466 ExecuteVisitDesktopCommand(id, browser_->window()->GetNativeWindow());
473 break; 467 break;
474 #endif 468 #endif
475 469
476 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) 470 #if defined(OS_LINUX) && !defined(OS_CHROMEOS)
477 case IDC_USE_SYSTEM_TITLE_BAR: { 471 case IDC_USE_SYSTEM_TITLE_BAR: {
478 PrefService* prefs = browser_->profile()->GetPrefs(); 472 PrefService* prefs = browser_->profile()->GetPrefs();
479 prefs->SetBoolean(prefs::kUseCustomChromeFrame, 473 prefs->SetBoolean(prefs::kUseCustomChromeFrame,
480 !prefs->GetBoolean(prefs::kUseCustomChromeFrame)); 474 !prefs->GetBoolean(prefs::kUseCustomChromeFrame));
481 break; 475 break;
482 } 476 }
483 #endif 477 #endif
484 478
485 #if defined(OS_WIN) 479 #if defined(OS_WIN)
486 // Windows 8 specific commands. 480 // Windows 8 specific commands.
487 case IDC_METRO_SNAP_ENABLE: 481 case IDC_METRO_SNAP_ENABLE:
488 browser_->SetMetroSnapMode(true); 482 browser_->SetMetroSnapMode(true);
489 break; 483 break;
490 case IDC_METRO_SNAP_DISABLE: 484 case IDC_METRO_SNAP_DISABLE:
491 browser_->SetMetroSnapMode(false); 485 browser_->SetMetroSnapMode(false);
492 break; 486 break;
493 case IDC_WIN8_DESKTOP_RESTART: 487 case IDC_WIN_DESKTOP_RESTART:
494 if (!VerifyMetroSwitchForApps(window()->GetNativeWindow(), id)) 488 if (!VerifyASHSwitchForApps(window()->GetNativeWindow(), id))
495 break; 489 break;
496 490
497 chrome::AttemptRestartToDesktopMode(); 491 chrome::AttemptRestartToDesktopMode();
498 content::RecordAction(base::UserMetricsAction("Win8DesktopRestart")); 492 if (base::win::GetVersion() >= base::win::VERSION_WIN8) {
493 content::RecordAction(base::UserMetricsAction("Win8DesktopRestart"));
494 } else {
495 content::RecordAction(base::UserMetricsAction("Win7DesktopRestart"));
cpu_(ooo_6.6-7.5) 2014/08/22 21:47:11 is there an xml file you need to edit to have this
ananta 2014/08/22 22:17:53 Will look into that.
496 }
499 break; 497 break;
500 case IDC_WIN8_METRO_RESTART: 498 case IDC_WIN8_METRO_RESTART:
501 if (!VerifyMetroSwitchForApps(window()->GetNativeWindow(), id)) 499 case IDC_WIN_ASH_RESTART:
500 if (!VerifyASHSwitchForApps(window()->GetNativeWindow(), id))
502 break; 501 break;
503 502 if (base::win::GetVersion() >= base::win::VERSION_WIN8) {
504 // SwitchToMetroUIHandler deletes itself. 503 // SwitchToMetroUIHandler deletes itself.
505 new SwitchToMetroUIHandler; 504 new SwitchToMetroUIHandler;
506 content::RecordAction(base::UserMetricsAction("Win8MetroRestart")); 505 content::RecordAction(base::UserMetricsAction("Win8MetroRestart"));
506 } else {
507 content::RecordAction(base::UserMetricsAction("Win7ASHRestart"));
508 chrome::AttemptRestartToMetroMode();
509 }
507 break; 510 break;
508 #endif 511 #endif
509 512
510 #if defined(OS_MACOSX) 513 #if defined(OS_MACOSX)
511 case IDC_PRESENTATION_MODE: 514 case IDC_PRESENTATION_MODE:
512 chrome::ToggleFullscreenMode(browser_); 515 chrome::ToggleFullscreenMode(browser_);
513 break; 516 break;
514 #endif 517 #endif
515 case IDC_EXIT: 518 case IDC_EXIT:
516 Exit(); 519 Exit();
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after
878 command_updater_.UpdateCommandEnabled(IDC_CLOSE_TAB, true); 881 command_updater_.UpdateCommandEnabled(IDC_CLOSE_TAB, true);
879 command_updater_.UpdateCommandEnabled(IDC_DUPLICATE_TAB, true); 882 command_updater_.UpdateCommandEnabled(IDC_DUPLICATE_TAB, true);
880 UpdateTabRestoreCommandState(); 883 UpdateTabRestoreCommandState();
881 #if defined(OS_WIN) && defined(USE_ASH) 884 #if defined(OS_WIN) && defined(USE_ASH)
882 if (browser_->host_desktop_type() != chrome::HOST_DESKTOP_TYPE_ASH) 885 if (browser_->host_desktop_type() != chrome::HOST_DESKTOP_TYPE_ASH)
883 command_updater_.UpdateCommandEnabled(IDC_EXIT, true); 886 command_updater_.UpdateCommandEnabled(IDC_EXIT, true);
884 #else 887 #else
885 command_updater_.UpdateCommandEnabled(IDC_EXIT, true); 888 command_updater_.UpdateCommandEnabled(IDC_EXIT, true);
886 #endif 889 #endif
887 command_updater_.UpdateCommandEnabled(IDC_DEBUG_FRAME_TOGGLE, true); 890 command_updater_.UpdateCommandEnabled(IDC_DEBUG_FRAME_TOGGLE, true);
888 #if defined(OS_WIN) && defined(USE_ASH) && !defined(NDEBUG)
889 if (base::win::GetVersion() < base::win::VERSION_WIN8 &&
890 chrome::HOST_DESKTOP_TYPE_NATIVE != chrome::HOST_DESKTOP_TYPE_ASH)
891 command_updater_.UpdateCommandEnabled(IDC_TOGGLE_ASH_DESKTOP, true);
892 #endif
893 #if defined(USE_ASH) 891 #if defined(USE_ASH)
894 command_updater_.UpdateCommandEnabled(IDC_MINIMIZE_WINDOW, true); 892 command_updater_.UpdateCommandEnabled(IDC_MINIMIZE_WINDOW, true);
895 #endif 893 #endif
896 #if defined(OS_CHROMEOS) 894 #if defined(OS_CHROMEOS)
897 command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_2, true); 895 command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_2, true);
898 command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_3, true); 896 command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_3, true);
899 #endif 897 #endif
900 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) 898 #if defined(OS_LINUX) && !defined(OS_CHROMEOS)
901 command_updater_.UpdateCommandEnabled(IDC_USE_SYSTEM_TITLE_BAR, true); 899 command_updater_.UpdateCommandEnabled(IDC_USE_SYSTEM_TITLE_BAR, true);
902 #endif 900 #endif
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
995 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_3, normal_window); 993 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_3, normal_window);
996 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_4, normal_window); 994 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_4, normal_window);
997 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_5, normal_window); 995 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_5, normal_window);
998 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_6, normal_window); 996 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_6, normal_window);
999 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_7, normal_window); 997 command_updater_.UpdateCommandEnabled(IDC_SELECT_TAB_7, normal_window);
1000 command_updater_.UpdateCommandEnabled(IDC_SELECT_LAST_TAB, normal_window); 998 command_updater_.UpdateCommandEnabled(IDC_SELECT_LAST_TAB, normal_window);
1001 #if defined(OS_WIN) 999 #if defined(OS_WIN)
1002 bool metro = browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH; 1000 bool metro = browser_->host_desktop_type() == chrome::HOST_DESKTOP_TYPE_ASH;
1003 command_updater_.UpdateCommandEnabled(IDC_METRO_SNAP_ENABLE, metro); 1001 command_updater_.UpdateCommandEnabled(IDC_METRO_SNAP_ENABLE, metro);
1004 command_updater_.UpdateCommandEnabled(IDC_METRO_SNAP_DISABLE, metro); 1002 command_updater_.UpdateCommandEnabled(IDC_METRO_SNAP_DISABLE, metro);
1005 int restart_mode = metro ? IDC_WIN8_DESKTOP_RESTART : IDC_WIN8_METRO_RESTART; 1003 int restart_mode = metro ? IDC_WIN_DESKTOP_RESTART :
1004 (base::win::GetVersion() >= base::win::VERSION_WIN8 ?
1005 IDC_WIN8_METRO_RESTART : IDC_WIN_ASH_RESTART);
1006 command_updater_.UpdateCommandEnabled(restart_mode, normal_window); 1006 command_updater_.UpdateCommandEnabled(restart_mode, normal_window);
1007 #endif 1007 #endif
1008 1008
1009 // These are always enabled; the menu determines their menu item visibility. 1009 // These are always enabled; the menu determines their menu item visibility.
1010 command_updater_.UpdateCommandEnabled(IDC_UPGRADE_DIALOG, true); 1010 command_updater_.UpdateCommandEnabled(IDC_UPGRADE_DIALOG, true);
1011 command_updater_.UpdateCommandEnabled(IDC_VIEW_INCOMPATIBILITIES, true); 1011 command_updater_.UpdateCommandEnabled(IDC_VIEW_INCOMPATIBILITIES, true);
1012 1012
1013 // Toggle speech input 1013 // Toggle speech input
1014 command_updater_.UpdateCommandEnabled(IDC_TOGGLE_SPEECH_INPUT, true); 1014 command_updater_.UpdateCommandEnabled(IDC_TOGGLE_SPEECH_INPUT, true);
1015 1015
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after
1355 1355
1356 BrowserWindow* BrowserCommandController::window() { 1356 BrowserWindow* BrowserCommandController::window() {
1357 return browser_->window(); 1357 return browser_->window();
1358 } 1358 }
1359 1359
1360 Profile* BrowserCommandController::profile() { 1360 Profile* BrowserCommandController::profile() {
1361 return browser_->profile(); 1361 return browser_->profile();
1362 } 1362 }
1363 1363
1364 } // namespace chrome 1364 } // namespace chrome
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698