Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "ui/events/ozone/layout/xkb/xkb_keyboard_code_conversion.h" | |
| 6 | |
| 7 #include "ui/events/keycodes/dom3/dom_key.h" | |
| 8 #include "ui/events/ozone/layout/xkb/xkb_keysym.h" | |
| 9 | |
| 10 namespace ui { | |
| 11 | |
| 12 namespace { | |
| 13 | |
| 14 } // anonymous namespace | |
|
spang
2014/12/08 22:47:28
remove this
kpschoedel
2014/12/08 23:15:26
Oops, USE_X11 was in there.
| |
| 15 | |
| 16 DomKey XkbKeySymToDomKey(XkbKeySym keysym) { | |
| 17 switch (keysym) { | |
| 18 case XK_BackSpace: | |
| 19 return DomKey::BACKSPACE; | |
| 20 case XK_Tab: | |
| 21 case XK_KP_Tab: | |
| 22 case XK_ISO_Left_Tab: | |
| 23 return DomKey::TAB; | |
| 24 case XK_Clear: | |
| 25 case XK_KP_Begin: | |
| 26 case XF86XK_Clear: | |
| 27 return DomKey::CLEAR; | |
| 28 case XK_Return: | |
| 29 case XK_KP_Enter: | |
| 30 return DomKey::ENTER; | |
| 31 case XK_Linefeed: | |
| 32 return DomKey::ENTER; | |
| 33 case XK_Pause: | |
| 34 return DomKey::PAUSE; | |
| 35 case XK_Scroll_Lock: | |
| 36 return DomKey::SCROLL_LOCK; | |
| 37 case XK_Escape: | |
| 38 return DomKey::ESCAPE; | |
| 39 case XK_Multi_key: | |
| 40 return DomKey::COMPOSE; | |
| 41 case XK_Kanji: | |
| 42 return DomKey::KANJI_MODE; | |
| 43 case XK_Muhenkan: | |
| 44 return DomKey::NON_CONVERT; | |
| 45 case XK_Henkan_Mode: | |
| 46 return DomKey::CONVERT; | |
| 47 case XK_Romaji: | |
| 48 return DomKey::ROMAJI; | |
| 49 case XK_Hiragana: | |
| 50 return DomKey::HIRAGANA; | |
| 51 case XK_Katakana: | |
| 52 return DomKey::KATAKANA; | |
| 53 case XK_Hiragana_Katakana: | |
| 54 return DomKey::HIRAGANA_KATAKANA; | |
| 55 case XK_Zenkaku: | |
| 56 return DomKey::ZENKAKU; | |
| 57 case XK_Hankaku: | |
| 58 return DomKey::HANKAKU; | |
| 59 case XK_Zenkaku_Hankaku: | |
| 60 return DomKey::ZENKAKU_HANKAKU; | |
| 61 case XK_Kana_Lock: | |
| 62 return DomKey::KANA_MODE; | |
| 63 case XK_Eisu_Shift: | |
| 64 case XK_Eisu_toggle: | |
| 65 return DomKey::EISU; | |
| 66 case XK_Hangul: | |
| 67 return DomKey::HANGUL_MODE; | |
| 68 case XK_Hangul_Hanja: | |
| 69 return DomKey::HANJA_MODE; | |
| 70 case XK_Codeinput: | |
| 71 return DomKey::CODE_INPUT; | |
| 72 case XK_SingleCandidate: | |
| 73 return DomKey::SINGLE_CANDIDATE; | |
| 74 case XK_MultipleCandidate: | |
| 75 return DomKey::ALL_CANDIDATES; | |
| 76 case XK_PreviousCandidate: | |
| 77 return DomKey::PREVIOUS_CANDIDATE; | |
| 78 case XK_Home: | |
| 79 case XK_KP_Home: | |
| 80 return DomKey::HOME; | |
| 81 case XK_Left: | |
| 82 case XK_KP_Left: | |
| 83 return DomKey::ARROW_LEFT; | |
| 84 case XK_Up: | |
| 85 case XK_KP_Up: | |
| 86 return DomKey::ARROW_UP; | |
| 87 case XK_Right: | |
| 88 case XK_KP_Right: | |
| 89 return DomKey::ARROW_RIGHT; | |
| 90 case XK_Down: | |
| 91 case XK_KP_Down: | |
| 92 return DomKey::ARROW_DOWN; | |
| 93 case XK_Prior: | |
| 94 case XK_KP_Prior: | |
| 95 return DomKey::PAGE_UP; | |
| 96 case XK_Next: | |
| 97 case XK_KP_Next: | |
| 98 case XF86XK_ScrollDown: | |
| 99 return DomKey::PAGE_DOWN; | |
| 100 case XK_End: | |
| 101 case XK_KP_End: | |
| 102 case XF86XK_ScrollUp: | |
| 103 return DomKey::END; | |
| 104 case XK_Select: | |
| 105 return DomKey::SELECT; | |
| 106 case XK_Print: | |
| 107 return DomKey::PRINT; | |
| 108 case XK_Execute: | |
| 109 return DomKey::EXECUTE; | |
| 110 case XK_Insert: | |
| 111 case XK_KP_Insert: | |
| 112 return DomKey::INSERT; | |
| 113 case XK_Undo: | |
| 114 return DomKey::UNDO; | |
| 115 case XK_Redo: | |
| 116 return DomKey::REDO; | |
| 117 case XK_Menu: | |
| 118 return DomKey::CONTEXT_MENU; | |
| 119 case XK_Find: | |
| 120 return DomKey::FIND; | |
| 121 case XK_Cancel: | |
| 122 return DomKey::CANCEL; | |
| 123 case XK_Help: | |
| 124 return DomKey::HELP; | |
| 125 case XK_Break: | |
| 126 case XK_3270_Attn: | |
| 127 return DomKey::ATTN; | |
| 128 case XK_Mode_switch: | |
| 129 return DomKey::MODE_CHANGE; | |
| 130 case XK_Num_Lock: | |
| 131 return DomKey::NUM_LOCK; | |
| 132 case XK_F1: | |
| 133 case XK_KP_F1: | |
| 134 return DomKey::F1; | |
| 135 case XK_F2: | |
| 136 case XK_KP_F2: | |
| 137 return DomKey::F2; | |
| 138 case XK_F3: | |
| 139 case XK_KP_F3: | |
| 140 return DomKey::F3; | |
| 141 case XK_F4: | |
| 142 case XK_KP_F4: | |
| 143 return DomKey::F4; | |
| 144 case XK_F5: | |
| 145 return DomKey::F5; | |
| 146 case XK_F6: | |
| 147 return DomKey::F6; | |
| 148 case XK_F7: | |
| 149 return DomKey::F7; | |
| 150 case XK_F8: | |
| 151 return DomKey::F8; | |
| 152 case XK_F9: | |
| 153 return DomKey::F9; | |
| 154 case XK_F10: | |
| 155 return DomKey::F10; | |
| 156 case XK_F11: | |
| 157 return DomKey::F11; | |
| 158 case XK_F12: | |
| 159 return DomKey::F12; | |
| 160 case XK_F13: | |
| 161 return DomKey::F13; | |
| 162 case XK_F14: | |
| 163 return DomKey::F14; | |
| 164 case XK_F15: | |
| 165 return DomKey::F15; | |
| 166 case XK_F16: | |
| 167 return DomKey::F16; | |
| 168 case XK_F17: | |
| 169 return DomKey::F17; | |
| 170 case XK_F18: | |
| 171 return DomKey::F18; | |
| 172 case XK_F19: | |
| 173 return DomKey::F19; | |
| 174 case XK_F20: | |
| 175 return DomKey::F20; | |
| 176 case XK_F21: | |
| 177 return DomKey::F21; | |
| 178 case XK_F22: | |
| 179 return DomKey::F22; | |
| 180 case XK_F23: | |
| 181 return DomKey::F23; | |
| 182 case XK_F24: | |
| 183 return DomKey::F24; | |
| 184 case XK_Shift_L: | |
| 185 case XK_Shift_R: | |
| 186 return DomKey::SHIFT; | |
| 187 case XK_Control_L: | |
| 188 case XK_Control_R: | |
| 189 return DomKey::CONTROL; | |
| 190 case XK_Caps_Lock: | |
| 191 return DomKey::CAPS_LOCK; | |
| 192 case XK_Meta_L: | |
| 193 case XK_Meta_R: | |
| 194 return DomKey::META; | |
| 195 case XK_Alt_L: | |
| 196 case XK_Alt_R: | |
| 197 return DomKey::ALT; | |
| 198 case XK_Super_L: | |
| 199 case XK_Super_R: | |
| 200 return DomKey::OS; | |
| 201 case XK_Hyper_L: | |
| 202 case XK_Hyper_R: | |
| 203 return DomKey::HYPER; | |
| 204 case XK_Delete: | |
| 205 return DomKey::DEL; | |
| 206 case SunXK_Props: | |
| 207 return DomKey::PROPS; | |
| 208 case XF86XK_Next_VMode: | |
| 209 return DomKey::VIDEO_MODE_NEXT; | |
| 210 case XF86XK_MonBrightnessUp: | |
| 211 return DomKey::BRIGHTNESS_UP; | |
| 212 case XF86XK_MonBrightnessDown: | |
| 213 return DomKey::BRIGHTNESS_DOWN; | |
| 214 case XF86XK_Standby: | |
| 215 case XF86XK_Sleep: | |
| 216 case XF86XK_Suspend: | |
| 217 return DomKey::STANDBY; | |
| 218 case XF86XK_AudioLowerVolume: | |
| 219 return DomKey::VOLUME_DOWN; | |
| 220 case XF86XK_AudioMute: | |
| 221 return DomKey::VOLUME_MUTE; | |
| 222 case XF86XK_AudioRaiseVolume: | |
| 223 return DomKey::VOLUME_UP; | |
| 224 case XF86XK_AudioPlay: | |
| 225 return DomKey::MEDIA_PLAY; | |
| 226 case XF86XK_AudioStop: | |
| 227 return DomKey::MEDIA_STOP; | |
| 228 case XF86XK_AudioPrev: | |
| 229 return DomKey::MEDIA_TRACK_PREVIOUS; | |
| 230 case XF86XK_AudioNext: | |
| 231 return DomKey::MEDIA_TRACK_NEXT; | |
| 232 case XF86XK_HomePage: | |
| 233 return DomKey::BROWSER_HOME; | |
| 234 case XF86XK_Mail: | |
| 235 return DomKey::LAUNCH_MAIL; | |
| 236 case XF86XK_Search: | |
| 237 return DomKey::BROWSER_SEARCH; | |
| 238 case XF86XK_AudioRecord: | |
| 239 return DomKey::MEDIA_RECORD; | |
| 240 case XF86XK_Calculator: | |
| 241 return DomKey::LAUNCH_CALCULATOR; | |
| 242 case XF86XK_Calendar: | |
| 243 return DomKey::LAUNCH_CALENDAR; | |
| 244 case XF86XK_Back: | |
| 245 return DomKey::BROWSER_BACK; | |
| 246 case XF86XK_Forward: | |
| 247 return DomKey::BROWSER_FORWARD; | |
| 248 case XF86XK_Stop: | |
| 249 return DomKey::BROWSER_STOP; | |
| 250 case XF86XK_Refresh: | |
| 251 case XF86XK_Reload: | |
| 252 return DomKey::BROWSER_REFRESH; | |
| 253 case XF86XK_PowerOff: | |
| 254 return DomKey::POWER_OFF; | |
| 255 case XF86XK_WakeUp: | |
| 256 return DomKey::WAKE_UP; | |
| 257 case XF86XK_Eject: | |
| 258 return DomKey::EJECT; | |
| 259 case XF86XK_ScreenSaver: | |
| 260 return DomKey::LAUNCH_SCREEN_SAVER; | |
| 261 case XF86XK_WWW: | |
| 262 return DomKey::LAUNCH_WEB_BROWSER; | |
| 263 case XF86XK_Favorites: | |
| 264 return DomKey::BROWSER_FAVORITES; | |
| 265 case XF86XK_AudioPause: | |
| 266 return DomKey::MEDIA_PAUSE; | |
| 267 case XF86XK_AudioMedia: | |
| 268 case XF86XK_Music: | |
| 269 return DomKey::LAUNCH_MUSIC_PLAYER; | |
| 270 case XF86XK_MyComputer: | |
| 271 case XF86XK_Explorer: | |
| 272 return DomKey::LAUNCH_MY_COMPUTER; | |
| 273 case XF86XK_AudioRewind: | |
| 274 return DomKey::MEDIA_REWIND; | |
| 275 case XF86XK_CD: | |
| 276 case XF86XK_Video: | |
| 277 return DomKey::LAUNCH_MEDIA_PLAYER; | |
| 278 case XF86XK_Close: | |
| 279 return DomKey::CLOSE; | |
| 280 case XF86XK_Copy: | |
| 281 case SunXK_Copy: | |
| 282 return DomKey::COPY; | |
| 283 case XF86XK_Cut: | |
| 284 case SunXK_Cut: | |
| 285 return DomKey::CUT; | |
| 286 case XF86XK_Display: | |
| 287 return DomKey::DISPLAY_SWAP; | |
| 288 case XF86XK_Excel: | |
| 289 return DomKey::LAUNCH_SPREADSHEET; | |
| 290 case XF86XK_LogOff: | |
| 291 return DomKey::LOG_OFF; | |
| 292 case XF86XK_New: | |
| 293 return DomKey::NEW; | |
| 294 case XF86XK_Open: | |
| 295 case SunXK_Open: | |
| 296 return DomKey::OPEN; | |
| 297 case XF86XK_Paste: | |
| 298 case SunXK_Paste: | |
| 299 return DomKey::PASTE; | |
| 300 case XF86XK_Reply: | |
| 301 return DomKey::MAIL_REPLY; | |
| 302 case XF86XK_Save: | |
| 303 return DomKey::SAVE; | |
| 304 case XF86XK_Send: | |
| 305 return DomKey::MAIL_SEND; | |
| 306 case XF86XK_Spell: | |
| 307 return DomKey::SPELL_CHECK; | |
| 308 case XF86XK_SplitScreen: | |
| 309 return DomKey::SPLIT_SCREEN_TOGGLE; | |
| 310 case XF86XK_Word: | |
| 311 case XF86XK_OfficeHome: | |
| 312 return DomKey::LAUNCH_WORD_PROCESSOR; | |
| 313 case XF86XK_ZoomIn: | |
| 314 return DomKey::ZOOM_IN; | |
| 315 case XF86XK_ZoomOut: | |
| 316 return DomKey::ZOOM_OUT; | |
| 317 case XF86XK_WebCam: | |
| 318 return DomKey::LAUNCH_WEB_CAM; | |
| 319 case XF86XK_MailForward: | |
| 320 return DomKey::MAIL_FORWARD; | |
| 321 case XF86XK_AudioForward: | |
| 322 return DomKey::MEDIA_FAST_FORWARD; | |
| 323 case XF86XK_AudioRandomPlay: | |
| 324 return DomKey::RANDOM_TOGGLE; | |
| 325 case XF86XK_Subtitle: | |
| 326 return DomKey::SUBTITLE; | |
| 327 case XF86XK_Hibernate: | |
| 328 return DomKey::HIBERNATE; | |
| 329 case XK_3270_EraseEOF: | |
| 330 return DomKey::ERASE_EOF; | |
| 331 case XK_3270_Play: | |
| 332 return DomKey::PLAY; | |
| 333 case XK_3270_ExSelect: | |
| 334 return DomKey::EX_SEL; | |
| 335 case XK_3270_CursorSelect: | |
| 336 return DomKey::CR_SEL; | |
| 337 case XK_3270_PrintScreen: | |
| 338 return DomKey::PRINT_SCREEN; | |
| 339 case XK_ISO_Level3_Shift: | |
| 340 return DomKey::ALT_GRAPH; | |
| 341 case XK_ISO_Next_Group: | |
| 342 return DomKey::GROUP_NEXT; | |
| 343 case XK_ISO_Prev_Group: | |
| 344 return DomKey::GROUP_PREVIOUS; | |
| 345 case XK_ISO_First_Group: | |
| 346 return DomKey::GROUP_FIRST; | |
| 347 case XK_ISO_Last_Group: | |
| 348 return DomKey::GROUP_LAST; | |
| 349 case XK_dead_grave: | |
| 350 case XK_dead_acute: | |
| 351 case XK_dead_circumflex: | |
| 352 case XK_dead_tilde: | |
| 353 case XK_dead_macron: | |
| 354 case XK_dead_breve: | |
| 355 case XK_dead_abovedot: | |
| 356 case XK_dead_diaeresis: | |
| 357 case XK_dead_abovering: | |
| 358 case XK_dead_doubleacute: | |
| 359 case XK_dead_caron: | |
| 360 case XK_dead_cedilla: | |
| 361 case XK_dead_ogonek: | |
| 362 case XK_dead_iota: | |
| 363 case XK_dead_belowdot: | |
| 364 case XK_dead_hook: | |
| 365 case XK_dead_horn: | |
| 366 case XK_dead_stroke: | |
| 367 case XK_dead_abovecomma: | |
| 368 case XK_dead_abovereversedcomma: | |
| 369 case XK_dead_doublegrave: | |
| 370 case XK_dead_belowring: | |
| 371 case XK_dead_belowmacron: | |
| 372 case XK_dead_belowcircumflex: | |
| 373 case XK_dead_belowtilde: | |
| 374 case XK_dead_belowbreve: | |
| 375 case XK_dead_belowdiaeresis: | |
| 376 case XK_dead_invertedbreve: | |
| 377 case XK_dead_belowcomma: | |
| 378 case XK_dead_currency: | |
| 379 return DomKey::DEAD; | |
| 380 default: | |
| 381 return DomKey::NONE; | |
| 382 } | |
| 383 } | |
| 384 | |
| 385 base::char16 XkbKeySymDeadKey(XkbKeySym keysym) { | |
| 386 switch (keysym) { | |
| 387 case XK_dead_grave: | |
| 388 return 0x0768; // combining grave accent | |
| 389 case XK_dead_acute: | |
| 390 return 0x0769; // combining acute accent | |
| 391 case XK_dead_circumflex: | |
| 392 return 0x0770; // combining circumflex accent | |
| 393 case XK_dead_tilde: | |
| 394 return 0x0771; // combining tilde | |
| 395 case XK_dead_macron: | |
| 396 return 0x0772; // combining macron | |
| 397 case XK_dead_breve: | |
| 398 return 0x0774; // combining breve | |
| 399 case XK_dead_abovedot: | |
| 400 return 0x0775; // combining dot above | |
| 401 case XK_dead_diaeresis: | |
| 402 return 0x0776; // combining diaeresis | |
| 403 case XK_dead_abovering: | |
| 404 return 0x0778; // combining ring above | |
| 405 case XK_dead_doubleacute: | |
| 406 return 0x0779; // combining double acute accent | |
| 407 case XK_dead_caron: | |
| 408 return 0x0780; // combining caron | |
| 409 case XK_dead_cedilla: | |
| 410 return 0x0807; // combining cedilla | |
| 411 case XK_dead_ogonek: | |
| 412 return 0x0808; // combining ogonek | |
| 413 case XK_dead_iota: | |
| 414 return 0x0837; // combining greek ypogegrammeni | |
| 415 case XK_dead_belowdot: | |
| 416 return 0x0803; // combining dot below | |
| 417 case XK_dead_hook: | |
| 418 return 0x0777; // combining hook above | |
| 419 case XK_dead_horn: | |
| 420 return 0x0795; // combining horn | |
| 421 case XK_dead_stroke: | |
| 422 return 0x0824; // combining long solidus overlay | |
| 423 case XK_dead_abovecomma: | |
| 424 return 0x0787; // combining comma above | |
| 425 case XK_dead_abovereversedcomma: | |
| 426 return 0x0788; // combining reversed comma above | |
| 427 case XK_dead_doublegrave: | |
| 428 return 0x0783; // combining double grave accent | |
| 429 case XK_dead_belowring: | |
| 430 return 0x0805; // combining ring below | |
| 431 case XK_dead_belowmacron: | |
| 432 return 0x0817; // combining macron below | |
| 433 case XK_dead_belowcircumflex: | |
| 434 return 0x0813; // combining circumflex accent below | |
| 435 case XK_dead_belowtilde: | |
| 436 return 0x0816; // combining tilde below | |
| 437 case XK_dead_belowbreve: | |
| 438 return 0x0814; // combining breve below | |
| 439 case XK_dead_belowdiaeresis: | |
| 440 return 0x0804; // combining diaeresis below | |
| 441 case XK_dead_invertedbreve: | |
| 442 return 0x0785; // combining inverted breve | |
| 443 case XK_dead_belowcomma: | |
| 444 return 0x0806; // combining comma below | |
| 445 case XK_dead_currency: | |
| 446 return 0x0164; // currency sign | |
| 447 default: | |
| 448 return 0; | |
| 449 } | |
| 450 } | |
| 451 | |
| 452 } // namespace ui | |
| OLD | NEW |