mirror of
https://github.com/brl/mutter.git
synced 2025-05-02 06:39:38 +00:00
2007-08-29 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-main.c: (_clutter_do_pick): Call glFinish before reading pixels * clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize): Add missing read surface in making context current. Above fixes via Kate Alhola. * clutter/glx/clutter-glx.h: Add missing filter funcs so there actually exported
This commit is contained in:
parent
1ceaf04ac7
commit
818a667836
11
ChangeLog
11
ChangeLog
@ -1,3 +1,14 @@
|
|||||||
|
2007-08-29 Matthew Allum <mallum@openedhand.com>
|
||||||
|
|
||||||
|
* clutter/clutter-main.c: (_clutter_do_pick):
|
||||||
|
Call glFinish before reading pixels
|
||||||
|
* clutter/eglx/clutter-stage-egl.c: (clutter_stage_egl_realize):
|
||||||
|
Add missing read surface in making context current.
|
||||||
|
Above fixes via Kate Alhola.
|
||||||
|
|
||||||
|
* clutter/glx/clutter-glx.h:
|
||||||
|
Add missing filter funcs so there actually exported
|
||||||
|
|
||||||
2007-08-24 Matthew Allum <mallum@openedhand.com>
|
2007-08-24 Matthew Allum <mallum@openedhand.com>
|
||||||
|
|
||||||
* clutter/clutter-actor.c:
|
* clutter/clutter-actor.c:
|
||||||
|
@ -350,6 +350,12 @@ _clutter_do_pick (ClutterStage *stage,
|
|||||||
|
|
||||||
/* Calls should work under both GL and GLES, note GLES needs RGBA */
|
/* Calls should work under both GL and GLES, note GLES needs RGBA */
|
||||||
glGetIntegerv(GL_VIEWPORT, viewport);
|
glGetIntegerv(GL_VIEWPORT, viewport);
|
||||||
|
|
||||||
|
/* Below to be safe, particularly on GL ES. an EGL wait call or full
|
||||||
|
* could be nicer.
|
||||||
|
*/
|
||||||
|
glFinish();
|
||||||
|
|
||||||
glReadPixels(x, viewport[3] - y, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, pixel);
|
glReadPixels(x, viewport[3] - y, 1, 1, GL_RGBA, GL_UNSIGNED_BYTE, pixel);
|
||||||
|
|
||||||
if (pixel[0] == 0xff && pixel[1] == 0xff && pixel[2] == 0xff)
|
if (pixel[0] == 0xff && pixel[1] == 0xff && pixel[2] == 0xff)
|
||||||
|
@ -170,7 +170,7 @@ clutter_stage_egl_realize (ClutterActor *actor)
|
|||||||
|
|
||||||
status = eglMakeCurrent (clutter_eglx_display(),
|
status = eglMakeCurrent (clutter_eglx_display(),
|
||||||
stage_egl->egl_surface,
|
stage_egl->egl_surface,
|
||||||
EGL_NO_SURFACE,
|
stage_egl->egl_surface,
|
||||||
stage_egl->egl_context);
|
stage_egl->egl_context);
|
||||||
|
|
||||||
if (status != EGL_TRUE)
|
if (status != EGL_TRUE)
|
||||||
|
@ -69,6 +69,10 @@ XVisualInfo *clutter_glx_get_stage_visual (ClutterStage *stage);
|
|||||||
gboolean clutter_glx_set_stage_foreign (ClutterStage *stage,
|
gboolean clutter_glx_set_stage_foreign (ClutterStage *stage,
|
||||||
Window xwindow);
|
Window xwindow);
|
||||||
|
|
||||||
|
void clutter_glx_add_filter (ClutterGLXFilterFunc func, gpointer data);
|
||||||
|
|
||||||
|
void clutter_glx_remove_filter (ClutterGLXFilterFunc func,
|
||||||
|
gpointer data);
|
||||||
|
|
||||||
G_END_DECLS
|
G_END_DECLS
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user