rebuild();
}
+void PLModel::updateMeta ( input_item_t *p_item )
+{
+ if( p_item )
+ {
+ ProcessInputItemUpdate( p_item->i_id );
+ }
+}
+
/**** Events processing ****/
void PLModel::ProcessInputItemUpdate( int i_input_id )
{
/* And signal the view */
emit layoutChanged();
addCallbacks();
+ /* Connect item update for metachanges */
+ CONNECT( THEMIM->getIM(), metaChanged( input_item_t *),
+ this, updateMeta( input_item_t *) );
}
/* This function must be entered WITH the playlist lock */
val.i_time = i_time;
var_Change( p_input, "time", VLC_VAR_SETVALUE, &val, NULL );
- /* FIXME ugly + what about meta change event ? */
+ /* FIXME ugly */
if( var_GetTime( p_input, "length" ) != i_length )
+ {
input_item_SetDuration( p_input->p->p_item, i_length );
+ input_SendEventMeta( p_input );
+ }
val.i_time = i_length;
var_Change( p_input, "length", VLC_VAR_SETVALUE, &val, NULL );