diff --git a/src/statusbar/statusbarspaceinfo.cpp b/src/statusbar/statusbarspaceinfo.cpp --- a/src/statusbar/statusbarspaceinfo.cpp +++ b/src/statusbar/statusbarspaceinfo.cpp @@ -22,10 +22,12 @@ #include "spaceinfoobserver.h" +#include #include #include #include +#include StatusBarSpaceInfo::StatusBarSpaceInfo(QWidget* parent) : KCapacityBar(KCapacityBar::DrawTextInline, parent), @@ -104,6 +106,17 @@ const quint64 used = size - available; const int percentUsed = qRound(100.0 * qreal(used) / qreal(size)); + QPalette p = palette(); + KColorScheme colorScheme(QPalette::Active, KColorScheme::Window); + + if (percentUsed >= 50) { + p.setBrush(QPalette::Highlight, colorScheme.background(KColorScheme::NegativeBackground)); + } else { + p.setBrush(QPalette::Highlight, colorScheme.foreground(KColorScheme::ActiveText)); + } + + setPalette(p); + setText(i18nc("@info:status Free disk space", "%1 free", KIO::convertSize(available))); setUpdatesEnabled(false); setValue(percentUsed);