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

Side by Side Diff: ash/accelerators/accelerator_controller.cc

Issue 668573002: Return false in AcceleratorController::Process() if an accelerator has no effect (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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
« no previous file with comments | « no previous file | no next file » | 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) 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 "ash/accelerators/accelerator_controller.h" 5 #include "ash/accelerators/accelerator_controller.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <cmath> 8 #include <cmath>
9 #include <string> 9 #include <string>
10 10
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 float scale = 173 float scale =
174 ash::Shell::GetInstance()->magnification_controller()->GetScale(); 174 ash::Shell::GetInstance()->magnification_controller()->GetScale();
175 // Calculate rounded logarithm (base kMagnificationScaleFactor) of scale. 175 // Calculate rounded logarithm (base kMagnificationScaleFactor) of scale.
176 int scale_index = 176 int scale_index =
177 std::floor(std::log(scale) / std::log(kMagnificationScaleFactor) + 0.5); 177 std::floor(std::log(scale) / std::log(kMagnificationScaleFactor) + 0.5);
178 178
179 int new_scale_index = std::max(0, std::min(8, scale_index + delta_index)); 179 int new_scale_index = std::max(0, std::min(8, scale_index + delta_index));
180 180
181 ash::Shell::GetInstance()->magnification_controller()-> 181 ash::Shell::GetInstance()->magnification_controller()->
182 SetScale(std::pow(kMagnificationScaleFactor, new_scale_index), true); 182 SetScale(std::pow(kMagnificationScaleFactor, new_scale_index), true);
183 return true;
183 } else if (ash::Shell::GetInstance()-> 184 } else if (ash::Shell::GetInstance()->
184 partial_magnification_controller()->is_enabled()) { 185 partial_magnification_controller()->is_enabled()) {
185 float scale = delta_index > 0 ? kDefaultPartialMagnifiedScale : 1; 186 float scale = delta_index > 0 ? kDefaultPartialMagnifiedScale : 1;
186 ash::Shell::GetInstance()->partial_magnification_controller()-> 187 ash::Shell::GetInstance()->partial_magnification_controller()->
187 SetScale(scale); 188 SetScale(scale);
189 return true;
188 } 190 }
189 191 return false;
190 return true;
191 } 192 }
192 193
193 bool HandleMediaNextTrack() { 194 bool HandleMediaNextTrack() {
194 Shell::GetInstance()->media_delegate()->HandleMediaNextTrack(); 195 Shell::GetInstance()->media_delegate()->HandleMediaNextTrack();
195 return true; 196 return true;
196 } 197 }
197 198
198 bool HandleMediaPlayPause() { 199 bool HandleMediaPlayPause() {
199 Shell::GetInstance()->media_delegate()->HandleMediaPlayPause(); 200 Shell::GetInstance()->media_delegate()->HandleMediaPlayPause();
200 return true; 201 return true;
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
349 } 350 }
350 351
351 bool HandleScaleReset() { 352 bool HandleScaleReset() {
352 DisplayManager* display_manager = Shell::GetInstance()->display_manager(); 353 DisplayManager* display_manager = Shell::GetInstance()->display_manager();
353 int64 display_id = display_manager->GetDisplayIdForUIScaling(); 354 int64 display_id = display_manager->GetDisplayIdForUIScaling();
354 if (display_id == gfx::Display::kInvalidDisplayID) 355 if (display_id == gfx::Display::kInvalidDisplayID)
355 return false; 356 return false;
356 357
357 base::RecordAction(UserMetricsAction("Accel_Scale_Ui_Reset")); 358 base::RecordAction(UserMetricsAction("Accel_Scale_Ui_Reset"));
358 359
359 display_manager->SetDisplayUIScale(display_id, 1.0f); 360 float ui_scale =
360 return true; 361 display_manager->GetDisplayInfo(display_id).configured_ui_scale();
362 if (ui_scale != 1.0f) {
363 display_manager->SetDisplayUIScale(display_id, 1.0f);
364 return true;
365 }
366 return false;
361 } 367 }
362 368
363 bool HandleScaleUI(bool up) { 369 bool HandleScaleUI(bool up) {
364 DisplayManager* display_manager = Shell::GetInstance()->display_manager(); 370 DisplayManager* display_manager = Shell::GetInstance()->display_manager();
365 int64 display_id = display_manager->GetDisplayIdForUIScaling(); 371 int64 display_id = display_manager->GetDisplayIdForUIScaling();
366 if (display_id == gfx::Display::kInvalidDisplayID) 372 if (display_id == gfx::Display::kInvalidDisplayID)
367 return false; 373 return false;
368 374
369 if (up) { 375 if (up) {
370 base::RecordAction(UserMetricsAction("Accel_Scale_Ui_Up")); 376 base::RecordAction(UserMetricsAction("Accel_Scale_Ui_Up"));
(...skipping 15 matching lines...) Expand all
386 } 392 }
387 #endif 393 #endif
388 394
389 bool HandleShowKeyboardOverlay() { 395 bool HandleShowKeyboardOverlay() {
390 base::RecordAction(UserMetricsAction("Accel_Show_Keyboard_Overlay")); 396 base::RecordAction(UserMetricsAction("Accel_Show_Keyboard_Overlay"));
391 ash::Shell::GetInstance()->new_window_delegate()->ShowKeyboardOverlay(); 397 ash::Shell::GetInstance()->new_window_delegate()->ShowKeyboardOverlay();
392 398
393 return true; 399 return true;
394 } 400 }
395 401
396 void HandleShowMessageCenterBubble() { 402 bool HandleShowMessageCenterBubble() {
397 base::RecordAction(UserMetricsAction("Accel_Show_Message_Center_Bubble")); 403 base::RecordAction(UserMetricsAction("Accel_Show_Message_Center_Bubble"));
398 RootWindowController* controller = 404 RootWindowController* controller =
399 RootWindowController::ForTargetRootWindow(); 405 RootWindowController::ForTargetRootWindow();
400 StatusAreaWidget* status_area_widget = 406 StatusAreaWidget* status_area_widget =
401 controller->shelf()->status_area_widget(); 407 controller->shelf()->status_area_widget();
402 if (status_area_widget) { 408 if (status_area_widget) {
403 WebNotificationTray* notification_tray = 409 WebNotificationTray* notification_tray =
404 status_area_widget->web_notification_tray(); 410 status_area_widget->web_notification_tray();
405 if (notification_tray->visible()) 411 if (notification_tray->visible()) {
406 notification_tray->ShowMessageCenterBubble(); 412 notification_tray->ShowMessageCenterBubble();
413 return true;
414 }
407 } 415 }
416 return false;
408 } 417 }
409 418
410 bool HandleShowSystemTrayBubble() { 419 bool HandleShowSystemTrayBubble() {
411 base::RecordAction(UserMetricsAction("Accel_Show_System_Tray_Bubble")); 420 base::RecordAction(UserMetricsAction("Accel_Show_System_Tray_Bubble"));
412 RootWindowController* controller = 421 RootWindowController* controller =
413 RootWindowController::ForTargetRootWindow(); 422 RootWindowController::ForTargetRootWindow();
414 if (!controller->GetSystemTray()->HasSystemBubble()) { 423 if (!controller->GetSystemTray()->HasSystemBubble()) {
415 controller->GetSystemTray()->ShowDefaultView(BUBBLE_CREATE_NEW); 424 controller->GetSystemTray()->ShowDefaultView(BUBBLE_CREATE_NEW);
416 return true; 425 return true;
417 } 426 }
(...skipping 587 matching lines...) Expand 10 before | Expand all | Expand 10 after
1005 return HandleFocusShelf(); 1014 return HandleFocusShelf();
1006 case FOCUS_NEXT_PANE: 1015 case FOCUS_NEXT_PANE:
1007 return HandleRotatePaneFocus(Shell::FORWARD); 1016 return HandleRotatePaneFocus(Shell::FORWARD);
1008 case FOCUS_PREVIOUS_PANE: 1017 case FOCUS_PREVIOUS_PANE:
1009 return HandleRotatePaneFocus(Shell::BACKWARD); 1018 return HandleRotatePaneFocus(Shell::BACKWARD);
1010 case SHOW_KEYBOARD_OVERLAY: 1019 case SHOW_KEYBOARD_OVERLAY:
1011 return HandleShowKeyboardOverlay(); 1020 return HandleShowKeyboardOverlay();
1012 case SHOW_SYSTEM_TRAY_BUBBLE: 1021 case SHOW_SYSTEM_TRAY_BUBBLE:
1013 return HandleShowSystemTrayBubble(); 1022 return HandleShowSystemTrayBubble();
1014 case SHOW_MESSAGE_CENTER_BUBBLE: 1023 case SHOW_MESSAGE_CENTER_BUBBLE:
1015 HandleShowMessageCenterBubble(); 1024 return HandleShowMessageCenterBubble();
1016 break;
1017 case SHOW_TASK_MANAGER: 1025 case SHOW_TASK_MANAGER:
1018 return HandleShowTaskManager(); 1026 return HandleShowTaskManager();
1019 case NEXT_IME: 1027 case NEXT_IME:
1020 HandleNextIme( 1028 HandleNextIme(
1021 ime_control_delegate_.get(), previous_event_type, previous_key_code); 1029 ime_control_delegate_.get(), previous_event_type, previous_key_code);
1022 // NEXT_IME is bound to Alt-Shift key up event. To be consistent with 1030 // NEXT_IME is bound to Alt-Shift key up event. To be consistent with
1023 // Windows behavior, do not consume the key event here. 1031 // Windows behavior, do not consume the key event here.
1024 return false; 1032 return false;
1025 case PREVIOUS_IME: 1033 case PREVIOUS_IME:
1026 return HandlePreviousIme(ime_control_delegate_.get(), accelerator); 1034 return HandlePreviousIme(ime_control_delegate_.get(), accelerator);
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after
1212 keyboard_brightness_control_delegate) { 1220 keyboard_brightness_control_delegate) {
1213 keyboard_brightness_control_delegate_ = 1221 keyboard_brightness_control_delegate_ =
1214 keyboard_brightness_control_delegate.Pass(); 1222 keyboard_brightness_control_delegate.Pass();
1215 } 1223 }
1216 1224
1217 bool AcceleratorController::CanHandleAccelerators() const { 1225 bool AcceleratorController::CanHandleAccelerators() const {
1218 return true; 1226 return true;
1219 } 1227 }
1220 1228
1221 } // namespace ash 1229 } // namespace ash
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698