QPalette::ColorRole role(ColorCode col)
{
- switch (ColorCode(col)) {
+ switch (col) {
case Color_background:
case Color_commentbg:
case Color_greyedoutbg:
void ColorCache::init()
{
for (int col = 0; col <= Color_ignore; ++col) {
- lcolors_[col] = QColor(lcolor.getX11HexName(ColorCode(col)).c_str());
+ lcolors_[col] = QColor(lcolor.getX11HexName(ColorCode(col), isDarkMode()).c_str());
}
initialized_ = true;
(base_color.blue() + merge_color.blue()) / 2);
}
// used by branches
- return QColor(lcolor.getX11HexName(color.baseColor).c_str());
+ return QColor(lcolor.getX11HexName(color.baseColor, isDarkMode()).c_str());
}
}
+bool ColorCache::isDarkMode() const
+{
+ QPalette palette = QPalette();
+ QColor text_color = palette.color(QPalette::Active, QPalette::WindowText);
+ QColor bg_color = palette.color(QPalette::Active, QPalette::Window);
+
+ return (text_color.black() < bg_color.black());
+}
+
+
QColor const rgb2qcolor(RGBColor const & rgb)
{
return QColor(rgb.r, rgb.g, rgb.b);