1
0
mirror of https://github.com/d47081/qBittorrent.git synced 2025-02-10 13:54:23 +00:00

Merge pull request #6770 from evsh/fix-6768

Do not attempt to show detailed tooltips without torrent metadata. Closes #6768.
This commit is contained in:
Eugene Shalygin 2017-05-11 09:51:58 +02:00 committed by GitHub
commit a997b7d078

View File

@ -251,8 +251,8 @@ void PiecesBar::showToolTip(const QHelpEvent *e)
QString toolTipText; QString toolTipText;
QTextStream stream(&toolTipText, QIODevice::WriteOnly); QTextStream stream(&toolTipText, QIODevice::WriteOnly);
bool showDetailedInformation = QApplication::keyboardModifiers().testFlag(Qt::ShiftModifier); const bool showDetailedInformation = QApplication::keyboardModifiers().testFlag(Qt::ShiftModifier);
if (showDetailedInformation) { if (showDetailedInformation && m_torrent->hasMetadata()) {
const int imagePos = e->pos().x() - borderWidth; const int imagePos = e->pos().x() - borderWidth;
if ((imagePos >=0) && (imagePos < m_image.width())) { if ((imagePos >=0) && (imagePos < m_image.width())) {
stream << "<html><body>"; stream << "<html><body>";
@ -286,7 +286,10 @@ void PiecesBar::showToolTip(const QHelpEvent *e)
} }
else { else {
stream << simpleToolTipText(); stream << simpleToolTipText();
stream << '\n' << tr("Hold Shift key for detailed information"); if (showDetailedInformation) // metadata are not available at this point
stream << '\n' << tr("Wait until metadata become available to see detailed information");
else
stream << '\n' << tr("Hold Shift key for detailed information");
} }
stream.flush(); stream.flush();
@ -296,7 +299,7 @@ void PiecesBar::showToolTip(const QHelpEvent *e)
void PiecesBar::highlightFile(int imagePos) void PiecesBar::highlightFile(int imagePos)
{ {
if (!m_torrent || (imagePos < 0) || (imagePos >= m_image.width())) if (!m_torrent || !m_torrent->hasMetadata() || (imagePos < 0) || (imagePos >= m_image.width()))
return; return;
PieceIndexToImagePos transform {m_torrent->info(), m_image}; PieceIndexToImagePos transform {m_torrent->info(), m_image};