From 744f6e3cd802fffb5dcf6672eed1a83900e83fac Mon Sep 17 00:00:00 2001 From: Guillaume Munch Date: Thu, 14 Apr 2016 16:24:18 +0100 Subject: [PATCH] Compute the highlighting color from AlternateBase and Highlight roles (#10073) --- src/frontends/qt4/GuiViewSource.cpp | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/frontends/qt4/GuiViewSource.cpp b/src/frontends/qt4/GuiViewSource.cpp index 192a163faf..d5838976a9 100644 --- a/src/frontends/qt4/GuiViewSource.cpp +++ b/src/frontends/qt4/GuiViewSource.cpp @@ -277,15 +277,18 @@ void ViewSourceWidget::realUpdateView() //the real highlighting is done with an ExtraSelection QTextCharFormat format; + { + // We create a new color with the lightness of AlternateBase and + // the hue and saturation of Highlight QPalette palette = viewSourceTV->palette(); - //Alternative: - // QColor bg = palette.color(QPalette::Active,QPalette::Highlight); - // bg.setAlpha(64); - // format.setBackground(QBrush(bg)); - //Other alternatives: - //format.setBackground(palette.light()); - //format.setBackground(palette.alternateBase()); - format.setBackground(palette.toolTipBase()); + QBrush alt = palette.alternateBase(); + QColor high = palette.highlight().color().toHsl(); + QColor col = QColor::fromHsl(high.hue(), + high.hslSaturation(), + alt.color().lightness()); + alt.setColor(col); + format.setBackground(alt); + } format.setProperty(QTextFormat::FullWidthSelection, true); QTextEdit::ExtraSelection sel; sel.format = format;