From cdc4f85e478f2bf59dcffe1a1449af54b9086381 Mon Sep 17 00:00:00 2001 From: Adel Gadllah Date: Sun, 10 Feb 2013 14:18:54 +0100 Subject: [PATCH] shell-screenshot: Fix cursor fetching for non single window screenshots We have to mark the cairo_surface dirty after modifying the data behind cairo's back. Also use CAIRO_FORMAT_ARGB32 rather then CAIRO_FORMAT_RGB24 for the surface to be consistent with the rest of the code. https://bugzilla.gnome.org/show_bug.cgi?id=691715 --- src/shell-screenshot.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/shell-screenshot.c b/src/shell-screenshot.c index 2914e0705..da75ce09c 100644 --- a/src/shell-screenshot.c +++ b/src/shell-screenshot.c @@ -217,7 +217,7 @@ do_grab_screenshot (_screenshot_data *screenshot_data, backend = clutter_get_default_backend (); context = clutter_backend_get_cogl_context (backend); - screenshot_data->image = cairo_image_surface_create (CAIRO_FORMAT_RGB24, + screenshot_data->image = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, width, height); @@ -234,6 +234,8 @@ do_grab_screenshot (_screenshot_data *screenshot_data, x, y, COGL_READ_PIXELS_COLOR_BUFFER, bitmap); + + cairo_surface_mark_dirty (screenshot_data->image); cogl_object_unref (bitmap); }