2 * noVNC: HTML5 VNC client
3 * Copyright (C) 2018 The noVNC Authors
4 * Licensed under MPL 2.0 or any later version (see LICENSE.txt)
8 * Fallback mapping between HTML key codes (physical keys) and
9 * HTML key values. This only works for keys that don't vary
10 * between layouts. We also omit those who manage fine by mapping the
11 * Unicode representation.
13 * See https://www.w3.org/TR/uievents-code/ for possible codes.
14 * See https://www.w3.org/TR/uievents-key/ for possible values.
17/* eslint-disable key-spacing */
21// 3.1.1.1. Writing System Keys
23 'Backspace': 'Backspace',
25// 3.1.1.2. Functional Keys
28 'AltRight': 'Alt', // This could also be 'AltGraph'
29 'CapsLock': 'CapsLock',
30 'ContextMenu': 'ContextMenu',
31 'ControlLeft': 'Control',
32 'ControlRight': 'Control',
37 'ShiftRight': 'Shift',
39 // FIXME: Japanese/Korean keys
41// 3.1.2. Control Pad Section
48 'PageDown': 'PageDown',
51// 3.1.3. Arrow Pad Section
53 'ArrowDown': 'ArrowDown',
54 'ArrowLeft': 'ArrowLeft',
55 'ArrowRight': 'ArrowRight',
58// 3.1.4. Numpad Section
61 'NumpadBackspace': 'Backspace',
62 'NumpadClear': 'Clear',
64// 3.1.5. Function Section
102 'PrintScreen': 'PrintScreen',
103 'ScrollLock': 'ScrollLock',
108 'BrowserBack': 'BrowserBack',
109 'BrowserFavorites': 'BrowserFavorites',
110 'BrowserForward': 'BrowserForward',
111 'BrowserHome': 'BrowserHome',
112 'BrowserRefresh': 'BrowserRefresh',
113 'BrowserSearch': 'BrowserSearch',
114 'BrowserStop': 'BrowserStop',
116 'LaunchApp1': 'LaunchMyComputer',
117 'LaunchApp2': 'LaunchCalendar',
118 'LaunchMail': 'LaunchMail',
119 'MediaPlayPause': 'MediaPlay',
120 'MediaStop': 'MediaStop',
121 'MediaTrackNext': 'MediaTrackNext',
122 'MediaTrackPrevious': 'MediaTrackPrevious',
125 'AudioVolumeDown': 'AudioVolumeDown',
126 'AudioVolumeMute': 'AudioVolumeMute',
127 'AudioVolumeUp': 'AudioVolumeUp',