• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #ifndef REMOTING_IOS_KEY_MAP_US_H_
6 #define REMOTING_IOS_KEY_MAP_US_H_
7 
8 // A mapping for the US keyboard on a US IPAD to Chromoting Scancodes
9 
10 // This must be less than or equal to the size of
11 // kIsShiftRequiredUS and kKeyCodeUS.
12 const int kKeyboardKeyMaxUS = 126;
13 
14 // Index for specific keys
15 const uint32_t kShiftIndex = 128;
16 const uint32_t kBackspaceIndex = 129;
17 const uint32_t kCtrlIndex = 130;
18 const uint32_t kAltIndex = 131;
19 const uint32_t kDelIndex = 132;
20 
21 const BOOL kIsShiftRequiredUS[] = {
22     NO,   // [0]      Numbering fields by index, not by count
23     NO,   //
24     NO,   //
25     NO,   //
26     NO,   //
27     NO,   //
28     NO,   //
29     NO,   //
30     NO,   //
31     NO,   //
32     NO,   // [10]     ENTER
33     NO,   //
34     NO,   //
35     NO,   //
36     NO,   //
37     NO,   //
38     NO,   //
39     NO,   //
40     NO,   //
41     NO,   //
42     NO,   // [20]
43     NO,   //
44     NO,   //
45     NO,   //
46     NO,   //
47     NO,   //
48     NO,   //
49     NO,   //
50     NO,   //
51     NO,   //
52     NO,   // [30]
53     NO,   //
54     NO,   //          SPACE
55     YES,  //          !
56     YES,  //          "
57     YES,  //          #
58     YES,  //          $
59     YES,  //          %
60     YES,  //          &
61     NO,   //          '
62     YES,  // [40]     (
63     YES,  //          )
64     YES,  //          *
65     YES,  //          +
66     NO,   //          ,
67     NO,   //          -
68     NO,   //          .
69     NO,   //          /
70     NO,   //          0
71     NO,   //          1
72     NO,   // [50]     2
73     NO,   //          3
74     NO,   //          4
75     NO,   //          5
76     NO,   //          6
77     NO,   //          7
78     NO,   //          8
79     NO,   //          9
80     YES,  //          :
81     NO,   //          ;
82     YES,  // [60]     <
83     NO,   //          =
84     YES,  //          >
85     YES,  //          ?
86     YES,  //          @
87     YES,  //          A
88     YES,  //          B
89     YES,  //          C
90     YES,  //          D
91     YES,  //          E
92     YES,  // [70]     F
93     YES,  //          G
94     YES,  //          H
95     YES,  //          I
96     YES,  //          J
97     YES,  //          K
98     YES,  //          L
99     YES,  //          M
100     YES,  //          N
101     YES,  //          O
102     YES,  // [80]     P
103     YES,  //          Q
104     YES,  //          R
105     YES,  //          S
106     YES,  //          T
107     YES,  //          U
108     YES,  //          V
109     YES,  //          W
110     YES,  //          X
111     YES,  //          Y
112     YES,  // [90]     Z
113     NO,   //          [
114     NO,   //          BACKSLASH
115     NO,   //          ]
116     YES,  //          ^
117     YES,  //          _
118     NO,   //
119     NO,   //          a
120     NO,   //          b
121     NO,   //          c
122     NO,   // [100]    d
123     NO,   //          e
124     NO,   //          f
125     NO,   //          g
126     NO,   //          h
127     NO,   //          i
128     NO,   //          j
129     NO,   //          k
130     NO,   //          l
131     NO,   //          m
132     NO,   // [110]    n
133     NO,   //          o
134     NO,   //          p
135     NO,   //          q
136     NO,   //          r
137     NO,   //          s
138     NO,   //          t
139     NO,   //          u
140     NO,   //          v
141     NO,   //          w
142     NO,   // [120]    x
143     NO,   //          y
144     NO,   //          z
145     YES,  //          {
146     YES,  //          |
147     YES,  //          }
148     YES,  //          ~
149     NO    // [127]
150 };
151 
152 const uint32_t kKeyCodeUS[] = {
153     0,         // [0]      Numbering fields by index, not by count
154     0,         //
155     0,         //
156     0,         //
157     0,         //
158     0,         //
159     0,         //
160     0,         //
161     0,         //
162     0,         //
163     0x070028,  // [10]     ENTER
164     0,         //
165     0,         //
166     0,         //
167     0,         //
168     0,         //
169     0,         //
170     0,         //
171     0,         //
172     0,         //
173     0,         // [20]
174     0,         //
175     0,         //
176     0,         //
177     0,         //
178     0,         //
179     0,         //
180     0,         //
181     0,         //
182     0,         //
183     0,         // [30]
184     0,         //
185     0x07002c,  //          SPACE
186     0x07001e,  //          !
187     0x070034,  //          "
188     0x070020,  //          #
189     0x070021,  //          $
190     0x070022,  //          %
191     0x070024,  //          &
192     0x070034,  //          '
193     0x070026,  // [40]     (
194     0x070027,  //          )
195     0x070025,  //          *
196     0x07002e,  //          +
197     0x070036,  //          ,
198     0x07002d,  //          -
199     0x070037,  //          .
200     0x070038,  //          /
201     0x070027,  //          0
202     0x07001e,  //          1
203     0x07001f,  // [50]     2
204     0x070020,  //          3
205     0x070021,  //          4
206     0x070022,  //          5
207     0x070023,  //          6
208     0x070024,  //          7
209     0x070025,  //          8
210     0x070026,  //          9
211     0x070033,  //          :
212     0x070033,  //          ;
213     0x070036,  // [60]     <
214     0x07002e,  //          =
215     0x070037,  //          >
216     0x070038,  //          ?
217     0x07001f,  //          @
218     0x070004,  //          A
219     0x070005,  //          B
220     0x070006,  //          C
221     0x070007,  //          D
222     0x070008,  //          E
223     0x070009,  // [70]     F
224     0x07000a,  //          G
225     0x07000b,  //          H
226     0x07000c,  //          I
227     0x07000d,  //          J
228     0x07000e,  //          K
229     0x07000f,  //          L
230     0x070010,  //          M
231     0x070011,  //          N
232     0x070012,  //          O
233     0x070013,  // [80]     P
234     0x070014,  //          Q
235     0x070015,  //          R
236     0x070016,  //          S
237     0x070017,  //          T
238     0x070018,  //          U
239     0x070019,  //          V
240     0x07001a,  //          W
241     0x07001b,  //          X
242     0x07001c,  //          Y
243     0x07001d,  // [90]     Z
244     0x07002f,  //          [
245     0x070031,  //          BACKSLASH
246     0x070030,  //          ]
247     0x070023,  //          ^
248     0x07002d,  //          _
249     0,         //
250     0x070004,  //          a
251     0x070005,  //          b
252     0x070006,  //          c
253     0x070007,  // [100]    d
254     0x070008,  //          e
255     0x070009,  //          f
256     0x07000a,  //          g
257     0x07000b,  //          h
258     0x07000c,  //          i
259     0x07000d,  //          j
260     0x07000e,  //          k
261     0x07000f,  //          l
262     0x070010,  //          m
263     0x070011,  // [110]    n
264     0x070012,  //          o
265     0x070013,  //          p
266     0x070014,  //          q
267     0x070015,  //          r
268     0x070016,  //          s
269     0x070017,  //          t
270     0x070018,  //          u
271     0x070019,  //          v
272     0x07001a,  //          w
273     0x07001b,  // [120]    x
274     0x07001c,  //          y
275     0x07001d,  //          z
276     0x07002f,  //          {
277     0x070031,  //          |
278     0x070030,  //          }
279     0x070035,  //          ~
280     0,         // [127]
281     0x0700e1,  //          SHIFT
282     0x07002a,  //          BACKSPACE
283     0x0700e0,  //          CTRL
284     0x0700e2,  //          ALT
285     0x07004c,  //          DEL
286 };
287 
288 #endif  // REMOTING_IOS_KEY_MAP_US_H_
289