[gnome-shell] Use CLUTTER_CAIRO_FORMAT_ARGB32: rather then doing a byte order check
- From: Adel Gadllah <agadllah src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] Use CLUTTER_CAIRO_FORMAT_ARGB32: rather then doing a byte order check
- Date: Wed, 13 Jul 2011 21:12:06 +0000 (UTC)
commit 0f49f36519b2721575dd77a8a61dd373240c9fcb
Author: Adel Gadllah <adel gadllah gmail com>
Date: Wed Jul 13 22:14:45 2011 +0200
Use CLUTTER_CAIRO_FORMAT_ARGB32: rather then doing a byte order check
Clutter 1.7.x introduced CLUTTER_CAIRO_FORMAT_ARGB32: which can be used when
sharing textures/data with cairo without having to do check the
byte order and choose the appropriate format by hand.
https://bugzilla.gnome.org/show_bug.cgi?id=654577
configure.ac | 2 +-
src/shell-recorder.c | 4 ++--
src/shell-xfixes-cursor.c | 6 +-----
src/st/st-drawing-area.c | 13 ++-----------
src/st/st-theme-node-drawing.c | 15 ++-------------
5 files changed, 8 insertions(+), 32 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index eb8098e..26f3434 100644
--- a/configure.ac
+++ b/configure.ac
@@ -64,7 +64,7 @@ fi
AM_CONDITIONAL(BUILD_RECORDER, $build_recorder)
-CLUTTER_MIN_VERSION=1.5.15
+CLUTTER_MIN_VERSION=1.7.5
GOBJECT_INTROSPECTION_MIN_VERSION=0.10.1
GJS_MIN_VERSION=0.7.11
MUTTER_MIN_VERSION=3.0.0
diff --git a/src/shell-recorder.c b/src/shell-recorder.c
index d297923..0171045 100644
--- a/src/shell-recorder.c
+++ b/src/shell-recorder.c
@@ -198,7 +198,7 @@ create_recording_icon (void)
texture = cogl_texture_new_from_data (32, 32,
COGL_TEXTURE_NONE,
- COGL_PIXEL_FORMAT_BGRA_8888,
+ CLUTTER_CAIRO_FORMAT_ARGB32,
COGL_PIXEL_FORMAT_ANY,
cairo_image_surface_get_stride (surface),
cairo_image_surface_get_data (surface));
@@ -529,7 +529,7 @@ recorder_record_frame (ShellRecorder *recorder)
cogl_read_pixels (0, 0,
recorder->stage_width, recorder->stage_height,
COGL_READ_PIXELS_COLOR_BUFFER,
- COGL_PIXEL_FORMAT_BGRA_8888_PRE,
+ CLUTTER_CAIRO_FORMAT_ARGB32,
data);
recorder_draw_cursor (recorder, buffer);
diff --git a/src/shell-xfixes-cursor.c b/src/shell-xfixes-cursor.c
index 334503d..0da2397 100644
--- a/src/shell-xfixes-cursor.c
+++ b/src/shell-xfixes-cursor.c
@@ -232,11 +232,7 @@ xfixes_cursor_reset_image (ShellXFixesCursor *xfixes_cursor)
sprite = cogl_texture_new_from_data (cursor_image->width,
cursor_image->height,
COGL_TEXTURE_NONE,
-#if G_BYTE_ORDER == G_LITTLE_ENDIAN
- COGL_PIXEL_FORMAT_BGRA_8888_PRE,
-#else
- COGL_PIXEL_FORMAT_ARGB_8888_PRE,
-#endif
+ CLUTTER_CAIRO_FORMAT_ARGB32,
COGL_PIXEL_FORMAT_ANY,
cursor_image->width * 4, /* stride */
cursor_data);
diff --git a/src/st/st-drawing-area.c b/src/st/st-drawing-area.c
index 2235842..2b904e2 100644
--- a/src/st/st-drawing-area.c
+++ b/src/st/st-drawing-area.c
@@ -36,15 +36,6 @@
#include <cairo.h>
-/* Cairo stores the data in native byte order as ARGB but Cogl's pixel
- formats specify the actual byte order. Therefore we need to use a
- different format depending on the architecture */
-#if G_BYTE_ORDER == G_LITTLE_ENDIAN
-#define PIXEL_FORMAT COGL_PIXEL_FORMAT_BGRA_8888_PRE
-#else
-#define PIXEL_FORMAT COGL_PIXEL_FORMAT_ARGB_8888_PRE
-#endif
-
G_DEFINE_TYPE(StDrawingArea, st_drawing_area, ST_TYPE_WIDGET);
struct _StDrawingAreaPrivate {
@@ -122,7 +113,7 @@ st_drawing_area_paint (ClutterActor *self)
{
priv->texture = cogl_texture_new_with_size (width, height,
COGL_TEXTURE_NONE,
- PIXEL_FORMAT);
+ CLUTTER_CAIRO_FORMAT_ARGB32);
priv->needs_repaint = TRUE;
}
@@ -142,7 +133,7 @@ st_drawing_area_paint (ClutterActor *self)
priv->context = NULL;
cogl_texture_set_region (priv->texture, 0, 0, 0, 0, width, height, width, height,
- PIXEL_FORMAT,
+ CLUTTER_CAIRO_FORMAT_ARGB32,
cairo_image_surface_get_stride (surface),
cairo_image_surface_get_data (surface));
diff --git a/src/st/st-theme-node-drawing.c b/src/st/st-theme-node-drawing.c
index a600179..7513a48 100644
--- a/src/st/st-theme-node-drawing.c
+++ b/src/st/st-theme-node-drawing.c
@@ -167,11 +167,7 @@ create_corner_material (StCornerSpec *corner)
texture = cogl_texture_new_from_data (size, size,
COGL_TEXTURE_NONE,
-#if G_BYTE_ORDER == G_LITTLE_ENDIAN
- COGL_PIXEL_FORMAT_BGRA_8888_PRE,
-#else
- COGL_PIXEL_FORMAT_ARGB_8888_PRE,
-#endif
+ CLUTTER_CAIRO_FORMAT_ARGB32,
COGL_PIXEL_FORMAT_ANY,
rowstride,
data);
@@ -1250,14 +1246,7 @@ st_theme_node_prerender_background (StThemeNode *node)
texture = cogl_texture_new_from_data (paint_box.x2 - paint_box.x1,
paint_box.y2 - paint_box.y1,
COGL_TEXTURE_NONE,
-#if G_BYTE_ORDER == G_LITTLE_ENDIAN
- COGL_PIXEL_FORMAT_BGRA_8888_PRE,
-#elif G_BYTE_ORDER == G_BIG_ENDIAN
- COGL_PIXEL_FORMAT_ARGB_8888_PRE,
-#else
- COGL_PIXEL_FORMAT_ANY,
-#error unknown endianness type
-#endif
+ CLUTTER_CAIRO_FORMAT_ARGB32,
COGL_PIXEL_FORMAT_ANY,
rowstride,
data);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]