]> git.sesse.net Git - vlc/commitdiff
Move intf-popupmenu and video-on-top variables from playlist to libvlc.
authorAntoine Cellerier <dionoea@videolan.org>
Sat, 28 Jun 2008 17:02:05 +0000 (19:02 +0200)
committerAntoine Cellerier <dionoea@videolan.org>
Sat, 28 Jun 2008 17:03:26 +0000 (19:03 +0200)
Should fix assertion errors.

modules/gui/qt4/main_interface.cpp
modules/gui/wxwidgets/timer.cpp
modules/video_output/msw/events.c
modules/video_output/sdl.c
modules/video_output/x11/xcommon.c
src/libvlc.c
src/playlist/engine.c
src/video_output/vout_intf.c

index d21cca070c277efc9830610d344b1acbe0e1886a..fda96ff3f18e5fb372a8cb929702853c7cf11e4a 100644 (file)
@@ -211,9 +211,7 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
     var_AddCallback( p_intf->p_libvlc, "intf-show", IntfShowCB, p_intf );
 
     /* Register callback for the intf-popupmenu variable */
-    playlist_t *p_playlist = pl_Yield( p_intf );
-    var_AddCallback( p_playlist, "intf-popupmenu", PopupMenuCB, p_intf );
-    pl_Release( p_intf );
+    var_AddCallback( p_intf->p_libvlc, "intf-popupmenu", PopupMenuCB, p_intf );
 
     /* VideoWidget connect mess to avoid different threads speaking to each other */
     CONNECT( this, askReleaseVideo( void * ),
@@ -282,9 +280,7 @@ MainInterface::~MainInterface()
     var_DelCallback( p_intf->p_libvlc, "intf-show", IntfShowCB, p_intf );
 
     /* Unregister callback for the intf-popupmenu variable */
-    playlist_t *p_playlist = pl_Yield( p_intf );
-    var_DelCallback( p_playlist, "intf-popupmenu", PopupMenuCB, p_intf );
-    pl_Release( p_intf );
+    var_DelCallback( p_intf->p_libvlc, "intf-popupmenu", PopupMenuCB, p_intf );
 
     p_intf->b_interaction = false;
     var_DelCallback( p_intf, "interaction", InteractCallback, this );
index b9f4e0e0ad21da4cc53acac0cd34782c37b43ff5..f65b090f0c671b98911a54b70180f4189c448449 100644 (file)
@@ -49,12 +49,7 @@ Timer::Timer( intf_thread_t *_p_intf, Interface *_p_main_interface )
     var_AddCallback( p_intf->p_libvlc, "intf-show", IntfShowCB, p_intf );
 
     /* Register callback for the intf-popupmenu variable */
-    playlist_t *p_playlist = pl_Yield( p_intf );
-    if( p_playlist != NULL )
-    {
-        var_AddCallback( p_playlist, "intf-popupmenu", PopupMenuCB, p_intf );
-        pl_Release( p_playlist );
-    }
+    var_AddCallback( p_intf->p_libvlc, "intf-popupmenu", PopupMenuCB, p_intf );
 
     Start( 100 /*milliseconds*/, wxTIMER_CONTINUOUS );
 }
@@ -64,12 +59,7 @@ Timer::~Timer()
     var_DelCallback( p_intf->p_libvlc, "intf-show", IntfShowCB, p_intf );
 
     /* Unregister callback */
-    playlist_t *p_playlist = pl_Yield( p_intf );
-    if( p_playlist != NULL )
-    {
-        var_DelCallback( p_playlist, "intf-popupmenu", PopupMenuCB, p_intf );
-        pl_Release( p_playlist );
-    }
+    var_DelCallback( p_intf->p_libvlc, "intf-popupmenu", PopupMenuCB, p_intf );
 }
 
 /*****************************************************************************
index 5a4eecd5ce899f6831b68d2a0ba8bea3b105a288..84dae385754493737a8c50102a503495aa660243 100644 (file)
@@ -77,15 +77,9 @@ static int Control( vout_thread_t *p_vout, int i_query, va_list args );
 
 static void DirectXPopupMenu( event_thread_t *p_event, bool b_open )
 {
-    playlist_t *p_playlist = vlc_object_find( p_event,
-                                             VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
-    if( p_playlist )
-    {
-        vlc_value_t val;
-        val.b_bool = b_open;
-        var_Set( p_playlist, "intf-popupmenu", val );
-        vlc_object_release( p_playlist );
-    }
+    vlc_value_t val;
+    val.b_bool = b_open;
+    var_Set( p_event->p_libvlc, "intf-popupmenu", val );
 }
 
 static int DirectXConvertKey( int i_key );
index 152bfb9533952d7f7c4e90bd2953d0b52262cdc2..97f326cc349e767fba640e2d7b6815625b35b711 100644 (file)
@@ -433,6 +433,7 @@ static int Manage( vout_thread_t *p_vout )
             case SDL_BUTTON_LEFT:
                 {
                     playlist_t *p_playlist;
+                    vlc_value_t val;
 
                     var_Get( p_vout, "mouse-button-down", &val );
                     val.i_int &= ~1;
@@ -441,15 +442,8 @@ static int Manage( vout_thread_t *p_vout )
                     val.b_bool = true;
                     var_Set( p_vout, "mouse-clicked", val );
 
-                    p_playlist = pl_Yield( p_vout );
-
-                    if( p_playlist != NULL )
-                    {
-                        vlc_value_t val;
-                        val.b_bool = false;
-                        var_Set( p_playlist, "intf-popupmenu", val );
-                        pl_Release( p_playlist );
-                    }
+                    val.b_bool = false;
+                    var_Set( p_vout->p_libvlc, "intf-popupmenu", val );
                 }
                 break;
 
@@ -484,15 +478,8 @@ static int Manage( vout_thread_t *p_vout )
                         vlc_object_release( p_intf );
                     }
 
-                    p_playlist = pl_Yield( p_vout );
-
-                    if( p_playlist != NULL )
-                    {
-                        vlc_value_t val;
-                        val.b_bool = true;
-                        var_Set( p_playlist, "intf-popupmenu", val );
-                        pl_Release( p_playlist );
-                    }
+                    val.b_bool = true;
+                    var_Set( p_vout->p_libvlc, "intf-popupmenu", val );
                 }
                 break;
             }
@@ -531,12 +518,16 @@ static int Manage( vout_thread_t *p_vout )
         /* Quit event (close the window) */
         case SDL_QUIT:
             {
+#if 0
                 playlist_t *p_playlist = pl_Yield( p_vout );
                 if( p_playlist != NULL )
                 {
                     playlist_Stop( p_playlist );
                     pl_Release( p_playlist );
                 }
+#else
+#warning FIXME FIXME ?
+#endif
             }
             break;
 
index b1b1a431ee931480afb7b6875ec370f5c640bd16..fadb89269837d51d54193407581bafa8c92460eb 100644 (file)
@@ -1300,13 +1300,8 @@ static int ManageVideo( vout_thread_t *p_vout )
                         val.b_bool = true;
                         var_Set( p_vout, "mouse-clicked", val );
 
-                        p_playlist = pl_Yield( p_vout );
-                        if( p_playlist != NULL )
-                        {
-                            vlc_value_t val; val.b_bool = false;
-                            var_Set( p_playlist, "intf-popupmenu", val );
-                            pl_Release( p_playlist );
-                        }
+                        vlc_value_t val; val.b_bool = false;
+                        var_Set( p_vout->p_libvlc, "intf-popupmenu", val );
                     }
                     break;
 
@@ -1338,13 +1333,8 @@ static int ManageVideo( vout_thread_t *p_vout )
                             vlc_object_release( p_intf );
                         }
 
-                        p_playlist = pl_Yield( p_vout );
-                        if( p_playlist != NULL )
-                        {
-                            vlc_value_t val; val.b_bool = true;
-                            var_Set( p_playlist, "intf-popupmenu", val );
-                            pl_Release( p_playlist );
-                        }
+                        vlc_value_t val; val.b_bool = true;
+                        var_Set( p_vout->p_libvlc, "intf-popupmenu", val );
                     }
                     break;
 
@@ -1474,12 +1464,16 @@ static int ManageVideo( vout_thread_t *p_vout )
                      == p_vout->p_sys->p_win->wm_delete_window ) )
         {
             /* the user wants to close the window */
+#if 0
             playlist_t * p_playlist = pl_Yield( p_vout );
             if( p_playlist != NULL )
             {
                 playlist_Stop( p_playlist );
                 pl_Release( p_playlist );
             }
+#else
+#warning FIXME FIXME FIXME
+#endif
         }
     }
 
index 9181821eebbe767ee2b5663736d7ce1b91fbca81..1e62c1fdf1645a8acc2d0847069bf8c4d1bd2058 100644 (file)
@@ -899,8 +899,10 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc,
     var_Create( p_libvlc, "volume-change", VLC_VAR_BOOL );
 
     /* Create a variable for showing the interface (moved from playlist). */
-    var_Create( p_playlist, "intf-show", VLC_VAR_BOOL );
-    var_SetBool( p_playlist, "intf-show", true );
+    var_Create( p_libvlc, "intf-show", VLC_VAR_BOOL );
+    var_SetBool( p_libvlc, "intf-show", true );
+
+    var_Create( p_libvlc, "intf-popupmenu", VLC_VAR_BOOL );
 
     /*
      * Get input filenames given as commandline arguments
index 7dee54c0077e185f5215e36e43e641ed03fe511e..f22d76036ed3cc705e525123732f845d169e04d6 100644 (file)
@@ -693,8 +693,6 @@ static void VariablesInit( playlist_t *p_playlist )
     val.i_int = -1;
     var_Set( p_playlist, "playlist-current", val );
 
-    var_Create( p_playlist, "intf-popupmenu", VLC_VAR_BOOL );
-
     var_Create( p_playlist, "activity", VLC_VAR_INTEGER );
     var_SetInteger( p_playlist, "activity", 0 );
 
index 71b45eec15f780d3ec5b04e6b67863b5e1b81e4e..af92376ca753c6b92513aaa4aaa6709e01c07b0c 100644 (file)
@@ -1135,15 +1135,13 @@ static int OnTopCallback( vlc_object_t *p_this, char const *psz_cmd,
                          vlc_value_t oldval, vlc_value_t newval, void *p_data )
 {
     vout_thread_t *p_vout = (vout_thread_t *)p_this;
-    playlist_t *p_playlist = pl_Yield( p_this );
     vout_Control( p_vout, VOUT_SET_STAY_ON_TOP, newval.b_bool );
     (void)psz_cmd; (void)oldval; (void)p_data;
 
-    /* Modify playlist as well because the vout might have to be restarted */
-    var_Create( p_playlist, "video-on-top", VLC_VAR_BOOL );
-    var_Set( p_playlist, "video-on-top", newval );
+    /* Modify libvlc as well because the vout might have to be restarted */
+    var_Create( p_vout->p_libvlc, "video-on-top", VLC_VAR_BOOL );
+    var_Set( p_vout->p_libvlc, "video-on-top", newval );
 
-    pl_Release( p_this );
     return VLC_SUCCESS;
 }
 
@@ -1152,15 +1150,13 @@ static int FullscreenCallback( vlc_object_t *p_this, char const *psz_cmd,
 {
     vout_thread_t *p_vout = (vout_thread_t *)p_this;
     vlc_value_t val;
-    playlist_t *p_playlist = pl_Yield( p_this );
     (void)psz_cmd; (void)oldval; (void)p_data;
 
     p_vout->i_changes |= VOUT_FULLSCREEN_CHANGE;
 
-    /* Modify playlist as well because the vout might have to be restarted */
-    var_Create( p_playlist, "fullscreen", VLC_VAR_BOOL );
-    var_Set( p_playlist, "fullscreen", newval );
-    pl_Release( p_playlist );
+    /* Modify libvlc as well because the vout might have to be restarted */
+    var_Create( p_vout->p_libvlc, "fullscreen", VLC_VAR_BOOL );
+    var_Set( p_vout->p_libvlc, "fullscreen", newval );
 
     val.b_bool = true;
     var_Set( p_vout, "intf-change", val );