]> git.lyx.org Git - lyx.git/commitdiff
Make latex highlighter colors compatible with dark theme
authorGuillaume Munch <gm@lyx.org>
Tue, 14 Jun 2016 20:45:47 +0000 (21:45 +0100)
committerGuillaume Munch <gm@lyx.org>
Wed, 15 Jun 2016 18:51:45 +0000 (19:51 +0100)
Partial fix for #8325

src/frontends/qt4/LaTeXHighlighter.cpp

index 9a9e5459a48bcb70bde0f51ef1516c21e669d066..81e6f5769c8bc276173504dca0cb67d5453a4dc7 100644 (file)
 namespace lyx {
 namespace frontend {
 
 namespace lyx {
 namespace frontend {
 
+namespace {
+
+QColor blend(QColor color1, QColor color2) {
+       int r = 0.5 * (color1.red() + color2.red());
+       int g = 0.5 * (color1.green() + color2.green());
+       int b = 0.5 * (color1.blue() + color2.blue());
+       return QColor(r, g, b);
+};
+
+}
+
+
 LaTeXHighlighter::LaTeXHighlighter(QTextDocument * parent)
        : QSyntaxHighlighter(parent)
 {
 LaTeXHighlighter::LaTeXHighlighter(QTextDocument * parent)
        : QSyntaxHighlighter(parent)
 {
-       keywordFormat.setForeground(Qt::darkBlue);
+       QPalette palette = QPalette();
+       QColor text_color = palette.color(QPalette::Active, QPalette::Text);
+       keywordFormat.setForeground(blend(Qt::blue, text_color));
        keywordFormat.setFontWeight(QFont::Bold);
        keywordFormat.setFontWeight(QFont::Bold);
-       commentFormat.setForeground(Qt::darkGray);
-       mathFormat.setForeground(Qt::red);
+       commentFormat.setForeground(palette.color(QPalette::Disabled,
+                                                 QPalette::Text));
+       mathFormat.setForeground(blend(Qt::red, text_color));
        warningFormat.setForeground(Qt::red);
        warningFormat.setFontWeight(QFont::Bold);
 }
        warningFormat.setForeground(Qt::red);
        warningFormat.setFontWeight(QFont::Bold);
 }