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

Unified Diff: ash/common/accelerators/accelerator_controller.cc

Issue 2192613002: Moves NewWindowDelegate to ash/common (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: order Created 4 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « ash/accelerators/accelerator_controller_delegate_aura.cc ('k') | ash/common/new_window_delegate.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ash/common/accelerators/accelerator_controller.cc
diff --git a/ash/common/accelerators/accelerator_controller.cc b/ash/common/accelerators/accelerator_controller.cc
index b8be032df449ec8cef9ed43bcad19218c0c2f37f..28afb1f0e9f13623d6f094ba1472d50e2387f34f 100644
--- a/ash/common/accelerators/accelerator_controller.cc
+++ b/ash/common/accelerators/accelerator_controller.cc
@@ -13,6 +13,7 @@
#include "ash/common/ime_control_delegate.h"
#include "ash/common/media_delegate.h"
#include "ash/common/multi_profile_uma.h"
+#include "ash/common/new_window_delegate.h"
#include "ash/common/session/session_state_delegate.h"
#include "ash/common/shell_delegate.h"
#include "ash/common/system/brightness_control_delegate.h"
@@ -105,6 +106,26 @@ void HandleMediaPrevTrack() {
WmShell::Get()->media_delegate()->HandleMediaPrevTrack();
}
+bool CanHandleNewIncognitoWindow() {
+ return WmShell::Get()->delegate()->IsIncognitoAllowed();
+}
+
+void HandleNewIncognitoWindow() {
+ base::RecordAction(UserMetricsAction("Accel_New_Incognito_Window"));
+ WmShell::Get()->new_window_delegate()->NewWindow(true /* is_incognito */);
+}
+
+void HandleNewTab(const ui::Accelerator& accelerator) {
+ if (accelerator.key_code() == ui::VKEY_T)
+ base::RecordAction(UserMetricsAction("Accel_NewTab_T"));
+ WmShell::Get()->new_window_delegate()->NewTab();
+}
+
+void HandleNewWindow() {
+ base::RecordAction(UserMetricsAction("Accel_New_Window"));
+ WmShell::Get()->new_window_delegate()->NewWindow(false /* is_incognito */);
+}
+
bool CanHandleNextIme(ImeControlDelegate* ime_control_delegate) {
return ime_control_delegate && ime_control_delegate->CanCycleIme();
}
@@ -134,6 +155,11 @@ void HandleNextIme(ImeControlDelegate* ime_control_delegate) {
ime_control_delegate->HandleNextIme();
}
+void HandleOpenFeedbackPage() {
+ base::RecordAction(UserMetricsAction("Accel_Open_Feedback_Page"));
+ WmShell::Get()->new_window_delegate()->OpenFeedbackPage();
+}
+
bool CanHandlePreviousIme(ImeControlDelegate* ime_control_delegate) {
return ime_control_delegate && ime_control_delegate->CanCycleIme();
}
@@ -146,6 +172,21 @@ void HandlePreviousIme(ImeControlDelegate* ime_control_delegate,
// Else: consume the Ctrl+Space ET_KEY_RELEASED event but do not do anything.
}
+void HandleRestoreTab() {
+ base::RecordAction(UserMetricsAction("Accel_Restore_Tab"));
+ WmShell::Get()->new_window_delegate()->RestoreTab();
+}
+
+void HandleShowKeyboardOverlay() {
+ base::RecordAction(UserMetricsAction("Accel_Show_Keyboard_Overlay"));
+ WmShell::Get()->new_window_delegate()->ShowKeyboardOverlay();
+}
+
+void HandleShowTaskManager() {
+ base::RecordAction(UserMetricsAction("Accel_Show_Task_Manager"));
+ WmShell::Get()->new_window_delegate()->ShowTaskManager();
+}
+
bool CanHandleSwitchIme(ImeControlDelegate* ime_control_delegate,
const ui::Accelerator& accelerator) {
return ime_control_delegate &&
@@ -211,6 +252,12 @@ void HandlePositionCenter() {
}
#if defined(OS_CHROMEOS)
+void HandleCrosh() {
+ base::RecordAction(UserMetricsAction("Accel_Open_Crosh"));
+
+ WmShell::Get()->new_window_delegate()->OpenCrosh();
+}
+
bool CanHandleDisableCapsLock(const ui::Accelerator& previous_accelerator) {
ui::KeyboardCode previous_key_code = previous_accelerator.key_code();
if (previous_accelerator.type() == ui::ET_KEY_RELEASED ||
@@ -235,6 +282,16 @@ void HandleDisableCapsLock() {
ime->GetImeKeyboard()->SetCapsLockEnabled(false);
}
+void HandleFileManager() {
+ base::RecordAction(UserMetricsAction("Accel_Open_File_Manager"));
+
+ WmShell::Get()->new_window_delegate()->OpenFileManager();
+}
+
+void HandleGetHelp() {
+ WmShell::Get()->new_window_delegate()->OpenGetHelp();
+}
+
bool CanHandleLock() {
return WmShell::Get()->GetSessionStateDelegate()->CanLockScreen();
}
@@ -568,6 +625,8 @@ bool AcceleratorController::CanPerformAction(
case DEBUG_PRINT_VIEW_HIERARCHY:
case DEBUG_PRINT_WINDOW_HIERARCHY:
return debug::DebugAcceleratorsEnabled();
+ case NEW_INCOGNITO_WINDOW:
+ return CanHandleNewIncognitoWindow();
case NEXT_IME:
return CanHandleNextIme(ime_control_delegate_.get());
case PREVIOUS_IME:
@@ -603,7 +662,13 @@ bool AcceleratorController::CanPerformAction(
case MEDIA_NEXT_TRACK:
case MEDIA_PLAY_PAUSE:
case MEDIA_PREV_TRACK:
+ case NEW_TAB:
+ case NEW_WINDOW:
+ case OPEN_FEEDBACK_PAGE:
case PRINT_UI_HIERARCHIES:
+ case RESTORE_TAB:
+ case SHOW_KEYBOARD_OVERLAY:
+ case SHOW_TASK_MANAGER:
case TOGGLE_FULLSCREEN:
case TOGGLE_MAXIMIZED:
case TOGGLE_OVERVIEW:
@@ -613,6 +678,9 @@ bool AcceleratorController::CanPerformAction(
case BRIGHTNESS_UP:
case KEYBOARD_BRIGHTNESS_DOWN:
case KEYBOARD_BRIGHTNESS_UP:
+ case OPEN_CROSH:
+ case OPEN_FILE_MANAGER:
+ case OPEN_GET_HELP:
case SUSPEND:
case TOGGLE_SPOKEN_FEEDBACK:
case TOGGLE_WIFI:
@@ -674,15 +742,36 @@ void AcceleratorController::PerformAction(AcceleratorAction action,
case MEDIA_PREV_TRACK:
HandleMediaPrevTrack();
break;
+ case NEW_INCOGNITO_WINDOW:
+ HandleNewIncognitoWindow();
+ break;
+ case NEW_TAB:
+ HandleNewTab(accelerator);
+ break;
+ case NEW_WINDOW:
+ HandleNewWindow();
+ break;
case NEXT_IME:
HandleNextIme(ime_control_delegate_.get());
break;
+ case OPEN_FEEDBACK_PAGE:
+ HandleOpenFeedbackPage();
+ break;
case PREVIOUS_IME:
HandlePreviousIme(ime_control_delegate_.get(), accelerator);
break;
case PRINT_UI_HIERARCHIES:
debug::PrintUIHierarchies();
break;
+ case RESTORE_TAB:
+ HandleRestoreTab();
+ break;
+ case SHOW_KEYBOARD_OVERLAY:
+ HandleShowKeyboardOverlay();
+ break;
+ case SHOW_TASK_MANAGER:
+ HandleShowTaskManager();
+ break;
case SWITCH_IME:
HandleSwitchIme(ime_control_delegate_.get(), accelerator);
break;
@@ -746,6 +835,15 @@ void AcceleratorController::PerformAction(AcceleratorAction action,
case LOCK_SCREEN:
HandleLock();
break;
+ case OPEN_CROSH:
+ HandleCrosh();
+ break;
+ case OPEN_FILE_MANAGER:
+ HandleFileManager();
+ break;
+ case OPEN_GET_HELP:
+ HandleGetHelp();
+ break;
case SUSPEND:
HandleSuspend();
break;
« no previous file with comments | « ash/accelerators/accelerator_controller_delegate_aura.cc ('k') | ash/common/new_window_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698