Commit 5f010182 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont
Browse files

Qt4: wait until the video output is ready

Except that this still returns an X11 invalid handle
parent 81126aae
......@@ -68,8 +68,14 @@ VideoWidget::VideoWidget( intf_thread_t *_p_i ) : QFrame( NULL ), p_intf( _p_i )
plt.setColor( QPalette::Inactive, QPalette::Window , Qt::black );
setPalette( plt );
/* The core can ask through a callback to show the video */
CONNECT( this, askVideoWidgetToShow(), this, show() );
/* The core can ask through a callback to show the video.
* NOTE: We need to block the video output core until the window handle
* is ready for use (otherwise an X11 invalid handle failure may occur).
* As a side effect, it is illegal to emit askVideoWidgetToShow from
* the same thread as the Qt4 thread that owns this. */
QObject::connect( this, SIGNAL(askVideoWidgetToShow()), this, SLOT(show()),
Qt::BlockingQueuedConnection );
/* The core can ask through a callback to resize the video */
// CONNECT( this, askResize( int, int ), this, SetSizing( int, int ) );
}
......@@ -108,6 +114,7 @@ void *VideoWidget::request( vout_thread_t *p_nvout, int *pi_x, int *pi_y,
return NULL;
}
p_vout = p_nvout;
msg_Dbg( p_intf, "embedded video handle %p", winId() );
return ( void* )winId();
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment