Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save niobium93/197f132867175050920fe1767e9bcb54 to your computer and use it in GitHub Desktop.
Save niobium93/197f132867175050920fe1767e9bcb54 to your computer and use it in GitHub Desktop.
From ea09f193e207732202b59716db8c6c37f1d557a4 Mon Sep 17 00:00:00 2001
From: Andrius Lukosevicius <niobium93@gmail.com>
Date: Tue, 7 Jun 2022 07:38:04 +0300
Subject: [PATCH] Revert "winex11.drv: Remove unused X11DRV_GET_DRAWABLE
ExtEscape code."
This reverts commit 96b82203f192eade6910f4ac2ecb188e27d22feb.
---
dlls/winex11.drv/init.c | 8 ++++++++
dlls/winex11.drv/x11drv.h | 9 +++++++++
2 files changed, 17 insertions(+)
diff --git a/dlls/winex11.drv/init.c b/dlls/winex11.drv/init.c
index 095a3778089..1df9fe589f0 100644
--- a/dlls/winex11.drv/init.c
+++ b/dlls/winex11.drv/init.c
@@ -222,6 +222,14 @@ static INT CDECL X11DRV_ExtEscape( PHYSDEV dev, INT escape, INT in_count, LPCVOI
return TRUE;
}
break;
+ case X11DRV_GET_DRAWABLE:
+ if (out_count >= sizeof(struct x11drv_escape_get_drawable))
+ {
+ struct x11drv_escape_get_drawable *data = out_data;
+ data->drawable = physDev->drawable;
+ return TRUE;
+ }
+ break;
case X11DRV_PRESENT_DRAWABLE:
if (in_count >= sizeof(struct x11drv_escape_present_drawable))
{
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
index a3f2b5a93e3..3e952ae84b5 100644
--- a/dlls/winex11.drv/x11drv.h
+++ b/dlls/winex11.drv/x11drv.h
@@ -339,6 +339,7 @@ extern int *get_window_surface_mapping( int bpp, int *mapping ) DECLSPEC_HIDDEN;
enum x11drv_escape_codes
{
X11DRV_SET_DRAWABLE, /* set current drawable for a DC */
+ X11DRV_GET_DRAWABLE, /* get current drawable for a DC */
X11DRV_START_EXPOSURES, /* start graphics exposures */
X11DRV_END_EXPOSURES, /* end graphics exposures */
X11DRV_PRESENT_DRAWABLE, /* present the drawable on screen */
@@ -352,6 +353,14 @@ struct x11drv_escape_set_drawable
RECT dc_rect; /* DC rectangle relative to drawable */
};
+struct x11drv_escape_get_drawable
+{
+ enum x11drv_escape_codes code; /* escape code (X11DRV_GET_DRAWABLE) */
+ Drawable drawable; /* X drawable */
+ Drawable gl_drawable; /* GL drawable */
+ int pixel_format; /* internal GL pixel format */
+};
+
struct x11drv_escape_present_drawable
{
enum x11drv_escape_codes code; /* escape code (X11DRV_PRESENT_DRAWABLE) */
--
2.36.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment