diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-07-05 13:04:26 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-10-02 08:06:21 +0000 |
commit | 6f16b7a8f33c9641850809562b627f9da12fa9ad (patch) | |
tree | 807dfa54222ce4b72e639f01285b494121211a93 /src/plugins/platforms/xcb/qxcbwindow.h | |
parent | b6f69206548f7bd15c72ba35d7c2e3b66b1abb7a (diff) |
Handle endian mismatch between X11 client and server
If the server and client has different endian we need to swizzle the
image pixels, we can do that by swizzling the masks and try to match
the new configuration. This is a rather rare setup so we don't try
to match every combination.
This patch fixes the colors when running Qt in a bigendian QEMU chroot.
Change-Id: Ie83f9607563cba137b2e1a63e996a05d43ff603e
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbwindow.h')
-rw-r--r-- | src/plugins/platforms/xcb/qxcbwindow.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/plugins/platforms/xcb/qxcbwindow.h b/src/plugins/platforms/xcb/qxcbwindow.h index 1ce9b0a42f..ebace55328 100644 --- a/src/plugins/platforms/xcb/qxcbwindow.h +++ b/src/plugins/platforms/xcb/qxcbwindow.h @@ -188,6 +188,7 @@ public Q_SLOTS: protected: virtual void resolveFormat(const QSurfaceFormat &format) { m_format = format; } virtual const xcb_visualtype_t *createVisual(); + QImage::Format imageFormatForVisual(const xcb_visualtype_t *visual, bool *rgbSwap) const; QXcbScreen *parentScreen(); |