]> git.sesse.net Git - vlc/blobdiff - modules/gui/skins2/src/vlcproc.cpp
Qt: cache "no-art" pixmap as well
[vlc] / modules / gui / skins2 / src / vlcproc.cpp
index 59ad84a7016ed2386961fe951108d7680969566a..b0981bb171c2fbab9f0825726eaf2298725e6b3c 100644 (file)
@@ -146,7 +146,7 @@ VlcProc::VlcProc( intf_thread_t *pIntf ): SkinObject( pIntf ),
 #define ADD_CALLBACK( p_object, var ) \
     var_AddCallback( p_object, var, onGenericCallback, this );
 
-    ADD_CALLBACK( pIntf->p_libvlc, "volume-change" )
+    ADD_CALLBACK( pIntf->p_sys->p_playlist, "volume-change" )
     ADD_CALLBACK( pIntf->p_libvlc, "intf-show" )
 
     ADD_CALLBACK( pIntf->p_sys->p_playlist, "item-current" )
@@ -200,7 +200,7 @@ VlcProc::~VlcProc()
 
     interaction_Unregister( getIntf() );
 
-    var_DelCallback( getIntf()->p_libvlc, "volume-change",
+    var_DelCallback( getIntf()->p_sys->p_playlist, "volume-change",
                      onGenericCallback, this );
     var_DelCallback( getIntf()->p_libvlc, "intf-show",
                      onGenericCallback, this );
@@ -450,7 +450,7 @@ void VlcProc::on_item_current_changed( vlc_object_t* p_obj, vlc_value_t newVal )
     free( psz_uri );
 
     // Update playtree
-    getPlaytreeVar().onUpdateCurrent();
+    getPlaytreeVar().onUpdateCurrent( true );
 }
 
 void VlcProc::on_intf_event_changed( vlc_object_t* p_obj, vlc_value_t newVal )
@@ -727,6 +727,8 @@ void VlcProc::reset_input()
     SET_TEXT( m_cVarStreamURI, UString( getIntf(), "") );
     SET_TEXT( m_cVarStreamBitRate, UString( getIntf(), "") );
     SET_TEXT( m_cVarStreamSampleRate, UString( getIntf(), "") );
+
+    getPlaytreeVar().onUpdateCurrent( false );
 }
 
 void VlcProc::init_variables()