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 * ),
this, releaseVideoSlot( void * ) );
- CONNECT( this, askVideoToResize( unsigned int, unsigned int ),
- videoWidget, SetSizing( unsigned int, unsigned int ) );
+ if( videoWidget )
+ CONNECT( this, askVideoToResize( unsigned int, unsigned int ),
+ videoWidget, SetSizing( unsigned int, unsigned int ) );
CONNECT( this, askUpdate(), this, doComponentsUpdate() );
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 );
if( videoEmbeddedFlag )
{
videoWidget = new VideoWidget( p_intf );
- mainLayout->insertWidget( 0, videoWidget );
-
- var_Create( p_intf, "window_widget", VLC_VAR_ADDRESS );
- vlc_value_t val;
- val.p_address = this;
- var_Set( p_intf, "window_widget", val );
- msg_Err( p_intf, "window_widget = %p", this);
+ mainLayout->insertWidget( 0, videoWidget, 10 );
}
/* Finish the sizing */
* Thou shall not call/resize/hide widgets from on another thread.
* This is wrong, and this is TEH reason to emit signals on those Video Functions
**/
-/* function called from ::DoRequest in order to show a nice VideoWidget
- at the good size */
void *MainInterface::requestVideo( vout_thread_t *p_nvout, int *pi_x,
int *pi_y, unsigned int *pi_width,
unsigned int *pi_height )
bgWasVisible = true;
emit askBgWidgetToToggle();
}
-
- /*if( THEMIM->getIM()->hasVideo() || !bgWasVisible )
+#if 0
+ if( THEMIM->getIM()->hasVideo() || !bgWasVisible )
{
videoWidget->widgetSize = QSize( *pi_width, *pi_height );
}
else /* Background widget available, use its size */
- /*{
+ {
/* Ok, our visualizations are bad, so don't do this for the moment
* use the requested size anyway */
// videoWidget->widgetSize = bgWidget->widgeTSize;
- /* videoWidget->widgetSize = QSize( *pi_width, *pi_height );
- }*/
-
+ videoWidget->widgetSize = QSize( *pi_width, *pi_height );
+ }
+#endif
videoIsActive = true;
- emit askVideoToResize( *pi_width, *pi_height );
+// emit askVideoToResize( *pi_width, *pi_height );
emit askUpdate();
-
- fullscreenControls->regFullscreenCallback( p_nvout );
}
return ret;
}
-/* function called from ::DoRequest in order to show a nice VideoWidget
- at the good size */
-void MainInterface::requestNotEmbeddedVideo( vout_thread_t *p_nvout )
-{
- fullscreenControls->regFullscreenCallback( p_nvout );
-}
-
void MainInterface::releaseVideo( void *p_win )
{
emit askReleaseVideo( p_win );