webOS Userland
Native system APIs for webOS
xkbcommon-webos-keysyms.h
1 // Copyright 2016-2018 LG Electronics, Inc.
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 //
15 // SPDX-License-Identifier: Apache-2.0
16 
17 #ifndef WEBOS_COMMON_WEBOS_KEYBOARD_CODES_H_
18 #define WEBOS_COMMON_WEBOS_KEYBOARD_CODES_H_
19 
20 
21 #define XKB_KEY_WEBOS_INVALID 0x00
22 
23 /* Misc KEYS */
24 #define XKB_KEY_WEBOS_TAB 0x01000001
25 #define XKB_KEY_WEBOS_RETURN 0x01000004
26 #define XKB_KEY_WEBOS_LEFT 0x01000012
27 #define XKB_KEY_WEBOS_UP 0x01000013
28 #define XKB_KEY_WEBOS_RIGHT 0x01000014
29 #define XKB_KEY_WEBOS_DOWN 0x01000015
30 #define XKB_KEY_WEBOS_SHIFT 0x01000020
31 
32 /* Media Buttons */
33 #define XKB_KEY_WEBOS_MEDIA_PLAY 0x01000080
34 #define XKB_KEY_WEBOS_MEDIA_STOP 0x01000081
35 #define XKB_KEY_WEBOS_MEDIA_PREVIOUS 0x01000082
36 #define XKB_KEY_WEBOS_MEDIA_NEXT 0x01000083
37 #define XKB_KEY_WEBOS_MEDIA_RECORD 0x01000084
38 #define XKB_KEY_WEBOS_MEDIA_PAUSE 0x01000085
39 #define XKB_KEY_WEBOS_AUDIO_REWIND 0x010000c5
40 #define XKB_KEY_WEBOS_AUDIO_FORWARD 0x01000102
41 #define XKB_KEY_WEBOS_SUBTITLE 0x01000105
42 /* Volume Button */
43 #define XKB_KEY_WEBOS_VOLUME_DOWN 0x01000070
44 #define XKB_KEY_WEBOS_VOLUME_MUTE 0x01000071
45 #define XKB_KEY_WEBOS_VOLUME_UP 0x01000072
46 /* Misc Buttons */
47 #define XKB_KEY_WEBOS_SUPER_L 0x01000053
48 #define XKB_KEY_WEBOS_OPTION 0x010000e1
49 #define XKB_KEY_WEBOS_VIDEO 0x010000f3
50 #define XKB_KEY_WEBOS_PRINTER 0x01020002
51 /* webOS Buttons */
52 #define XKB_KEY_WEBOS_POWER_ON_OFF 0x01200000
53 #define XKB_KEY_WEBOS_EXIT 0x01200001
54 #define XKB_KEY_WEBOS_INFO 0x01200002
55 #define XKB_KEY_WEBOS_BACK 0x01200003
56 #define XKB_KEY_WEBOS_SETTINGS 0x01200004
57 #define XKB_KEY_WEBOS_RECENT 0x01200005
58 #define XKB_KEY_WEBOS_RED 0x01200011
59 #define XKB_KEY_WEBOS_GREEN 0x01200012
60 #define XKB_KEY_WEBOS_YELLOW 0x01200013
61 #define XKB_KEY_WEBOS_BLUE 0x01200014
62 #define XKB_KEY_WEBOS_TWIN 0x01200015
63 #define XKB_KEY_WEBOS_MAGNIFIER_ZOOM 0x01200016
64 #define XKB_KEY_WEBOS_LIVE_ZOOM 0x01200017
65 #define XKB_KEY_WEBOS_STBMENU 0x01200018
66 #define XKB_KEY_WEBOS_STBPOWER 0x01200019
67 #define XKB_KEY_WEBOS_CHANNEL_UP 0x01200021
68 #define XKB_KEY_WEBOS_CHANNEL_DOWN 0x01200022
69 #define XKB_KEY_WEBOS_CHANNEL_DASH 0x01200023
70 #define XKB_KEY_WEBOS_CHANNEL_BACK 0x01200024
71 #define XKB_KEY_WEBOS_FAVORITE 0x01200025
72 #define XKB_KEY_WEBOS_SET_CHANNEL 0x01200026
73 #define XKB_KEY_WEBOS_TIMER_POWER_ON 0x01200027
74 #define XKB_KEY_WEBOS_IVI 0x0120002a
75 #define XKB_KEY_WEBOS_3_DMODE 0x01200031
76 #define XKB_KEY_WEBOS_SCREEN_REMOTE 0x01200032
77 #define XKB_KEY_WEBOS_QMENU 0x01200033
78 #define XKB_KEY_WEBOS_VOICE 0x01200034
79 #define XKB_KEY_WEBOS_INPUT_SOURCE 0x01200035
80 #define XKB_KEY_WEBOS_INPUT_TV 0x01200036
81 #define XKB_KEY_WEBOS_ASPECT_RATIO 0x01200037
82 #define XKB_KEY_WEBOS_LIVE_TVMENU 0x01200038
83 #define XKB_KEY_WEBOS_TVGUIDE 0x01200039
84 #define XKB_KEY_WEBOS_AUDIO_DESCRIPTION 0x01200040
85 #define XKB_KEY_WEBOS_MHP 0x01200041
86 #define XKB_KEY_WEBOS_TELETEXT 0x01200042
87 #define XKB_KEY_WEBOS_TEXT_OPTION 0x01200043
88 #define XKB_KEY_WEBOS_TEXT_MODE 0x01200044
89 #define XKB_KEY_WEBOS_TEXT_MIX 0x01200045
90 #define XKB_KEY_WEBOS_TELETEXT_SUB_PAGE 0x01200046
91 #define XKB_KEY_WEBOS_TELETEXT_REVEAL 0x01200047
92 #define XKB_KEY_WEBOS_TELETEXT_FREEZE 0x01200048
93 #define XKB_KEY_WEBOS_TELETEXT_POSITION 0x01200049
94 #define XKB_KEY_WEBOS_TELETEXT_SIZE 0x01200050
95 #define XKB_KEY_WEBOS_TELETEXT_IN_TIME 0x01200051
96 #define XKB_KEY_WEBOS_SIMPLINK 0x01200053
97 #define XKB_KEY_WEBOS_MULTI_PIP 0x01200054
98 #define XKB_KEY_WEBOS_INPUT_TVRADIO 0x01200055
99 #define XKB_KEY_WEBOS_PROGRAM_LIST 0x01200056
100 #define XKB_KEY_WEBOS_RECORD_LIST 0x01200057
101 #define XKB_KEY_WEBOS_STORE_MODE 0x01200058
102 /* Local keys (front panel buttons) */
103 #define XKB_KEY_WEBOS_LOCAL_UP 0x01200061
104 #define XKB_KEY_WEBOS_LOCAL_DOWN 0x01200062
105 #define XKB_KEY_WEBOS_LOCAL_LEFT 0x01200063
106 #define XKB_KEY_WEBOS_LOCAL_RIGHT 0x01200064
107 #define XKB_KEY_WEBOS_LOCAL_ENTER 0x01200065
108 #define XKB_KEY_WEBOS_LOCAL_LONG_PRESS 0x01200066
109 #define XKB_KEY_WEBOS_LOCAL_POWER 0x01200067
110 #define XKB_KEY_WEBOS_LOCAL_VOLUME_UP 0x01200068
111 #define XKB_KEY_WEBOS_LOCAL_VOLUME_DOWN 0x01200069
112 /* Japan Only */
113 #define XKB_KEY_WEBOS_BS 0x01200091
114 #define XKB_KEY_WEBOS_CS_1 0x01200092
115 #define XKB_KEY_WEBOS_CS_2 0x01200093
116 #define XKB_KEY_WEBOS_TER 0x01200094
117 #define XKB_KEY_WEBOS_3_DIGIT_INPUT 0x01200095
118 #define XKB_KEY_WEBOS_BMLDATA 0x01200096
119 #define XKB_KEY_WEBOS_JAPAN_DISPLAY 0x01200097
120 #define XKB_KEY_WEBOS_BS_1 0x01200111
121 #define XKB_KEY_WEBOS_BS_2 0x01200112
122 #define XKB_KEY_WEBOS_BS_3 0x01200113
123 #define XKB_KEY_WEBOS_BS_4 0x01200114
124 #define XKB_KEY_WEBOS_BS_5 0x01200115
125 #define XKB_KEY_WEBOS_BS_6 0x01200116
126 #define XKB_KEY_WEBOS_BS_7 0x01200117
127 #define XKB_KEY_WEBOS_BS_8 0x01200118
128 #define XKB_KEY_WEBOS_BS_9 0x01200119
129 #define XKB_KEY_WEBOS_BS_10 0x0120011a
130 #define XKB_KEY_WEBOS_BS_11 0x0120011b
131 #define XKB_KEY_WEBOS_BS_12 0x0120011c
132 #define XKB_KEY_WEBOS_CS_1_1 0x01200121
133 #define XKB_KEY_WEBOS_CS_1_2 0x01200122
134 #define XKB_KEY_WEBOS_CS_1_3 0x01200123
135 #define XKB_KEY_WEBOS_CS_1_4 0x01200124
136 #define XKB_KEY_WEBOS_CS_1_5 0x01200125
137 #define XKB_KEY_WEBOS_CS_1_6 0x01200126
138 #define XKB_KEY_WEBOS_CS_1_7 0x01200127
139 #define XKB_KEY_WEBOS_CS_1_8 0x01200128
140 #define XKB_KEY_WEBOS_CS_1_9 0x01200129
141 #define XKB_KEY_WEBOS_CS_1_10 0x0120012a
142 #define XKB_KEY_WEBOS_CS_1_11 0x0120012b
143 #define XKB_KEY_WEBOS_CS_1_12 0x0120012c
144 #define XKB_KEY_WEBOS_CS_2_1 0x01200131
145 #define XKB_KEY_WEBOS_CS_2_2 0x01200132
146 #define XKB_KEY_WEBOS_CS_2_3 0x01200133
147 #define XKB_KEY_WEBOS_CS_2_4 0x01200134
148 #define XKB_KEY_WEBOS_CS_2_5 0x01200135
149 #define XKB_KEY_WEBOS_CS_2_6 0x01200136
150 #define XKB_KEY_WEBOS_CS_2_7 0x01200137
151 #define XKB_KEY_WEBOS_CS_2_8 0x01200138
152 #define XKB_KEY_WEBOS_CS_2_9 0x01200139
153 #define XKB_KEY_WEBOS_CS_2_10 0x0120013a
154 #define XKB_KEY_WEBOS_CS_2_11 0x0120013b
155 #define XKB_KEY_WEBOS_CS_2_12 0x0120013c
156 #define XKB_KEY_WEBOS_TER_1 0x01200141
157 #define XKB_KEY_WEBOS_TER_2 0x01200142
158 #define XKB_KEY_WEBOS_TER_3 0x01200143
159 #define XKB_KEY_WEBOS_TER_4 0x01200144
160 #define XKB_KEY_WEBOS_TER_5 0x01200145
161 #define XKB_KEY_WEBOS_TER_6 0x01200146
162 #define XKB_KEY_WEBOS_TER_7 0x01200147
163 #define XKB_KEY_WEBOS_TER_8 0x01200148
164 #define XKB_KEY_WEBOS_TER_9 0x01200149
165 #define XKB_KEY_WEBOS_TER_10 0x0120014a
166 #define XKB_KEY_WEBOS_TER_11 0x0120014b
167 #define XKB_KEY_WEBOS_TER_12 0x0120014c
168 /* It is not a physical button but acts like a key */
169 #define XKB_KEY_WEBOS_CURSOR_SHOW 0x01200201
170 #define XKB_KEY_WEBOS_CURSOR_HIDE 0x01200202
171 #define XKB_KEY_WEBOS_CAMERA_VOICE 0x01200203
172 /* For commercial model */
173 #define XKB_KEY_WEBOS_TV_LINK 0x01200301
174 #define XKB_KEY_WEBOS_HOTEL_MODE 0x01200302
175 #define XKB_KEY_WEBOS_HOTEL_MODE_READY 0x01200303
176 /* Factory keys It is used to check the specific functionality in the factory
177  or adjust the system internal settings by the developers. */
178 #define XKB_KEY_WEBOS_FACTORY_POWER_ONLY 0x01201001 /* P-ONLY */
179 #define XKB_KEY_WEBOS_FACTORY_IN_START 0x01201002 /* IN START */
180 #define XKB_KEY_WEBOS_FACTORY_IN_STOP 0x01201003 /* IN STOP */
181 #define XKB_KEY_WEBOS_FACTORY_ADJUST 0x01201004 /* ADJ */
182 #define XKB_KEY_WEBOS_FACTORY_TV 0x01201010 /* TV */
183 #define XKB_KEY_WEBOS_FACTORY_VIDEO_1 0x01201011 /* AV1 */
184 #define XKB_KEY_WEBOS_FACTORY_VIDEO_2 0x01201012 /* AV2 */
185 #define XKB_KEY_WEBOS_FACTORY_COMPONENT_1 0x01201013 /* COMP1 */
186 #define XKB_KEY_WEBOS_FACTORY_COMPONENT_2 0x01201014 /* COMP2 */
187 #define XKB_KEY_WEBOS_FACTORY_HDMI_1 0x01201015 /* HDMI1 */
188 #define XKB_KEY_WEBOS_FACTORY_HDMI_2 0x01201016 /* HDMI2 */
189 #define XKB_KEY_WEBOS_FACTORY_HDMI_3 0x01201017 /* HDMI3 */
190 #define XKB_KEY_WEBOS_FACTORY_HDMI_4 0x01201018 /* HDMI4 */
191 #define XKB_KEY_WEBOS_FACTORY_RGB_PC 0x01201019 /* RGB */
192 #define XKB_KEY_WEBOS_FACTORY_EYE_Q 0x01201020 /* EYE */
193 #define XKB_KEY_WEBOS_FACTORY_PICTURE_MODE 0x01201021 /* PSM */
194 #define XKB_KEY_WEBOS_FACTORY_SOUND_MODE 0x01201022 /* SSM */
195 #define XKB_KEY_WEBOS_FACTORY_PICTURE_CHECK 0x01201023 /* P-CHECK */
196 #define XKB_KEY_WEBOS_FACTORY_SOUND_CHECK 0x01201024 /* S-CHECK */
197 #define XKB_KEY_WEBOS_FACTORY_MULTI_SOUND_SETTING 0x01201025 /* MPX */
198 #define XKB_KEY_WEBOS_FACTORY_TILT 0x01201026 /* TILT */
199 #define XKB_KEY_WEBOS_FACTORY_PIP 0x01201027 /* PIP */
200 #define XKB_KEY_WEBOS_FACTORY_HDMI_CHECK 0x01201028 /* HDMI HOT */
201 #define XKB_KEY_WEBOS_FACTORY_USB_CHECK 0x01201029 /* USB HOT */
202 #define XKB_KEY_WEBOS_FACTORY_USB_2_CHECK 0x01201030 /* USB HOT */
203 #define XKB_KEY_WEBOS_FACTORY_POWER_OFF 0x01201031 /* 'discrete IR power off' */
204 #define XKB_KEY_WEBOS_FACTORY_POWER_ON 0x01201032 /* 'discrete IR power on' */
205 #define XKB_KEY_WEBOS_FACTORY_SUBSTRATE 0x01201033 /* 'change mode to circuit board product' */
206 #define XKB_KEY_WEBOS_FACTORY_VOLUME_30 0x01201034 /* 'set volume to 30' */
207 #define XKB_KEY_WEBOS_FACTORY_VOLUME_50 0x01201035 /* 'set volume to 50' */
208 #define XKB_KEY_WEBOS_FACTORY_VOLUME_80 0x01201036 /* 'set volume to 80' */
209 #define XKB_KEY_WEBOS_FACTORY_VOLUME_100 0x01201037 /* 'set volume to 100' */
210 #define XKB_KEY_WEBOS_FACTORY_WHITE_BALANCE 0x01201038 /* 'adjust white balance' */
211 #define XKB_KEY_WEBOS_FACTORY_3_DPATTERN 0x01201039 /* '3D pattern' */
212 #define XKB_KEY_WEBOS_FACTORY_SELF_DIAGNOSIS 0x01201040 /* 'self diagnosis' */
213 #define XKB_KEY_WEBOS_FACTORY_PATTERN_CHECK 0x01201041 /* 'pattern check on p-only mode' */
214 #define XKB_KEY_WEBOS_FACTORY_QRCHECK 0x01201042 /* 'QR code check on p-only mode' */
215 /* Another key codes for local keys (power only full-white mode) */
216 #define XKB_KEY_WEBOS_FACTORY_LOCAL_UP 0x01201061
217 #define XKB_KEY_WEBOS_FACTORY_LOCAL_DOWN 0x01201062
218 #define XKB_KEY_WEBOS_FACTORY_LOCAL_LEFT 0x01201063
219 #define XKB_KEY_WEBOS_FACTORY_LOCAL_RIGHT 0x01201064
220 #define XKB_KEY_WEBOS_FACTORY_LOCAL_ENTER 0x01201065
221 #define XKB_KEY_WEBOS_CEC_POWER 0x01202000
222 #define XKB_KEY_WEBOS_CEC_MEDIA_HOME 0x01202001
223 #define XKB_KEY_WEBOS_CEC_INFO_MENU 0x01202002
224 #define XKB_KEY_WEBOS_CEC_INPUT 0x01202003
225 #define XKB_KEY_WEBOS_CEC_TITLE_POPUP 0x01202004
226 #define XKB_KEY_WEBOS_CEC_TV_GUIDE 0x01202005
227 #define XKB_KEY_WEBOS_CEC_CONTENTS_MENU 0x01202006
228 #define XKB_KEY_WEBOS_CEC_SKIP_BACK_10 0x01202007
229 #define XKB_KEY_WEBOS_CEC_SKIP_FORWARD_30 0x01202008
230 #define XKB_KEY_WEBOS_MHL_SCREEN_REMOTE 0x01202032
231 #define XKB_KEY_WEBOS_VIRTUAL_TELE_TEXT 0x01202042
232 
233 // In goldilocks InputMethodAuraLinux::OnPreeditChanged generates key event for each input from IME
234 // This key event can be delivered to app as a keycode 229
235 // should handle this keycodes in somewhere to block unexpected keyevent
236 // This keycode is not related to LSM
237 #define XKB_KEY_WEBOS_IMEPROCESS 0x01200401
238 
239 #endif // WEBOS_COMMON_WEBOS_KEYBOARD_CODES_H_