diff options
Diffstat (limited to 'apps/keymaps')
-rw-r--r-- | apps/keymaps/keymap-c100.c | 90 | ||||
-rw-r--r-- | apps/keymaps/keymap-c200.c | 88 | ||||
-rw-r--r-- | apps/keymaps/keymap-clip.c | 88 | ||||
-rw-r--r-- | apps/keymaps/keymap-e200.c | 88 | ||||
-rw-r--r-- | apps/keymaps/keymap-gigabeat-s.c | 197 | ||||
-rw-r--r-- | apps/keymaps/keymap-h10.c | 119 | ||||
-rw-r--r-- | apps/keymaps/keymap-hdd1630.c | 164 | ||||
-rw-r--r-- | apps/keymaps/keymap-ipod.c | 148 | ||||
-rw-r--r-- | apps/keymaps/keymap-mr100.c | 273 | ||||
-rw-r--r-- | apps/keymaps/keymap-ondavx747.c | 55 | ||||
-rw-r--r-- | apps/keymaps/keymap-sa9200.c | 97 | ||||
-rw-r--r-- | apps/keymaps/keymap-touchscreen.c | 83 |
12 files changed, 1027 insertions, 463 deletions
diff --git a/apps/keymaps/keymap-c100.c b/apps/keymaps/keymap-c100.c index 7ee400f345..457e81ed99 100644 --- a/apps/keymaps/keymap-c100.c +++ b/apps/keymaps/keymap-c100.c | |||
@@ -234,27 +234,68 @@ static const struct button_mapping button_context_bmark[] = { | |||
234 | 234 | ||
235 | #ifdef USB_ENABLE_HID | 235 | #ifdef USB_ENABLE_HID |
236 | static const struct button_mapping button_context_usb_hid[] = { | 236 | static const struct button_mapping button_context_usb_hid[] = { |
237 | { ACTION_USB_HID_INC, BUTTON_VOLUP, BUTTON_NONE }, | 237 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_MODE|BUTTON_REL, BUTTON_MODE }, |
238 | { ACTION_USB_HID_INC, BUTTON_VOLUP|BUTTON_REPEAT, BUTTON_NONE }, | 238 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_MODE|BUTTON_REPEAT, BUTTON_MODE }, |
239 | { ACTION_USB_HID_DEC, BUTTON_VOLDOWN, BUTTON_NONE }, | ||
240 | { ACTION_USB_HID_DEC, BUTTON_VOLDOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
241 | { ACTION_USB_HID_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
242 | { ACTION_USB_HID_START_LONG, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
243 | { ACTION_USB_HID_QUIT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
244 | { ACTION_USB_HID_QUIT_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
245 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
246 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
247 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
248 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
249 | { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
250 | { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
251 | { ACTION_USB_HID_MENU, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
252 | { ACTION_USB_HID_MODE, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
253 | 239 | ||
254 | LAST_ITEM_IN_LIST | 240 | LAST_ITEM_IN_LIST |
255 | }; /* button_context_usb_hid */ | 241 | }; /* button_context_usb_hid */ |
256 | 242 | ||
257 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 243 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { |
244 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOLUP, BUTTON_NONE }, | ||
245 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOLUP|BUTTON_REPEAT, BUTTON_NONE }, | ||
246 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOLDOWN, BUTTON_NONE }, | ||
247 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOLDOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
248 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
249 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
250 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
251 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
252 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
253 | |||
254 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
255 | }; /* button_context_usb_hid_mode_multimedia */ | ||
256 | |||
257 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
258 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
259 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
260 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
261 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
262 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
263 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
264 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
265 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
266 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOLUP, BUTTON_NONE }, | ||
267 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOLUP|BUTTON_REPEAT, BUTTON_NONE }, | ||
268 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOLDOWN, BUTTON_NONE }, | ||
269 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOLDOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
270 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
271 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
272 | |||
273 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
274 | }; /* button_context_usb_hid_mode_presentation */ | ||
275 | |||
276 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
277 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOLUP, BUTTON_NONE }, | ||
278 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOLUP|BUTTON_REPEAT, BUTTON_NONE }, | ||
279 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOLDOWN, BUTTON_NONE }, | ||
280 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOLDOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
281 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
282 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
283 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
284 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
285 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
286 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_UP|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_UP|BUTTON_DOWN }, | ||
287 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
288 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
289 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
290 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
291 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
292 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
293 | |||
294 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
295 | }; /* button_context_usb_hid_mode_browser */ | ||
296 | |||
297 | #ifdef HAVE_USB_HID_MOUSE | ||
298 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { | ||
258 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | 299 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, |
259 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 300 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
260 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | 301 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
@@ -289,7 +330,8 @@ static const struct button_mapping button_context_usb_hid_mouse[] = { | |||
289 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOLDOWN|BUTTON_REPEAT, BUTTON_NONE }, | 330 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOLDOWN|BUTTON_REPEAT, BUTTON_NONE }, |
290 | 331 | ||
291 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 332 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
292 | }; /* button_context_usb_hid_mouse */ | 333 | }; /* button_context_usb_hid_mode_mouse */ |
334 | #endif | ||
293 | #endif | 335 | #endif |
294 | 336 | ||
295 | /* get_context_mapping returns a pointer to one of the above defined arrays depending on the context */ | 337 | /* get_context_mapping returns a pointer to one of the above defined arrays depending on the context */ |
@@ -343,8 +385,16 @@ const struct button_mapping* get_context_mapping(int context) | |||
343 | #ifdef USB_ENABLE_HID | 385 | #ifdef USB_ENABLE_HID |
344 | case CONTEXT_USB_HID: | 386 | case CONTEXT_USB_HID: |
345 | return button_context_usb_hid; | 387 | return button_context_usb_hid; |
346 | case CONTEXT_USB_HID_MOUSE: | 388 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: |
347 | return button_context_usb_hid_mouse; | 389 | return button_context_usb_hid_mode_multimedia; |
390 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
391 | return button_context_usb_hid_mode_presentation; | ||
392 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
393 | return button_context_usb_hid_mode_browser; | ||
394 | #ifdef HAVE_USB_HID_MOUSE | ||
395 | case CONTEXT_USB_HID_MODE_MOUSE: | ||
396 | return button_context_usb_hid_mode_mouse; | ||
397 | #endif | ||
348 | #endif | 398 | #endif |
349 | default: | 399 | default: |
350 | return button_context_standard; | 400 | return button_context_standard; |
diff --git a/apps/keymaps/keymap-c200.c b/apps/keymaps/keymap-c200.c index 7acbe85420..af7c990340 100644 --- a/apps/keymaps/keymap-c200.c +++ b/apps/keymaps/keymap-c200.c | |||
@@ -266,30 +266,68 @@ static const struct button_mapping button_context_bmark[] = { | |||
266 | 266 | ||
267 | #ifdef USB_ENABLE_HID | 267 | #ifdef USB_ENABLE_HID |
268 | static const struct button_mapping button_context_usb_hid[] = { | 268 | static const struct button_mapping button_context_usb_hid[] = { |
269 | { ACTION_USB_HID_INC, BUTTON_VOL_UP, BUTTON_NONE }, | 269 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_REC|BUTTON_REL, BUTTON_REC }, |
270 | { ACTION_USB_HID_INC, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 270 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_REC|BUTTON_REPEAT, BUTTON_REC }, |
271 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
272 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
273 | { ACTION_USB_HID_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
274 | { ACTION_USB_HID_START_LONG, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
275 | { ACTION_USB_HID_QUIT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
276 | { ACTION_USB_HID_QUIT_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
277 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
278 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
279 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
280 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
281 | { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
282 | { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
283 | { ACTION_USB_HID_MENU, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
284 | { ACTION_USB_HID_MENU_LONG, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
285 | { ACTION_USB_HID_MODE, BUTTON_REC|BUTTON_REL, BUTTON_REC }, | ||
286 | { ACTION_USB_HID_MODE_LONG, BUTTON_REC|BUTTON_REPEAT, BUTTON_REC }, | ||
287 | 271 | ||
288 | LAST_ITEM_IN_LIST | 272 | LAST_ITEM_IN_LIST |
289 | }; /* button_context_usb_hid */ | 273 | }; /* button_context_usb_hid */ |
290 | 274 | ||
275 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { | ||
276 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
277 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
278 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
279 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
280 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
281 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
282 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
283 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
284 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
285 | |||
286 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
287 | }; /* button_context_usb_hid_mode_multimedia */ | ||
288 | |||
289 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
290 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
291 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
292 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
293 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
294 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
295 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
296 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
297 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
298 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP, BUTTON_NONE }, | ||
299 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
300 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
301 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
302 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
303 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
304 | |||
305 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
306 | }; /* button_context_usb_hid_mode_presentation */ | ||
307 | |||
308 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
309 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
310 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
311 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
312 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
313 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
314 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
315 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
316 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
317 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
318 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_UP|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_UP|BUTTON_DOWN }, | ||
319 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
320 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
321 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
322 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
323 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
324 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
325 | |||
326 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
327 | }; /* button_context_usb_hid_mode_browser */ | ||
328 | |||
291 | #ifdef HAVE_USB_HID_MOUSE | 329 | #ifdef HAVE_USB_HID_MOUSE |
292 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 330 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { |
293 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | 331 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, |
294 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 332 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
295 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | 333 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
@@ -324,7 +362,7 @@ static const struct button_mapping button_context_usb_hid_mouse[] = { | |||
324 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 362 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
325 | 363 | ||
326 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 364 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
327 | }; /* button_context_usb_hid_mouse */ | 365 | }; /* button_context_usb_hid_mode_mouse */ |
328 | #endif | 366 | #endif |
329 | #endif | 367 | #endif |
330 | 368 | ||
@@ -377,9 +415,15 @@ const struct button_mapping* get_context_mapping(int context) | |||
377 | #ifdef USB_ENABLE_HID | 415 | #ifdef USB_ENABLE_HID |
378 | case CONTEXT_USB_HID: | 416 | case CONTEXT_USB_HID: |
379 | return button_context_usb_hid; | 417 | return button_context_usb_hid; |
418 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
419 | return button_context_usb_hid_mode_multimedia; | ||
420 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
421 | return button_context_usb_hid_mode_presentation; | ||
422 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
423 | return button_context_usb_hid_mode_browser; | ||
380 | #ifdef HAVE_USB_HID_MOUSE | 424 | #ifdef HAVE_USB_HID_MOUSE |
381 | case CONTEXT_USB_HID_MOUSE: | 425 | case CONTEXT_USB_HID_MODE_MOUSE: |
382 | return button_context_usb_hid_mouse; | 426 | return button_context_usb_hid_mode_mouse; |
383 | #endif | 427 | #endif |
384 | #endif | 428 | #endif |
385 | default: | 429 | default: |
diff --git a/apps/keymaps/keymap-clip.c b/apps/keymaps/keymap-clip.c index b2821664d7..ddc1d3f82a 100644 --- a/apps/keymaps/keymap-clip.c +++ b/apps/keymaps/keymap-clip.c | |||
@@ -275,30 +275,68 @@ static const struct button_mapping button_context_bmark[] = { | |||
275 | 275 | ||
276 | #ifdef USB_ENABLE_HID | 276 | #ifdef USB_ENABLE_HID |
277 | static const struct button_mapping button_context_usb_hid[] = { | 277 | static const struct button_mapping button_context_usb_hid[] = { |
278 | { ACTION_USB_HID_INC, BUTTON_VOL_UP, BUTTON_NONE }, | 278 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, |
279 | { ACTION_USB_HID_INC, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 279 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, |
280 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
281 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
282 | { ACTION_USB_HID_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
283 | { ACTION_USB_HID_START_LONG, BUTTON_UP|BOTTOM_REPEAT, BUTTON_UP }, | ||
284 | { ACTION_USB_HID_QUIT, BUTTON_HOME|BUTTON_REL, BUTTON_HOME }, | ||
285 | { ACTION_USB_HID_QUIT_LONG, BUTTON_HOME|BUTTON_REPEAT, BUTTON_HOME }, | ||
286 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
287 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
288 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
289 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
290 | { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
291 | { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
292 | { ACTION_USB_HID_MENU, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
293 | { ACTION_USB_HID_MENU_LONG, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
294 | { ACTION_USB_HID_MODE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
295 | { ACTION_USB_HID_MODE_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
296 | 280 | ||
297 | LAST_ITEM_IN_LIST | 281 | LAST_ITEM_IN_LIST |
298 | }; /* button_context_usb_hid */ | 282 | }; /* button_context_usb_hid */ |
299 | 283 | ||
284 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { | ||
285 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
286 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
287 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
288 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
289 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
290 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
291 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_HOME|BUTTON_REL, BUTTON_HOME }, | ||
292 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
293 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
294 | |||
295 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
296 | }; /* button_context_usb_hid_mode_multimedia */ | ||
297 | |||
298 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
299 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
300 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_HOME|BUTTON_REL, BUTTON_HOME }, | ||
301 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
302 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
303 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
304 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
305 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
306 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
307 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP, BUTTON_NONE }, | ||
308 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
309 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
310 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
311 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
312 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
313 | |||
314 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
315 | }; /* button_context_usb_hid_mode_presentation */ | ||
316 | |||
317 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
318 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
319 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
320 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
321 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
322 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
323 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
324 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
325 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
326 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
327 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_UP|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_UP|BUTTON_DOWN }, | ||
328 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
329 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
330 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_HOME|BUTTON_REPEAT, BUTTON_HOME }, | ||
331 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
332 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
333 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
334 | |||
335 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
336 | }; /* button_context_usb_hid_mode_browser */ | ||
337 | |||
300 | #ifdef HAVE_USB_HID_MOUSE | 338 | #ifdef HAVE_USB_HID_MOUSE |
301 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 339 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { |
302 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | 340 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, |
303 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 341 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
304 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | 342 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
@@ -333,7 +371,7 @@ static const struct button_mapping button_context_usb_hid_mouse[] = { | |||
333 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 371 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
334 | 372 | ||
335 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 373 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
336 | }; /* button_context_usb_hid_mouse */ | 374 | }; /* button_context_usb_hid_mode_mouse */ |
337 | #endif | 375 | #endif |
338 | #endif | 376 | #endif |
339 | 377 | ||
@@ -387,9 +425,15 @@ const struct button_mapping* get_context_mapping(int context) | |||
387 | #ifdef USB_ENABLE_HID | 425 | #ifdef USB_ENABLE_HID |
388 | case CONTEXT_USB_HID: | 426 | case CONTEXT_USB_HID: |
389 | return button_context_usb_hid; | 427 | return button_context_usb_hid; |
428 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
429 | return button_context_usb_hid_mode_multimedia; | ||
430 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
431 | return button_context_usb_hid_mode_presentation; | ||
432 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
433 | return button_context_usb_hid_mode_browser; | ||
390 | #ifdef HAVE_USB_HID_MOUSE | 434 | #ifdef HAVE_USB_HID_MOUSE |
391 | case CONTEXT_USB_HID_MOUSE: | 435 | case CONTEXT_USB_HID_MODE_MOUSE: |
392 | return button_context_usb_hid_mouse; | 436 | return button_context_usb_hid_mode_mouse; |
393 | #endif | 437 | #endif |
394 | #endif | 438 | #endif |
395 | default: | 439 | default: |
diff --git a/apps/keymaps/keymap-e200.c b/apps/keymaps/keymap-e200.c index 23e8dbcf83..487fb11130 100644 --- a/apps/keymaps/keymap-e200.c +++ b/apps/keymaps/keymap-e200.c | |||
@@ -277,30 +277,68 @@ static const struct button_mapping button_context_bmark[] = { | |||
277 | 277 | ||
278 | #ifdef USB_ENABLE_HID | 278 | #ifdef USB_ENABLE_HID |
279 | static const struct button_mapping button_context_usb_hid[] = { | 279 | static const struct button_mapping button_context_usb_hid[] = { |
280 | { ACTION_USB_HID_INC, BUTTON_SCROLL_FWD, BUTTON_NONE }, | 280 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_REC|BUTTON_REL, BUTTON_REC }, |
281 | { ACTION_USB_HID_INC, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | 281 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_REC|BUTTON_REPEAT, BUTTON_REC }, |
282 | { ACTION_USB_HID_DEC, BUTTON_SCROLL_BACK, BUTTON_NONE }, | ||
283 | { ACTION_USB_HID_DEC, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | ||
284 | { ACTION_USB_HID_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
285 | { ACTION_USB_HID_START_LONG, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
286 | { ACTION_USB_HID_QUIT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
287 | { ACTION_USB_HID_QUIT_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
288 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
289 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
290 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
291 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
292 | { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
293 | { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
294 | { ACTION_USB_HID_MENU, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
295 | { ACTION_USB_HID_MENU_LONG, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
296 | { ACTION_USB_HID_MODE, BUTTON_REC|BUTTON_REL, BUTTON_REC }, | ||
297 | { ACTION_USB_HID_MODE_LONG, BUTTON_REC|BUTTON_REPEAT, BUTTON_REC }, | ||
298 | 282 | ||
299 | LAST_ITEM_IN_LIST | 283 | LAST_ITEM_IN_LIST |
300 | }; /* button_context_usb_hid */ | 284 | }; /* button_context_usb_hid */ |
301 | 285 | ||
286 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { | ||
287 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_SCROLL_BACK, BUTTON_NONE }, | ||
288 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | ||
289 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_SCROLL_FWD, BUTTON_NONE }, | ||
290 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | ||
291 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
292 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
293 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
294 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
295 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
296 | |||
297 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
298 | }; /* button_context_usb_hid_mode_multimedia */ | ||
299 | |||
300 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
301 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
302 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
303 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
304 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
305 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
306 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
307 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
308 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
309 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_SCROLL_BACK, BUTTON_NONE }, | ||
310 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | ||
311 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_SCROLL_FWD, BUTTON_NONE }, | ||
312 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | ||
313 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
314 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
315 | |||
316 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
317 | }; /* button_context_usb_hid_mode_presentation */ | ||
318 | |||
319 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
320 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_SCROLL_BACK, BUTTON_NONE }, | ||
321 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | ||
322 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_SCROLL_FWD, BUTTON_NONE }, | ||
323 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | ||
324 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
325 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
326 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
327 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
328 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
329 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_UP|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_UP|BUTTON_DOWN }, | ||
330 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
331 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
332 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
333 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
334 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
335 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
336 | |||
337 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
338 | }; /* button_context_usb_hid_mode_browser */ | ||
339 | |||
302 | #ifdef HAVE_USB_HID_MOUSE | 340 | #ifdef HAVE_USB_HID_MOUSE |
303 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 341 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { |
304 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | 342 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, |
305 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 343 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
306 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | 344 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
@@ -335,7 +373,7 @@ static const struct button_mapping button_context_usb_hid_mouse[] = { | |||
335 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | 373 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, |
336 | 374 | ||
337 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 375 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
338 | }; /* button_context_usb_hid_mouse */ | 376 | }; /* button_context_usb_hid_mode_mouse */ |
339 | #endif | 377 | #endif |
340 | #endif | 378 | #endif |
341 | 379 | ||
@@ -389,9 +427,15 @@ const struct button_mapping* get_context_mapping(int context) | |||
389 | #ifdef USB_ENABLE_HID | 427 | #ifdef USB_ENABLE_HID |
390 | case CONTEXT_USB_HID: | 428 | case CONTEXT_USB_HID: |
391 | return button_context_usb_hid; | 429 | return button_context_usb_hid; |
430 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
431 | return button_context_usb_hid_mode_multimedia; | ||
432 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
433 | return button_context_usb_hid_mode_presentation; | ||
434 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
435 | return button_context_usb_hid_mode_browser; | ||
392 | #ifdef HAVE_USB_HID_MOUSE | 436 | #ifdef HAVE_USB_HID_MOUSE |
393 | case CONTEXT_USB_HID_MOUSE: | 437 | case CONTEXT_USB_HID_MODE_MOUSE: |
394 | return button_context_usb_hid_mouse; | 438 | return button_context_usb_hid_mode_mouse; |
395 | #endif | 439 | #endif |
396 | #endif | 440 | #endif |
397 | default: | 441 | default: |
diff --git a/apps/keymaps/keymap-gigabeat-s.c b/apps/keymaps/keymap-gigabeat-s.c index c959eb09ba..cf150bb6d9 100644 --- a/apps/keymaps/keymap-gigabeat-s.c +++ b/apps/keymaps/keymap-gigabeat-s.c | |||
@@ -470,49 +470,86 @@ static const struct button_mapping remote_button_context_right_is_inc[] = { | |||
470 | 470 | ||
471 | #ifdef USB_ENABLE_HID | 471 | #ifdef USB_ENABLE_HID |
472 | static const struct button_mapping button_context_usb_hid[] = { | 472 | static const struct button_mapping button_context_usb_hid[] = { |
473 | { ACTION_USB_HID_INC, BUTTON_VOL_UP, BUTTON_NONE }, | 473 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, |
474 | { ACTION_USB_HID_INC, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 474 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, |
475 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
476 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
477 | { ACTION_USB_HID_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
478 | { ACTION_USB_HID_START_LONG, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
479 | { ACTION_USB_HID_QUIT, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
480 | { ACTION_USB_HID_QUIT_LONG, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
481 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
482 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
483 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
484 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
485 | { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
486 | { ACTION_USB_HID_SELECT, BUTTON_BACK|BUTTON_REL, BUTTON_BACK }, | ||
487 | { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
488 | { ACTION_USB_HID_SELECT_LONG, BUTTON_BACK|BUTTON_REPEAT, BUTTON_BACK }, | ||
489 | { ACTION_USB_HID_MENU, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
490 | { ACTION_USB_HID_MENU_LONG, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
491 | { ACTION_USB_HID_MODE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
492 | { ACTION_USB_HID_MODE_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
493 | 475 | ||
494 | LAST_ITEM_IN_LIST | 476 | LAST_ITEM_IN_LIST |
495 | }; /* button_context_usb_hid */ | 477 | }; /* button_context_usb_hid */ |
496 | 478 | ||
497 | static const struct button_mapping remote_button_context_usb_hid[] = { | 479 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { |
498 | { ACTION_USB_HID_INC, BUTTON_RC_VOL_UP, BUTTON_NONE }, | 480 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, |
499 | { ACTION_USB_HID_INC, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 481 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
500 | { ACTION_USB_HID_DEC, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | 482 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP, BUTTON_NONE }, |
501 | { ACTION_USB_HID_DEC, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 483 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, |
502 | { ACTION_USB_HID_START, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | 484 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, |
503 | { ACTION_USB_HID_QUIT, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | 485 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_BACK|BUTTON_REL, BUTTON_BACK }, |
504 | { ACTION_USB_HID_LEFT, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | 486 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, |
505 | { ACTION_USB_HID_RIGHT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF}, | 487 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_UP|BUTTON_REL, BUTTON_UP }, |
506 | { ACTION_USB_HID_SELECT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_RC_FF }, | 488 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, |
507 | { ACTION_USB_HID_SELECT_LONG, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_RC_REW }, | 489 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, |
508 | { ACTION_USB_HID_MENU, BUTTON_RC_DSP|BUTTON_REPEAT, BUTTON_RC_DSP }, | 490 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, |
509 | { ACTION_USB_HID_MODE, BUTTON_RC_DSP|BUTTON_REL, BUTTON_RC_DSP }, | 491 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, |
492 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
493 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, | ||
510 | 494 | ||
511 | LAST_ITEM_IN_LIST | 495 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
512 | }; /* remote_button_context_usb_hid */ | 496 | }; /* button_context_usb_hid_mode_multimedia */ |
497 | |||
498 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
499 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
500 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
501 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
502 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
503 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
504 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, | ||
505 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
506 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, | ||
507 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
508 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_PREV|BUTTON_REPEAT, BUTTON_PREV }, | ||
509 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
510 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NEXT }, | ||
511 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
512 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
513 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP, BUTTON_NONE }, | ||
514 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
515 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
516 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
517 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
518 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_BACK|BUTTON_REL, BUTTON_BACK }, | ||
519 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
520 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_BACK|BUTTON_REPEAT, BUTTON_BACK }, | ||
521 | |||
522 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
523 | }; /* button_context_usb_hid_mode_presentation */ | ||
524 | |||
525 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
526 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
527 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
528 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_PREV, BUTTON_NONE }, | ||
529 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, | ||
530 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
531 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
532 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_NEXT, BUTTON_NONE }, | ||
533 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, | ||
534 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
535 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
536 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
537 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
538 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
539 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_UP|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_UP|BUTTON_DOWN }, | ||
540 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
541 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
542 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
543 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_BACK|BUTTON_REPEAT, BUTTON_BACK }, | ||
544 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
545 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
546 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
547 | |||
548 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
549 | }; /* button_context_usb_hid_mode_browser */ | ||
513 | 550 | ||
514 | #ifdef HAVE_USB_HID_MOUSE | 551 | #ifdef HAVE_USB_HID_MOUSE |
515 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 552 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { |
516 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | 553 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, |
517 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 554 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
518 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | 555 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
@@ -521,22 +558,22 @@ static const struct button_mapping button_context_usb_hid_mouse[] = { | |||
521 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | 558 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
522 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, | 559 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, |
523 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | 560 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
561 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_SELECT, BUTTON_NONE }, | ||
562 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_NONE }, | ||
524 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_SELECT|BUTTON_UP, BUTTON_NONE }, | 563 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_SELECT|BUTTON_UP, BUTTON_NONE }, |
525 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_BACK|BUTTON_UP, BUTTON_NONE }, | ||
526 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_SELECT|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 564 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_SELECT|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
527 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_BACK|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
528 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_SELECT|BUTTON_DOWN, BUTTON_NONE }, | 565 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_SELECT|BUTTON_DOWN, BUTTON_NONE }, |
529 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_BACK|BUTTON_DOWN, BUTTON_NONE }, | ||
530 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_SELECT|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 566 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_SELECT|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
531 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_BACK|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
532 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_SELECT, BUTTON_NONE }, | ||
533 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_NONE }, | ||
534 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_SELECT|BUTTON_LEFT, BUTTON_NONE }, | 567 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_SELECT|BUTTON_LEFT, BUTTON_NONE }, |
535 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | 568 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
536 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_SELECT|BUTTON_RIGHT, BUTTON_NONE }, | 569 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_SELECT|BUTTON_RIGHT, BUTTON_NONE }, |
537 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | 570 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
538 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_BACK, BUTTON_NONE }, | 571 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_BACK, BUTTON_NONE }, |
539 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_BACK|BUTTON_REL, BUTTON_NONE }, | 572 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_BACK|BUTTON_REL, BUTTON_NONE }, |
573 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_BACK|BUTTON_UP, BUTTON_NONE }, | ||
574 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_BACK|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
575 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_BACK|BUTTON_DOWN, BUTTON_NONE }, | ||
576 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_BACK|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
540 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_BACK|BUTTON_LEFT, BUTTON_NONE }, | 577 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_BACK|BUTTON_LEFT, BUTTON_NONE }, |
541 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_BACK|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | 578 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_BACK|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
542 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_BACK|BUTTON_RIGHT, BUTTON_NONE }, | 579 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_BACK|BUTTON_RIGHT, BUTTON_NONE }, |
@@ -553,12 +590,68 @@ static const struct button_mapping button_context_usb_hid_mouse[] = { | |||
553 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT_REP, BUTTON_MENU|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | 590 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT_REP, BUTTON_MENU|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
554 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE }, | 591 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE }, |
555 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 592 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, |
593 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_PREV, BUTTON_NONE }, | ||
594 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, | ||
556 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | 595 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, |
557 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 596 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
597 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_NEXT, BUTTON_NONE }, | ||
598 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, | ||
558 | 599 | ||
559 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 600 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
560 | }; /* button_context_usb_hid_mouse */ | 601 | }; /* button_context_usb_hid_mode_mouse */ |
561 | #endif | 602 | #endif |
603 | |||
604 | static const struct button_mapping remote_button_context_usb_hid[] = { | ||
605 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_RC_DSP|BUTTON_REL, BUTTON_RC_DSP }, | ||
606 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_RC_DSP|BUTTON_REPEAT, BUTTON_RC_DSP }, | ||
607 | |||
608 | LAST_ITEM_IN_LIST | ||
609 | }; /* remote_button_context_usb_hid */ | ||
610 | |||
611 | static const struct button_mapping remote_button_context_usb_hid_mode_multimedia[] = { | ||
612 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
613 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
614 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
615 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
616 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_RC_FF }, | ||
617 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | ||
618 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | ||
619 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | ||
620 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF }, | ||
621 | |||
622 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
623 | }; /* remote_button_context_usb_hid_mode_multimedia */ | ||
624 | |||
625 | static const struct button_mapping remote_button_context_usb_hid_mode_presentation[] = { | ||
626 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | ||
627 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | ||
628 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | ||
629 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF }, | ||
630 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
631 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
632 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
633 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
634 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_RC_FF }, | ||
635 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_RC_REW }, | ||
636 | |||
637 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
638 | }; /* remote_button_context_usb_hid_mode_presentation */ | ||
639 | |||
640 | static const struct button_mapping remote_button_context_usb_hid_mode_browser[] = { | ||
641 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
642 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
643 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
644 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
645 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_RC_FF }, | ||
646 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_RC_REW }, | ||
647 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_RC_FF|BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_RC_FF|BUTTON_RC_REW }, | ||
648 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | ||
649 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF }, | ||
650 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | ||
651 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | ||
652 | |||
653 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
654 | }; /* remote_button_context_usb_hid_mode_browser */ | ||
562 | #endif | 655 | #endif |
563 | 656 | ||
564 | static const struct button_mapping* get_context_mapping_remote( int context ) | 657 | static const struct button_mapping* get_context_mapping_remote( int context ) |
@@ -606,7 +699,14 @@ static const struct button_mapping* get_context_mapping_remote( int context ) | |||
606 | #ifdef USB_ENABLE_HID | 699 | #ifdef USB_ENABLE_HID |
607 | case CONTEXT_USB_HID: | 700 | case CONTEXT_USB_HID: |
608 | return remote_button_context_usb_hid; | 701 | return remote_button_context_usb_hid; |
702 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
703 | return remote_button_context_usb_hid_mode_multimedia; | ||
704 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
705 | return remote_button_context_usb_hid_mode_presentation; | ||
706 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
707 | return remote_button_context_usb_hid_mode_browser; | ||
609 | #endif | 708 | #endif |
709 | |||
610 | default: | 710 | default: |
611 | return remote_button_context_standard; | 711 | return remote_button_context_standard; |
612 | } | 712 | } |
@@ -677,11 +777,18 @@ const struct button_mapping* get_context_mapping(int context) | |||
677 | #ifdef USB_ENABLE_HID | 777 | #ifdef USB_ENABLE_HID |
678 | case CONTEXT_USB_HID: | 778 | case CONTEXT_USB_HID: |
679 | return button_context_usb_hid; | 779 | return button_context_usb_hid; |
780 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
781 | return button_context_usb_hid_mode_multimedia; | ||
782 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
783 | return button_context_usb_hid_mode_presentation; | ||
784 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
785 | return button_context_usb_hid_mode_browser; | ||
680 | #ifdef HAVE_USB_HID_MOUSE | 786 | #ifdef HAVE_USB_HID_MOUSE |
681 | case CONTEXT_USB_HID_MOUSE: | 787 | case CONTEXT_USB_HID_MODE_MOUSE: |
682 | return button_context_usb_hid_mouse; | 788 | return button_context_usb_hid_mode_mouse; |
683 | #endif | 789 | #endif |
684 | #endif | 790 | #endif |
791 | |||
685 | default: | 792 | default: |
686 | return button_context_standard; | 793 | return button_context_standard; |
687 | } | 794 | } |
diff --git a/apps/keymaps/keymap-h10.c b/apps/keymaps/keymap-h10.c index 8ee9a28478..9b7800a3da 100644 --- a/apps/keymaps/keymap-h10.c +++ b/apps/keymaps/keymap-h10.c | |||
@@ -339,73 +339,65 @@ static const struct button_mapping button_context_radio[] = { | |||
339 | 339 | ||
340 | #ifdef USB_ENABLE_HID | 340 | #ifdef USB_ENABLE_HID |
341 | static const struct button_mapping button_context_usb_hid[] = { | 341 | static const struct button_mapping button_context_usb_hid[] = { |
342 | { ACTION_USB_HID_INC, BUTTON_SCROLL_UP, BUTTON_NONE }, | 342 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, |
343 | { ACTION_USB_HID_INC, BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 343 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, |
344 | { ACTION_USB_HID_DEC, BUTTON_SCROLL_DOWN, BUTTON_NONE }, | ||
345 | { ACTION_USB_HID_DEC, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
346 | { ACTION_USB_HID_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
347 | { ACTION_USB_HID_START_LONG, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
348 | { ACTION_USB_HID_QUIT, BUTTON_REW|BUTTON_REL, BUTTON_REW }, | ||
349 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
350 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
351 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
352 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
353 | { ACTION_USB_HID_SELECT, BUTTON_FF|BUTTON_REL, BUTTON_FF }, | ||
354 | { ACTION_USB_HID_MENU, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
355 | { ACTION_USB_HID_MODE, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
356 | 344 | ||
357 | LAST_ITEM_IN_LIST | 345 | LAST_ITEM_IN_LIST |
358 | }; /* button_context_usb_hid */ | 346 | }; /* button_context_usb_hid */ |
359 | 347 | ||
360 | #ifdef HAVE_USB_HID_MOUSE | 348 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { |
361 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 349 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_SCROLL_UP, BUTTON_NONE }, |
362 | { ACTION_USB_HID_MOUSE_UP, BUTTON_SCROLL_UP, BUTTON_NONE }, | 350 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE }, |
363 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 351 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_SCROLL_DOWN, BUTTON_NONE }, |
364 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_SCROLL_DOWN, BUTTON_NONE }, | 352 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
365 | { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 353 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, |
366 | { ACTION_USB_HID_MOUSE_LEFT, BUTTON_LEFT, BUTTON_NONE }, | 354 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, |
367 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | 355 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, |
368 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, | 356 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, |
369 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | 357 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_REW|BUTTON_REL, BUTTON_REW }, |
370 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_POWER, BUTTON_NONE }, | 358 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_FF|BUTTON_REL, BUTTON_FF }, |
371 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_POWER|BUTTON_REL, BUTTON_NONE }, | ||
372 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_POWER|BUTTON_SCROLL_UP, BUTTON_NONE }, | ||
373 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_POWER|BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
374 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_POWER|BUTTON_SCROLL_DOWN, BUTTON_NONE }, | ||
375 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_POWER|BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
376 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_POWER|BUTTON_LEFT, BUTTON_NONE }, | ||
377 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_POWER|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
378 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_POWER|BUTTON_RIGHT, BUTTON_NONE }, | ||
379 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_POWER|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
380 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_PLAY, BUTTON_NONE }, | ||
381 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, | ||
382 | { ACTION_USB_HID_MOUSE_RDRAG_UP, BUTTON_PLAY|BUTTON_SCROLL_UP, BUTTON_NONE }, | ||
383 | { ACTION_USB_HID_MOUSE_RDRAG_UP_REP, BUTTON_PLAY|BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
384 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN, BUTTON_PLAY|BUTTON_SCROLL_DOWN, BUTTON_NONE }, | ||
385 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN_REP, BUTTON_PLAY|BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
386 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT, BUTTON_PLAY|BUTTON_LEFT, BUTTON_NONE }, | ||
387 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT_REP, BUTTON_PLAY|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
388 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT, BUTTON_PLAY|BUTTON_RIGHT, BUTTON_NONE }, | ||
389 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT_REP, BUTTON_PLAY|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
390 | 359 | ||
391 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 360 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
392 | }; /* button_context_usb_hid_mouse */ | 361 | }; /* button_context_usb_hid_mode_multimedia */ |
393 | #endif | 362 | |
363 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
364 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
365 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
366 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_REW|BUTTON_REL, BUTTON_REW }, | ||
367 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_FF|BUTTON_REL, BUTTON_FF }, | ||
368 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_REW|BUTTON_REPEAT, BUTTON_REW }, | ||
369 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_FF|BUTTON_REPEAT, BUTTON_FF }, | ||
370 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
371 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
372 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_SCROLL_UP, BUTTON_NONE }, | ||
373 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
374 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_SCROLL_DOWN, BUTTON_NONE }, | ||
375 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
376 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
377 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
394 | 378 | ||
395 | static const struct button_mapping remote_button_context_usb_hid[] = { | 379 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
396 | { ACTION_USB_HID_INC, BUTTON_RC_VOL_UP, BUTTON_NONE }, | 380 | }; /* button_context_usb_hid_mode_presentation */ |
397 | { ACTION_USB_HID_INC, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 381 | |
398 | { ACTION_USB_HID_DEC, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | 382 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { |
399 | { ACTION_USB_HID_DEC, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 383 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_SCROLL_UP, BUTTON_NONE }, |
400 | { ACTION_USB_HID_START, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | 384 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE }, |
401 | { ACTION_USB_HID_QUIT, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | 385 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_SCROLL_DOWN, BUTTON_NONE }, |
402 | { ACTION_USB_HID_LEFT, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | 386 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
403 | { ACTION_USB_HID_LEFT_LONG, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_RC_REW }, | 387 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_REW|BUTTON_REL, BUTTON_REW }, |
404 | { ACTION_USB_HID_RIGHT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF }, | 388 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_FF|BUTTON_REL, BUTTON_FF }, |
405 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_RC_FF }, | 389 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_REW|BUTTON_REPEAT, BUTTON_REW }, |
390 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_FF|BUTTON_REPEAT, BUTTON_FF }, | ||
391 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_REW|BUTTON_FF|BUTTON_REPEAT, BUTTON_REW|BUTTON_FF }, | ||
392 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
393 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
394 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_LEFT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_LEFT|BUTTON_RIGHT }, | ||
395 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
396 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
397 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
406 | 398 | ||
407 | LAST_ITEM_IN_LIST | 399 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
408 | }; /* remote_button_context_usb_hid */ | 400 | }; /* button_context_usb_hid_mode_browser */ |
409 | #endif | 401 | #endif |
410 | 402 | ||
411 | static const struct button_mapping* get_context_mapping_remote( int context ) | 403 | static const struct button_mapping* get_context_mapping_remote( int context ) |
@@ -437,11 +429,6 @@ static const struct button_mapping* get_context_mapping_remote( int context ) | |||
437 | return remote_button_context_pitchscreen; | 429 | return remote_button_context_pitchscreen; |
438 | case CONTEXT_RECSCREEN: | 430 | case CONTEXT_RECSCREEN: |
439 | return button_context_recscreen; | 431 | return button_context_recscreen; |
440 | #ifdef USB_ENABLE_HID | ||
441 | case CONTEXT_USB_HID: | ||
442 | return remote_button_context_usb_hid; | ||
443 | #endif | ||
444 | |||
445 | default: | 432 | default: |
446 | return remote_button_context_standard; | 433 | return remote_button_context_standard; |
447 | } | 434 | } |
@@ -498,10 +485,6 @@ const struct button_mapping* get_context_mapping(int context) | |||
498 | #ifdef USB_ENABLE_HID | 485 | #ifdef USB_ENABLE_HID |
499 | case CONTEXT_USB_HID: | 486 | case CONTEXT_USB_HID: |
500 | return button_context_usb_hid; | 487 | return button_context_usb_hid; |
501 | #ifdef HAVE_USB_HID_MOUSE | ||
502 | case CONTEXT_USB_HID_MOUSE: | ||
503 | return button_context_usb_hid_mouse; | ||
504 | #endif | ||
505 | #endif | 488 | #endif |
506 | default: | 489 | default: |
507 | return button_context_standard; | 490 | return button_context_standard; |
diff --git a/apps/keymaps/keymap-hdd1630.c b/apps/keymaps/keymap-hdd1630.c index 404d7ecf14..f6f9ab9c8c 100644 --- a/apps/keymaps/keymap-hdd1630.c +++ b/apps/keymaps/keymap-hdd1630.c | |||
@@ -286,66 +286,116 @@ static const struct button_mapping button_context_radio[] = { | |||
286 | 286 | ||
287 | #ifdef USB_ENABLE_HID | 287 | #ifdef USB_ENABLE_HID |
288 | static const struct button_mapping button_context_usb_hid[] = { | 288 | static const struct button_mapping button_context_usb_hid[] = { |
289 | { ACTION_USB_HID_INC, BUTTON_VOL_UP, BUTTON_NONE }, | 289 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, |
290 | { ACTION_USB_HID_INC, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 290 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, |
291 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
292 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
293 | { ACTION_USB_HID_START, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
294 | { ACTION_USB_HID_START_LONG, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
295 | { ACTION_USB_HID_QUIT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
296 | { ACTION_USB_HID_QUIT_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
297 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
298 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
299 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
300 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
301 | { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
302 | { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
303 | { ACTION_USB_HID_MENU, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
304 | { ACTION_USB_HID_MENU_LONG, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
305 | { ACTION_USB_HID_MODE, BUTTON_VIEW|BUTTON_REL, BUTTON_VIEW }, | ||
306 | { ACTION_USB_HID_MODE_LONG, BUTTON_VIEW|BUTTON_REPEAT, BUTTON_VIEW }, | ||
307 | 291 | ||
308 | LAST_ITEM_IN_LIST | 292 | LAST_ITEM_IN_LIST |
309 | }; /* button_context_usb_hid */ | 293 | }; /* button_context_usb_hid */ |
310 | 294 | ||
295 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { | ||
296 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
297 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
298 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
299 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
300 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
301 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
302 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
303 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_PLAYLIST|BUTTON_REL, BUTTON_PLAYLIST }, | ||
304 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
305 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
306 | |||
307 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
308 | }; /* button_context_usb_hid_mode_multimedia */ | ||
309 | |||
310 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
311 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
312 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_VIEW|BUTTON_REL, BUTTON_VIEW }, | ||
313 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
314 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_VIEW|BUTTON_REPEAT, BUTTON_VIEW }, | ||
315 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
316 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
317 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
318 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
319 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_PLAYLIST|BUTTON_REL, BUTTON_PLAYLIST }, | ||
320 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_PLAYLIST|BUTTON_REPEAT, BUTTON_PLAYLIST }, | ||
321 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP|BUTTON_REL, BUTTON_VOL_UP }, | ||
322 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_VOL_UP }, | ||
323 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN|BUTTON_REL, BUTTON_VOL_DOWN }, | ||
324 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_VOL_DOWN }, | ||
325 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
326 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
327 | |||
328 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
329 | }; /* button_context_usb_hid_mode_presentation */ | ||
330 | |||
331 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
332 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP, BUTTON_NONE }, | ||
333 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
334 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, | ||
335 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
336 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_VOL_UP|BUTTON_REL, BUTTON_VOL_UP }, | ||
337 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_VOL_DOWN|BUTTON_REL, BUTTON_VOL_DOWN }, | ||
338 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_VOL_UP }, | ||
339 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_VOL_DOWN }, | ||
340 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
341 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
342 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
343 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_PLAYLIST|BUTTON_REPEAT, BUTTON_PLAYLIST }, | ||
344 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
345 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
346 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_VIEW|BUTTON_REL, BUTTON_VIEW }, | ||
347 | |||
348 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
349 | }; /* button_context_usb_hid_mode_browser */ | ||
350 | |||
311 | #ifdef HAVE_USB_HID_MOUSE | 351 | #ifdef HAVE_USB_HID_MOUSE |
312 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 352 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { |
313 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | 353 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, |
314 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 354 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
315 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | 355 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
316 | { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 356 | { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
317 | { ACTION_USB_HID_MOUSE_LEFT, BUTTON_LEFT, BUTTON_NONE }, | 357 | { ACTION_USB_HID_MOUSE_LEFT, BUTTON_LEFT, BUTTON_NONE }, |
318 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | 358 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
319 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, | 359 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, |
320 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | 360 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
321 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_SELECT, BUTTON_NONE }, | 361 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_SELECT, BUTTON_NONE }, |
322 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_NONE }, | 362 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_NONE }, |
323 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_SELECT|BUTTON_UP, BUTTON_NONE }, | 363 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_SELECT|BUTTON_UP, BUTTON_NONE }, |
324 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_SELECT|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 364 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_SELECT|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
325 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_SELECT|BUTTON_DOWN, BUTTON_NONE }, | 365 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_SELECT|BUTTON_DOWN, BUTTON_NONE }, |
326 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_SELECT|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 366 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_SELECT|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
327 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_SELECT|BUTTON_LEFT, BUTTON_NONE }, | 367 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_SELECT|BUTTON_LEFT, BUTTON_NONE }, |
328 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | 368 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
329 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_SELECT|BUTTON_RIGHT, BUTTON_NONE }, | 369 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_SELECT|BUTTON_RIGHT, BUTTON_NONE }, |
330 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | 370 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
331 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_POWER, BUTTON_NONE }, | 371 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_PLAYLIST, BUTTON_NONE }, |
332 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_POWER|BUTTON_REL, BUTTON_NONE }, | 372 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_PLAYLIST|BUTTON_REL, BUTTON_NONE }, |
333 | { ACTION_USB_HID_MOUSE_RDRAG_UP, BUTTON_POWER|BUTTON_UP, BUTTON_NONE }, | 373 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_PLAYLIST|BUTTON_UP, BUTTON_NONE }, |
334 | { ACTION_USB_HID_MOUSE_RDRAG_UP_REP, BUTTON_POWER|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 374 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_PLAYLIST|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
335 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN, BUTTON_POWER|BUTTON_DOWN, BUTTON_NONE }, | 375 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_PLAYLIST|BUTTON_DOWN, BUTTON_NONE }, |
336 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN_REP, BUTTON_POWER|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 376 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_PLAYLIST|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
337 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT, BUTTON_POWER|BUTTON_LEFT, BUTTON_NONE }, | 377 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_PLAYLIST|BUTTON_LEFT, BUTTON_NONE }, |
338 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT_REP, BUTTON_POWER|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | 378 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_PLAYLIST|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
339 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT, BUTTON_POWER|BUTTON_RIGHT, BUTTON_NONE }, | 379 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_PLAYLIST|BUTTON_RIGHT, BUTTON_NONE }, |
340 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT_REP, BUTTON_POWER|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | 380 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_PLAYLIST|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
341 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE }, | 381 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_VIEW, BUTTON_NONE }, |
342 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 382 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_VIEW|BUTTON_REL, BUTTON_NONE }, |
343 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | 383 | { ACTION_USB_HID_MOUSE_RDRAG_UP, BUTTON_VIEW|BUTTON_UP, BUTTON_NONE }, |
344 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 384 | { ACTION_USB_HID_MOUSE_RDRAG_UP_REP, BUTTON_VIEW|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
385 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN, BUTTON_VIEW|BUTTON_DOWN, BUTTON_NONE }, | ||
386 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN_REP, BUTTON_VIEW|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
387 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT, BUTTON_VIEW|BUTTON_LEFT, BUTTON_NONE }, | ||
388 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT_REP, BUTTON_VIEW|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
389 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT, BUTTON_VIEW|BUTTON_RIGHT, BUTTON_NONE }, | ||
390 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT_REP, BUTTON_VIEW|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
391 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
392 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
393 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
394 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
345 | 395 | ||
346 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 396 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
347 | 397 | ||
348 | }; /* button_context_usb_hid_mouse */ | 398 | }; /* button_context_usb_hid_mode_mouse */ |
349 | #endif | 399 | #endif |
350 | #endif | 400 | #endif |
351 | 401 | ||
@@ -399,9 +449,15 @@ const struct button_mapping* get_context_mapping(int context) | |||
399 | #ifdef USB_ENABLE_HID | 449 | #ifdef USB_ENABLE_HID |
400 | case CONTEXT_USB_HID: | 450 | case CONTEXT_USB_HID: |
401 | return button_context_usb_hid; | 451 | return button_context_usb_hid; |
452 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
453 | return button_context_usb_hid_mode_multimedia; | ||
454 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
455 | return button_context_usb_hid_mode_presentation; | ||
456 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
457 | return button_context_usb_hid_mode_browser; | ||
402 | #ifdef HAVE_USB_HID_MOUSE | 458 | #ifdef HAVE_USB_HID_MOUSE |
403 | case CONTEXT_USB_HID_MOUSE: | 459 | case CONTEXT_USB_HID_MODE_MOUSE: |
404 | return button_context_usb_hid_mouse; | 460 | return button_context_usb_hid_mode_mouse; |
405 | #endif | 461 | #endif |
406 | #endif | 462 | #endif |
407 | } | 463 | } |
diff --git a/apps/keymaps/keymap-ipod.c b/apps/keymaps/keymap-ipod.c index d0e84ef2dc..1a8f7a25ff 100644 --- a/apps/keymaps/keymap-ipod.c +++ b/apps/keymaps/keymap-ipod.c | |||
@@ -195,30 +195,70 @@ const struct button_mapping button_context_recscreen[] = { | |||
195 | 195 | ||
196 | #ifdef USB_ENABLE_HID | 196 | #ifdef USB_ENABLE_HID |
197 | static const struct button_mapping button_context_usb_hid[] = { | 197 | static const struct button_mapping button_context_usb_hid[] = { |
198 | { ACTION_USB_HID_INC, BUTTON_SCROLL_FWD, BUTTON_NONE }, | 198 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REL, BUTTON_SELECT|BUTTON_RIGHT }, |
199 | { ACTION_USB_HID_INC, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | 199 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_SELECT|BUTTON_RIGHT }, |
200 | { ACTION_USB_HID_DEC, BUTTON_SCROLL_BACK, BUTTON_NONE }, | 200 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REL, BUTTON_SELECT|BUTTON_LEFT }, |
201 | { ACTION_USB_HID_DEC, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | 201 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_SELECT|BUTTON_LEFT }, |
202 | { ACTION_USB_HID_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
203 | { ACTION_USB_HID_QUIT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
204 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
205 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
206 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
207 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
208 | { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
209 | { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
210 | { ACTION_USB_HID_MENU, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
211 | { ACTION_USB_HID_MENU_LONG, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
212 | { ACTION_USB_HID_MODE, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REL, BUTTON_SELECT|BUTTON_RIGHT }, | ||
213 | { ACTION_USB_HID_MODE, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_SELECT|BUTTON_RIGHT }, | ||
214 | { ACTION_USB_HID_MODE_LONG, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REL, BUTTON_SELECT|BUTTON_LEFT }, | ||
215 | { ACTION_USB_HID_MODE_LONG, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_SELECT|BUTTON_LEFT }, | ||
216 | 202 | ||
217 | LAST_ITEM_IN_LIST | 203 | LAST_ITEM_IN_LIST |
218 | }; /* button_context_usb_hid */ | 204 | }; /* button_context_usb_hid */ |
219 | 205 | ||
206 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { | ||
207 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_SCROLL_BACK, BUTTON_NONE }, | ||
208 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | ||
209 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_SCROLL_FWD, BUTTON_NONE }, | ||
210 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | ||
211 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
212 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
213 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
214 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
215 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
216 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
217 | |||
218 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
219 | }; /* button_context_usb_hid_mode_multimedia */ | ||
220 | |||
221 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
222 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
223 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
224 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
225 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
226 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
227 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
228 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
229 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
230 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_SCROLL_BACK, BUTTON_NONE }, | ||
231 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | ||
232 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_SCROLL_FWD, BUTTON_NONE }, | ||
233 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | ||
234 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
235 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
236 | |||
237 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
238 | }; /* button_context_usb_hid_mode_presentation */ | ||
239 | |||
240 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
241 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_SCROLL_BACK, BUTTON_NONE }, | ||
242 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | ||
243 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_SCROLL_FWD, BUTTON_NONE }, | ||
244 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | ||
245 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
246 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
247 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
248 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
249 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_PLAY|BUTTON_MENU|BUTTON_REPEAT, BUTTON_PLAY|BUTTON_MENU }, | ||
250 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
251 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
252 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_SELECT|BUTTON_MENU|BUTTON_REPEAT, BUTTON_SELECT|BUTTON_MENU }, | ||
253 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
254 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
255 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_SELECT|BUTTON_PLAY|BUTTON_REPEAT, BUTTON_SELECT|BUTTON_PLAY }, | ||
256 | |||
257 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
258 | }; /* button_context_usb_hid_mode_browser */ | ||
259 | |||
220 | #ifdef HAVE_USB_HID_MOUSE | 260 | #ifdef HAVE_USB_HID_MOUSE |
221 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 261 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { |
222 | { ACTION_USB_HID_MOUSE_UP, BUTTON_MENU, BUTTON_NONE }, | 262 | { ACTION_USB_HID_MOUSE_UP, BUTTON_MENU, BUTTON_NONE }, |
223 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE }, | 263 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE }, |
224 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_PLAY, BUTTON_NONE }, | 264 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_PLAY, BUTTON_NONE }, |
@@ -235,7 +275,7 @@ static const struct button_mapping button_context_usb_hid_mouse[] = { | |||
235 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | 275 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, |
236 | 276 | ||
237 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 277 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
238 | }; /* button_context_usb_hid_mouse */ | 278 | }; /* button_context_usb_hid_mode_mouse */ |
239 | #endif | 279 | #endif |
240 | #endif | 280 | #endif |
241 | 281 | ||
@@ -271,54 +311,6 @@ static const struct button_mapping remote_button_context_wps[] = { | |||
271 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) | 311 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_STD) |
272 | }; /* remote_button_context_wps */ | 312 | }; /* remote_button_context_wps */ |
273 | 313 | ||
274 | #ifdef USB_ENABLE_HID | ||
275 | static const struct button_mapping remote_button_context_usb_hid[] = { | ||
276 | { ACTION_USB_HID_INC, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
277 | { ACTION_USB_HID_INC, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
278 | { ACTION_USB_HID_DEC, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
279 | { ACTION_USB_HID_DEC, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
280 | { ACTION_USB_HID_START, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | ||
281 | { ACTION_USB_HID_QUIT, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | ||
282 | { ACTION_USB_HID_LEFT, BUTTON_RC_LEFT|BUTTON_REL, BUTTON_RC_LEFT }, | ||
283 | { ACTION_USB_HID_LEFT_LONG, BUTTON_RC_LEFT|BUTTON_REPEAT, BUTTON_RC_LEFT }, | ||
284 | { ACTION_USB_HID_RIGHT, BUTTON_RC_RIGHT|BUTTON_REL, BUTTON_RC_RIGHT }, | ||
285 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RC_RIGHT|BUTTON_REPEAT, BUTTON_RC_RIGHT }, | ||
286 | |||
287 | LAST_ITEM_IN_LIST | ||
288 | }; /* remote_button_context_usb_hid */ | ||
289 | |||
290 | #if 0 /* Pending P#10623: Improved accessory support and detection for Ipod */ | ||
291 | #ifdef HAVE_USB_HID_MOUSE | ||
292 | static const struct button_mapping remote_button_context_usb_hid_mouse[] = { | ||
293 | { ACTION_USB_HID_MOUSE_UP, BUTTON_RC_MENU, BUTTON_NONE }, | ||
294 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_RC_MENU|BUTTON_REPEAT, BUTTON_NONE }, | ||
295 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_RC_PLAY, BUTTON_NONE }, | ||
296 | { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_NONE }, | ||
297 | { ACTION_USB_HID_MOUSE_LEFT, BUTTON_RC_LEFT, BUTTON_NONE }, | ||
298 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_RC_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
299 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RC_RIGHT, BUTTON_NONE }, | ||
300 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RC_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
301 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_RC_SELECT, BUTTON_NONE }, | ||
302 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_RC_SELECT|BUTTON_REL, BUTTON_NONE }, | ||
303 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_RC_SELECT|BUTTON_RC_MENU, BUTTON_NONE }, | ||
304 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_RC_SELECT|BUTTON_RC_MENU|BUTTON_REPEAT, BUTTON_NONE }, | ||
305 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_RC_SELECT|BUTTON_RC_PLAY, BUTTON_NONE }, | ||
306 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_RC_SELECT|BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_NONE }, | ||
307 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_RC_SELECT|BUTTON_RC_LEFT, BUTTON_NONE }, | ||
308 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_RC_SELECT|BUTTON_RC_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
309 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_RC_SELECT|BUTTON_RC_RIGHT, BUTTON_NONE }, | ||
310 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_RC_SELECT|BUTTON_RC_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
311 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
312 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
313 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
314 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
315 | |||
316 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
317 | }; /* remote_button_context_usb_hid_mouse */ | ||
318 | #endif | ||
319 | #endif /* if 0 */ | ||
320 | #endif | ||
321 | |||
322 | static const struct button_mapping* get_context_mapping_remote( int context ) | 314 | static const struct button_mapping* get_context_mapping_remote( int context ) |
323 | { | 315 | { |
324 | context ^= CONTEXT_REMOTE; | 316 | context ^= CONTEXT_REMOTE; |
@@ -327,16 +319,6 @@ static const struct button_mapping* get_context_mapping_remote( int context ) | |||
327 | { | 319 | { |
328 | case CONTEXT_WPS: | 320 | case CONTEXT_WPS: |
329 | return remote_button_context_wps; | 321 | return remote_button_context_wps; |
330 | #ifdef USB_ENABLE_HID | ||
331 | case CONTEXT_USB_HID: | ||
332 | return remote_button_context_usb_hid; | ||
333 | #if 0 /* Pending P#10623: Improved accessory support and detection for Ipod */ | ||
334 | #ifdef HAVE_USB_HID_MOUSE | ||
335 | case CONTEXT_USB_HID_MOUSE: | ||
336 | return remote_button_context_usb_hid_mouse; | ||
337 | #endif | ||
338 | #endif /* If 0 */ | ||
339 | #endif | ||
340 | default: | 322 | default: |
341 | return remote_button_context_standard; | 323 | return remote_button_context_standard; |
342 | } | 324 | } |
@@ -392,9 +374,15 @@ const struct button_mapping* get_context_mapping(int context) | |||
392 | #ifdef USB_ENABLE_HID | 374 | #ifdef USB_ENABLE_HID |
393 | case CONTEXT_USB_HID: | 375 | case CONTEXT_USB_HID: |
394 | return button_context_usb_hid; | 376 | return button_context_usb_hid; |
377 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
378 | return button_context_usb_hid_mode_multimedia; | ||
379 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
380 | return button_context_usb_hid_mode_presentation; | ||
381 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
382 | return button_context_usb_hid_mode_browser; | ||
395 | #ifdef HAVE_USB_HID_MOUSE | 383 | #ifdef HAVE_USB_HID_MOUSE |
396 | case CONTEXT_USB_HID_MOUSE: | 384 | case CONTEXT_USB_HID_MODE_MOUSE: |
397 | return button_context_usb_hid_mouse; | 385 | return button_context_usb_hid_mode_mouse; |
398 | #endif | 386 | #endif |
399 | #endif | 387 | #endif |
400 | default: | 388 | default: |
diff --git a/apps/keymaps/keymap-mr100.c b/apps/keymaps/keymap-mr100.c index 79a12428f7..9878b6c330 100644 --- a/apps/keymaps/keymap-mr100.c +++ b/apps/keymaps/keymap-mr100.c | |||
@@ -317,91 +317,196 @@ static const struct button_mapping remote_button_context_tree[] = { | |||
317 | 317 | ||
318 | #ifdef USB_ENABLE_HID | 318 | #ifdef USB_ENABLE_HID |
319 | static const struct button_mapping button_context_usb_hid[] = { | 319 | static const struct button_mapping button_context_usb_hid[] = { |
320 | { ACTION_USB_HID_INC, BUTTON_UP, BUTTON_NONE }, | 320 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, |
321 | { ACTION_USB_HID_INC, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 321 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, |
322 | { ACTION_USB_HID_DEC, BUTTON_DOWN, BUTTON_NONE }, | ||
323 | { ACTION_USB_HID_DEC, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
324 | { ACTION_USB_HID_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
325 | { ACTION_USB_HID_START_LONG, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
326 | { ACTION_USB_HID_QUIT, BUTTON_DISPLAY|BUTTON_REL, BUTTON_DISPLAY }, | ||
327 | { ACTION_USB_HID_QUIT_LONG, BUTTON_DISPLAY|BUTTON_REPEAT, BUTTON_DISPLAY }, | ||
328 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
329 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
330 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
331 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
332 | { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
333 | { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
334 | { ACTION_USB_HID_MENU, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
335 | { ACTION_USB_HID_MENU_LONG, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
336 | { ACTION_USB_HID_MODE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
337 | { ACTION_USB_HID_MODE_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
338 | 322 | ||
339 | LAST_ITEM_IN_LIST | 323 | LAST_ITEM_IN_LIST |
340 | }; /* button_context_usb_hid */ | 324 | }; /* button_context_usb_hid */ |
341 | 325 | ||
342 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 326 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { |
343 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | 327 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
344 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 328 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
345 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | 329 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP, BUTTON_NONE }, |
346 | { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 330 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
347 | { ACTION_USB_HID_MOUSE_LEFT, BUTTON_LEFT, BUTTON_NONE }, | 331 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, |
348 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | 332 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, |
349 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, | 333 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_DISPLAY|BUTTON_REL, BUTTON_DISPLAY }, |
350 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | 334 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, |
351 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_SELECT|BUTTON_UP, BUTTON_NONE }, | 335 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, |
352 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_MENU|BUTTON_UP, BUTTON_NONE }, | 336 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, |
353 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_SELECT|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
354 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_MENU|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
355 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_SELECT|BUTTON_DOWN, BUTTON_NONE }, | ||
356 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_MENU|BUTTON_DOWN, BUTTON_NONE }, | ||
357 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_SELECT|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
358 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_MENU|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
359 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_SELECT, BUTTON_NONE }, | ||
360 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_NONE }, | ||
361 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_SELECT|BUTTON_LEFT, BUTTON_NONE }, | ||
362 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_SELECT|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
363 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_SELECT|BUTTON_RIGHT, BUTTON_NONE }, | ||
364 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_SELECT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
365 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_MENU, BUTTON_NONE }, | ||
366 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_MENU|BUTTON_REL, BUTTON_NONE }, | ||
367 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_MENU|BUTTON_LEFT, BUTTON_NONE }, | ||
368 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_MENU|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
369 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_MENU|BUTTON_RIGHT, BUTTON_NONE }, | ||
370 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_MENU|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
371 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_PLAY, BUTTON_NONE }, | ||
372 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, | ||
373 | { ACTION_USB_HID_MOUSE_RDRAG_UP, BUTTON_PLAY|BUTTON_UP, BUTTON_NONE }, | ||
374 | { ACTION_USB_HID_MOUSE_RDRAG_UP_REP, BUTTON_PLAY|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
375 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN, BUTTON_PLAY|BUTTON_DOWN, BUTTON_NONE }, | ||
376 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN_REP, BUTTON_PLAY|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
377 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT, BUTTON_PLAY|BUTTON_LEFT, BUTTON_NONE }, | ||
378 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT_REP, BUTTON_PLAY|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
379 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT, BUTTON_PLAY|BUTTON_RIGHT, BUTTON_NONE }, | ||
380 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT_REP, BUTTON_PLAY|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
381 | 337 | ||
382 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 338 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
383 | }; /* button_context_usb_hid_mouse */ | 339 | }; /* button_context_usb_hid_mode_multimedia */ |
340 | |||
341 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
342 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
343 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_DISPLAY|BUTTON_REL, BUTTON_DISPLAY }, | ||
344 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
345 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
346 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
347 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
348 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
349 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
350 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
351 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP, BUTTON_NONE }, | ||
352 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
353 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN, BUTTON_NONE }, | ||
354 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
355 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
356 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
357 | |||
358 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
359 | }; /* button_context_usb_hid_mode_presentation */ | ||
360 | |||
361 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
362 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP, BUTTON_NONE }, | ||
363 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
364 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, | ||
365 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
366 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
367 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
368 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
369 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
370 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT }, | ||
371 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_PLAY|BUTTON_MENU|BUTTON_REPEAT, BUTTON_PLAY|BUTTON_MENU }, | ||
372 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
373 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
374 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_DISPLAY|BUTTON_REPEAT, BUTTON_DISPLAY }, | ||
375 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
376 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
377 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, | ||
378 | |||
379 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
380 | }; /* button_context_usb_hid_mode_browser */ | ||
381 | |||
382 | #ifdef HAVE_USB_HID_MOUSE | ||
383 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { | ||
384 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | ||
385 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
386 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | ||
387 | { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
388 | { ACTION_USB_HID_MOUSE_LEFT, BUTTON_LEFT, BUTTON_NONE }, | ||
389 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
390 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, | ||
391 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
392 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT, BUTTON_MENU, BUTTON_NONE }, | ||
393 | { ACTION_USB_HID_MOUSE_BUTTON_LEFT_REL, BUTTON_MENU|BUTTON_REL, BUTTON_NONE }, | ||
394 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_MENU|BUTTON_UP, BUTTON_NONE }, | ||
395 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_MENU|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
396 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_MENU|BUTTON_DOWN, BUTTON_NONE }, | ||
397 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_MENU|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
398 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_MENU|BUTTON_LEFT, BUTTON_NONE }, | ||
399 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_MENU|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
400 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_MENU|BUTTON_RIGHT, BUTTON_NONE }, | ||
401 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_MENU|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
402 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT, BUTTON_PLAY, BUTTON_NONE }, | ||
403 | { ACTION_USB_HID_MOUSE_BUTTON_RIGHT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_NONE }, | ||
404 | { ACTION_USB_HID_MOUSE_RDRAG_UP, BUTTON_PLAY|BUTTON_UP, BUTTON_NONE }, | ||
405 | { ACTION_USB_HID_MOUSE_RDRAG_UP_REP, BUTTON_PLAY|BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
406 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN, BUTTON_PLAY|BUTTON_DOWN, BUTTON_NONE }, | ||
407 | { ACTION_USB_HID_MOUSE_RDRAG_DOWN_REP, BUTTON_PLAY|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
408 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT, BUTTON_PLAY|BUTTON_LEFT, BUTTON_NONE }, | ||
409 | { ACTION_USB_HID_MOUSE_RDRAG_LEFT_REP, BUTTON_PLAY|BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
410 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT, BUTTON_PLAY|BUTTON_RIGHT, BUTTON_NONE }, | ||
411 | { ACTION_USB_HID_MOUSE_RDRAG_RIGHT_REP, BUTTON_PLAY|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
412 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_UP, BUTTON_NONE }, | ||
413 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
414 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_DOWN, BUTTON_NONE }, | ||
415 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
416 | |||
417 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
418 | }; /* button_context_usb_hid_mode_mouse */ | ||
419 | #endif | ||
384 | 420 | ||
385 | static const struct button_mapping remote_button_context_usb_hid[] = { | 421 | static const struct button_mapping remote_button_context_usb_hid[] = { |
386 | { ACTION_USB_HID_INC, BUTTON_RC_VOL_UP, BUTTON_NONE }, | 422 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_RC_HEART|BUTTON_REL, BUTTON_RC_HEART }, |
387 | { ACTION_USB_HID_INC, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 423 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_RC_HEART|BUTTON_REPEAT, BUTTON_RC_HEART }, |
388 | { ACTION_USB_HID_DEC, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
389 | { ACTION_USB_HID_DEC, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
390 | { ACTION_USB_HID_START, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | ||
391 | { ACTION_USB_HID_START_LONG, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | ||
392 | { ACTION_USB_HID_QUIT, BUTTON_RC_DOWN|BUTTON_REL, BUTTON_RC_DOWN }, | ||
393 | { ACTION_USB_HID_QUIT_LONG, BUTTON_RC_DOWN|BUTTON_REPEAT, BUTTON_RC_DOWN }, | ||
394 | { ACTION_USB_HID_LEFT, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | ||
395 | { ACTION_USB_HID_LEFT_LONG, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_RC_REW }, | ||
396 | { ACTION_USB_HID_RIGHT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF }, | ||
397 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_RC_FF }, | ||
398 | { ACTION_USB_HID_SELECT, BUTTON_RC_HEART|BUTTON_REL, BUTTON_RC_HEART }, | ||
399 | { ACTION_USB_HID_MENU, BUTTON_RC_HEART|BUTTON_REPEAT, BUTTON_DOWN }, | ||
400 | { ACTION_USB_HID_MODE, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE }, | ||
401 | { ACTION_USB_HID_MODE_LONG, BUTTON_RC_MODE|BUTTON_REPEAT, BUTTON_RC_MODE }, | ||
402 | 424 | ||
403 | LAST_ITEM_IN_LIST | 425 | LAST_ITEM_IN_LIST |
404 | }; /* remote_button_context_usb_hid */ | 426 | }; /* remote_button_context_usb_hid */ |
427 | |||
428 | static const struct button_mapping remote_button_context_usb_hid_mode_multimedia[] = { | ||
429 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
430 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
431 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
432 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
433 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE }, | ||
434 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | ||
435 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_RC_DOWN|BUTTON_REL, BUTTON_RC_DOWN }, | ||
436 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | ||
437 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | ||
438 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF }, | ||
439 | |||
440 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
441 | }; /* remote_button_context_usb_hid_mode_multimedia */ | ||
442 | |||
443 | static const struct button_mapping remote_button_context_usb_hid_mode_presentation[] = { | ||
444 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | ||
445 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_RC_DOWN|BUTTON_REL, BUTTON_RC_DOWN }, | ||
446 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | ||
447 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | ||
448 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF }, | ||
449 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_RC_REW }, | ||
450 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_RC_FF }, | ||
451 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_RC_DOWN|BUTTON_REL, BUTTON_RC_DOWN }, | ||
452 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_RC_DOWN|BUTTON_REPEAT, BUTTON_RC_DOWN }, | ||
453 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
454 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
455 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
456 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
457 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE }, | ||
458 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_RC_MODE|BUTTON_REPEAT, BUTTON_RC_MODE }, | ||
459 | |||
460 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
461 | }; /* remote_button_context_usb_hid_mode_presentation */ | ||
462 | |||
463 | static const struct button_mapping remote_button_context_usb_hid_mode_browser[] = { | ||
464 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
465 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
466 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
467 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
468 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_RC_PLAY|BUTTON_REL, BUTTON_RC_PLAY }, | ||
469 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_RC_DOWN|BUTTON_REL, BUTTON_RC_DOWN }, | ||
470 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_RC_PLAY }, | ||
471 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_RC_DOWN|BUTTON_REPEAT, BUTTON_RC_DOWN }, | ||
472 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_RC_MODE|BUTTON_REPEAT, BUTTON_RC_MODE }, | ||
473 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_RC_REW|BUTTON_REL, BUTTON_RC_REW }, | ||
474 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RC_FF|BUTTON_REL, BUTTON_RC_FF }, | ||
475 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_RC_REW }, | ||
476 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_RC_FF }, | ||
477 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE }, | ||
478 | |||
479 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
480 | }; /* remote_button_context_usb_hid_mode_browser */ | ||
481 | |||
482 | #ifdef HAVE_USB_HID_MOUSE | ||
483 | static const struct button_mapping remote_button_context_usb_hid_mode_mouse[] = { | ||
484 | { ACTION_USB_HID_MOUSE_UP, BUTTON_RC_PLAY, BUTTON_NONE }, | ||
485 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_NONE }, | ||
486 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_RC_DOWN, BUTTON_NONE }, | ||
487 | { ACTION_USB_HID_MOUSE_DOWN_REP, BUTTON_RC_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
488 | { ACTION_USB_HID_MOUSE_LEFT, BUTTON_RC_REW, BUTTON_NONE }, | ||
489 | { ACTION_USB_HID_MOUSE_LEFT_REP, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE }, | ||
490 | { ACTION_USB_HID_MOUSE_RIGHT, BUTTON_RC_FF, BUTTON_NONE }, | ||
491 | { ACTION_USB_HID_MOUSE_RIGHT_REP, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE }, | ||
492 | { ACTION_USB_HID_MOUSE_BUTTON_RC_REW, BUTTON_RC_MODE, BUTTON_NONE }, | ||
493 | { ACTION_USB_HID_MOUSE_BUTTON_RC_REW_REL, BUTTON_RC_MODE|BUTTON_REL, BUTTON_NONE }, | ||
494 | { ACTION_USB_HID_MOUSE_LDRAG_UP, BUTTON_RC_MODE|BUTTON_RC_PLAY, BUTTON_NONE }, | ||
495 | { ACTION_USB_HID_MOUSE_LDRAG_UP_REP, BUTTON_RC_MODE|BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_NONE }, | ||
496 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN, BUTTON_RC_MODE|BUTTON_RC_DOWN, BUTTON_NONE }, | ||
497 | { ACTION_USB_HID_MOUSE_LDRAG_DOWN_REP, BUTTON_RC_MODE|BUTTON_RC_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
498 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT, BUTTON_RC_MODE|BUTTON_RC_REW, BUTTON_NONE }, | ||
499 | { ACTION_USB_HID_MOUSE_LDRAG_LEFT_REP, BUTTON_RC_MODE|BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE }, | ||
500 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT, BUTTON_RC_MODE|BUTTON_RC_FF, BUTTON_NONE }, | ||
501 | { ACTION_USB_HID_MOUSE_LDRAG_RIGHT_REP, BUTTON_RC_MODE|BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE }, | ||
502 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_RC_VOL_UP, BUTTON_NONE }, | ||
503 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_UP, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
504 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_RC_VOL_DOWN, BUTTON_NONE }, | ||
505 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
506 | |||
507 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
508 | }; /* remote_button_context_usb_hid_mode_mouse */ | ||
509 | #endif | ||
405 | #endif | 510 | #endif |
406 | 511 | ||
407 | static const struct button_mapping* get_context_mapping_remote( int context ) | 512 | static const struct button_mapping* get_context_mapping_remote( int context ) |
@@ -418,6 +523,16 @@ static const struct button_mapping* get_context_mapping_remote( int context ) | |||
418 | #ifdef USB_ENABLE_HID | 523 | #ifdef USB_ENABLE_HID |
419 | case CONTEXT_USB_HID: | 524 | case CONTEXT_USB_HID: |
420 | return remote_button_context_usb_hid; | 525 | return remote_button_context_usb_hid; |
526 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
527 | return remote_button_context_usb_hid_mode_multimedia; | ||
528 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
529 | return remote_button_context_usb_hid_mode_presentation; | ||
530 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
531 | return remote_button_context_usb_hid_mode_browser; | ||
532 | #ifdef HAVE_USB_HID_MOUSE | ||
533 | case CONTEXT_USB_HID_MODE_MOUSE: | ||
534 | return remote_button_context_usb_hid_mode_mouse; | ||
535 | #endif | ||
421 | #endif | 536 | #endif |
422 | } | 537 | } |
423 | return remote_button_context_standard; | 538 | return remote_button_context_standard; |
@@ -472,6 +587,16 @@ const struct button_mapping* get_context_mapping(int context) | |||
472 | #ifdef USB_ENABLE_HID | 587 | #ifdef USB_ENABLE_HID |
473 | case CONTEXT_USB_HID: | 588 | case CONTEXT_USB_HID: |
474 | return button_context_usb_hid; | 589 | return button_context_usb_hid; |
590 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
591 | return button_context_usb_hid_mode_multimedia; | ||
592 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
593 | return button_context_usb_hid_mode_presentation; | ||
594 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
595 | return button_context_usb_hid_mode_browser; | ||
596 | #ifdef HAVE_USB_HID_MOUSE | ||
597 | case CONTEXT_USB_HID_MODE_MOUSE: | ||
598 | return button_context_usb_hid_mode_mouse; | ||
599 | #endif | ||
475 | #endif | 600 | #endif |
476 | } | 601 | } |
477 | return button_context_standard; | 602 | return button_context_standard; |
diff --git a/apps/keymaps/keymap-ondavx747.c b/apps/keymaps/keymap-ondavx747.c index f2d994d190..56a68e519c 100644 --- a/apps/keymaps/keymap-ondavx747.c +++ b/apps/keymaps/keymap-ondavx747.c | |||
@@ -169,17 +169,48 @@ static const struct button_mapping button_context_keyboard[] = { | |||
169 | 169 | ||
170 | #ifdef USB_ENABLE_HID | 170 | #ifdef USB_ENABLE_HID |
171 | static const struct button_mapping button_context_usb_hid[] = { | 171 | static const struct button_mapping button_context_usb_hid[] = { |
172 | { ACTION_USB_HID_INC, BUTTON_VOL_UP, BUTTON_NONE }, | 172 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, |
173 | { ACTION_USB_HID_INC, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | 173 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, |
174 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
175 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
176 | { ACTION_USB_HID_QUIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
177 | { ACTION_USB_HID_SELECT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
178 | { ACTION_USB_HID_MENU, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
179 | { ACTION_USB_HID_MODE, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
180 | 174 | ||
181 | LAST_ITEM_IN_LIST | 175 | LAST_ITEM_IN_LIST |
182 | }; /* button_context_usb_hid */ | 176 | }; /* button_context_usb_hid */ |
177 | |||
178 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { | ||
179 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
180 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
181 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
182 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
183 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_VOL_DOWN|BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_VOL_DOWN|BUTTON_VOL_UP }, | ||
184 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
185 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_MENU|BUTTON_LEFT|BUTTON_REL, BUTTON_MENU|BUTTON_LEFT }, | ||
186 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_MENU|BUTTON_RIGHT|BUTTON_REL, BUTTON_MENU|BUTTON_RIGHT }, | ||
187 | |||
188 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
189 | }; /* button_context_usb_hid_mode_multimedia */ | ||
190 | |||
191 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
192 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
193 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
194 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_VOL_DOWN|BUTTON_REL, BUTTON_VOL_DOWN }, | ||
195 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_VOL_UP|BUTTON_REL, BUTTON_VOL_UP }, | ||
196 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_VOL_DOWN }, | ||
197 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_VOL_UP }, | ||
198 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_VOL_DOWN|BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_VOL_DOWN|BUTTON_VOL_UP }, | ||
199 | |||
200 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
201 | }; /* button_context_usb_hid_mode_presentation */ | ||
202 | |||
203 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
204 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
205 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
206 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_UP, BUTTON_NONE }, | ||
207 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
208 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_MENU|BUTTON_VOL_UP|BUTTON_REL, BUTTON_MENU|BUTTON_VOL_UP }, | ||
209 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_MENU|BUTTON_VOL_DOWN|BUTTON_REL, BUTTON_MENU|BUTTON_VOL_DOWN }, | ||
210 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
211 | |||
212 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
213 | }; /* button_context_usb_hid_mode_browser */ | ||
183 | #endif | 214 | #endif |
184 | 215 | ||
185 | const struct button_mapping* target_get_context_mapping(int context) | 216 | const struct button_mapping* target_get_context_mapping(int context) |
@@ -228,9 +259,15 @@ const struct button_mapping* target_get_context_mapping(int context) | |||
228 | return button_context_pitchscreen; | 259 | return button_context_pitchscreen; |
229 | case CONTEXT_KEYBOARD: | 260 | case CONTEXT_KEYBOARD: |
230 | return button_context_keyboard; | 261 | return button_context_keyboard; |
231 | #ifdef HAVE_USBSTACK | 262 | #ifdef USB_ENABLE_HID |
232 | case CONTEXT_USB_HID: | 263 | case CONTEXT_USB_HID: |
233 | return button_context_usb_hid; | 264 | return button_context_usb_hid; |
265 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
266 | return button_context_usb_hid_mode_multimedia; | ||
267 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
268 | return button_context_usb_hid_mode_presentation; | ||
269 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
270 | return button_context_usb_hid_mode_browser; | ||
234 | #endif | 271 | #endif |
235 | } | 272 | } |
236 | return button_context_standard; | 273 | return button_context_standard; |
diff --git a/apps/keymaps/keymap-sa9200.c b/apps/keymaps/keymap-sa9200.c index 1d14a67147..6df9d6c1ed 100644 --- a/apps/keymaps/keymap-sa9200.c +++ b/apps/keymaps/keymap-sa9200.c | |||
@@ -278,34 +278,72 @@ static const struct button_mapping button_context_keyboard[] = { | |||
278 | 278 | ||
279 | #ifdef USB_ENABLE_HID | 279 | #ifdef USB_ENABLE_HID |
280 | static const struct button_mapping button_context_usb_hid[] = { | 280 | static const struct button_mapping button_context_usb_hid[] = { |
281 | { ACTION_USB_HID_INC, BUTTON_UP, BUTTON_NONE }, | 281 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, |
282 | { ACTION_USB_HID_INC, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 282 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, |
283 | { ACTION_USB_HID_INC, BUTTON_VOL_UP, BUTTON_NONE }, | ||
284 | { ACTION_USB_HID_INC, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
285 | { ACTION_USB_HID_DEC, BUTTON_DOWN, BUTTON_NONE }, | ||
286 | { ACTION_USB_HID_DEC, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
287 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
288 | { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
289 | { ACTION_USB_HID_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
290 | { ACTION_USB_HID_START_LONG, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_PLAY }, | ||
291 | { ACTION_USB_HID_QUIT, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, | ||
292 | { ACTION_USB_HID_QUIT_LONG, BUTTON_PREV|BUTTON_REPEAT, BUTTON_PREV }, | ||
293 | { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
294 | { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
295 | { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
296 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
297 | { ACTION_USB_HID_SELECT, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, | ||
298 | { ACTION_USB_HID_SELECT_LONG, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NEXT }, | ||
299 | { ACTION_USB_HID_MENU, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
300 | { ACTION_USB_HID_MENU_LONG, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
301 | { ACTION_USB_HID_MODE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER }, | ||
302 | { ACTION_USB_HID_MODE_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER }, | ||
303 | 283 | ||
304 | LAST_ITEM_IN_LIST | 284 | LAST_ITEM_IN_LIST |
305 | }; /* button_context_usb_hid */ | 285 | }; /* button_context_usb_hid */ |
306 | 286 | ||
287 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { | ||
288 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
289 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
290 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN, BUTTON_NONE }, | ||
291 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
292 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
293 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
294 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP, BUTTON_NONE }, | ||
295 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
296 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, | ||
297 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
298 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, | ||
299 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
300 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
301 | |||
302 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
303 | }; /* button_context_usb_hid_mode_multimedia */ | ||
304 | |||
305 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
306 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY }, | ||
307 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_PREV|BUTTON_REL, BUTTON_PREV }, | ||
308 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
309 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
310 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
311 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
312 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
313 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_MENU|BUTTON_REPEAT, BUTTON_MENU }, | ||
314 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP, BUTTON_NONE }, | ||
315 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
316 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN, BUTTON_NONE }, | ||
317 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
318 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, | ||
319 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NEXT }, | ||
320 | |||
321 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
322 | }; /* button_context_usb_hid_mode_presentation */ | ||
323 | |||
324 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
325 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE }, | ||
326 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, | ||
327 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE }, | ||
328 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
329 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_UP|BUTTON_REL, BUTTON_UP }, | ||
330 | { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN }, | ||
331 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP }, | ||
332 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN }, | ||
333 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NEXT }, | ||
334 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_UP|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_UP|BUTTON_DOWN }, | ||
335 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT }, | ||
336 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT }, | ||
337 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_LEFT|BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_LEFT|BUTTON_RIGHT }, | ||
338 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT }, | ||
339 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT }, | ||
340 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_NEXT|BUTTON_REL, BUTTON_NEXT }, | ||
341 | |||
342 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
343 | }; /* button_context_usb_hid_mode_browser */ | ||
344 | |||
307 | #ifdef HAVE_USB_HID_MOUSE | 345 | #ifdef HAVE_USB_HID_MOUSE |
308 | static const struct button_mapping button_context_usb_hid_mouse[] = { | 346 | static const struct button_mapping button_context_usb_hid_mode_mouse[] = { |
309 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, | 347 | { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, |
310 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, | 348 | { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
311 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, | 349 | { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
@@ -340,7 +378,7 @@ static const struct button_mapping button_context_usb_hid_mouse[] = { | |||
340 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | 378 | { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
341 | 379 | ||
342 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | 380 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) |
343 | }; /* button_context_usb_hid_mouse */ | 381 | }; /* button_context_usb_hid_mode_mouse */ |
344 | #endif | 382 | #endif |
345 | #endif | 383 | #endif |
346 | 384 | ||
@@ -390,13 +428,18 @@ const struct button_mapping* get_context_mapping(int context) | |||
390 | 428 | ||
391 | case CONTEXT_KEYBOARD: | 429 | case CONTEXT_KEYBOARD: |
392 | return button_context_keyboard; | 430 | return button_context_keyboard; |
393 | |||
394 | #ifdef USB_ENABLE_HID | 431 | #ifdef USB_ENABLE_HID |
395 | case CONTEXT_USB_HID: | 432 | case CONTEXT_USB_HID: |
396 | return button_context_usb_hid; | 433 | return button_context_usb_hid; |
434 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
435 | return button_context_usb_hid_mode_multimedia; | ||
436 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
437 | return button_context_usb_hid_mode_presentation; | ||
438 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
439 | return button_context_usb_hid_mode_browser; | ||
397 | #ifdef HAVE_USB_HID_MOUSE | 440 | #ifdef HAVE_USB_HID_MOUSE |
398 | case CONTEXT_USB_HID_MOUSE: | 441 | case CONTEXT_USB_HID_MODE_MOUSE: |
399 | return button_context_usb_hid_mouse; | 442 | return button_context_usb_hid_mode_mouse; |
400 | #endif | 443 | #endif |
401 | #endif | 444 | #endif |
402 | } | 445 | } |
diff --git a/apps/keymaps/keymap-touchscreen.c b/apps/keymaps/keymap-touchscreen.c index 499eb2b562..74673ccb20 100644 --- a/apps/keymaps/keymap-touchscreen.c +++ b/apps/keymaps/keymap-touchscreen.c | |||
@@ -253,27 +253,63 @@ static const struct button_mapping button_context_radio[] = { | |||
253 | 253 | ||
254 | #ifdef USB_ENABLE_HID | 254 | #ifdef USB_ENABLE_HID |
255 | static const struct button_mapping button_context_usb_hid[] = { | 255 | static const struct button_mapping button_context_usb_hid[] = { |
256 | { ACTION_USB_HID_INC, BUTTON_BOTTOMRIGHT|BUTTON_REL, BUTTON_BOTTOMRIGHT }, | 256 | { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_TOPLEFT|BUTTON_REL, BUTTON_TOPLEFT }, |
257 | { ACTION_USB_HID_INC, BUTTON_BOTTOMRIGHT|BUTTON_REPEAT, BUTTON_BOTTOMRIGHT }, | 257 | { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_TOPLEFT|BUTTON_REPEAT, BUTTON_TOPLEFT }, |
258 | { ACTION_USB_HID_DEC, BUTTON_BOTTOMMIDDLE|BUTTON_REL, BUTTON_BOTTOMMIDDLE }, | 258 | |
259 | { ACTION_USB_HID_DEC, BUTTON_BOTTOMMIDDLE|BUTTON_REPEAT, BUTTON_BOTTOMMIDDLE }, | 259 | LAST_ITEM_IN_LIST |
260 | { ACTION_USB_HID_START, BUTTON_TOPMIDDLE|BUTTON_REL, BUTTON_TOPMIDDLE }, | ||
261 | { ACTION_USB_HID_START_LONG, BUTTON_TOPMIDDLE|BUTTON_REPEAT, BUTTON_TOPMIDDLE }, | ||
262 | { ACTION_USB_HID_QUIT, BUTTON_BOTTOMLEFT|BUTTON_REL, BUTTON_BOTTOMLEFT }, | ||
263 | { ACTION_USB_HID_QUIT_LONG, BUTTON_BOTTOMLEFT|BUTTON_REPEAT, BUTTON_BOTTOMLEFT }, | ||
264 | { ACTION_USB_HID_LEFT, BUTTON_MIDLEFT|BUTTON_REL, BUTTON_MIDLEFT }, | ||
265 | { ACTION_USB_HID_LEFT_LONG, BUTTON_MIDLEFT|BUTTON_REPEAT, BUTTON_MIDLEFT }, | ||
266 | { ACTION_USB_HID_RIGHT, BUTTON_MIDRIGHT|BUTTON_REL, BUTTON_MIDRIGHT }, | ||
267 | { ACTION_USB_HID_RIGHT_LONG, BUTTON_MIDRIGHT|BUTTON_REPEAT, BUTTON_MIDRIGHT }, | ||
268 | { ACTION_USB_HID_SELECT, BUTTON_CENTER|BUTTON_REL, BUTTON_CENTER }, | ||
269 | { ACTION_USB_HID_SELECT_LONG, BUTTON_CENTER|BUTTON_REPEAT, BUTTON_CENTER }, | ||
270 | { ACTION_USB_HID_MENU, BUTTON_TOPRIGHT|BUTTON_REL, BUTTON_TOPRIGHT }, | ||
271 | { ACTION_USB_HID_MENU_LONG, BUTTON_TOPRIGHT|BUTTON_REPEAT, BUTTON_TOPRIGHT }, | ||
272 | { ACTION_USB_HID_MODE, BUTTON_TOPLEFT|BUTTON_REL, BUTTON_TOPLEFT }, | ||
273 | { ACTION_USB_HID_MODE_LONG, BUTTON_TOPLEFT|BUTTON_REPEAT, BUTTON_TOPLEFT }, | ||
274 | |||
275 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_CUSTOM2|CONTEXT_USB_HID) | ||
276 | }; /* button_context_usb_hid */ | 260 | }; /* button_context_usb_hid */ |
261 | |||
262 | static const struct button_mapping button_context_usb_hid_mode_multimedia[] = { | ||
263 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_BOTTOMMIDDLE, BUTTON_NONE }, | ||
264 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_BOTTOMMIDDLE|BUTTON_REPEAT, BUTTON_NONE }, | ||
265 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_TOPMIDDLE, BUTTON_NONE }, | ||
266 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_TOPMIDDLE|BUTTON_REPEAT, BUTTON_NONE }, | ||
267 | { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_CENTER|BUTTON_REL, BUTTON_CENTER }, | ||
268 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_TOPRIGHT|BUTTON_REL, BUTTON_TOPRIGHT }, | ||
269 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_TOPRIGHT|BUTTON_REPEAT, BUTTON_TOPRIGHT }, | ||
270 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_BOTTOMLEFT|BUTTON_REL, BUTTON_BOTTOMLEFT }, | ||
271 | { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_BOTTOMRIGHT|BUTTON_REL, BUTTON_BOTTOMRIGHT }, | ||
272 | |||
273 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
274 | }; /* button_context_usb_hid_mode_multimedia */ | ||
275 | |||
276 | static const struct button_mapping button_context_usb_hid_mode_presentation[] = { | ||
277 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_TOPRIGHT|BUTTON_REL, BUTTON_TOPRIGHT }, | ||
278 | { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_TOPRIGHT|BUTTON_REPEAT, BUTTON_TOPRIGHT }, | ||
279 | { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_MIDLEFT|BUTTON_REL, BUTTON_MIDLEFT }, | ||
280 | { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_MIDRIGHT|BUTTON_REL, BUTTON_MIDRIGHT }, | ||
281 | { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_MIDLEFT|BUTTON_REPEAT, BUTTON_MIDLEFT }, | ||
282 | { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_MIDRIGHT|BUTTON_REPEAT, BUTTON_MIDRIGHT }, | ||
283 | { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_BOTTOMRIGHT|BUTTON_REL, BUTTON_BOTTOMRIGHT }, | ||
284 | { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_BOTTOMRIGHT|BUTTON_REPEAT, BUTTON_BOTTOMRIGHT }, | ||
285 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_TOPMIDDLE|BUTTON_REL, BUTTON_TOPMIDDLE }, | ||
286 | { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_TOPMIDDLE|BUTTON_REPEAT, BUTTON_TOPMIDDLE }, | ||
287 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_BOTTOMMIDDLE|BUTTON_REL, BUTTON_BOTTOMMIDDLE }, | ||
288 | { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_BOTTOMMIDDLE|BUTTON_REPEAT, BUTTON_BOTTOMMIDDLE }, | ||
289 | { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_CENTER|BUTTON_REL, BUTTON_CENTER }, | ||
290 | { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_CENTER|BUTTON_REPEAT, BUTTON_CENTER }, | ||
291 | |||
292 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
293 | }; /* button_context_usb_hid_mode_presentation */ | ||
294 | |||
295 | static const struct button_mapping button_context_usb_hid_mode_browser[] = { | ||
296 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_TOPMIDDLE, BUTTON_NONE }, | ||
297 | { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_TOPMIDDLE|BUTTON_REPEAT, BUTTON_NONE }, | ||
298 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_BOTTOMMIDDLE, BUTTON_NONE }, | ||
299 | { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_BOTTOMMIDDLE|BUTTON_REPEAT, BUTTON_NONE }, | ||
300 | { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_TOPRIGHT|BUTTON_REPEAT, BUTTON_TOPRIGHT }, | ||
301 | { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_BOTTOMRIGHT|BUTTON_REPEAT, BUTTON_BOTTOMRIGHT }, | ||
302 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_CENTER|BUTTON_REPEAT, BUTTON_CENTER }, | ||
303 | { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_TOPRIGHT|BUTTON_BOTTOMRIGHT|BUTTON_REPEAT, BUTTON_TOPRIGHT|BUTTON_BOTTOMRIGHT }, | ||
304 | { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_MIDLEFT|BUTTON_REL, BUTTON_MIDLEFT }, | ||
305 | { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_MIDRIGHT|BUTTON_REL, BUTTON_MIDRIGHT }, | ||
306 | { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_BOTTOMLEFT|BUTTON_REPEAT, BUTTON_BOTTOMLEFT }, | ||
307 | { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_MIDLEFT|BUTTON_REPEAT, BUTTON_MIDLEFT }, | ||
308 | { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_MIDRIGHT|BUTTON_REPEAT, BUTTON_MIDRIGHT }, | ||
309 | { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_CENTER|BUTTON_REL, BUTTON_CENTER }, | ||
310 | |||
311 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) | ||
312 | }; /* button_context_usb_hid_mode_browser */ | ||
277 | #endif | 313 | #endif |
278 | 314 | ||
279 | const struct button_mapping* get_context_mapping(int context) | 315 | const struct button_mapping* get_context_mapping(int context) |
@@ -331,7 +367,14 @@ const struct button_mapping* get_context_mapping(int context) | |||
331 | #ifdef USB_ENABLE_HID | 367 | #ifdef USB_ENABLE_HID |
332 | case CONTEXT_USB_HID: | 368 | case CONTEXT_USB_HID: |
333 | return button_context_usb_hid; | 369 | return button_context_usb_hid; |
370 | case CONTEXT_USB_HID_MODE_MULTIMEDIA: | ||
371 | return button_context_usb_hid_mode_multimedia; | ||
372 | case CONTEXT_USB_HID_MODE_PRESENTATION: | ||
373 | return button_context_usb_hid_mode_presentation; | ||
374 | case CONTEXT_USB_HID_MODE_BROWSER: | ||
375 | return button_context_usb_hid_mode_browser; | ||
334 | #endif | 376 | #endif |
377 | |||
335 | } | 378 | } |
336 | return button_context_standard; | 379 | return button_context_standard; |
337 | } | 380 | } |