OLD | NEW |
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 "ui/base/keycodes/keyboard_code_conversion_x.h" | 5 #include "ui/base/keycodes/keyboard_code_conversion_x.h" |
6 | 6 |
7 #define XK_3270 // for XK_3270_BackTab | 7 #define XK_3270 // for XK_3270_BackTab |
8 #include <X11/keysym.h> | 8 #include <X11/keysym.h> |
9 #include <X11/Xlib.h> | 9 #include <X11/Xlib.h> |
10 #include <X11/Xutil.h> | 10 #include <X11/Xutil.h> |
(...skipping 321 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
332 return static_cast<KeyboardCode>(VKEY_F1 + (keysym - XK_F1)); | 332 return static_cast<KeyboardCode>(VKEY_F1 + (keysym - XK_F1)); |
333 case XK_KP_F1: | 333 case XK_KP_F1: |
334 case XK_KP_F2: | 334 case XK_KP_F2: |
335 case XK_KP_F3: | 335 case XK_KP_F3: |
336 case XK_KP_F4: | 336 case XK_KP_F4: |
337 return static_cast<KeyboardCode>(VKEY_F1 + (keysym - XK_KP_F1)); | 337 return static_cast<KeyboardCode>(VKEY_F1 + (keysym - XK_KP_F1)); |
338 | 338 |
339 case XK_guillemotleft: | 339 case XK_guillemotleft: |
340 case XK_guillemotright: | 340 case XK_guillemotright: |
341 case XK_degree: | 341 case XK_degree: |
| 342 // In the case of canadian multilingual keyboard layout, VKEY_OEM_102 is |
| 343 // assigned to ugrave key. |
| 344 case XK_ugrave: |
| 345 case XK_Ugrave: |
342 return VKEY_OEM_102; // international backslash key in 102 keyboard. | 346 return VKEY_OEM_102; // international backslash key in 102 keyboard. |
343 | 347 |
344 // When evdev is in use, /usr/share/X11/xkb/symbols/inet maps F13-18 keys | 348 // When evdev is in use, /usr/share/X11/xkb/symbols/inet maps F13-18 keys |
345 // to the special XF86XK symbols to support Microsoft Ergonomic keyboards: | 349 // to the special XF86XK symbols to support Microsoft Ergonomic keyboards: |
346 // https://bugs.freedesktop.org/show_bug.cgi?id=5783 | 350 // https://bugs.freedesktop.org/show_bug.cgi?id=5783 |
347 // In Chrome, we map these X key symbols back to F13-18 since we don't have | 351 // In Chrome, we map these X key symbols back to F13-18 since we don't have |
348 // VKEYs for these XF86XK symbols. | 352 // VKEYs for these XF86XK symbols. |
349 case XF86XK_Tools: | 353 case XF86XK_Tools: |
350 return VKEY_F13; | 354 return VKEY_F13; |
351 case XF86XK_Launch5: | 355 case XF86XK_Launch5: |
(...skipping 430 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
782 case VKEY_KBD_BRIGHTNESS_UP: | 786 case VKEY_KBD_BRIGHTNESS_UP: |
783 return XF86XK_KbdBrightnessUp; | 787 return XF86XK_KbdBrightnessUp; |
784 | 788 |
785 default: | 789 default: |
786 LOG(WARNING) << "Unknown keycode:" << keycode; | 790 LOG(WARNING) << "Unknown keycode:" << keycode; |
787 return 0; | 791 return 0; |
788 } | 792 } |
789 } | 793 } |
790 | 794 |
791 } // namespace ui | 795 } // namespace ui |
OLD | NEW |