summaryrefslogtreecommitdiff
path: root/decode_render.c
diff options
context:
space:
mode:
authorAlan Coopersmith <alan.coopersmith@oracle.com>2012-08-28 23:35:37 -0700
committerAlan Coopersmith <alan.coopersmith@oracle.com>2012-10-02 22:16:09 -0700
commitb4de85b1b63d03322c2c831002bd5aa6418347ba (patch)
treecfb095b5ffeb0a333a0b8e7698794c77b3858c6a /decode_render.c
parent95a436f7efd7061a15e3be533c56e573aac2db92 (diff)
downloadxscope-b4de85b1b63d03322c2c831002bd5aa6418347ba.tar.gz
Update RANDR support from 0.x to include 1.0 - 1.4
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Diffstat (limited to 'decode_render.c')
-rw-r--r--decode_render.c33
1 files changed, 31 insertions, 2 deletions
diff --git a/decode_render.c b/decode_render.c
index 5f62d39..8c254a8 100644
--- a/decode_render.c
+++ b/decode_render.c
@@ -540,8 +540,8 @@ InitializeRENDER(const unsigned char *buf)
DefineType(TRIANGLE, RECORD, "TRIANGLE", PrintTRIANGLE);
DefineType(TRAPEZOID, RECORD, "TRAPEZOID", PrintTRAPEZOID);
DefineType(FILTERALIAS, BUILTIN, "FILTERALIAS", PrintFILTERALIAS);
- DefineType(RENDERTRANSFORM, BUILTIN, "RENDERTRANSFORM",
- PrintRENDERTRANSFORM);
+
+ InitializeCommonRenderTypes();
InitializeExtensionDecoder(RENDERRequest, render_decode_req,
render_decode_reply);
@@ -550,3 +550,32 @@ InitializeRENDER(const unsigned char *buf)
InitializeExtensionErrorDecoder(errcode, render_decode_error);
}
}
+
+/*
+ Types originally defined by Render but now shared with other extensions
+ which may need to initialize the definitions even if the client hasn't
+ made any Render extension calls
+*/
+void
+InitializeCommonRenderTypes(void)
+{
+ static Boolean initialized;
+ TYPE p;
+
+ if (initialized)
+ return;
+ initialized = true;
+
+ DefineType(RENDERTRANSFORM, BUILTIN, "RENDERTRANSFORM",
+ PrintRENDERTRANSFORM);
+
+ /* Subpixel orders included in 0.6 */
+ p = DefineType(SUBPIXEL, ENUMERATED, "SUBPIXEL",
+ (PrintProcType) PrintENUMERATED);
+ DefineEValue(p, 0L, "Unknown");
+ DefineEValue(p, 1L, "SubPixelHorizontalRGB");
+ DefineEValue(p, 2L, "SubPixelHorizontalBGR");
+ DefineEValue(p, 3L, "SubPixelVerticalRGB");
+ DefineEValue(p, 4L, "SubPixelVerticalBGR");
+ DefineEValue(p, 5L, "SubPixelNone");
+}