vlc | branch: master | Thomas Guillem <tho...@gllm.fr> | Thu Nov 17 12:06:08 2016 +0100| [5d48ad31e3bec86def868ef1f2bbcb45d01c1c1b] | committer: Thomas Guillem
hotkeys: handle 360° zoom with mouse wheel > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5d48ad31e3bec86def868ef1f2bbcb45d01c1c1b --- include/vlc_keys.h | 3 +++ modules/control/hotkeys.c | 14 ++++++++++++++ src/config/keys.c | 4 ++-- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/include/vlc_keys.h b/include/vlc_keys.h index abebaa8..10d1d76 100644 --- a/include/vlc_keys.h +++ b/include/vlc_keys.h @@ -234,6 +234,9 @@ typedef enum vlc_action { ACTIONID_VIEWPOINT_ZOOM_OUT, ACTIONID_VIEWPOINT_ROLL_CLOCK, ACTIONID_VIEWPOINT_ROLL_ANTICLOCK, + /* Combo Actions */ + ACTIONID_COMBO_VOL_ZOOM_UP, + ACTIONID_COMBO_VOL_ZOOM_DOWN, } vlc_action_t; diff --git a/modules/control/hotkeys.c b/modules/control/hotkeys.c index 1cdc255..59bfa82 100644 --- a/modules/control/hotkeys.c +++ b/modules/control/hotkeys.c @@ -328,6 +328,7 @@ static int PutAction( intf_thread_t *p_intf, input_thread_t *p_input, vout_thread_t *p_vout, int slider_chan, bool b_vrnav, int i_action ) { +#define DO_ACTION(x) PutAction( p_intf, p_input, p_vout, slider_chan, b_vrnav, x) intf_sys_t *p_sys = p_intf->p_sys; playlist_t *p_playlist = pl_Get( p_intf ); @@ -1367,6 +1368,19 @@ static int PutAction( intf_thread_t *p_intf, input_thread_t *p_input, if( p_vout && vout_OSDEpg( p_vout, input_GetItem( p_input ) ) ) DisplayPosition( p_vout, slider_chan, p_input ); break; + + case ACTIONID_COMBO_VOL_ZOOM_UP: + if( b_vrnav ) + DO_ACTION( ACTIONID_VIEWPOINT_ZOOM_IN ); + else + DO_ACTION( ACTIONID_VOL_UP ); + break; + case ACTIONID_COMBO_VOL_ZOOM_DOWN: + if( b_vrnav ) + DO_ACTION( ACTIONID_VIEWPOINT_ZOOM_OUT ); + else + DO_ACTION( ACTIONID_VOL_DOWN ); + break; } return VLC_SUCCESS; diff --git a/src/config/keys.c b/src/config/keys.c index 859c0d0..6bfb76f 100644 --- a/src/config/keys.c +++ b/src/config/keys.c @@ -452,8 +452,8 @@ static void vlc_AddWheelMapping (void **map, uint32_t kmore, uint32_t kless, switch (mode) { case 0: /* volume up/down */ - amore = ACTIONID_VOL_UP; - aless = ACTIONID_VOL_DOWN; + amore = ACTIONID_COMBO_VOL_ZOOM_UP; + aless = ACTIONID_COMBO_VOL_ZOOM_DOWN; break; case 2: /* position latter/earlier */ amore = ACTIONID_JUMP_FORWARD_EXTRASHORT; _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org https://mailman.videolan.org/listinfo/vlc-commits