Index: src/TerminalDisplay.h =================================================================== --- src/TerminalDisplay.h +++ src/TerminalDisplay.h @@ -1072,6 +1072,7 @@ QRect _searchResultRect; friend class TerminalDisplayAccessible; + int _headerSize = 15; }; class AutoScrollHandler : public QObject Index: src/TerminalDisplay.cpp =================================================================== --- src/TerminalDisplay.cpp +++ src/TerminalDisplay.cpp @@ -57,6 +57,7 @@ #include #include #include +#include // Konsole #include "Filter.h" @@ -1636,13 +1637,20 @@ } } - if (!hasFocus()) { - // black + transparency - const auto shade = QColor(0,0,0,125); - paint.setPen(shade); - paint.setBrush(QBrush(shade)); - paint.drawRect(geometry()); + QPalette p = QApplication::palette(); + QBrush current = p.background(); + if (hasFocus()) { + current = p.highlight(); + paint.setPen(QPen(current, 3)); + paint.drawRect(0, 0, width(), height()); } + + QRect widgetRect = this->rect(); + QRect headerRect = QRect(widgetRect.topLeft(), QPoint(widgetRect.width(), _headerSize)); + paint.fillRect(headerRect, current); + paint.setPen(QPen(p.text(), 1)); + QString title = _sessionController->title(); + paint.drawText(headerRect, Qt::AlignCenter, title); } void TerminalDisplay::printContent(QPainter& painter, bool friendly) @@ -2248,9 +2256,9 @@ void TerminalDisplay::calcGeometry() { - _scrollBar->resize(_scrollBar->sizeHint().width(), contentsRect().height()); - _contentRect = contentsRect().adjusted(_margin, _margin, -_margin, -_margin); + _scrollBar->resize(_scrollBar->sizeHint().width(), contentsRect().height()); + _contentRect = contentsRect().adjusted(_margin, _margin + _headerSize, -_margin, -_margin); switch (_scrollbarLocation) { case Enum::ScrollBarHidden : break;