summaryrefslogtreecommitdiff
path: root/apps/keymaps/keymap-c100.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/keymaps/keymap-c100.c')
-rw-r--r--apps/keymaps/keymap-c100.c90
1 files changed, 70 insertions, 20 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
236static const struct button_mapping button_context_usb_hid[] = { 236static 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
257static const struct button_mapping button_context_usb_hid_mouse[] = { 243static 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
257static 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
276static 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
298static 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;