ui->quotaProgressBar->setToolTip(toolTip);
} else {
ui->quotaProgressBar->setVisible(false);
- ui->quotaInfoLabel->setText(tr("Currently there is no storage usage information available."));
+ ui->quotaInfoLabel->setToolTip(QString());
+
+ /* -1 means not computed; -2 means unknown; -3 means unlimited (#3940)*/
+ if (total == 0 || total == -1) {
+ ui->quotaInfoLabel->setText(tr("Currently there is no storage usage information available."));
+ } else {
+ QString usedStr = Utility::octetsToString(used);
+ ui->quotaInfoLabel->setText(tr("%1 in use").arg(usedStr));
+ }
}
}
{
// The server can return fractional bytes (#1374)
// <d:quota-available-bytes>1374532061.2</d:quota-available-bytes>
- quint64 avail = result["quota-available-bytes"].toDouble();
+ qint64 avail = result["quota-available-bytes"].toDouble();
_lastQuotaUsedBytes = result["quota-used-bytes"].toDouble();
- _lastQuotaTotalBytes = _lastQuotaUsedBytes + avail;
+ // negative value of the available quota have special meaning (#3940)
+ _lastQuotaTotalBytes = avail >= 0 ? _lastQuotaUsedBytes + avail : avail;
emit quotaUpdated(_lastQuotaTotalBytes, _lastQuotaUsedBytes);
_jobRestartTimer.start(defaultIntervalT);
_lastQuotaRecieved = QDateTime::currentDateTime();