| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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/chromeos/system_key_event_listener.h" | 5 #include "chrome/browser/chromeos/system_key_event_listener.h" |
| 6 | 6 |
| 7 #include <gdk/gdkx.h> | 7 #include <gdk/gdkx.h> |
| 8 #include <X11/XF86keysym.h> | 8 #include <X11/XF86keysym.h> |
| 9 | 9 |
| 10 #include "chrome/browser/chromeos/audio_handler.h" | 10 #include "chrome/browser/chromeos/audio_handler.h" |
| 11 #include "chrome/browser/chromeos/brightness_bubble.h" | 11 #include "chrome/browser/chromeos/brightness_bubble.h" |
| 12 #include "chrome/browser/chromeos/volume_bubble.h" | 12 #include "chrome/browser/chromeos/volume_bubble.h" |
| 13 #include "chrome/browser/metrics/user_metrics.h" |
| 13 #include "third_party/cros/chromeos_wm_ipc_enums.h" | 14 #include "third_party/cros/chromeos_wm_ipc_enums.h" |
| 14 | 15 |
| 15 namespace chromeos { | 16 namespace chromeos { |
| 16 | 17 |
| 17 namespace { | 18 namespace { |
| 18 | 19 |
| 19 const double kStepPercentage = 4.0; | 20 const double kStepPercentage = 4.0; |
| 20 | 21 |
| 21 } // namespace | 22 } // namespace |
| 22 | 23 |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 82 SystemKeyEventListener* listener = static_cast<SystemKeyEventListener*>(data); | 83 SystemKeyEventListener* listener = static_cast<SystemKeyEventListener*>(data); |
| 83 XEvent* xevent = static_cast<XEvent*>(gxevent); | 84 XEvent* xevent = static_cast<XEvent*>(gxevent); |
| 84 | 85 |
| 85 if (xevent->type == KeyPress) { | 86 if (xevent->type == KeyPress) { |
| 86 int32 keycode = xevent->xkey.keycode; | 87 int32 keycode = xevent->xkey.keycode; |
| 87 if (keycode) { | 88 if (keycode) { |
| 88 // Only doing non-Alt/Shift/Ctrl modified keys | 89 // Only doing non-Alt/Shift/Ctrl modified keys |
| 89 if (!(xevent->xkey.state & (Mod1Mask | ShiftMask | ControlMask))) { | 90 if (!(xevent->xkey.state & (Mod1Mask | ShiftMask | ControlMask))) { |
| 90 if ((keycode == listener->key_f8_) || | 91 if ((keycode == listener->key_f8_) || |
| 91 (keycode == listener->key_volume_mute_)) { | 92 (keycode == listener->key_volume_mute_)) { |
| 93 if (keycode == listener->key_f8_) |
| 94 UserMetrics::RecordAction(UserMetricsAction("Accel_VolumeMute_F8")); |
| 92 listener->OnVolumeMute(); | 95 listener->OnVolumeMute(); |
| 93 return GDK_FILTER_REMOVE; | 96 return GDK_FILTER_REMOVE; |
| 94 } else if ((keycode == listener->key_f9_) || | 97 } else if ((keycode == listener->key_f9_) || |
| 95 keycode == listener->key_volume_down_) { | 98 keycode == listener->key_volume_down_) { |
| 99 if (keycode == listener->key_f9_) |
| 100 UserMetrics::RecordAction(UserMetricsAction("Accel_VolumeDown_F9")); |
| 96 listener->OnVolumeDown(); | 101 listener->OnVolumeDown(); |
| 97 return GDK_FILTER_REMOVE; | 102 return GDK_FILTER_REMOVE; |
| 98 } else if ((keycode == listener->key_f10_) || | 103 } else if ((keycode == listener->key_f10_) || |
| 99 (keycode == listener->key_volume_up_)) { | 104 (keycode == listener->key_volume_up_)) { |
| 105 if (keycode == listener->key_f10_) |
| 106 UserMetrics::RecordAction(UserMetricsAction("Accel_VolumeUp_F10")); |
| 100 listener->OnVolumeUp(); | 107 listener->OnVolumeUp(); |
| 101 return GDK_FILTER_REMOVE; | 108 return GDK_FILTER_REMOVE; |
| 102 } | 109 } |
| 103 } | 110 } |
| 104 } | 111 } |
| 105 } | 112 } |
| 106 return GDK_FILTER_CONTINUE; | 113 return GDK_FILTER_CONTINUE; |
| 107 } | 114 } |
| 108 | 115 |
| 109 void SystemKeyEventListener::GrabKey(int32 key, uint32 mask) { | 116 void SystemKeyEventListener::GrabKey(int32 key, uint32 mask) { |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 150 if (audio_handler_->IsMute()) | 157 if (audio_handler_->IsMute()) |
| 151 audio_handler_->SetMute(false); | 158 audio_handler_->SetMute(false); |
| 152 else | 159 else |
| 153 audio_handler_->AdjustVolumeByPercent(kStepPercentage); | 160 audio_handler_->AdjustVolumeByPercent(kStepPercentage); |
| 154 VolumeBubble::GetInstance()->ShowBubble( | 161 VolumeBubble::GetInstance()->ShowBubble( |
| 155 audio_handler_->GetVolumePercent()); | 162 audio_handler_->GetVolumePercent()); |
| 156 BrightnessBubble::GetInstance()->HideBubble(); | 163 BrightnessBubble::GetInstance()->HideBubble(); |
| 157 } | 164 } |
| 158 | 165 |
| 159 } // namespace chromeos | 166 } // namespace chromeos |
| OLD | NEW |