From 990b54bc5cd767a2c687bae77ca1c79e40c79c0d Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Tue, 25 Oct 2016 16:08:26 -0700 Subject: qt4: add patch which fixes 24-bit color depth Signed-off-by: Stefan Agner Acked-by: Max Krummenacher --- recipes-qt/qt4/qt4-embedded_%.bbappend | 1 + .../qt4/0001-QWS-fix-24-bit-RGB-BGR-handling.patch | 36 ++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 recipes-qt/qt4/qt4/0001-QWS-fix-24-bit-RGB-BGR-handling.patch diff --git a/recipes-qt/qt4/qt4-embedded_%.bbappend b/recipes-qt/qt4/qt4-embedded_%.bbappend index 64d1d2f..e5a43d9 100644 --- a/recipes-qt/qt4/qt4-embedded_%.bbappend +++ b/recipes-qt/qt4/qt4-embedded_%.bbappend @@ -1,3 +1,4 @@ FILESEXTRAPATHS_prepend := "${THISDIR}/qt4:" +SRC_URI += " file://0001-QWS-fix-24-bit-RGB-BGR-handling.patch" QT_CONFIG_FLAGS += " -depths all" diff --git a/recipes-qt/qt4/qt4/0001-QWS-fix-24-bit-RGB-BGR-handling.patch b/recipes-qt/qt4/qt4/0001-QWS-fix-24-bit-RGB-BGR-handling.patch new file mode 100644 index 0000000..45856b0 --- /dev/null +++ b/recipes-qt/qt4/qt4/0001-QWS-fix-24-bit-RGB-BGR-handling.patch @@ -0,0 +1,36 @@ +From 9722a85dd2b4a7210af66e2a135fe7aded5075c7 Mon Sep 17 00:00:00 2001 +From: Stefan Agner +Date: Tue, 25 Oct 2016 14:37:02 -0700 +Subject: [PATCH] QWS: fix 24 bit RGB/BGR handling + +Use blit_24 for default 24-bit RGB case. This makes sure Qt works +well with frame buffer using [23:0] R:G:B (little endian) pixel +format. See also: +https://bugreports.qt.io/browse/QTBUG-56740 + +Upstream-Status: Submitted + +Signed-off-by: Stefan Agner +--- + src/gui/embedded/qscreen_qws.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/gui/embedded/qscreen_qws.cpp b/src/gui/embedded/qscreen_qws.cpp +index 407366c..a4ece07 100644 +--- a/src/gui/embedded/qscreen_qws.cpp ++++ b/src/gui/embedded/qscreen_qws.cpp +@@ -1208,9 +1208,9 @@ void qt_blit_setup(QScreen *screen, const QImage &image, + #ifdef QT_QWS_DEPTH_24 + case 24: + if (screen->pixelType() == QScreen::NormalPixel) +- screen->d_ptr->blit = blit_qrgb888; +- else + screen->d_ptr->blit = blit_24; ++ else ++ screen->d_ptr->blit = blit_qrgb888; + break; + #endif + #ifdef QT_QWS_DEPTH_18 +-- +2.10.0 + -- cgit v1.2.3