X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/d380d27f47a67e6e682a4b980c66585f13a3d7b5..bf4388c75525cffd150a51e6c4e0455f60db520f:/src/statusbar/spaceinfoobserver.cpp diff --git a/src/statusbar/spaceinfoobserver.cpp b/src/statusbar/spaceinfoobserver.cpp index 10efdd7fb..0d8f5f2fe 100644 --- a/src/statusbar/spaceinfoobserver.cpp +++ b/src/statusbar/spaceinfoobserver.cpp @@ -21,11 +21,10 @@ #include "mountpointobserver.h" -#include - -SpaceInfoObserver::SpaceInfoObserver(const KUrl& url, QObject* parent) : +SpaceInfoObserver::SpaceInfoObserver(const QUrl& url, QObject* parent) : QObject(parent), - m_mountPointObserver(0), + m_mountPointObserver(nullptr), + m_hasData(false), m_dataSize(0), m_dataAvailable(0) { @@ -39,7 +38,7 @@ SpaceInfoObserver::~SpaceInfoObserver() { if (m_mountPointObserver) { m_mountPointObserver->deref(); - m_mountPointObserver = 0; + m_mountPointObserver = nullptr; } } @@ -53,14 +52,14 @@ quint64 SpaceInfoObserver::available() const return m_dataAvailable; } -void SpaceInfoObserver::setUrl(const KUrl& url) +void SpaceInfoObserver::setUrl(const QUrl& url) { MountPointObserver* newObserver = MountPointObserver::observerForUrl(url); if (newObserver != m_mountPointObserver) { if (m_mountPointObserver) { disconnect(m_mountPointObserver, &MountPointObserver::spaceInfoChanged, this, &SpaceInfoObserver::spaceInfoChanged); m_mountPointObserver->deref(); - m_mountPointObserver = 0; + m_mountPointObserver = nullptr; } m_mountPointObserver = newObserver; @@ -73,10 +72,18 @@ void SpaceInfoObserver::setUrl(const KUrl& url) } } +void SpaceInfoObserver::update() +{ + if (m_mountPointObserver) { + m_mountPointObserver->update(); + } +} + void SpaceInfoObserver::spaceInfoChanged(quint64 size, quint64 available) { // Make sure that the size has actually changed - if (m_dataSize != size || m_dataAvailable != available) { + if (m_dataSize != size || m_dataAvailable != available || !m_hasData) { + m_hasData = true; m_dataSize = size; m_dataAvailable = available;