**************************/
/* Connect the input manager to the GUI elements it manages */
- /* It is also connected to the control->slider, see the ControlsWidget */
- /* Change the SpeedRate in the Status */
+ /* Change the SpeedRate in the Status Bar */
CONNECT( THEMIM->getIM(), rateChanged( int ), this, setRate( int ) );
/**
/* VideoWidget connects to avoid different threads speaking to each other */
- CONNECT( this, askReleaseVideo( void * ),
- this, releaseVideoSlot( void * ) );
+ CONNECT( this, askReleaseVideo( void ),
+ this, releaseVideoSlot( void ) );
if( videoWidget )
CONNECT( this, askVideoToResize( unsigned int, unsigned int ),
videoWidget, SetSizing( unsigned int, unsigned int ) );
/* Create the CONTROLS Widget */
controls = new ControlsWidget( p_intf,
- settings->value( "adv-controls", false ).toBool() );
+ settings->value( "adv-controls", false ).toBool(), this );
CONNECT( controls, advancedControlsToggled( bool ),
this, doComponentsUpdate() );
+ InputControlsWidget *inputC = new InputControlsWidget( p_intf, this );
/* Add the controls Widget to the main Widget */
mainLayout->insertWidget( 0, controls, 0, Qt::AlignBottom );
+ mainLayout->insertWidget( 0, inputC, 0, Qt::AlignBottom );
/* Create the Speed Control Widget */
speedControl = new SpeedControlWidget( p_intf );
}
/* Call from the WindowClose function */
-void MainInterface::releaseVideo( void *p_win )
+void MainInterface::releaseVideo( void )
{
if( fullscreenControls ) fullscreenControls->detachVout();
- if( p_win )
- emit askReleaseVideo( p_win );
+ emit askReleaseVideo( );
}
/* Function that is CONNECTED to the previous emit */
-void MainInterface::releaseVideoSlot( void *p_win )
+void MainInterface::releaseVideoSlot( void )
{
- videoWidget->release( p_win );
+ videoWidget->release( );
if( bgWasVisible )
{
if( i_visualmode != QT_ALWAYS_VIDEO_MODE &&
i_visualmode != QT_MINIMAL_MODE )
{ /* NORMAL MODE then */
- if( videoWidget->isHidden() ) emit askBgWidgetToToggle();
+ if( !videoWidget || videoWidget->isHidden() ) emit askBgWidgetToToggle();
else
{
/* If video is visible, then toggle the status of bgWidget */
/* Visible */
#ifdef WIN32
/* check if any visible window is above vlc in the z-order,
- * but ignore the ones always on top */
+ * but ignore the ones always on top
+ * and the ones which can't be activated */
WINDOWINFO wi;
HWND hwnd;
wi.cbSize = sizeof( WINDOWINFO );
for( hwnd = GetNextWindow( internalWinId(), GW_HWNDPREV );
- hwnd && !IsWindowVisible( hwnd );
+ hwnd && ( !IsWindowVisible( hwnd ) ||
+ ( GetWindowInfo( hwnd, &wi ) &&
+ (wi.dwExStyle&WS_EX_NOACTIVATE) ) );
hwnd = GetNextWindow( hwnd, GW_HWNDPREV ) );
if( !hwnd || !GetWindowInfo( hwnd, &wi ) ||
(wi.dwExStyle&WS_EX_TOPMOST) )