diff options
author | Jonatan Pålsson <jonatan.palsson@pelagicore.com> | 2014-04-16 09:57:57 +0200 |
---|---|---|
committer | Jonatan Pålsson <jonatan.palsson@pelagicore.com> | 2014-04-16 09:57:57 +0200 |
commit | b501591d8224dc5f591db9de5d95356b2fcd9b69 (patch) | |
tree | 4487ff570dd4f7607d48f771a0cef2361d8d1d0d | |
parent | 06414eaa20b039698c53dfb30654f92e25a0b66b (diff) | |
download | browser-poc-b501591d8224dc5f591db9de5d95356b2fcd9b69.tar.gz |
Emit onCacheChanged when cache changes
-rw-r--r-- | browser/browserview.cpp | 5 | ||||
-rw-r--r-- | browser/cachemanager.cpp | 10 | ||||
-rw-r--r-- | browser/cachemanager.h | 4 |
3 files changed, 17 insertions, 2 deletions
diff --git a/browser/browserview.cpp b/browser/browserview.cpp index 4ac905a..91851b8 100644 --- a/browser/browserview.cpp +++ b/browser/browserview.cpp @@ -29,7 +29,8 @@ #include "errorlogger.h" BrowserView::BrowserView(cachemanager *cm, userinput *uip) - : m_scrollPositionX(0), m_scrollPositionY (0), m_cacheManager (cm) + : m_scrollPositionX(0), m_scrollPositionY (0), m_cacheManager (cm), + m_previousCacheSize(0) { QString startPage; m_cacheManager = cm; @@ -152,6 +153,8 @@ void BrowserView::loadFinished(bool ok) qDebug() << "Emitting signal onActionStateChanged"; emit onActionStateChanged(changes); } + + m_cacheManager->checkForChanges(); } void BrowserView::scroll (conn::brw::SCROLL_DIRECTION dir, conn::brw::SCROLL_TYPE type) diff --git a/browser/cachemanager.cpp b/browser/cachemanager.cpp index f75054b..aeba1f8 100644 --- a/browser/cachemanager.cpp +++ b/browser/cachemanager.cpp @@ -113,3 +113,13 @@ QNetworkRequest::CacheLoadControl cachemanager::getCacheLoadControl() return QNetworkRequest::PreferCache; } } + +void cachemanager::checkForChanges() +{ + if (m_previousCacheSize != getCacheSize()) { + m_previousCacheSize = getCacheSize(); + qDebug() << "Emitting onCacheChanged"; + emit onCacheChanged(); + } + qDebug() << "No changes detected. Not emitting onCacheChanged"; +} diff --git a/browser/cachemanager.h b/browser/cachemanager.h index f8f25dd..bf08dee 100644 --- a/browser/cachemanager.h +++ b/browser/cachemanager.h @@ -29,9 +29,10 @@ public: cachemanager(QObject *parent = 0); QNetworkAccessManager *getNetworkAccessManager(); QNetworkRequest::CacheLoadControl getCacheLoadControl(); + void checkForChanges(); signals: - void cacheChanged(); + void onCacheChanged(); void onCachePolicyChanged(conn::brw::CACHE_POLICY); void onClearCache(void); @@ -46,6 +47,7 @@ private: BrowserConfig *m_config; conn::brw::CACHE_POLICY m_policy; QNetworkAccessManager *m_manager; + qint64 m_previousCacheSize; }; #endif // CACHEMANAGER_H |