winex11: Disable client-side rendering for OpenGL windows.
This commit is contained in:
parent
2b5739269c
commit
a39659fcc9
|
@ -1135,6 +1135,15 @@ static void release_gl_drawable( struct gl_drawable *gl )
|
|||
if (gl) LeaveCriticalSection( &context_section );
|
||||
}
|
||||
|
||||
BOOL has_gl_drawable( HWND hwnd )
|
||||
{
|
||||
struct gl_drawable *gl;
|
||||
|
||||
gl = get_gl_drawable( hwnd, 0 );
|
||||
release_gl_drawable( gl );
|
||||
return gl != NULL;
|
||||
}
|
||||
|
||||
static GLXContext create_glxcontext(Display *display, struct wgl_context *context, GLXContext shareList)
|
||||
{
|
||||
GLXContext ctx;
|
||||
|
@ -3342,6 +3351,11 @@ BOOL set_win_format( HWND hwnd, XID fbconfig_id )
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
BOOL has_gl_drawable( HWND hwnd )
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void sync_gl_drawable( HWND hwnd, const RECT *visible_rect, const RECT *client_rect )
|
||||
{
|
||||
}
|
||||
|
|
|
@ -2051,6 +2051,7 @@ void CDECL X11DRV_WindowPosChanging( HWND hwnd, HWND insert_after, UINT swp_flag
|
|||
if (!data->whole_window) return;
|
||||
if (swp_flags & SWP_HIDEWINDOW) return;
|
||||
if (data->whole_window == root_window) return;
|
||||
if (has_gl_drawable( hwnd )) return;
|
||||
if (!client_side_graphics) return;
|
||||
|
||||
surface_rect = get_surface_rect( visible_rect );
|
||||
|
|
|
@ -558,6 +558,7 @@ extern Window X11DRV_get_whole_window( HWND hwnd ) DECLSPEC_HIDDEN;
|
|||
extern XIC X11DRV_get_ic( HWND hwnd ) DECLSPEC_HIDDEN;
|
||||
|
||||
extern BOOL set_win_format( HWND hwnd, XID fbconfig_id ) DECLSPEC_HIDDEN;
|
||||
extern BOOL has_gl_drawable( HWND hwnd ) DECLSPEC_HIDDEN;
|
||||
extern void sync_gl_drawable( HWND hwnd, const RECT *visible_rect, const RECT *client_rect ) DECLSPEC_HIDDEN;
|
||||
extern void destroy_gl_drawable( HWND hwnd ) DECLSPEC_HIDDEN;
|
||||
|
||||
|
|
Loading…
Reference in New Issue