From c81e1929c9dffab64f58e5e676dc5623c14036b0 Mon Sep 17 00:00:00 2001 From: fourtf Date: Wed, 21 Aug 2019 02:37:10 +0200 Subject: [PATCH] Fixes #1159 No tooltip foreground transparency. --- lib/appbase/widgets/TooltipWidget.cpp | 16 +++++++++++++--- lib/appbase/widgets/TooltipWidget.hpp | 1 + 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/lib/appbase/widgets/TooltipWidget.cpp b/lib/appbase/widgets/TooltipWidget.cpp index 1f3d67490..30c7b9ee1 100644 --- a/lib/appbase/widgets/TooltipWidget.cpp +++ b/lib/appbase/widgets/TooltipWidget.cpp @@ -25,8 +25,9 @@ TooltipWidget::TooltipWidget(BaseWidget *parent) , displayImage_(new QLabel()) , displayText_(new QLabel()) { - this->setStyleSheet("color: #fff; background: #000"); - this->setWindowOpacity(0.8); + this->setStyleSheet("color: #fff; background: rgba(11, 11, 11, 0.8)"); + this->setAttribute(Qt::WA_TranslucentBackground); + //this->setWindowOpacity(0.8); this->updateFont(); this->setStayInScreenRect(true); @@ -37,8 +38,10 @@ TooltipWidget::TooltipWidget(BaseWidget *parent) displayImage_->hide(); displayImage_->setAlignment(Qt::AlignHCenter); + displayImage_->setStyleSheet("background: transparent"); displayText_->setAlignment(Qt::AlignHCenter); displayText_->setText("tooltip text"); + displayText_->setStyleSheet("background: transparent"); auto layout = new QVBoxLayout(); layout->setContentsMargins(10, 5, 10, 5); layout->addWidget(displayImage_); @@ -64,7 +67,14 @@ void TooltipWidget::raise() void TooltipWidget::themeChangedEvent() { - this->setStyleSheet("color: #fff; background: #000"); + // this->setStyleSheet("color: #fff; background: #000"); +} + +void TooltipWidget::paintEvent(QPaintEvent *) +{ + QPainter painter(this); + + painter.fillRect(this->rect(), QColor(0, 0, 0, int(0.8 * 255))); } void TooltipWidget::scaleChangedEvent(float) diff --git a/lib/appbase/widgets/TooltipWidget.hpp b/lib/appbase/widgets/TooltipWidget.hpp index 167f47cb3..a9963ad30 100644 --- a/lib/appbase/widgets/TooltipWidget.hpp +++ b/lib/appbase/widgets/TooltipWidget.hpp @@ -32,6 +32,7 @@ protected: void leaveEvent(QEvent *) override; void themeChangedEvent() override; void scaleChangedEvent(float) override; + void paintEvent(QPaintEvent *) override; private: void updateFont();