summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmaury Pouly <amaury.pouly@gmail.com>2013-11-20 13:40:16 +0000
committerAmaury Pouly <amaury.pouly@gmail.com>2013-11-20 13:40:16 +0000
commit262479173b5f2053f977232794d3c5f3243302ad (patch)
tree4b674b19d1f2dc667bab5e1b08c579d2b34d33ae
parent1ef7b6529e17dd94f3e002ab566a868616e54932 (diff)
downloadrockbox-262479173b5f2053f977232794d3c5f3243302ad.tar.gz
rockbox-262479173b5f2053f977232794d3c5f3243302ad.zip
sonynwz: rework keymap based on lebellium's work and enable volume in list
Change-Id: Ieb015e78d1c0aa74c61591e442bfdf5f883f3811
-rw-r--r--apps/keymaps/keymap-nwz.c111
-rw-r--r--firmware/export/config/sonynwze360.h3
2 files changed, 65 insertions, 49 deletions
diff --git a/apps/keymaps/keymap-nwz.c b/apps/keymaps/keymap-nwz.c
index 5e9a6292b3..210841ba44 100644
--- a/apps/keymaps/keymap-nwz.c
+++ b/apps/keymaps/keymap-nwz.c
@@ -38,24 +38,25 @@ static const struct button_mapping button_context_standard[] = {
38 { ACTION_STD_NEXT, BUTTON_DOWN, BUTTON_NONE }, 38 { ACTION_STD_NEXT, BUTTON_DOWN, BUTTON_NONE },
39 { ACTION_STD_NEXTREPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, 39 { ACTION_STD_NEXTREPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
40 40
41 { ACTION_STD_CONTEXT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, 41 { ACTION_STD_CONTEXT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY },
42 { ACTION_STD_CONTEXT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, 42 { ACTION_STD_CONTEXT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT },
43 43
44 { ACTION_STD_MENU, BUTTON_BACK, BUTTON_NONE }, 44 { ACTION_STD_MENU, BUTTON_BACK, BUTTON_NONE },
45 { ACTION_STD_MENU, BUTTON_BACK|BUTTON_REPEAT, BUTTON_NONE }, 45 { ACTION_STD_MENU, BUTTON_BACK|BUTTON_REPEAT, BUTTON_NONE },
46 { ACTION_STD_CANCEL, BUTTON_LEFT, BUTTON_NONE }, 46 { ACTION_STD_CANCEL, BUTTON_LEFT, BUTTON_NONE },
47 { ACTION_STD_CANCEL, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, 47 { ACTION_STD_CANCEL, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
48 { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, 48 { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
49 { ACTION_STD_OK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, 49 { ACTION_STD_OK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
50 50
51 LAST_ITEM_IN_LIST 51 LAST_ITEM_IN_LIST
52}; /* button_context_standard */ 52}; /* button_context_standard */
53 53
54static const struct button_mapping button_context_wps[] = { 54static const struct button_mapping button_context_wps[] = {
55 { ACTION_WPS_PLAY, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, 55 { ACTION_WPS_PLAY, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
56 { ACTION_WPS_STOP, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE }, 56 { ACTION_WPS_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE },
57 57
58 { ACTION_WPS_CONTEXT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, 58 { ACTION_WPS_QUICKSCREEN, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
59 { ACTION_WPS_CONTEXT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE },
59 60
60 { ACTION_WPS_SKIPNEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, 61 { ACTION_WPS_SKIPNEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
61 { ACTION_WPS_SEEKFWD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, 62 { ACTION_WPS_SEEKFWD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
@@ -64,14 +65,21 @@ static const struct button_mapping button_context_wps[] = {
64 { ACTION_WPS_STOPSEEK, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT|BUTTON_REPEAT }, 65 { ACTION_WPS_STOPSEEK, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT|BUTTON_REPEAT },
65 { ACTION_WPS_STOPSEEK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT|BUTTON_REPEAT }, 66 { ACTION_WPS_STOPSEEK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT|BUTTON_REPEAT },
66 67
67 { ACTION_WPS_VOLUP, BUTTON_UP, BUTTON_NONE }, 68/* only compiled if there is a Volume UP button defined */
68 { ACTION_WPS_VOLUP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, 69#ifdef BUTTON_VOL_UP
70 { ACTION_WPS_VOLUP, BUTTON_VOL_UP, BUTTON_NONE },
71 { ACTION_WPS_VOLUP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
72 { ACTION_WPS_VOLDOWN, BUTTON_VOL_DOWN, BUTTON_NONE },
73 { ACTION_WPS_VOLDOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
74#endif
69 75
70 { ACTION_WPS_VOLDOWN, BUTTON_DOWN, BUTTON_NONE }, 76 { ACTION_WPS_VOLUP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
77 { ACTION_WPS_VOLUP, BUTTON_UP, BUTTON_NONE },
71 { ACTION_WPS_VOLDOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, 78 { ACTION_WPS_VOLDOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
72 79 { ACTION_WPS_VOLDOWN, BUTTON_DOWN, BUTTON_NONE },
73 { ACTION_WPS_MENU, BUTTON_BACK, BUTTON_NONE }, 80
74 { ACTION_WPS_BROWSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, 81 { ACTION_WPS_MENU, BUTTON_BACK|BUTTON_REPEAT, BUTTON_NONE },
82 { ACTION_WPS_BROWSE, BUTTON_BACK|BUTTON_REL, BUTTON_BACK },
75 83
76 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) 84 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
77}; /* button_context_wps */ 85}; /* button_context_wps */
@@ -89,16 +97,16 @@ static const struct button_mapping button_context_keyboard[] = {
89 { ACTION_KBD_BACKSPACE, BUTTON_BACK, BUTTON_NONE }, 97 { ACTION_KBD_BACKSPACE, BUTTON_BACK, BUTTON_NONE },
90 { ACTION_KBD_BACKSPACE, BUTTON_BACK|BUTTON_REPEAT, BUTTON_NONE }, 98 { ACTION_KBD_BACKSPACE, BUTTON_BACK|BUTTON_REPEAT, BUTTON_NONE },
91 99
92 { ACTION_KBD_SELECT, BUTTON_POWER, BUTTON_NONE }, 100 { ACTION_KBD_SELECT, BUTTON_POWER, BUTTON_NONE },
93 { ACTION_KBD_DONE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, 101 { ACTION_KBD_DONE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY },
94 102
95 LAST_ITEM_IN_LIST 103 LAST_ITEM_IN_LIST
96}; /* button_context_keyboard */ 104}; /* button_context_keyboard */
97 105
98static const struct button_mapping button_context_quickscreen[] = { 106static const struct button_mapping button_context_quickscreen[] = {
99 { ACTION_STD_CANCEL, BUTTON_PLAY, BUTTON_NONE }, 107 { ACTION_STD_CANCEL, BUTTON_PLAY, BUTTON_NONE },
100 { ACTION_STD_CANCEL, BUTTON_BACK, BUTTON_NONE }, 108 { ACTION_STD_CANCEL, BUTTON_BACK, BUTTON_NONE },
101 { ACTION_STD_CANCEL, BUTTON_POWER, BUTTON_NONE }, 109 { ACTION_STD_CANCEL, BUTTON_POWER, BUTTON_NONE },
102 { ACTION_QS_TOP, BUTTON_UP, BUTTON_NONE }, 110 { ACTION_QS_TOP, BUTTON_UP, BUTTON_NONE },
103 { ACTION_QS_DOWN, BUTTON_DOWN, BUTTON_NONE }, 111 { ACTION_QS_DOWN, BUTTON_DOWN, BUTTON_NONE },
104 { ACTION_QS_LEFT, BUTTON_LEFT, BUTTON_NONE }, 112 { ACTION_QS_LEFT, BUTTON_LEFT, BUTTON_NONE },
@@ -108,13 +116,19 @@ static const struct button_mapping button_context_quickscreen[] = {
108}; /* button_context_quickscreen */ 116}; /* button_context_quickscreen */
109 117
110static const struct button_mapping button_context_tree[] = { 118static const struct button_mapping button_context_tree[] = {
111 { ACTION_TREE_WPS, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, 119 { ACTION_TREE_WPS, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
112 { ACTION_TREE_STOP, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE }, 120 { ACTION_TREE_STOP, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE },
113 121
114 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST) 122 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST)
115}; /* button_context_tree */ 123}; /* button_context_tree */
116 124
117static const struct button_mapping button_context_list[] = { 125static const struct button_mapping button_context_list[] = {
126#ifdef HAVE_VOLUME_IN_LIST
127 { ACTION_LIST_VOLUP, BUTTON_VOL_UP, BUTTON_NONE },
128 { ACTION_LIST_VOLUP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
129 { ACTION_LIST_VOLDOWN, BUTTON_VOL_DOWN, BUTTON_NONE },
130 { ACTION_LIST_VOLDOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
131#endif
118 132
119 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) 133 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
120}; /* button_context_list */ 134}; /* button_context_list */
@@ -122,13 +136,13 @@ static const struct button_mapping button_context_list[] = {
122#ifdef CONFIG_TUNER 136#ifdef CONFIG_TUNER
123static const struct button_mapping button_context_radio[] = { 137static const struct button_mapping button_context_radio[] = {
124 138
125 { ACTION_FM_MODE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, 139 { ACTION_FM_MODE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
126 { ACTION_FM_MENU, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, 140 { ACTION_FM_MENU, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE },
127 141
128 { ACTION_FM_PLAY, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, 142 { ACTION_FM_PLAY, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
129 { ACTION_FM_STOP, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE }, 143 { ACTION_FM_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE },
130 144
131 { ACTION_FM_EXIT, BUTTON_BACK, BUTTON_NONE }, 145 { ACTION_FM_EXIT, BUTTON_BACK, BUTTON_NONE },
132 146
133 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS) 147 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS)
134}; /* button_context_radio */ 148}; /* button_context_radio */
@@ -136,8 +150,8 @@ static const struct button_mapping button_context_radio[] = {
136 150
137#ifdef HAVE_RECORDING 151#ifdef HAVE_RECORDING
138static const struct button_mapping button_context_recscreen[] = { 152static const struct button_mapping button_context_recscreen[] = {
139 153
140 { ACTION_REC_PAUSE, BUTTON_POWER, BUTTON_NONE }, 154 { ACTION_REC_PAUSE, BUTTON_PLAY, BUTTON_NONE },
141 { ACTION_SETTINGS_INC, BUTTON_RIGHT, BUTTON_NONE }, 155 { ACTION_SETTINGS_INC, BUTTON_RIGHT, BUTTON_NONE },
142 { ACTION_SETTINGS_INCREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, 156 { ACTION_SETTINGS_INCREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
143 { ACTION_SETTINGS_DEC, BUTTON_LEFT, BUTTON_NONE }, 157 { ACTION_SETTINGS_DEC, BUTTON_LEFT, BUTTON_NONE },
@@ -161,8 +175,8 @@ static const struct button_mapping button_context_settings[] = {
161 { ACTION_STD_NEXT, BUTTON_RIGHT, BUTTON_NONE }, 175 { ACTION_STD_NEXT, BUTTON_RIGHT, BUTTON_NONE },
162 { ACTION_STD_NEXTREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, 176 { ACTION_STD_NEXTREPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
163 177
164 { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, 178 { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
165 { ACTION_SETTINGS_RESET, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, 179 { ACTION_SETTINGS_RESET, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE },
166 180
167 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) 181 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD)
168}; /* button_context_settings */ 182}; /* button_context_settings */
@@ -183,27 +197,27 @@ static const struct button_mapping button_context_settings_right_is_inc[] = {
183static const struct button_mapping button_context_time[] = { 197static const struct button_mapping button_context_time[] = {
184 198
185 { ACTION_STD_CANCEL, BUTTON_BACK, BUTTON_NONE }, 199 { ACTION_STD_CANCEL, BUTTON_BACK, BUTTON_NONE },
186 { ACTION_STD_OK, BUTTON_POWER, BUTTON_NONE }, 200 { ACTION_STD_OK, BUTTON_PLAY, BUTTON_NONE },
187 201
188 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS) 202 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_SETTINGS)
189}; /* button_context_time */ 203}; /* button_context_time */
190 204
191static const struct button_mapping button_context_colorchooser[] = { 205static const struct button_mapping button_context_colorchooser[] = {
192 { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, 206 { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
193 { ACTION_STD_CANCEL, BUTTON_BACK, BUTTON_NONE }, 207 { ACTION_STD_CANCEL, BUTTON_BACK, BUTTON_NONE },
194 208
195 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_SETTINGS), 209 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_SETTINGS),
196}; /* button_context_colorchooser */ 210}; /* button_context_colorchooser */
197 211
198static const struct button_mapping button_context_eq[] = { 212static const struct button_mapping button_context_eq[] = {
199 { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, 213 { ACTION_STD_OK, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
200 214
201 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_SETTINGS), 215 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM|CONTEXT_SETTINGS),
202}; /* button_context_eq */ 216}; /* button_context_eq */
203 217
204/* Bookmark Screen */ 218/* Bookmark Screen */
205static const struct button_mapping button_context_bmark[] = { 219static const struct button_mapping button_context_bmark[] = {
206 { ACTION_BMS_DELETE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, 220 { ACTION_BMS_DELETE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY },
207 221
208 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST), 222 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_LIST),
209}; /* button_context_bmark */ 223}; /* button_context_bmark */
@@ -220,9 +234,9 @@ static const struct button_mapping button_context_pitchscreen[] = {
220 { ACTION_PS_NUDGE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, 234 { ACTION_PS_NUDGE_RIGHT, BUTTON_RIGHT, BUTTON_NONE },
221 { ACTION_PS_NUDGE_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, 235 { ACTION_PS_NUDGE_RIGHT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
222 236
223 { ACTION_PS_RESET, BUTTON_PLAY, BUTTON_NONE }, 237 { ACTION_PS_RESET, BUTTON_PLAY, BUTTON_NONE },
224 { ACTION_PS_EXIT, BUTTON_BACK, BUTTON_NONE }, 238 { ACTION_PS_EXIT, BUTTON_BACK, BUTTON_NONE },
225 { ACTION_PS_EXIT, BUTTON_POWER, BUTTON_NONE }, 239 { ACTION_PS_EXIT, BUTTON_POWER, BUTTON_NONE },
226 240
227 LAST_ITEM_IN_LIST 241 LAST_ITEM_IN_LIST
228}; /* button_context_pitchcreen */ 242}; /* button_context_pitchcreen */
@@ -245,20 +259,19 @@ static const struct button_mapping button_context_usb_hid_mode_multimedia[] = {
245 { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, 259 { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
246 { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP, BUTTON_NONE }, 260 { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP, BUTTON_NONE },
247 { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, 261 { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
248 { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, 262 { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY },
249 { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_BACK|BUTTON_REL, BUTTON_BACK }, 263 { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_BACK|BUTTON_REL, BUTTON_BACK },
250 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, 264 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
251 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, 265 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER },
252 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, 266 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
253 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, 267 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
254 268
255 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) 269 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
256}; /* button_context_usb_hid_mode_multimedia */ 270}; /* button_context_usb_hid_mode_multimedia */
257 271
258
259static const struct button_mapping button_context_usb_hid_mode_presentation[] = { 272static const struct button_mapping button_context_usb_hid_mode_presentation[] = {
260 { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, 273 { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
261 { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, 274 { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER },
262 { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, 275 { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
263 { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, 276 { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
264 { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, 277 { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE },
@@ -267,8 +280,8 @@ static const struct button_mapping button_context_usb_hid_mode_presentation[] =
267 { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, 280 { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
268 { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN, BUTTON_NONE }, 281 { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN, BUTTON_NONE },
269 { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, 282 { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
270 { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_PLAY, BUTTON_PLAY }, 283 { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_PLAY, BUTTON_PLAY },
271 { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, 284 { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY },
272 285
273 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) 286 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
274}; /* button_context_usb_hid_mode_presentation */ 287}; /* button_context_usb_hid_mode_presentation */
@@ -278,13 +291,13 @@ static const struct button_mapping button_context_usb_hid_mode_browser[] = {
278 { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, 291 { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
279 { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, 292 { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE },
280 { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, 293 { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE },
281 { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE }, 294 { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE },
282 { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, 295 { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
283 { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, 296 { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
284 { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_BACK|BUTTON_REPEAT, BUTTON_BACK }, 297 { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_BACK|BUTTON_REPEAT, BUTTON_BACK },
285 { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, 298 { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT },
286 { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, 299 { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT },
287 { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, 300 { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY },
288 301
289 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) 302 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
290}; /* button_context_usb_hid_mode_browser */ 303}; /* button_context_usb_hid_mode_browser */
@@ -300,15 +313,15 @@ static const struct button_mapping button_context_usb_hid_mode_mouse[] = {
300 { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, 313 { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE },
301 { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, 314 { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE },
302 315
303 { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_PLAY, BUTTON_NONE }, 316 { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_PLAY, BUTTON_NONE },
304 { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, 317 { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE },
305 318
306 { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_POWER, BUTTON_NONE }, 319 { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_POWER, BUTTON_NONE },
307 { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, 320 { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
308 321
309 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_BACK, BUTTON_NONE }, 322 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_BACK, BUTTON_NONE },
310 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_BACK|BUTTON_REPEAT, BUTTON_NONE }, 323 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_BACK|BUTTON_REPEAT, BUTTON_NONE },
311 324
312 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) 325 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
313}; /* button_context_usb_hid_mode_mouse */ 326}; /* button_context_usb_hid_mode_mouse */
314#endif 327#endif
diff --git a/firmware/export/config/sonynwze360.h b/firmware/export/config/sonynwze360.h
index a0f05f4342..ddb197950d 100644
--- a/firmware/export/config/sonynwze360.h
+++ b/firmware/export/config/sonynwze360.h
@@ -40,6 +40,9 @@
40/* define this if you would like tagcache to build on this target */ 40/* define this if you would like tagcache to build on this target */
41#define HAVE_TAGCACHE 41#define HAVE_TAGCACHE
42 42
43/* define this if the target has volume keys which can be used in the lists */
44#define HAVE_VOLUME_IN_LIST
45
43/* define this if you have LCD enable function */ 46/* define this if you have LCD enable function */
44#define HAVE_LCD_ENABLE 47#define HAVE_LCD_ENABLE
45 48