From 8d3ef470f9b40c891f700626a5adb7efa7602994 Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Wed, 8 Aug 2018 12:51:40 +0300 Subject: Remove hardcoded colors from the typing display --- src/TypingDisplay.cpp | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) (limited to 'src/TypingDisplay.cpp') diff --git a/src/TypingDisplay.cpp b/src/TypingDisplay.cpp index da9c1679..30ba0652 100644 --- a/src/TypingDisplay.cpp +++ b/src/TypingDisplay.cpp @@ -3,24 +3,30 @@ #include "Config.h" #include "TypingDisplay.h" +#include "ui/Painter.h" + +constexpr int LEFT_PADDING = 24; TypingDisplay::TypingDisplay(QWidget *parent) : QWidget(parent) - , leftPadding_{24} { - QFont font; - font.setPixelSize(conf::typingNotificationFontSize); + QFont f; + f.setPixelSize(conf::typingNotificationFontSize); + + setFont(f); - setFixedHeight(QFontMetrics(font).height() + 2); + setFixedHeight(QFontMetrics(font()).height() + 2); } void TypingDisplay::setUsers(const QStringList &uid) { - if (uid.isEmpty()) + if (uid.isEmpty()) { text_.clear(); - else - text_ = uid.join(", "); + return; + } + + text_ = uid.join(", "); if (uid.size() == 1) text_ += tr(" is typing"); @@ -33,22 +39,17 @@ TypingDisplay::setUsers(const QStringList &uid) void TypingDisplay::paintEvent(QPaintEvent *) { - QPen pen(QColor("#898989")); - - QFont font("Open Sans Bold"); - font.setPixelSize(conf::typingNotificationFontSize); - font.setItalic(true); + Painter p(this); + PainterHighQualityEnabler hq(p); - QPainter p(this); - p.setRenderHint(QPainter::Antialiasing); - p.setFont(font); - p.setPen(pen); + p.setFont(font()); + p.setPen(QPen(textColor())); QRect region = rect(); - region.translate(leftPadding_, 0); + region.translate(LEFT_PADDING, 0); - QFontMetrics fm(font); - text_ = fm.elidedText(text_, Qt::ElideRight, width() - 3 * leftPadding_); + QFontMetrics fm(font()); + text_ = fm.elidedText(text_, Qt::ElideRight, width() - 3 * LEFT_PADDING); p.drawText(region, Qt::AlignVCenter, text_); } -- cgit 1.5.1