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

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

Issue 10909043: Cancel drag if display configuration changes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 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
« no previous file with comments | « no previous file | ash/accelerators/accelerator_table.h » ('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) 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 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 #include "ui/compositor/debug_utils.h" 46 #include "ui/compositor/debug_utils.h"
47 #include "ui/compositor/layer.h" 47 #include "ui/compositor/layer.h"
48 #include "ui/compositor/layer_animation_sequence.h" 48 #include "ui/compositor/layer_animation_sequence.h"
49 #include "ui/compositor/layer_animator.h" 49 #include "ui/compositor/layer_animator.h"
50 #include "ui/oak/oak.h" 50 #include "ui/oak/oak.h"
51 #include "ui/views/debug_utils.h" 51 #include "ui/views/debug_utils.h"
52 #include "ui/views/widget/widget.h" 52 #include "ui/views/widget/widget.h"
53 53
54 #if defined(OS_CHROMEOS) 54 #if defined(OS_CHROMEOS)
55 #include "ash/display/output_configurator_animation.h" 55 #include "ash/display/output_configurator_animation.h"
56 #include "base/chromeos/chromeos_version.h"
56 #include "chromeos/display/output_configurator.h" 57 #include "chromeos/display/output_configurator.h"
57 #endif // defined(OS_CHROMEOS) 58 #endif // defined(OS_CHROMEOS)
58 59
59 namespace ash { 60 namespace ash {
60 namespace { 61 namespace {
61 62
62 // Factor of magnification scale. For example, when this value is 1.189, scale 63 // Factor of magnification scale. For example, when this value is 1.189, scale
63 // value will be changed x1.000, x1.189, x1.414, x1.681, x2.000, ... 64 // value will be changed x1.000, x1.189, x1.414, x1.681, x2.000, ...
64 // Note: this value is 2.0 ^ (1 / 4). 65 // Note: this value is 2.0 ^ (1 / 4).
65 const float kMagnificationFactor = 1.18920712f; 66 const float kMagnificationFactor = 1.18920712f;
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 99
99 bool HandleCrosh() { 100 bool HandleCrosh() {
100 Shell::GetInstance()->delegate()->OpenCrosh(); 101 Shell::GetInstance()->delegate()->OpenCrosh();
101 return true; 102 return true;
102 } 103 }
103 104
104 bool HandleToggleSpokenFeedback() { 105 bool HandleToggleSpokenFeedback() {
105 Shell::GetInstance()->delegate()->ToggleSpokenFeedback(); 106 Shell::GetInstance()->delegate()->ToggleSpokenFeedback();
106 return true; 107 return true;
107 } 108 }
108 #endif 109 void HandleCycleDisplayMode() {
110 Shell* shell = Shell::GetInstance();
111 if (!base::chromeos::IsRunningOnChromeOS()) {
112 internal::MultiDisplayManager::CycleDisplay();
113 } else if (shell->output_configurator()->connected_output_count() > 1) {
114 internal::OutputConfiguratorAnimation* animation =
115 shell->output_configurator_animation();
116 animation->StartFadeOutAnimation(base::Bind(
117 base::IgnoreResult(&chromeos::OutputConfigurator::CycleDisplayMode),
118 base::Unretained(shell->output_configurator())));
119 }
120 }
121
122 #endif // defined(OS_CHROMEOS)
109 123
110 bool HandleExit() { 124 bool HandleExit() {
111 ShellDelegate* delegate = Shell::GetInstance()->delegate(); 125 ShellDelegate* delegate = Shell::GetInstance()->delegate();
112 if (!delegate) 126 if (!delegate)
113 return false; 127 return false;
114 delegate->Exit(); 128 delegate->Exit();
115 return true; 129 return true;
116 } 130 }
117 131
118 bool HandleNewTab() { 132 bool HandleNewTab() {
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 case OPEN_FILE_MANAGER_TAB: 447 case OPEN_FILE_MANAGER_TAB:
434 return HandleFileManager(false /* as_dialog */); 448 return HandleFileManager(false /* as_dialog */);
435 case OPEN_CROSH: 449 case OPEN_CROSH:
436 return HandleCrosh(); 450 return HandleCrosh();
437 case TOGGLE_SPOKEN_FEEDBACK: 451 case TOGGLE_SPOKEN_FEEDBACK:
438 return HandleToggleSpokenFeedback(); 452 return HandleToggleSpokenFeedback();
439 case TOGGLE_WIFI: 453 case TOGGLE_WIFI:
440 if (Shell::GetInstance()->tray_delegate()) 454 if (Shell::GetInstance()->tray_delegate())
441 Shell::GetInstance()->tray_delegate()->ToggleWifi(); 455 Shell::GetInstance()->tray_delegate()->ToggleWifi();
442 return true; 456 return true;
443 case CYCLE_DISPLAY_MODE: { 457 case CYCLE_DISPLAY_MODE:
444 Shell* shell = Shell::GetInstance(); 458 HandleCycleDisplayMode();
445 if (shell->output_configurator()->connected_output_count() > 1) { 459 return true;
446 internal::OutputConfiguratorAnimation* animation =
447 shell->output_configurator_animation();
448 animation->StartFadeOutAnimation(base::Bind(
449 base::IgnoreResult(&chromeos::OutputConfigurator::CycleDisplayMode),
450 base::Unretained(shell->output_configurator())));
451 return true;
452 }
453 return false;
454 }
455 #endif 460 #endif
456 case OPEN_FEEDBACK_PAGE: 461 case OPEN_FEEDBACK_PAGE:
457 ash::Shell::GetInstance()->delegate()->OpenFeedbackPage(); 462 ash::Shell::GetInstance()->delegate()->OpenFeedbackPage();
458 return true; 463 return true;
459 case EXIT: 464 case EXIT:
460 return HandleExit(); 465 return HandleExit();
461 case NEW_INCOGNITO_WINDOW: 466 case NEW_INCOGNITO_WINDOW:
462 return HandleNewWindow(true /* is_incognito */); 467 return HandleNewWindow(true /* is_incognito */);
463 case NEW_TAB: 468 case NEW_TAB:
464 if (key_code == ui::VKEY_T && shell->delegate()) 469 if (key_code == ui::VKEY_T && shell->delegate())
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
667 break; 672 break;
668 } 673 }
669 case ROTATE_WINDOWS: 674 case ROTATE_WINDOWS:
670 return HandleRotateWindows(); 675 return HandleRotateWindows();
671 case ROTATE_SCREEN: 676 case ROTATE_SCREEN:
672 return HandleRotateScreen(); 677 return HandleRotateScreen();
673 case TOGGLE_DESKTOP_BACKGROUND_MODE: 678 case TOGGLE_DESKTOP_BACKGROUND_MODE:
674 return HandleToggleDesktopBackgroundMode(); 679 return HandleToggleDesktopBackgroundMode();
675 case TOGGLE_ROOT_WINDOW_FULL_SCREEN: 680 case TOGGLE_ROOT_WINDOW_FULL_SCREEN:
676 return HandleToggleRootWindowFullScreen(); 681 return HandleToggleRootWindowFullScreen();
677 case DISPLAY_ADD_REMOVE:
678 internal::MultiDisplayManager::AddRemoveDisplay();
679 return true;
680 case DISPLAY_CYCLE:
681 internal::MultiDisplayManager::CycleDisplay();
682 return true;
683 case DISPLAY_TOGGLE_SCALE: 682 case DISPLAY_TOGGLE_SCALE:
684 internal::MultiDisplayManager::ToggleDisplayScale(); 683 internal::MultiDisplayManager::ToggleDisplayScale();
685 return true; 684 return true;
686 case MAGNIFY_SCREEN_ZOOM_IN: 685 case MAGNIFY_SCREEN_ZOOM_IN:
687 return HandleMagnifyScreen(1); 686 return HandleMagnifyScreen(1);
688 case MAGNIFY_SCREEN_ZOOM_OUT: 687 case MAGNIFY_SCREEN_ZOOM_OUT:
689 return HandleMagnifyScreen(-1); 688 return HandleMagnifyScreen(-1);
690 case MEDIA_NEXT_TRACK: 689 case MEDIA_NEXT_TRACK:
691 return HandleMediaNextTrack(); 690 return HandleMediaNextTrack();
692 case MEDIA_PLAY_PAUSE: 691 case MEDIA_PLAY_PAUSE:
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
787 accelerators_.insert( 786 accelerators_.insert(
788 std::make_pair(accelerator, accelerators[i].action)); 787 std::make_pair(accelerator, accelerators[i].action));
789 } 788 }
790 } 789 }
791 790
792 bool AcceleratorController::CanHandleAccelerators() const { 791 bool AcceleratorController::CanHandleAccelerators() const {
793 return true; 792 return true;
794 } 793 }
795 794
796 } // namespace ash 795 } // namespace ash
OLDNEW
« no previous file with comments | « no previous file | ash/accelerators/accelerator_table.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698