1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
| #ifndef ANDROIDTVREMOTE_SERVICE_JNI_KEYS_H_
| #define ANDROIDTVREMOTE_SERVICE_JNI_KEYS_H_
|
| #include <android/keycodes.h>
| #include <linux/input.h>
|
| namespace android {
|
| // Map the keys specified in virtual-remote.kl.
| // Only specify the keys actually used in the layout here.
| struct Key {
| int linuxKeyCode;
| int32_t androidKeyCode;
| };
|
| // List of all of the keycodes that the emote is capable of sending.
| static Key KEYS[] = {
| // Volume Control
| { KEY_VOLUMEDOWN, AKEYCODE_VOLUME_DOWN },
| { KEY_VOLUMEUP, AKEYCODE_VOLUME_UP },
| { KEY_MUTE, AKEYCODE_VOLUME_MUTE },
| { KEY_MUTE, AKEYCODE_MUTE },
|
| { KEY_POWER, AKEYCODE_POWER },
| { KEY_HOMEPAGE, AKEYCODE_HOME },
| { KEY_BACK, AKEYCODE_BACK },
|
| // Media Control
| { KEY_PLAYPAUSE, AKEYCODE_MEDIA_PLAY_PAUSE },
| { KEY_PLAY, AKEYCODE_MEDIA_PLAY },
| { KEY_PAUSECD, AKEYCODE_MEDIA_PAUSE },
| { KEY_NEXTSONG, AKEYCODE_MEDIA_NEXT },
| { KEY_PREVIOUSSONG, AKEYCODE_MEDIA_PREVIOUS },
| { KEY_STOPCD, AKEYCODE_MEDIA_STOP },
| { KEY_RECORD, AKEYCODE_MEDIA_RECORD },
| { KEY_REWIND, AKEYCODE_MEDIA_REWIND },
| { KEY_FASTFORWARD, AKEYCODE_MEDIA_FAST_FORWARD },
|
| // TV Control
| { KEY_0, AKEYCODE_0 },
| { KEY_1, AKEYCODE_1 },
| { KEY_2, AKEYCODE_2 },
| { KEY_3, AKEYCODE_3 },
| { KEY_4, AKEYCODE_4 },
| { KEY_5, AKEYCODE_5 },
| { KEY_6, AKEYCODE_6 },
| { KEY_7, AKEYCODE_7 },
| { KEY_8, AKEYCODE_8 },
| { KEY_9, AKEYCODE_9 },
| { KEY_BACKSPACE, AKEYCODE_DEL },
| { KEY_ENTER, AKEYCODE_ENTER},
| { KEY_CHANNELUP, AKEYCODE_CHANNEL_UP },
| { KEY_CHANNELDOWN, AKEYCODE_CHANNEL_DOWN },
|
| // Old School TV Controls
| { KEY_F1, AKEYCODE_F1 },
| { KEY_F2, AKEYCODE_F2 },
| { KEY_F3, AKEYCODE_F3 },
| { KEY_F4, AKEYCODE_F4 },
| { KEY_F5, AKEYCODE_F5 },
| { KEY_F6, AKEYCODE_F6 },
| { KEY_F7, AKEYCODE_F7 },
| { KEY_F8, AKEYCODE_F8 },
| { KEY_F9, AKEYCODE_F9 },
| { KEY_F10, AKEYCODE_F10 },
| { KEY_F11, AKEYCODE_F11 },
| { KEY_F12, AKEYCODE_F12 },
| { KEY_FN_F1, AKEYCODE_F1 },
| { KEY_FN_F2, AKEYCODE_F2 },
| { KEY_FN_F3, AKEYCODE_F3 },
| { KEY_FN_F4, AKEYCODE_F4 },
| { KEY_FN_F5, AKEYCODE_F5 },
| { KEY_FN_F6, AKEYCODE_F6 },
| { KEY_FN_F7, AKEYCODE_F7 },
| { KEY_FN_F8, AKEYCODE_F8 },
| { KEY_FN_F9, AKEYCODE_F9 },
| { KEY_FN_F10, AKEYCODE_F10 },
| { KEY_FN_F11, AKEYCODE_F11 },
| { KEY_FN_F12, AKEYCODE_F12 },
| { KEY_TV, AKEYCODE_TV },
| { KEY_RED, AKEYCODE_PROG_RED },
| { KEY_GREEN, AKEYCODE_PROG_GREEN },
| { KEY_YELLOW, AKEYCODE_PROG_YELLOW },
| { KEY_BLUE, AKEYCODE_PROG_BLUE },
|
| { KEY_FAVORITES, AKEYCODE_BUTTON_MODE},
| { KEY_WWW, AKEYCODE_EXPLORER },
| { KEY_MENU, AKEYCODE_MENU },
| { KEY_INFO, AKEYCODE_INFO },
| { KEY_EPG, AKEYCODE_GUIDE },
| { KEY_TEXT, AKEYCODE_TV_TELETEXT },
| { KEY_SUBTITLE, AKEYCODE_CAPTIONS },
| { KEY_PVR, AKEYCODE_DVR},
| { KEY_AUDIO, AKEYCODE_MEDIA_AUDIO_TRACK},
| { KEY_OPTION, AKEYCODE_SETTINGS},
|
| // Gamepad buttons
| { KEY_UP, AKEYCODE_DPAD_UP },
| { KEY_DOWN, AKEYCODE_DPAD_DOWN },
| { KEY_LEFT, AKEYCODE_DPAD_LEFT },
| { KEY_RIGHT, AKEYCODE_DPAD_RIGHT },
| { KEY_SELECT, AKEYCODE_DPAD_CENTER },
| { BTN_A, AKEYCODE_BUTTON_A },
| { BTN_B, AKEYCODE_BUTTON_B },
| { BTN_X, AKEYCODE_BUTTON_X },
| { BTN_Y, AKEYCODE_BUTTON_Y },
|
| { KEY_SEARCH, AKEYCODE_SEARCH },
| };
|
| } // namespace android
|
| #endif // SERVICE_JNI_KEYS_H_
|
|