OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h" | 5 #include "ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <xkbcommon/xkbcommon-names.h> | 8 #include <xkbcommon/xkbcommon-names.h> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 {DomCode::BACKSLASH, 1, 0, 0x007E, kAny, VKEY_OEM_7}}; // ~, NoSymbol | 86 {DomCode::BACKSLASH, 1, 0, 0x007E, kAny, VKEY_OEM_7}}; // ~, NoSymbol |
87 | 87 |
88 // U+0024 dollar sign | 88 // U+0024 dollar sign |
89 const PrintableSubEntry kU0024[] = { | 89 const PrintableSubEntry kU0024[] = { |
90 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_1}, | 90 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_1}, |
91 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_8}}; | 91 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_8}}; |
92 | 92 |
93 // U+0027 apostrophe | 93 // U+0027 apostrophe |
94 const PrintableSubEntry kU0027[] = { | 94 const PrintableSubEntry kU0027[] = { |
95 {DomCode::DIGIT4, 0, 0, kAny, kAny, VKEY_4}, | 95 {DomCode::DIGIT4, 0, 0, kAny, kAny, VKEY_4}, |
96 {DomCode::KEY_Q, 0, 0, kAny, kAny, VKEY_OEM_7}, | 96 {DomCode::US_Q, 0, 0, kAny, kAny, VKEY_OEM_7}, |
97 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_1}, | 97 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_1}, |
98 {DomCode::SLASH, 0, 0, kAny, kAny, VKEY_OEM_7}, | 98 {DomCode::SLASH, 0, 0, kAny, kAny, VKEY_OEM_7}, |
99 {DomCode::QUOTE, 1, 0, 0x0022, kAny, VKEY_OEM_7}, // quote | 99 {DomCode::QUOTE, 1, 0, 0x0022, kAny, VKEY_OEM_7}, // quote |
100 {DomCode::BACKQUOTE, 1, 0, 0x0022, kAny, VKEY_OEM_3}, // quote | 100 {DomCode::BACKQUOTE, 1, 0, 0x0022, kAny, VKEY_OEM_3}, // quote |
101 {DomCode::BACKQUOTE, 1, 0, 0x00B7, kAny, VKEY_OEM_5}, // middle dot | 101 {DomCode::BACKQUOTE, 1, 0, 0x00B7, kAny, VKEY_OEM_5}, // middle dot |
102 {DomCode::BACKSLASH, 1, 0, kNone, kAny, VKEY_OEM_5}, // NoSymbol | 102 {DomCode::BACKSLASH, 1, 0, kNone, kAny, VKEY_OEM_5}, // NoSymbol |
103 {DomCode::MINUS, 1, 0, 0x003F, kAny, VKEY_OEM_4}, // ? | 103 {DomCode::MINUS, 1, 0, 0x003F, kAny, VKEY_OEM_4}, // ? |
104 {DomCode::EQUAL, 1, 0, 0x002A, kAny, VKEY_OEM_PLUS}, // * | 104 {DomCode::EQUAL, 1, 0, 0x002A, kAny, VKEY_OEM_PLUS}, // * |
105 {DomCode::QUOTE, 1, 0, 0x0040, kAny, VKEY_OEM_3}, // @ | 105 {DomCode::QUOTE, 1, 0, 0x0040, kAny, VKEY_OEM_3}, // @ |
106 {DomCode::BACKSLASH, 1, 1, 0x002A, 0x00BD, VKEY_OEM_5}, // *, one half | 106 {DomCode::BACKSLASH, 1, 1, 0x002A, 0x00BD, VKEY_OEM_5}, // *, one half |
107 {DomCode::BACKSLASH, 1, 0, 0x002A, kAny, VKEY_OEM_2}, // *, NoSymbol | 107 {DomCode::BACKSLASH, 1, 0, 0x002A, kAny, VKEY_OEM_2}, // *, NoSymbol |
108 {DomCode::KEY_Z, 1, 1, 0x0022, 0x0158, VKEY_OEM_7}, // quote, R caron | 108 {DomCode::US_Z, 1, 1, 0x0022, 0x0158, VKEY_OEM_7}, // quote, R caron |
109 {DomCode::KEY_Z, 1, 0, 0x0022, kAny, VKEY_Z}}; // quote | 109 {DomCode::US_Z, 1, 0, 0x0022, kAny, VKEY_Z}}; // quote |
110 | 110 |
111 // U+0028 left parenthesis | 111 // U+0028 left parenthesis |
112 const PrintableSubEntry kU0028[] = { | 112 const PrintableSubEntry kU0028[] = { |
113 {DomCode::DIGIT5, 0, 0, kAny, kAny, VKEY_5}, | 113 {DomCode::DIGIT5, 0, 0, kAny, kAny, VKEY_5}, |
114 {DomCode::DIGIT9, 0, 0, kAny, kAny, VKEY_9}, | 114 {DomCode::DIGIT9, 0, 0, kAny, kAny, VKEY_9}, |
115 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_5}}; | 115 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_5}}; |
116 | 116 |
117 // U+0029 right parenthesis | 117 // U+0029 right parenthesis |
118 const PrintableSubEntry kU0029[] = { | 118 const PrintableSubEntry kU0029[] = { |
119 {DomCode::DIGIT0, 0, 0, kAny, kAny, VKEY_0}, | 119 {DomCode::DIGIT0, 0, 0, kAny, kAny, VKEY_0}, |
(...skipping 15 matching lines...) Expand all Loading... |
135 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_2}, | 135 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_2}, |
136 {DomCode::MINUS, 1, 1, 0x003F, 0x005C, VKEY_OEM_MINUS}, // ?, backslash | 136 {DomCode::MINUS, 1, 1, 0x003F, 0x005C, VKEY_OEM_MINUS}, // ?, backslash |
137 {DomCode::MINUS, 1, 0, 0x003F, kAny, VKEY_OEM_PLUS}}; // ? | 137 {DomCode::MINUS, 1, 0, 0x003F, kAny, VKEY_OEM_PLUS}}; // ? |
138 | 138 |
139 // U+002C comma | 139 // U+002C comma |
140 const PrintableSubEntry kU002C[] = { | 140 const PrintableSubEntry kU002C[] = { |
141 {DomCode::DIGIT3, 0, 0, kAny, kAny, VKEY_3}, | 141 {DomCode::DIGIT3, 0, 0, kAny, kAny, VKEY_3}, |
142 {DomCode::DIGIT5, 0, 0, kAny, kAny, VKEY_5}, | 142 {DomCode::DIGIT5, 0, 0, kAny, kAny, VKEY_5}, |
143 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, | 143 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, |
144 {DomCode::DIGIT9, 0, 0, kAny, kAny, VKEY_9}, | 144 {DomCode::DIGIT9, 0, 0, kAny, kAny, VKEY_9}, |
145 {DomCode::KEY_W, 0, 0, kAny, kAny, VKEY_OEM_COMMA}, | 145 {DomCode::US_W, 0, 0, kAny, kAny, VKEY_OEM_COMMA}, |
146 {DomCode::KEY_V, 0, 0, kAny, kAny, VKEY_OEM_COMMA}, | 146 {DomCode::US_V, 0, 0, kAny, kAny, VKEY_OEM_COMMA}, |
147 {DomCode::KEY_M, 0, 0, kAny, kAny, VKEY_OEM_COMMA}, | 147 {DomCode::US_M, 0, 0, kAny, kAny, VKEY_OEM_COMMA}, |
148 {DomCode::COMMA, 0, 0, kAny, kAny, VKEY_OEM_COMMA}}; | 148 {DomCode::COMMA, 0, 0, kAny, kAny, VKEY_OEM_COMMA}}; |
149 | 149 |
150 // U+002D hyphen-minus | 150 // U+002D hyphen-minus |
151 const PrintableSubEntry kU002D[] = { | 151 const PrintableSubEntry kU002D[] = { |
152 {DomCode::DIGIT2, 0, 0, kAny, kAny, VKEY_2}, | 152 {DomCode::DIGIT2, 0, 0, kAny, kAny, VKEY_2}, |
153 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, | 153 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, |
154 {DomCode::MINUS, 0, 0, kAny, kAny, VKEY_OEM_MINUS}, | 154 {DomCode::MINUS, 0, 0, kAny, kAny, VKEY_OEM_MINUS}, |
155 {DomCode::KEY_A, 0, 0, kAny, kAny, VKEY_OEM_MINUS}, | 155 {DomCode::US_A, 0, 0, kAny, kAny, VKEY_OEM_MINUS}, |
156 {DomCode::QUOTE, 0, 0, kAny, kAny, VKEY_OEM_MINUS}, | 156 {DomCode::QUOTE, 0, 0, kAny, kAny, VKEY_OEM_MINUS}, |
157 {DomCode::SLASH, 1, 0, 0x003D, kAny, VKEY_OEM_MINUS}, // = | 157 {DomCode::SLASH, 1, 0, 0x003D, kAny, VKEY_OEM_MINUS}, // = |
158 {DomCode::EQUAL, 1, 1, 0x005F, 0x0157, VKEY_OEM_4}, // _, r cedilla | 158 {DomCode::EQUAL, 1, 1, 0x005F, 0x0157, VKEY_OEM_4}, // _, r cedilla |
159 {DomCode::EQUAL, 1, 0, 0x005F, kAny, VKEY_OEM_MINUS}, // _ | 159 {DomCode::EQUAL, 1, 0, 0x005F, kAny, VKEY_OEM_MINUS}, // _ |
160 {DomCode::SLASH, 1, 1, 0x005F, 0x002F, VKEY_OEM_2}, // _, / | 160 {DomCode::SLASH, 1, 1, 0x005F, 0x002F, VKEY_OEM_2}, // _, / |
161 {DomCode::SLASH, 1, 0, 0x005F, kAny, VKEY_OEM_MINUS}}; // _ | 161 {DomCode::SLASH, 1, 0, 0x005F, kAny, VKEY_OEM_MINUS}}; // _ |
162 | 162 |
163 // U+002E full stop | 163 // U+002E full stop |
164 const PrintableSubEntry kU002E[] = { | 164 const PrintableSubEntry kU002E[] = { |
165 {DomCode::DIGIT7, 0, 0, kAny, kAny, VKEY_7}, | 165 {DomCode::DIGIT7, 0, 0, kAny, kAny, VKEY_7}, |
166 {DomCode::DIGIT8, 0, 0, kAny, kAny, VKEY_8}, | 166 {DomCode::DIGIT8, 0, 0, kAny, kAny, VKEY_8}, |
167 {DomCode::KEY_E, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, | 167 {DomCode::US_E, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, |
168 {DomCode::KEY_R, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, | 168 {DomCode::US_R, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, |
169 {DomCode::KEY_O, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, | 169 {DomCode::US_O, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, |
170 {DomCode::QUOTE, 0, 0, kAny, kAny, VKEY_OEM_7}, | 170 {DomCode::QUOTE, 0, 0, kAny, kAny, VKEY_OEM_7}, |
171 {DomCode::PERIOD, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, | 171 {DomCode::PERIOD, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, |
172 {DomCode::SLASH, 0, 0, kAny, kAny, VKEY_OEM_2}}; | 172 {DomCode::SLASH, 0, 0, kAny, kAny, VKEY_OEM_2}}; |
173 | 173 |
174 // U+002F / | 174 // U+002F / |
175 const PrintableSubEntry kU002F[] = { | 175 const PrintableSubEntry kU002F[] = { |
176 {DomCode::MINUS, 0, 0, kAny, kAny, VKEY_OEM_4}, | 176 {DomCode::MINUS, 0, 0, kAny, kAny, VKEY_OEM_4}, |
177 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_2}, | 177 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_2}, |
178 {DomCode::BACKQUOTE, 0, 0, kAny, kAny, VKEY_OEM_7}, | 178 {DomCode::BACKQUOTE, 0, 0, kAny, kAny, VKEY_OEM_7}, |
179 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_5}, | 179 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_5}, |
180 {DomCode::SLASH, 0, 0, kAny, kAny, VKEY_OEM_2}, | 180 {DomCode::SLASH, 0, 0, kAny, kAny, VKEY_OEM_2}, |
181 {DomCode::DIGIT3, 1, 0, 0x0033, kAny, VKEY_3}, // 3 | 181 {DomCode::DIGIT3, 1, 0, 0x0033, kAny, VKEY_3}, // 3 |
182 {DomCode::DIGIT3, 1, 0, 0x003F, kAny, VKEY_OEM_2}, // ? | 182 {DomCode::DIGIT3, 1, 0, 0x003F, kAny, VKEY_OEM_2}, // ? |
183 {DomCode::DIGIT0, 1, 0, 0x0030, kAny, VKEY_0}, // 0 | 183 {DomCode::DIGIT0, 1, 0, 0x0030, kAny, VKEY_0}, // 0 |
184 {DomCode::DIGIT0, 1, 0, 0x003F, kAny, VKEY_OEM_2}}; // ? | 184 {DomCode::DIGIT0, 1, 0, 0x003F, kAny, VKEY_OEM_2}}; // ? |
185 | 185 |
186 // U+003A colon | 186 // U+003A colon |
187 const PrintableSubEntry kU003A[] = { | 187 const PrintableSubEntry kU003A[] = { |
188 {DomCode::DIGIT1, 0, 0, kAny, kAny, VKEY_1}, | 188 {DomCode::DIGIT1, 0, 0, kAny, kAny, VKEY_1}, |
189 {DomCode::DIGIT5, 0, 0, kAny, kAny, VKEY_5}, | 189 {DomCode::DIGIT5, 0, 0, kAny, kAny, VKEY_5}, |
190 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, | 190 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, |
191 {DomCode::PERIOD, 0, 0, kAny, kAny, VKEY_OEM_2}}; | 191 {DomCode::PERIOD, 0, 0, kAny, kAny, VKEY_OEM_2}}; |
192 | 192 |
193 // U+003B semicolon | 193 // U+003B semicolon |
194 const PrintableSubEntry kU003B[] = { | 194 const PrintableSubEntry kU003B[] = { |
195 {DomCode::DIGIT4, 0, 0, kAny, kAny, VKEY_4}, | 195 {DomCode::DIGIT4, 0, 0, kAny, kAny, VKEY_4}, |
196 {DomCode::DIGIT8, 0, 0, kAny, kAny, VKEY_8}, | 196 {DomCode::DIGIT8, 0, 0, kAny, kAny, VKEY_8}, |
197 {DomCode::KEY_Q, 0, 0, kAny, kAny, VKEY_OEM_1}, | 197 {DomCode::US_Q, 0, 0, kAny, kAny, VKEY_OEM_1}, |
198 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_1}, | 198 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_1}, |
199 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_6}, | 199 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_6}, |
200 {DomCode::SEMICOLON, 0, 0, kAny, kAny, VKEY_OEM_1}, | 200 {DomCode::SEMICOLON, 0, 0, kAny, kAny, VKEY_OEM_1}, |
201 {DomCode::BACKQUOTE, 0, 0, kAny, kAny, VKEY_OEM_3}, | 201 {DomCode::BACKQUOTE, 0, 0, kAny, kAny, VKEY_OEM_3}, |
202 {DomCode::KEY_Z, 0, 0, kAny, kAny, VKEY_OEM_1}, | 202 {DomCode::US_Z, 0, 0, kAny, kAny, VKEY_OEM_1}, |
203 {DomCode::COMMA, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, | 203 {DomCode::COMMA, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}, |
204 {DomCode::SLASH, 0, 0, kAny, kAny, VKEY_OEM_2}}; | 204 {DomCode::SLASH, 0, 0, kAny, kAny, VKEY_OEM_2}}; |
205 // U+003D = | 205 // U+003D = |
206 const PrintableSubEntry kU003D[] = { | 206 const PrintableSubEntry kU003D[] = { |
207 {DomCode::DIGIT8, 0, 0, kAny, kAny, VKEY_8}, | 207 {DomCode::DIGIT8, 0, 0, kAny, kAny, VKEY_8}, |
208 {DomCode::EQUAL, 0, 0, kAny, kAny, VKEY_OEM_PLUS}, | 208 {DomCode::EQUAL, 0, 0, kAny, kAny, VKEY_OEM_PLUS}, |
209 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_PLUS}, | 209 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_PLUS}, |
210 {DomCode::SLASH, 1, 0, 0x0025, kAny, VKEY_OEM_8}, // % | 210 {DomCode::SLASH, 1, 0, 0x0025, kAny, VKEY_OEM_8}, // % |
211 {DomCode::SLASH, 1, 0, 0x002B, kAny, VKEY_OEM_PLUS}, // + | 211 {DomCode::SLASH, 1, 0, 0x002B, kAny, VKEY_OEM_PLUS}, // + |
212 {DomCode::MINUS, 1, 1, 0x0025, 0x002D, VKEY_OEM_MINUS}, // %, - | 212 {DomCode::MINUS, 1, 1, 0x0025, 0x002D, VKEY_OEM_MINUS}, // %, - |
(...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
374 {DomCode::QUOTE, 0, 0, kAny, kAny, VKEY_OEM_3}, | 374 {DomCode::QUOTE, 0, 0, kAny, kAny, VKEY_OEM_3}, |
375 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_2}}; | 375 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_2}}; |
376 | 376 |
377 // U+00FA u acute | 377 // U+00FA u acute |
378 const PrintableSubEntry kU00FA[] = { | 378 const PrintableSubEntry kU00FA[] = { |
379 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_4}, | 379 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_4}, |
380 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_6}}; | 380 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_6}}; |
381 | 381 |
382 // U+00FC u diaeresis | 382 // U+00FC u diaeresis |
383 const PrintableSubEntry kU00FC[] = { | 383 const PrintableSubEntry kU00FC[] = { |
384 {DomCode::KEY_W, 0, 0, kAny, kAny, VKEY_W}, | 384 {DomCode::US_W, 0, 0, kAny, kAny, VKEY_W}, |
385 {DomCode::BRACKET_LEFT, 1, 0, 0x00E8, kAny, VKEY_OEM_1}, // e grave | 385 {DomCode::BRACKET_LEFT, 1, 0, 0x00E8, kAny, VKEY_OEM_1}, // e grave |
386 {DomCode::MINUS, 1, 0, 0x00DC, kAny, VKEY_OEM_2}, // U diaresis | 386 {DomCode::MINUS, 1, 0, 0x00DC, kAny, VKEY_OEM_2}, // U diaresis |
387 {DomCode::BRACKET_LEFT, 1, 1, 0x00DC, 0x0141, VKEY_OEM_3}, // U dia., L- | 387 {DomCode::BRACKET_LEFT, 1, 1, 0x00DC, 0x0141, VKEY_OEM_3}, // U dia., L- |
388 {DomCode::BRACKET_LEFT, 1, 0, 0x00DC, kAny, VKEY_OEM_1}}; // U diaresis | 388 {DomCode::BRACKET_LEFT, 1, 0, 0x00DC, kAny, VKEY_OEM_1}}; // U diaresis |
389 | 389 |
390 // U+0103 a breve | 390 // U+0103 a breve |
391 const PrintableSubEntry kU0103[] = { | 391 const PrintableSubEntry kU0103[] = { |
392 {DomCode::DIGIT1, 0, 0, kAny, kAny, VKEY_1}, | 392 {DomCode::DIGIT1, 0, 0, kAny, kAny, VKEY_1}, |
393 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_4}}; | 393 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_4}}; |
394 | 394 |
395 // U+0105 a ogonek | 395 // U+0105 a ogonek |
396 const PrintableSubEntry kU0105[] = { | 396 const PrintableSubEntry kU0105[] = { |
397 {DomCode::DIGIT1, 0, 0, kAny, kAny, VKEY_1}, | 397 {DomCode::DIGIT1, 0, 0, kAny, kAny, VKEY_1}, |
398 {DomCode::KEY_Q, 0, 0, kAny, kAny, VKEY_Q}, | 398 {DomCode::US_Q, 0, 0, kAny, kAny, VKEY_Q}, |
399 {DomCode::QUOTE, 0, 0, kAny, kAny, VKEY_OEM_7}}; | 399 {DomCode::QUOTE, 0, 0, kAny, kAny, VKEY_OEM_7}}; |
400 | 400 |
401 // U+010D c caron | 401 // U+010D c caron |
402 const PrintableSubEntry kU010D[] = { | 402 const PrintableSubEntry kU010D[] = { |
403 {DomCode::DIGIT2, 0, 0, kAny, kAny, VKEY_2}, | 403 {DomCode::DIGIT2, 0, 0, kAny, kAny, VKEY_2}, |
404 {DomCode::DIGIT4, 0, 0, kAny, kAny, VKEY_4}, | 404 {DomCode::DIGIT4, 0, 0, kAny, kAny, VKEY_4}, |
405 {DomCode::KEY_P, 0, 0, kAny, kAny, VKEY_X}, | 405 {DomCode::US_P, 0, 0, kAny, kAny, VKEY_X}, |
406 {DomCode::SEMICOLON, 0, 0, kAny, kAny, VKEY_OEM_1}, | 406 {DomCode::SEMICOLON, 0, 0, kAny, kAny, VKEY_OEM_1}, |
407 {DomCode::COMMA, 0, 0, kAny, kAny, VKEY_OEM_COMMA}}; | 407 {DomCode::COMMA, 0, 0, kAny, kAny, VKEY_OEM_COMMA}}; |
408 | 408 |
409 // U+0111 d stroke | 409 // U+0111 d stroke |
410 const PrintableSubEntry kU0111[] = { | 410 const PrintableSubEntry kU0111[] = { |
411 {DomCode::DIGIT0, 0, 0, kAny, kAny, VKEY_0}, | 411 {DomCode::DIGIT0, 0, 0, kAny, kAny, VKEY_0}, |
412 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_6}}; | 412 {DomCode::BRACKET_RIGHT, 0, 0, kAny, kAny, VKEY_OEM_6}}; |
413 | 413 |
414 // U+0117 e dot above | 414 // U+0117 e dot above |
415 const PrintableSubEntry kU0117[] = { | 415 const PrintableSubEntry kU0117[] = { |
(...skipping 19 matching lines...) Expand all Loading... |
435 // U+015F s cedilla | 435 // U+015F s cedilla |
436 const PrintableSubEntry kU015F[] = { | 436 const PrintableSubEntry kU015F[] = { |
437 {DomCode::SEMICOLON, 0, 0, kAny, kAny, VKEY_OEM_1}, | 437 {DomCode::SEMICOLON, 0, 0, kAny, kAny, VKEY_OEM_1}, |
438 {DomCode::PERIOD, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}}; | 438 {DomCode::PERIOD, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}}; |
439 | 439 |
440 // U+0161 s caron | 440 // U+0161 s caron |
441 const PrintableSubEntry kU0161[] = { | 441 const PrintableSubEntry kU0161[] = { |
442 {DomCode::DIGIT3, 0, 0, kAny, kAny, VKEY_3}, | 442 {DomCode::DIGIT3, 0, 0, kAny, kAny, VKEY_3}, |
443 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, | 443 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, |
444 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_4}, | 444 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_4}, |
445 {DomCode::KEY_A, 0, 0, kAny, kAny, VKEY_OEM_1}, | 445 {DomCode::US_A, 0, 0, kAny, kAny, VKEY_OEM_1}, |
446 {DomCode::KEY_F, 0, 0, kAny, kAny, VKEY_F}, | 446 {DomCode::US_F, 0, 0, kAny, kAny, VKEY_F}, |
447 {DomCode::PERIOD, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}}; | 447 {DomCode::PERIOD, 0, 0, kAny, kAny, VKEY_OEM_PERIOD}}; |
448 | 448 |
449 // U+016B u macron | 449 // U+016B u macron |
450 const PrintableSubEntry kU016B[] = { | 450 const PrintableSubEntry kU016B[] = { |
451 {DomCode::DIGIT8, 0, 0, kAny, kAny, VKEY_8}, | 451 {DomCode::DIGIT8, 0, 0, kAny, kAny, VKEY_8}, |
452 {DomCode::KEY_Q, 0, 0, kAny, kAny, VKEY_Q}, | 452 {DomCode::US_Q, 0, 0, kAny, kAny, VKEY_Q}, |
453 {DomCode::KEY_X, 0, 0, kAny, kAny, VKEY_X}}; | 453 {DomCode::US_X, 0, 0, kAny, kAny, VKEY_X}}; |
454 | 454 |
455 // U+0173 u ogonek | 455 // U+0173 u ogonek |
456 const PrintableSubEntry kU0173[] = { | 456 const PrintableSubEntry kU0173[] = { |
457 {DomCode::DIGIT7, 0, 0, kAny, kAny, VKEY_7}, | 457 {DomCode::DIGIT7, 0, 0, kAny, kAny, VKEY_7}, |
458 {DomCode::SEMICOLON, 1, 1, 0x0172, 0x0162, VKEY_OEM_1}, // U ogo., T ced. | 458 {DomCode::SEMICOLON, 1, 1, 0x0172, 0x0162, VKEY_OEM_1}, // U ogo., T ced. |
459 {DomCode::SEMICOLON, 1, 0, 0x0172, kAny, VKEY_OEM_3}}; // U ogonek | 459 {DomCode::SEMICOLON, 1, 0, 0x0172, kAny, VKEY_OEM_3}}; // U ogonek |
460 | 460 |
461 // U+017C z dot above | 461 // U+017C z dot above |
462 const PrintableSubEntry kU017C[] = { | 462 const PrintableSubEntry kU017C[] = { |
463 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_4}, | 463 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_OEM_4}, |
464 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_5}}; | 464 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_5}}; |
465 | 465 |
466 // U+017E z caron | 466 // U+017E z caron |
467 const PrintableSubEntry kU017E[] = { | 467 const PrintableSubEntry kU017E[] = { |
468 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, | 468 {DomCode::DIGIT6, 0, 0, kAny, kAny, VKEY_6}, |
469 {DomCode::EQUAL, 0, 0, kAny, kAny, VKEY_OEM_PLUS}, | 469 {DomCode::EQUAL, 0, 0, kAny, kAny, VKEY_OEM_PLUS}, |
470 {DomCode::KEY_W, 0, 0, kAny, kAny, VKEY_W}, | 470 {DomCode::US_W, 0, 0, kAny, kAny, VKEY_W}, |
471 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_Y}, | 471 {DomCode::BRACKET_LEFT, 0, 0, kAny, kAny, VKEY_Y}, |
472 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_5}}; | 472 {DomCode::BACKSLASH, 0, 0, kAny, kAny, VKEY_OEM_5}}; |
473 | 473 |
474 // Table mapping unshifted characters to PrintableSubEntry tables. | 474 // Table mapping unshifted characters to PrintableSubEntry tables. |
475 struct PrintableMultiEntry { | 475 struct PrintableMultiEntry { |
476 base::char16 plain_character; | 476 base::char16 plain_character; |
477 const PrintableSubEntry* subtable; | 477 const PrintableSubEntry* subtable; |
478 size_t subtable_size; | 478 size_t subtable_size; |
479 }; | 479 }; |
480 | 480 |
(...skipping 475 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
956 close_index = layout_name.size(); | 956 close_index = layout_name.size(); |
957 *layout_variant = layout_name.substr(parentheses_index + 1, | 957 *layout_variant = layout_name.substr(parentheses_index + 1, |
958 close_index - parentheses_index - 1); | 958 close_index - parentheses_index - 1); |
959 } else if (dash_index != std::string::npos) { | 959 } else if (dash_index != std::string::npos) { |
960 *layout_id = layout_name.substr(0, dash_index); | 960 *layout_id = layout_name.substr(0, dash_index); |
961 *layout_variant = layout_name.substr(dash_index + 1); | 961 *layout_variant = layout_name.substr(dash_index + 1); |
962 } | 962 } |
963 } | 963 } |
964 | 964 |
965 } // namespace ui | 965 } // namespace ui |
OLD | NEW |