summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2009-07-23 20:22:23 -0700
committerEric Anholt <eric@anholt.net>2009-07-23 20:22:23 -0700
commitc7c4ba45a1747c4d8aeb4e5b0e2b595ec58b8d27 (patch)
tree111a5ff3e72eef1849f0e2aaa2d410c642f6bf18
parent3229ce8d26592965597cba18cc6d38593732fcf2 (diff)
Update to cairo-gl as it was merged to cairo master.
-rw-r--r--cairogears.c20
-rw-r--r--trap.c2
2 files changed, 18 insertions, 4 deletions
diff --git a/cairogears.c b/cairogears.c
index be402e9..62e64af 100644
--- a/cairogears.c
+++ b/cairogears.c
@@ -110,7 +110,7 @@ alarmhandler (int sig)
}
static cairo_gl_context_t *
-cairogears_gl_context_create(Display *dpy)
+cairogears_gl_context_create(Display *dpy, GLXContext *out_gl_ctx)
{
int attribs[] = { GLX_RGBA,
GLX_RED_SIZE, 1,
@@ -130,10 +130,11 @@ cairogears_gl_context_create(Display *dpy)
}
gl_ctx = glXCreateContext (dpy, visinfo, NULL, True);
+ *out_gl_ctx = gl_ctx;
XFree(visinfo);
- ctx = cairo_gl_glx_context_create (dpy, gl_ctx);
+ ctx = cairo_glx_context_create (dpy, gl_ctx);
return ctx;
}
@@ -147,6 +148,7 @@ main (int argc, char **argv)
GL_TYPE,
} output_type = XRENDER_TYPE;
int visible = 1;
+ GLXContext gl_ctx;
Display *dpy;
Window win;
@@ -245,7 +247,7 @@ main (int argc, char **argv)
DefaultVisual (dpy, DefaultScreen (dpy)),
width, height);
} else {
- ctx = cairogears_gl_context_create(dpy);
+ ctx = cairogears_gl_context_create(dpy, &gl_ctx);
win_surface = cairo_gl_surface_create_for_window(ctx, win,
width, height);
}
@@ -403,6 +405,18 @@ main (int argc, char **argv)
}
}
frame_cnt++;
+#if 0
+ {
+ static int frame = 0;
+ if (frame++ > 2) {
+ cairo_destroy(cr);
+ cairo_gl_context_destroy(ctx);
+ glXDestroyContext(dpy, gl_ctx);
+ XCloseDisplay(dpy);
+ exit(1);
+ }
+ }
+#endif
}
}
diff --git a/trap.c b/trap.c
index 39ec155..f53116f 100644
--- a/trap.c
+++ b/trap.c
@@ -165,7 +165,7 @@ trap_render (cairo_t *cr, int w, int h)
cairo_set_fill_rule (cr, CAIRO_FILL_RULE_EVEN_ODD);
- cairo_set_source_rgba (cr, 1.0, 1.0, 1.0, 1.0);
+ cairo_set_source_rgba (cr, .4, .6, .8, 1.0);
cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
cairo_rectangle (cr, 0, 0, w, h);
cairo_fill (cr);