From 0b1a9220a900689fde71eb70d5181369fb82e70b Mon Sep 17 00:00:00 2001 From: Eugene Shalygin Date: Thu, 2 Jun 2016 20:51:57 +0200 Subject: [PATCH] Fix empty tooltips showed at the progress bar borders If tooltip text contains an empty HTML body, Qt still shows it as an empty rectangle. Thus, output HTML tags only if we are within the image region, and return true empty string if we are at the borders. --- src/gui/properties/piecesbar.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gui/properties/piecesbar.cpp b/src/gui/properties/piecesbar.cpp index 843c1dd62..963cbcf29 100644 --- a/src/gui/properties/piecesbar.cpp +++ b/src/gui/properties/piecesbar.cpp @@ -253,11 +253,11 @@ void PiecesBar::showToolTip(const QHelpEvent *e) QTextStream stream(&toolTipText, QIODevice::WriteOnly); bool showDetailedInformation = QApplication::keyboardModifiers().testFlag(Qt::ShiftModifier); if (showDetailedInformation) { - stream << ""; const int imagePos = e->pos().x() - borderWidth; if ((imagePos >=0) && (imagePos < m_image.width())) { + stream << ""; PieceIndexToImagePos transform {m_torrent->info(), m_image}; - int pieceIndex = transform.pieceIndex(e->pos().x() - borderWidth); + int pieceIndex = transform.pieceIndex(imagePos); QVector files {m_torrent->info().fileIndicesForPiece(pieceIndex)}; QString tooltipTitle; @@ -281,8 +281,8 @@ void PiecesBar::showToolTip(const QHelpEvent *e) renderer(Utils::Misc::friendlyUnit(m_torrent->info().fileSize(f)), filePath); } + stream << ""; } - stream << ""; } else { stream << simpleToolTipText();