| Index: chrome/browser/chromeos/system_key_event_listener.cc
|
| diff --git a/chrome/browser/chromeos/system_key_event_listener.cc b/chrome/browser/chromeos/system_key_event_listener.cc
|
| index 999f5bb55a6176e9a2ec5086fa8ec799079d7ed0..74af30822d2a310956a49919a4026994a4e75e26 100644
|
| --- a/chrome/browser/chromeos/system_key_event_listener.cc
|
| +++ b/chrome/browser/chromeos/system_key_event_listener.cc
|
| @@ -84,18 +84,21 @@ GdkFilterReturn SystemKeyEventListener::GdkEventFilter(GdkXEvent* gxevent,
|
| if (xevent->type == KeyPress) {
|
| int32 keycode = xevent->xkey.keycode;
|
| if (keycode) {
|
| - if ((keycode == listener->key_f8_) ||
|
| - (keycode == listener->key_volume_mute_)) {
|
| - listener->OnVolumeMute();
|
| - return GDK_FILTER_REMOVE;
|
| - } else if ((keycode == listener->key_f9_) ||
|
| - keycode == listener->key_volume_down_) {
|
| - listener->OnVolumeDown();
|
| - return GDK_FILTER_REMOVE;
|
| - } else if ((keycode == listener->key_f10_) ||
|
| - (keycode == listener->key_volume_up_)) {
|
| - listener->OnVolumeUp();
|
| - return GDK_FILTER_REMOVE;
|
| + // Only doing non-Alt/Shift/Ctrl modified keys
|
| + if (!(xevent->xkey.state & (Mod1Mask | ShiftMask | ControlMask))) {
|
| + if ((keycode == listener->key_f8_) ||
|
| + (keycode == listener->key_volume_mute_)) {
|
| + listener->OnVolumeMute();
|
| + return GDK_FILTER_REMOVE;
|
| + } else if ((keycode == listener->key_f9_) ||
|
| + keycode == listener->key_volume_down_) {
|
| + listener->OnVolumeDown();
|
| + return GDK_FILTER_REMOVE;
|
| + } else if ((keycode == listener->key_f10_) ||
|
| + (keycode == listener->key_volume_up_)) {
|
| + listener->OnVolumeUp();
|
| + return GDK_FILTER_REMOVE;
|
| + }
|
| }
|
| }
|
| }
|
|
|