diff --git a/src/Icons/oxygen/application-x-kgetlist-no.png b/src/Icons/oxygen/application-x-kgetlist-no.png deleted file mode 100644 index 0db2ebd84..000000000 Binary files a/src/Icons/oxygen/application-x-kgetlist-no.png and /dev/null differ diff --git a/src/Icons/oxygen/application-x-kgetlist.png b/src/Icons/oxygen/application-x-kgetlist.png deleted file mode 100644 index 55c04aa98..000000000 Binary files a/src/Icons/oxygen/application-x-kgetlist.png and /dev/null differ diff --git a/src/icons.qrc b/src/icons.qrc index 939eecb01..6cadc6a6f 100644 --- a/src/icons.qrc +++ b/src/icons.qrc @@ -144,7 +144,6 @@ Icons/oxygen/encrypted.png Icons/oxygen/edit_clear.png Icons/oxygen/download.png - Icons/oxygen/application-x-kgetlist-no.png Icons/oxygen/gear.png Icons/oxygen/remove.png Icons/oxygen/dialog-warning.png @@ -165,7 +164,6 @@ Icons/oxygen/help-about.png Icons/oxygen/list-add.png Icons/oxygen/network-server.png - Icons/oxygen/application-x-kgetlist.png Icons/oxygen/folder.png Icons/oxygen/urlseed.png Icons/oxygen/edit-cut.png diff --git a/src/rss.cpp b/src/rss.cpp index bc539a19b..9b2b6fd92 100644 --- a/src/rss.cpp +++ b/src/rss.cpp @@ -376,7 +376,6 @@ void RssManager::saveStreamList(){ /** RssStream **/ RssStream::RssStream(RssFolder* parent, RssManager *rssmanager, Bittorrent *BTSession, QString _url): parent(parent), rssmanager(rssmanager), BTSession(BTSession), alias(""), iconPath(":/Icons/rss16.png"), refreshed(false), downloadFailure(false), currently_loading(false) { - has_attachments = false; qDebug("RSSStream constructed"); QSettings qBTRSS("qBittorrent", "qBittorrent-rss"); url = QUrl(_url).toString(); @@ -388,8 +387,6 @@ RssStream::RssStream(RssFolder* parent, RssManager *rssmanager, Bittorrent *BTSe RssItem *rss_item = RssItem::fromHash(this, item); if(rss_item->isValid()) { (*this)[rss_item->getTitle()] = rss_item; - if(rss_item->has_attachment()) - has_attachments = true; } } } @@ -584,29 +581,31 @@ short RssStream::readDoc(const QDomDocument& doc) { delete item; item = this->value(title); } - if(item->has_attachment()) { - has_attachments = true; - // Check if the item should be automatically downloaded - if(!already_exists || !(*this)[item->getTitle()]->isRead()) { - FeedFilter * matching_filter = FeedFilters::getFeedFilters(url).matches(item->getTitle()); - if(matching_filter != 0) { - // Download the torrent - BTSession->addConsoleMessage(tr("Automatically downloading %1 torrent from %2 RSS feed...").arg(item->getTitle()).arg(getName())); - if(matching_filter->isValid()) { - QString save_path = matching_filter->getSavePath(); - if(save_path.isEmpty()) - BTSession->downloadUrlAndSkipDialog(item->getTorrentUrl()); - else - BTSession->downloadUrlAndSkipDialog(item->getTorrentUrl(), save_path); - } else { - // All torrents are downloaded from this feed - BTSession->downloadUrlAndSkipDialog(item->getTorrentUrl()); - } - // Item was downloaded, consider it as Read - (*this)[item->getTitle()]->setRead(); - // Clean up - delete matching_filter; + QString torrent_url; + if(item->has_attachment()) + torrent_url = item->getTorrentUrl(); + else + torrent_url = item->getLink(); + // Check if the item should be automatically downloaded + if(!already_exists || !(*this)[item->getTitle()]->isRead()) { + FeedFilter * matching_filter = FeedFilters::getFeedFilters(url).matches(item->getTitle()); + if(matching_filter != 0) { + // Download the torrent + BTSession->addConsoleMessage(tr("Automatically downloading %1 torrent from %2 RSS feed...").arg(item->getTitle()).arg(getName())); + if(matching_filter->isValid()) { + QString save_path = matching_filter->getSavePath(); + if(save_path.isEmpty()) + BTSession->downloadUrlAndSkipDialog(torrent_url); + else + BTSession->downloadUrlAndSkipDialog(torrent_url, save_path); + } else { + // All torrents are downloaded from this feed + BTSession->downloadUrlAndSkipDialog(torrent_url); } + // Item was downloaded, consider it as Read + (*this)[item->getTitle()]->setRead(); + // Clean up + delete matching_filter; } } diff --git a/src/rss.h b/src/rss.h index 2d68dff9f..9cf1167d5 100644 --- a/src/rss.h +++ b/src/rss.h @@ -394,7 +394,6 @@ private: bool refreshed; bool downloadFailure; bool currently_loading; - bool has_attachments; public slots: void processDownloadedFile(QString file_path); @@ -430,7 +429,6 @@ public: QList getNewsList() const; QList getUnreadNewsList() const; QString getIconUrl(); - bool hasAttachments() const { return has_attachments; } private: short readDoc(const QDomDocument& doc); diff --git a/src/rss_imp.cpp b/src/rss_imp.cpp index 3c77edcc7..c74420032 100644 --- a/src/rss_imp.cpp +++ b/src/rss_imp.cpp @@ -71,10 +71,8 @@ void RSSImp::displayRSSListMenu(const QPoint& pos){ myRSSListMenu.addSeparator(); myRSSListMenu.addAction(actionCopy_feed_URL); if(selectedItems.size() == 1) { - if(((RssStream*)listStreams->getRSSItem(selectedItems.first()))->hasAttachments()) { - myRSSListMenu.addSeparator(); - myRSSListMenu.addAction(actionRSS_feed_downloader); - } + myRSSListMenu.addSeparator(); + myRSSListMenu.addAction(actionRSS_feed_downloader); } } }else{ @@ -293,9 +291,7 @@ void RSSImp::downloadTorrent() { if(article->has_attachment()) { BTSession->downloadFromUrl(article->getTorrentUrl()); } else { - QString link = article->getLink(); - if(!link.isEmpty()) - QDesktopServices::openUrl(QUrl(link)); + BTSession->downloadFromUrl(article->getLink()); } } } @@ -444,10 +440,6 @@ void RSSImp::refreshNewsList(QTreeWidgetItem* item) { foreach(RssItem* article, news){ QTreeWidgetItem* it = new QTreeWidgetItem(listNews); it->setText(NEWS_TITLE_COL, article->getTitle()); - if(article->has_attachment()) - it->setData(NEWS_TITLE_COL, Qt::DecorationRole, QVariant(QIcon(":/Icons/oxygen/application-x-kgetlist.png"))); - else - it->setData(NEWS_TITLE_COL, Qt::DecorationRole, QVariant(QIcon(":/Icons/oxygen/application-x-kgetlist-no.png"))); it->setText(NEWS_URL_COL, article->getParent()->getUrl()); if(article->isRead()){ it->setData(NEWS_TITLE_COL, Qt::ForegroundRole, QVariant(QColor("grey")));