Screenshots: remove path from watcher if it no longer exists
Signed-off-by: James Beddek <telans@posteo.de>
This commit is contained in:
parent
af6bf11793
commit
d9b24f7705
@ -145,7 +145,6 @@ public:
|
|||||||
m_thumbnailCache = std::make_shared<SharedIconCache>();
|
m_thumbnailCache = std::make_shared<SharedIconCache>();
|
||||||
m_thumbnailCache->add("placeholder", APPLICATION->getThemedIcon("screenshot-placeholder"));
|
m_thumbnailCache->add("placeholder", APPLICATION->getThemedIcon("screenshot-placeholder"));
|
||||||
connect(&watcher, SIGNAL(fileChanged(QString)), SLOT(fileChanged(QString)));
|
connect(&watcher, SIGNAL(fileChanged(QString)), SLOT(fileChanged(QString)));
|
||||||
// FIXME: the watched file set is not updated when files are removed
|
|
||||||
}
|
}
|
||||||
virtual ~FilterModel() { m_thumbnailingPool.waitForDone(500); }
|
virtual ~FilterModel() { m_thumbnailingPool.waitForDone(500); }
|
||||||
virtual QVariant data(const QModelIndex &proxyIndex, int role = Qt::DisplayRole) const
|
virtual QVariant data(const QModelIndex &proxyIndex, int role = Qt::DisplayRole) const
|
||||||
@ -214,10 +213,12 @@ private slots:
|
|||||||
void fileChanged(QString filepath)
|
void fileChanged(QString filepath)
|
||||||
{
|
{
|
||||||
m_thumbnailCache->setStale(filepath);
|
m_thumbnailCache->setStale(filepath);
|
||||||
thumbnailImage(filepath);
|
|
||||||
// reinsert the path...
|
// reinsert the path...
|
||||||
watcher.removePath(filepath);
|
watcher.removePath(filepath);
|
||||||
|
if (QFile::exists(filepath)) {
|
||||||
watcher.addPath(filepath);
|
watcher.addPath(filepath);
|
||||||
|
thumbnailImage(filepath);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
Loading…
Reference in New Issue
Block a user