[PATCH] weston: Allow r5g6b5 visuals for X11 backend SHM

MoD mod-oss at hush.ai
Wed Nov 27 21:24:21 PST 2013


From: MoD <mod-oss at hush.ai>

The support is already present in the pixman renderer, so we can just check and use it.
---
 src/compositor-x11.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/compositor-x11.c b/src/compositor-x11.c
index 1d1b6a4..d98e48d 100644
--- a/src/compositor-x11.c
+++ b/src/compositor-x11.c
@@ -703,6 +703,12 @@ x11_output_init_shm(struct x11_compositor *c, struct x11_output *output,
 	     visual_type->blue_mask == 0x0000ff) {
 		weston_log("Will use x8r8g8b8 format for SHM surfaces\n");
 		pixman_format = PIXMAN_x8r8g8b8;
+	} else if (bitsperpixel == 16 &&
+	           visual_type->red_mask == 0x00f800 &&
+	           visual_type->green_mask == 0x0007e0 &&
+	           visual_type->blue_mask == 0x00001f) {
+		weston_log("Will use r5g6b5 format for SHM surfaces\n");
+		pixman_format = PIXMAN_r5g6b5;
 	} else {
 		weston_log("Can't find appropriate format for SHM pixmap\n");
 		errno = ENOTSUP;
-- 
1.8.4.2




More information about the wayland-devel mailing list