Signed-off-by: Jamey Sharp <[email protected]>
Signed-off-by: Theo Hill <[email protected]>
---
 tests/util/piglit-glx-util.c | 22 ++++++++++++++++++----
 tests/util/piglit-glx-util.h |  1 +
 2 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/tests/util/piglit-glx-util.c b/tests/util/piglit-glx-util.c
index 1faec8f..6ba4a1d 100644
--- a/tests/util/piglit-glx-util.c
+++ b/tests/util/piglit-glx-util.c
@@ -93,8 +93,8 @@ piglit_get_glx_context_share(Display *dpy, XVisualInfo 
*visinfo, GLXContext shar
        return ctx;
 }
 
-Window
-_piglit_get_glx_window(Display *dpy, XVisualInfo *visinfo, bool map)
+static Window
+_piglit_get_glx_window(Display *dpy, XVisualInfo *visinfo, bool map, bool 
fullscreen)
 {
        XSetWindowAttributes window_attr;
        unsigned long mask;
@@ -109,6 +109,14 @@ _piglit_get_glx_window(Display *dpy, XVisualInfo *visinfo, 
bool map)
        window_attr.event_mask = StructureNotifyMask | ExposureMask |
                KeyPressMask;
        mask = CWBackPixel | CWBorderPixel | CWColormap | CWEventMask;
+
+       if (fullscreen) {
+               window_attr.override_redirect = True;
+               mask |= CWOverrideRedirect;
+               piglit_width = DisplayWidth(dpy, screen);
+               piglit_height = DisplayHeight(dpy, screen);
+       }
+
        win = XCreateWindow(dpy, root_win, 0, 0,
                            piglit_width, piglit_height,
                            0, visinfo->depth, InputOutput,
@@ -126,13 +134,19 @@ _piglit_get_glx_window(Display *dpy, XVisualInfo 
*visinfo, bool map)
 Window
 piglit_get_glx_window_unmapped(Display *dpy, XVisualInfo *visinfo)
 {
-       return _piglit_get_glx_window(dpy, visinfo, false);
+       return _piglit_get_glx_window(dpy, visinfo, false, false);
+}
+
+Window
+piglit_get_glx_window_fullscreen(Display *dpy, XVisualInfo *visinfo)
+{
+       return _piglit_get_glx_window(dpy, visinfo, true, true);
 }
 
 Window
 piglit_get_glx_window(Display *dpy, XVisualInfo *visinfo)
 {
-       return _piglit_get_glx_window(dpy, visinfo, true);
+       return _piglit_get_glx_window(dpy, visinfo, true, false);
 }
 
 bool
diff --git a/tests/util/piglit-glx-util.h b/tests/util/piglit-glx-util.h
index aebed15..70c9838 100644
--- a/tests/util/piglit-glx-util.h
+++ b/tests/util/piglit-glx-util.h
@@ -40,6 +40,7 @@ XVisualInfo * piglit_get_glx_visual(Display *dpy);
 GLXContext piglit_get_glx_context(Display *dpy, XVisualInfo *visinfo);
 GLXContext piglit_get_glx_context_share(Display *dpy, XVisualInfo *visinfo, 
GLXContext share);
 Window piglit_get_glx_window(Display *dpy, XVisualInfo *visinfo);
+Window piglit_get_glx_window_fullscreen(Display *dpy, XVisualInfo *visinfo);
 Window piglit_get_glx_window_unmapped(Display *dpy, XVisualInfo *visinfo);
 bool piglit_is_glx_extension_supported(Display *dpy, const char *name);
 void piglit_require_glx_extension(Display *dpy, const char *name);
-- 
1.8.5.3

_______________________________________________
Piglit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to