[vlc-devel] [PATCH v2 08/11] oldrc: use vlc_actions_do
Rémi Denis-Courmont
remi at remlab.net
Thu Aug 10 10:15:45 CEST 2017
Le 10 août 2017 10:05:39 GMT+03:00, "Hugo Beauzée-Luyssen" <hugo at beauzee.fr> a écrit :
>On Wed, Aug 9, 2017, at 09:48 PM, Rémi Denis-Courmont wrote:
>> Le keskiviikkona 9. elokuuta 2017, 18.16.32 EEST Hugo Beauzée-Luyssen
>a
>> écrit :
>> > From: Thomas Guillem <thomas at gllm.fr>
>> >
>> > ---
>> > modules/control/oldrc.c | 23 +++++++++++------------
>> > 1 file changed, 11 insertions(+), 12 deletions(-)
>> >
>> > diff --git a/modules/control/oldrc.c b/modules/control/oldrc.c
>> > index 66402293a5..f71f0278af 100644
>> > --- a/modules/control/oldrc.c
>> > +++ b/modules/control/oldrc.c
>> > @@ -714,8 +714,7 @@ static void *Run( void *data )
>> > }
>> > else if( !strcmp( psz_cmd, "key" ) || !strcmp( psz_cmd,
>"hotkey" )
>> > ) {
>> > - var_SetInteger( p_intf->obj.libvlc, "key-action",
>> > - vlc_actions_get_id( psz_arg ) );
>> > + vlc_actions_do( p_intf, vlc_actions_get_id( psz_arg ),
>true, 0
>> > ); }
>> > else switch( psz_cmd[0] )
>> > {
>> > @@ -959,7 +958,7 @@ static int Input( vlc_object_t *p_this, char
>const
>> > *psz_cmd, /* Parse commands that only require an input */
>> > if( !strcmp( psz_cmd, "pause" ) )
>> > {
>> > - playlist_TogglePause( p_intf->p_sys->p_playlist );
>> > + vlc_actions_do( p_intf, ACTIONID_PLAY_PAUSE, true, 0 );
>>
>> Why oh why? What is the point in doing this?
>>
>> > i_error = VLC_SUCCESS;
>> > }
>> > else if( !strcmp( psz_cmd, "seek" ) )
>> > @@ -1001,18 +1000,18 @@ static int Input( vlc_object_t *p_this,
>char const
>> > *psz_cmd, }
>> > else
>> > {
>> > - var_SetInteger( p_intf->obj.libvlc, "key-action",
>> > ACTIONID_JUMP_BACKWARD_EXTRASHORT ); + vlc_actions_do(
>p_intf,
>> > ACTIONID_JUMP_BACKWARD_EXTRASHORT, true, 0 ); }
>> > i_error = VLC_SUCCESS;
>> > }
>> > else if ( !strcmp( psz_cmd, "faster" ) )
>> > {
>> > - var_TriggerCallback( p_intf->p_sys->p_playlist,
>"rate-faster" );
>> > + vlc_actions_do( p_intf, ACTIONID_FASTER, true, 0 );
>>
>> Ditto.
>>
>> > i_error = VLC_SUCCESS;
>> > }
>> > else if ( !strcmp( psz_cmd, "slower" ) )
>> > {
>> > - var_TriggerCallback( p_intf->p_sys->p_playlist,
>"rate-slower" );
>> > + vlc_actions_do( p_intf, ACTIONID_SLOWER, true, 0 );
>>
>> Ditto.
>>
>> > i_error = VLC_SUCCESS;
>> > }
>> > else if ( !strcmp( psz_cmd, "normal" ) )
>> > @@ -1022,7 +1021,7 @@ static int Input( vlc_object_t *p_this, char
>const
>> > *psz_cmd, }
>> > else if ( !strcmp( psz_cmd, "frame" ) )
>> > {
>> > - var_TriggerCallback( p_input, "frame-next" );
>> > + vlc_actions_do( p_intf, ACTIONID_RATE_NORMAL, true, 0 );
>>
>> Ditto.
>>
>> > i_error = VLC_SUCCESS;
>> > }
>> > else if( !strcmp( psz_cmd, "chapter" ) ||
>> > @@ -1046,9 +1045,9 @@ static int Input( vlc_object_t *p_this, char
>const
>> > *psz_cmd, }
>> > }
>> > else if( !strcmp( psz_cmd, "chapter_n" ) )
>> > - var_TriggerCallback( p_input, "next-chapter" );
>> > + vlc_actions_do( p_intf, ACTIONID_CHAPTER_NEXT, true,
>1, p_input
>> > ); else if( !strcmp( psz_cmd, "chapter_p" ) )
>>
>> Ditto.
>>
>> > - var_TriggerCallback( p_input, "prev-chapter" );
>> > + vlc_actions_do( p_intf, ACTIONID_CHAPTER_PREV, true,
>1, p_input
>> > ); i_error = VLC_SUCCESS;
>>
>> Ditto.
>>
>> > }
>> > else if( !strcmp( psz_cmd, "title" ) ||
>> > @@ -1070,9 +1069,9 @@ static int Input( vlc_object_t *p_this, char
>const
>> > *psz_cmd, }
>> > }
>> > else if( !strcmp( psz_cmd, "title_n" ) )
>> > - var_TriggerCallback( p_input, "next-title" );
>> > + vlc_actions_do( p_intf, ACTIONID_TITLE_NEXT, true, 1,
>p_input
>> > ); else if( !strcmp( psz_cmd, "title_p" ) )
>> > - var_TriggerCallback( p_input, "prev-title" );
>> > + vlc_actions_do( p_intf, ACTIONID_TITLE_PREV, true, 1,
>p_input
>>
>> Both ditto.
>>
>> > );
>> >
>> > i_error = VLC_SUCCESS;
>> > }
>>
>>
>
>To avoid spreading handling of actions in multiple modules and
>centralize the "key" -> "response" in a single place, as opposed to
>having the same code being spread out in various modules.
>Granted some of those are one liners, but when some logic is necessary
>to handle the action, it shouldn't be duplicated IMHO.
>
>--
> Hugo Beauzée-Luyssen
> hugo at beauzee.fr
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel
I was _not_ referring to existing actions, but to every other cases, where they are neither keys nor actions to demultiplex as yet.
--
Rémi Denis-Courmont
Typed on an inconvenient virtual keyboard
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20170810/b6e16cef/attachment.html>
More information about the vlc-devel
mailing list