2007-07-21 Matthew Allum <mallum@openedhand.com>

* clutter/clutter-event.c:
        Correct  clutter_event_get_state () return type. Fixes #398

        * clutter/glx/clutter-stage-glx.c:
        Disable use XFixes cursor visibility funcs. Appears to have issues
        on feisty X Server at least. Fallback should work generally better.

        Fix non offscreen clutter_stage_snapshot to also rotate read pixel
        data to correct orientation.
This commit is contained in:
Matthew Allum 2007-07-21 16:48:11 +00:00
parent 097c177824
commit 9157740741
3 changed files with 22 additions and 6 deletions

View File

@ -1,3 +1,15 @@
2007-07-21 Matthew Allum <mallum@openedhand.com>
* clutter/clutter-event.c:
Correct clutter_event_get_state () return type. Fixes #398
* clutter/glx/clutter-stage-glx.c:
Disable use XFixes cursor visibility funcs. Appears to have issues
on feisty X Server at least. Fallback should work generally better.
Fix non offscreen clutter_stage_snapshot to also rotate read pixel
data to correct orientation.
2007-07-12 Matthew Allum <mallum@openedhand.com>
* clutter/eglnative/clutter-event-egl.c: (clutter_event_dispatch):

View File

@ -106,7 +106,7 @@ clutter_event_get_time (ClutterEvent *event)
*
* Since: 0.4
*/
guint32
ClutterModifierType
clutter_event_get_state (ClutterEvent *event)
{
g_return_val_if_fail (event != NULL, 0);

View File

@ -427,7 +427,9 @@ clutter_stage_glx_set_cursor_visible (ClutterStage *stage,
if (show_cursor)
{
#ifdef HAVE_XFIXES
#if 0 /* HAVE_XFIXES - borked on fiesty at least so disabled until further
* investigation.
*/
XFixesShowCursor (stage_glx->xdpy, stage_glx->xwin);
#else
XUndefineCursor (stage_glx->xdpy, stage_glx->xwin);
@ -435,7 +437,7 @@ clutter_stage_glx_set_cursor_visible (ClutterStage *stage,
}
else
{
#ifdef HAVE_XFIXES
#if 0 /* HAVE_XFIXES - borked */
XFixesHideCursor (stage_glx->xdpy, stage_glx->xwin);
#else
XColor col;
@ -540,7 +542,7 @@ clutter_stage_glx_draw_to_pixbuf (ClutterStage *stage,
}
else
{
GdkPixbuf *tmp = NULL;
GdkPixbuf *tmp = NULL, *tmp2 = NULL;
gint stride;
stride = ((width * 4 + 3) &~ 3);
@ -561,9 +563,11 @@ clutter_stage_glx_draw_to_pixbuf (ClutterStage *stage,
snapshot_pixbuf_free,
NULL);
pixb = gdk_pixbuf_flip (tmp, TRUE);
tmp2 = gdk_pixbuf_flip (tmp, TRUE);
g_object_unref (tmp);
pixb = gdk_pixbuf_rotate_simple (tmp2, GDK_PIXBUF_ROTATE_UPSIDEDOWN);
g_object_unref (tmp2);
}
return pixb;