aboutsummaryrefslogtreecommitdiffstats
path: root/make
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2011-09-03 01:41:36 +0200
committerSven Gothel <[email protected]>2011-09-03 01:41:36 +0200
commitdcb0cc571298be90d0db7ad00fef835fe5fdc46d (patch)
treebffefe479995162fcad2be184c091742ebee6db7 /make
parent8dc31bcaa3ee3a2407d1960ab42d094cac642876 (diff)
NativeWindow/X11: Add XVisualInfo.Visual opaque long access ; Add XRenderFindVisualFormat for translucent window config
Diffstat (limited to 'make')
-rw-r--r--make/config/nativewindow/x11-lib.cfg3
-rw-r--r--make/stub_includes/x11/X11/extensions/Xrender.h42
-rw-r--r--make/stub_includes/x11/window-lib.c4
3 files changed, 49 insertions, 0 deletions
diff --git a/make/config/nativewindow/x11-lib.cfg b/make/config/nativewindow/x11-lib.cfg
index d9e4ccd0a..2a999e2fc 100644
--- a/make/config/nativewindow/x11-lib.cfg
+++ b/make/config/nativewindow/x11-lib.cfg
@@ -20,11 +20,13 @@ Opaque long XID
Opaque long Display *
Opaque boolean Bool
Opaque long GLXFBConfig
+Opaque long Visual *
IncludeAs CustomJavaCode X11Lib x11-CustomJavaCode.java
ArgumentIsString XOpenDisplay 0
ReturnsString XDisplayString
+ReturnValueCapacity XRenderFindVisualFormat sizeof(XRenderPictFormat *)
# We have Custom code for the following
Ignore XGetVisualInfo
@@ -43,4 +45,5 @@ CustomCCode #include <gluegen_stdint.h>
CustomCCode #include <gluegen_stddef.h>
CustomCCode #include <X11/Xlib.h>
CustomCCode #include <X11/Xutil.h>
+CustomCCode #include <X11/extensions/Xrender.h>
diff --git a/make/stub_includes/x11/X11/extensions/Xrender.h b/make/stub_includes/x11/X11/extensions/Xrender.h
new file mode 100644
index 000000000..49cdf69e9
--- /dev/null
+++ b/make/stub_includes/x11/X11/extensions/Xrender.h
@@ -0,0 +1,42 @@
+#ifndef _XRENDER_H_
+#define _XRENDER_H_
+
+#include <X11/X.h>
+#include <X11/Xlib.h>
+#include <X11/Xutil.h>
+
+typedef XID PictFormat;
+
+typedef struct {
+ short red;
+ short redMask;
+ short green;
+ short greenMask;
+ short blue;
+ short blueMask;
+ short alpha;
+ short alphaMask;
+} XRenderDirectFormat;
+
+typedef struct {
+ PictFormat id;
+ int type;
+ int depth;
+ XRenderDirectFormat direct;
+ Colormap colormap;
+} XRenderPictFormat;
+
+#define PictFormatID (1 << 0)
+#define PictFormatType (1 << 1)
+#define PictFormatDepth (1 << 2)
+#define PictFormatRed (1 << 3)
+#define PictFormatRedMask (1 << 4)
+#define PictFormatGreen (1 << 5)
+#define PictFormatGreenMask (1 << 6)
+#define PictFormatBlue (1 << 7)
+#define PictFormatBlueMask (1 << 8)
+#define PictFormatAlpha (1 << 9)
+#define PictFormatAlphaMask (1 << 10)
+#define PictFormatColormap (1 << 11)
+
+#endif /* _XRENDER_H_ */
diff --git a/make/stub_includes/x11/window-lib.c b/make/stub_includes/x11/window-lib.c
index 5f33572bb..7b6da3c65 100644
--- a/make/stub_includes/x11/window-lib.c
+++ b/make/stub_includes/x11/window-lib.c
@@ -1,5 +1,6 @@
#include <X11/Xlib.h>
#include <X11/Xutil.h>
+#include <X11/extensions/Xrender.h>
// Routines needed from Xlib.h and Xutil.h (placed here to avoid having
// XVisualInfo generated multiple times)
@@ -76,3 +77,6 @@ Bool XF86VidModeSetGammaRamp(
unsigned short *red_array,
unsigned short *green_array,
unsigned short *blue_array);
+
+XRenderPictFormat * XRenderFindVisualFormat (Display *dpy, _Xconst Visual *visual);
+