diff options
Diffstat (limited to 'osdep/w32_keyboard.c')
-rw-r--r-- | osdep/w32_keyboard.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/osdep/w32_keyboard.c b/osdep/w32_keyboard.c index edb6acf10e..c298f1f6bd 100644 --- a/osdep/w32_keyboard.c +++ b/osdep/w32_keyboard.c @@ -69,6 +69,21 @@ static const struct keymap vk_map[] = { {0, 0} }; +static const struct keymap appcmd_map[] = { + {APPCOMMAND_MEDIA_NEXTTRACK, MP_KEY_NEXT}, + {APPCOMMAND_MEDIA_PREVIOUSTRACK, MP_KEY_PREV}, + {APPCOMMAND_MEDIA_STOP, MP_KEY_STOP}, + {APPCOMMAND_MEDIA_PLAY_PAUSE, MP_KEY_PLAYPAUSE}, + {APPCOMMAND_MEDIA_PLAY, MP_KEY_PLAY}, + {APPCOMMAND_MEDIA_PAUSE, MP_KEY_PAUSE}, + {APPCOMMAND_MEDIA_RECORD, MP_KEY_RECORD}, + {APPCOMMAND_MEDIA_FAST_FORWARD, MP_KEY_FORWARD}, + {APPCOMMAND_MEDIA_REWIND, MP_KEY_REWIND}, + {APPCOMMAND_MEDIA_CHANNEL_UP, MP_KEY_CHANNEL_UP}, + {APPCOMMAND_MEDIA_CHANNEL_DOWN, MP_KEY_CHANNEL_DOWN}, + {0, 0} +}; + static int lookup_keymap(const struct keymap *map, int key) { while (map->from && map->from != key) map++; @@ -89,3 +104,8 @@ int mp_w32_vkey_to_mpkey(UINT vkey, bool extended) return mpkey; } + +int mp_w32_appcmd_to_mpkey(UINT appcmd) +{ + return lookup_keymap(appcmd_map, appcmd); +} |