Save article 'read' state on exit

This commit is contained in:
Nick Tiskov 2013-01-28 14:53:04 +04:00
parent 405885209b
commit 9b121fd5d0
3 changed files with 9 additions and 2 deletions

View file

@ -108,6 +108,7 @@ void RssArticle::markAsRead() {
m_read = true;
m_parent->decrementUnreadCount();
m_parent->markAsDirty();
}
const QString& RssArticle::guid() const

View file

@ -83,7 +83,7 @@ void RssFeed::saveItemsToDisk()
qDebug() << Q_FUNC_INFO << m_url;
if (!m_dirty)
return;
m_dirty = false;
markAsDirty(false);
QIniSettings qBTRSS("qBittorrent", "qBittorrent-rss");
QVariantList old_items;
@ -248,6 +248,11 @@ void RssFeed::markAsRead()
m_manager->forwardFeedInfosChanged(m_url, displayName(), 0);
}
void RssFeed::markAsDirty(bool dirty)
{
m_dirty = dirty;
}
uint RssFeed::unreadCount() const
{
return m_unreadCount;
@ -356,7 +361,7 @@ void RssFeed::handleNewArticle(const QString& feedUrl, const QVariantHash& artic
if (m_articles.contains(guid))
return;
m_dirty = true;
markAsDirty();
RssArticlePtr article = hashToRssArticle(this, articleData);
Q_ASSERT(article);

View file

@ -72,6 +72,7 @@ public:
RssArticlePtr getItem(const QString &guid) const;
uint count() const;
virtual void markAsRead();
void markAsDirty(bool dirty = true);
virtual uint unreadCount() const;
virtual RssArticleList articleListByDateDesc() const;
const RssArticleHash& articleHash() const { return m_articles; }