From 3df7a2c301379e98b0e96664a9180a8f8d666f0b Mon Sep 17 00:00:00 2001 From: Jens Bache-Wiig <jens.bache-wiig@nokia.com> Date: Wed, 3 Jun 2009 20:19:47 +0200 Subject: [PATCH] Fixes: Fix overlapping alpha values in expander area Details: There are platform differences when drawing overlapping alpha rects here. The workaround was to simply avoid using alpha values for now. --- src/plugins/texteditor/basetexteditor.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp index b6b7408f16c..44ab1dab1fe 100644 --- a/src/plugins/texteditor/basetexteditor.cpp +++ b/src/plugins/texteditor/basetexteditor.cpp @@ -2257,13 +2257,17 @@ static void drawRectBox(QPainter *painter, const QRect &rect, bool start, bool e { painter->save(); painter->setRenderHint(QPainter::Antialiasing, false); - QColor c = pal.highlight().color(); - c.setAlpha(40); + + QRgb b = pal.base().color().rgb(); + QRgb h = pal.highlight().color().rgb(); + QColor c = QColor((qRed(b)*2+qRed(h))/3, + (qGreen(b)*2+qGreen(h))/3, + (qBlue(b)*2+qBlue(h))/3); + QLinearGradient grad(rect.topLeft(), rect.topRight()); - grad.setColorAt(0, c.darker(130)); + grad.setColorAt(0, c.lighter(110)); grad.setColorAt(1, c.lighter(160)); - QColor outline = c.darker(110); - outline.setAlpha(100); + QColor outline = c; QRect r = rect; painter->fillRect(rect, grad); -- GitLab