<html><head></head><body><div class="gmail_quote">Le 10 août 2017 10:05:39 GMT+03:00, "Hugo Beauzée-Luyssen" <hugo@beauzee.fr> a écrit :<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre class="k9mail">On Wed, Aug 9, 2017, at 09:48 PM, Rémi Denis-Courmont wrote:<br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #729fcf; padding-left: 1ex;"> Le keskiviikkona 9. elokuuta 2017, 18.16.32 EEST Hugo Beauzée-Luyssen a <br /> écrit :<br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;"> From: Thomas Guillem <thomas@gllm.fr><br /> <br /> ---<br />  modules/control/oldrc.c | 23 +++++++++++------------<br />  1 file changed, 11 insertions(+), 12 deletions(-)<br /> <br /> diff --git a/modules/control/oldrc.c b/modules/control/oldrc.c<br /> index 66402293a5..f71f0278af 100644<br /> --- a/modules/control/oldrc.c<br /> +++ b/modules/control/oldrc.c<br /> @@ -714,8 +714,7 @@ static void *Run( void *data )<br />          }<br />          else if( !strcmp( psz_cmd, "key" ) || !strcmp( psz_cmd, "hotkey" )<br /> ) {<br /> -            var_SetInteger( p_intf->obj.libvlc, "key-action",<br /> -                            vlc_actions_get_id( psz_arg ) );<br /> +            vlc_actions_do( p_intf, vlc_actions_get_id( psz_arg ), true, 0<br /> ); }<br />          else switch( psz_cmd[0] )<br />          {<br /> @@ -959,7 +958,7 @@ static int Input( vlc_object_t *p_this, char const<br /> *psz_cmd, /* Parse commands that only require an input */<br />      if( !strcmp( psz_cmd, "pause" ) )<br />      {<br /> -        playlist_TogglePause( p_intf->p_sys->p_playlist );<br /> +        vlc_actions_do( p_intf, ACTIONID_PLAY_PAUSE, true, 0 );<br /></blockquote> <br /> Why oh why? What is the point in doing this?<br /> <br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">          i_error = VLC_SUCCESS;<br />      }<br />      else if( !strcmp( psz_cmd, "seek" ) )<br /> @@ -1001,18 +1000,18 @@ static int Input( vlc_object_t *p_this, char const<br /> *psz_cmd, }<br />          else<br />          {<br /> -            var_SetInteger( p_intf->obj.libvlc, "key-action",<br /> ACTIONID_JUMP_BACKWARD_EXTRASHORT ); +            vlc_actions_do( p_intf,<br /> ACTIONID_JUMP_BACKWARD_EXTRASHORT, true, 0 ); }<br />          i_error = VLC_SUCCESS;<br />      }<br />      else if ( !strcmp( psz_cmd, "faster" ) )<br />      {<br /> -        var_TriggerCallback( p_intf->p_sys->p_playlist, "rate-faster" );<br /> +        vlc_actions_do( p_intf, ACTIONID_FASTER, true, 0 );<br /></blockquote> <br /> Ditto.<br /> <br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">          i_error = VLC_SUCCESS;<br />      }<br />      else if ( !strcmp( psz_cmd, "slower" ) )<br />      {<br /> -        var_TriggerCallback( p_intf->p_sys->p_playlist, "rate-slower" );<br /> +        vlc_actions_do( p_intf, ACTIONID_SLOWER, true, 0 );<br /></blockquote> <br /> Ditto.<br /> <br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">          i_error = VLC_SUCCESS;<br />      }<br />      else if ( !strcmp( psz_cmd, "normal" ) )<br /> @@ -1022,7 +1021,7 @@ static int Input( vlc_object_t *p_this, char const<br /> *psz_cmd, }<br />      else if ( !strcmp( psz_cmd, "frame" ) )<br />      {<br /> -        var_TriggerCallback( p_input, "frame-next" );<br /> +        vlc_actions_do( p_intf, ACTIONID_RATE_NORMAL, true, 0 );<br /></blockquote> <br /> Ditto.<br /> <br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">          i_error = VLC_SUCCESS;<br />      }<br />      else if( !strcmp( psz_cmd, "chapter" ) ||<br /> @@ -1046,9 +1045,9 @@ static int Input( vlc_object_t *p_this, char const<br /> *psz_cmd, }<br />          }<br />          else if( !strcmp( psz_cmd, "chapter_n" ) )<br /> -            var_TriggerCallback( p_input, "next-chapter" );<br /> +            vlc_actions_do( p_intf, ACTIONID_CHAPTER_NEXT, true, 1, p_input<br /> ); else if( !strcmp( psz_cmd, "chapter_p" ) )<br /></blockquote> <br /> Ditto.<br /> <br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;"> -            var_TriggerCallback( p_input, "prev-chapter" );<br /> +            vlc_actions_do( p_intf, ACTIONID_CHAPTER_PREV, true, 1, p_input<br /> ); i_error = VLC_SUCCESS;<br /></blockquote> <br /> Ditto.<br /> <br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;">      }<br />      else if( !strcmp( psz_cmd, "title" ) ||<br /> @@ -1070,9 +1069,9 @@ static int Input( vlc_object_t *p_this, char const<br /> *psz_cmd, }<br />          }<br />          else if( !strcmp( psz_cmd, "title_n" ) )<br /> -            var_TriggerCallback( p_input, "next-title" );<br /> +            vlc_actions_do( p_intf, ACTIONID_TITLE_NEXT, true, 1, p_input<br /> ); else if( !strcmp( psz_cmd, "title_p" ) )<br /> -            var_TriggerCallback( p_input, "prev-title" );<br /> +            vlc_actions_do( p_intf, ACTIONID_TITLE_PREV, true, 1, p_input<br /></blockquote> <br /> Both ditto.<br /> <br /><blockquote class="gmail_quote" style="margin: 0pt 0pt 1ex 0.8ex; border-left: 1px solid #ad7fa8; padding-left: 1ex;"> );<br /> <br />          i_error = VLC_SUCCESS;<br />      }<br /></blockquote> <br /> <br /></blockquote><br />To avoid spreading handling of actions in multiple modules and<br />centralize the "key" -> "response" in a single place, as opposed to<br />having the same code being spread out in various modules.<br />Granted some of those are one liners, but when some logic is necessary<br />to handle the action, it shouldn't be duplicated IMHO.<br /></pre></blockquote></div><br clear="all">I was _not_ referring to existing actions, but to every other cases, where they are neither keys nor actions to demultiplex as yet.<br>
-- <br>
Rémi Denis-Courmont<br>
Typed on an inconvenient virtual keyboard</body></html>