summaryrefslogtreecommitdiffstats
path: root/src/platformheaders/xcbfunctions/qxcbwindowfunctions.h
diff options
context:
space:
mode:
authorJørgen Lind <jorgen.lind@theqtcompany.com>2015-04-10 12:57:02 +0200
committerJørgen Lind <jorgen.lind@theqtcompany.com>2015-04-15 11:54:34 +0000
commitd605883b5e8e8cb272fab760cd4896d006ce0719 (patch)
tree34e3ac2ca6e7a0db64a98bcf6cb7eb04c283cb8f /src/platformheaders/xcbfunctions/qxcbwindowfunctions.h
parent7432c7c08a6709a12a143d48fbaa9927962edae8 (diff)
Make it possible to use the -visual argument
for xcb applications to use a specific visual id when creating windows. Also make it possible to retrieve the visual id of a specific window with QXcbWindowFunctions::visualId(QWindow *window). UINT_MAX is used as an invalid visualId. Change-Id: If62ada119ce8f9174cc211f53bbf1ce1bb7d021a Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Diffstat (limited to 'src/platformheaders/xcbfunctions/qxcbwindowfunctions.h')
-rw-r--r--src/platformheaders/xcbfunctions/qxcbwindowfunctions.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/platformheaders/xcbfunctions/qxcbwindowfunctions.h b/src/platformheaders/xcbfunctions/qxcbwindowfunctions.h
index f9008039a1..ae05cf52a9 100644
--- a/src/platformheaders/xcbfunctions/qxcbwindowfunctions.h
+++ b/src/platformheaders/xcbfunctions/qxcbwindowfunctions.h
@@ -72,6 +72,17 @@ public:
if (func)
func(window, type);
}
+
+ typedef uint (*VisualId)(QWindow *window);
+ static const QByteArray visualIdIdentifier() { return QByteArrayLiteral("XcbVisualId"); }
+
+ static uint visualId(QWindow *window)
+ {
+ QXcbWindowFunctions::VisualId func = reinterpret_cast<VisualId>(QGuiApplication::platformFunction(visualIdIdentifier()));
+ if (func)
+ return func(window);
+ return UINT_MAX;
+ }
};