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
This commit is contained in:
parent
b2fb84e361
commit
cdc4f85e47
@ -217,7 +217,7 @@ do_grab_screenshot (_screenshot_data *screenshot_data,
|
|||||||
backend = clutter_get_default_backend ();
|
backend = clutter_get_default_backend ();
|
||||||
context = clutter_backend_get_cogl_context (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);
|
width, height);
|
||||||
|
|
||||||
|
|
||||||
@ -234,6 +234,8 @@ do_grab_screenshot (_screenshot_data *screenshot_data,
|
|||||||
x, y,
|
x, y,
|
||||||
COGL_READ_PIXELS_COLOR_BUFFER,
|
COGL_READ_PIXELS_COLOR_BUFFER,
|
||||||
bitmap);
|
bitmap);
|
||||||
|
|
||||||
|
cairo_surface_mark_dirty (screenshot_data->image);
|
||||||
cogl_object_unref (bitmap);
|
cogl_object_unref (bitmap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user