- case VOUT_CLOSE:
- vlc_mutex_lock( &p_vout->p_sys->lock );
- XUnmapWindow( p_vout->p_sys->p_display,
- p_vout->p_sys->original_window.base_window );
- vlc_mutex_unlock( &p_vout->p_sys->lock );
- /* Fall through */
-
- case VOUT_REPARENT:
- vlc_mutex_lock( &p_vout->p_sys->lock );
- if( i_query == VOUT_REPARENT ) d = (Drawable)va_arg( args, int );
- if( !d )
- {
-#ifdef MODULE_NAME_IS_xvmc
- xvmc_context_reader_lock( &p_vout->p_sys->xvmc_lock );
-#endif
- XReparentWindow( p_vout->p_sys->p_display,
- p_vout->p_sys->original_window.base_window,
- DefaultRootWindow( p_vout->p_sys->p_display ),
- 0, 0 );
- }
- else
- XReparentWindow( p_vout->p_sys->p_display,
- p_vout->p_sys->original_window.base_window,
- d, 0, 0);
- XSync( p_vout->p_sys->p_display, False );
- p_vout->p_sys->original_window.owner_window = 0;
-#ifdef MODULE_NAME_IS_xvmc
- xvmc_context_reader_unlock( &p_vout->p_sys->xvmc_lock );
-#endif
- vlc_mutex_unlock( &p_vout->p_sys->lock );
- return vout_vaControlDefault( p_vout, i_query, args );
-