diff options
Diffstat (limited to 'apps/keymaps/keymap-sa9200.c')
-rw-r--r-- | apps/keymaps/keymap-sa9200.c | 97 |
1 files changed, 70 insertions, 27 deletions
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 | } |