X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fcontrol%2Flirc.c;h=5688c97ab106c2e64038f3d05faf42d113b62ff3;hb=c60652e38ac6afd74bd8225e9dae5406f13aaa4f;hp=d57a6c318bc66a8270426528ac75e7f04499b8ed;hpb=e44ad809583fdfd39c84709356a35a2749f117b3;p=vlc diff --git a/modules/control/lirc.c b/modules/control/lirc.c index d57a6c318b..5688c97ab1 100644 --- a/modules/control/lirc.c +++ b/modules/control/lirc.c @@ -35,6 +35,7 @@ #include #include #include +#include #ifdef HAVE_POLL # include @@ -42,7 +43,7 @@ #include -#define LIRC_TEXT N_("Change the lirc configuration file.") +#define LIRC_TEXT N_("Change the lirc configuration file") #define LIRC_LONGTEXT N_( \ "Tell lirc to read this configuration file. By default it " \ "searches in the users home directory." ) @@ -80,7 +81,7 @@ struct intf_sys_t *****************************************************************************/ static void Run( intf_thread_t * ); -static int Process( intf_thread_t * ); +static void Process( intf_thread_t * ); /***************************************************************************** * Open: initialize interface @@ -162,29 +163,28 @@ static void Run( intf_thread_t *p_intf ) } } -static int Process( intf_thread_t *p_intf ) +static void Process( intf_thread_t *p_intf ) { for( ;; ) { char *code, *c; - int i_ret = lirc_nextcode( &code ); - - if( i_ret ) - return i_ret; + if( lirc_nextcode( &code ) ) + return; if( code == NULL ) - return 0; + return; while( vlc_object_alive( p_intf ) && (lirc_code2char( p_intf->p_sys->config, code, &c ) == 0) && (c != NULL) ) { - vlc_value_t keyval; - if( !strncmp( "key-", c, 4 ) ) { - keyval.i_int = config_GetInt( p_intf, c ); - var_Set( p_intf->p_libvlc, "key-pressed", keyval ); + vlc_key_t i_key = vlc_GetActionId( c ); + if( i_key ) + var_SetInteger( p_intf->p_libvlc, "key-action", i_key ); + else + msg_Err( p_intf, "Unknown hotkey '%s'", c ); } else if( !strncmp( "menu ", c, 5) ) { @@ -213,7 +213,9 @@ static int Process( intf_thread_t *p_intf ) } else { - msg_Err( p_intf, "this doesn't appear to be a valid keycombo lirc sent us. Please look at the doc/lirc/example.lirc file in VLC" ); + msg_Err( p_intf, "this doesn't appear to be a valid keycombo " + "lirc sent us. Please look at the " + "doc/lirc/example.lirc file in VLC" ); break; } }