diff --git a/resources/text/CHANGELOG b/resources/text/CHANGELOG index 3400fa205..e1e7cc6b8 100644 --- a/resources/text/CHANGELOG +++ b/resources/text/CHANGELOG @@ -2,6 +2,7 @@ ————— Added: +▪ New plugin for Inoreader. This is supported only in full RSS Guard "web-engine" version, because of web OAuth 2.0. ▪ NextCloud plugin now allows to persistently set max number of messages to get downloaded per feed. ▪ Added support for arbitrary external tools (settings category "Web browser & e-mail & proxy") which can open URLs of selected messages. (#136) ▪ Standard account is now automatically added if RSS Guard is started with empty database. diff --git a/rssguard.pro b/rssguard.pro index 903fb043c..dec16c6ca 100755 --- a/rssguard.pro +++ b/rssguard.pro @@ -331,15 +331,7 @@ HEADERS += src/core/feeddownloader.h \ src/gui/treeviewcolumnsmenu.h \ src/services/abstract/labelsrootitem.h \ src/services/abstract/label.h \ - src/miscellaneous/externaltool.h \ - src/services/inoreader/definitions.h \ - src/services/inoreader/inoreaderentrypoint.h \ - src/services/inoreader/network/inoreadernetworkfactory.h \ - src/services/inoreader/inoreaderserviceroot.h \ - src/services/inoreader/gui/formeditinoreaderaccount.h \ - src/services/inoreader/inoreaderfeed.h \ - src/network-web/oauth2service.h \ - src/gui/dialogs/oauthlogin.h + src/miscellaneous/externaltool.h SOURCES += src/core/feeddownloader.cpp \ src/core/feedsmodel.cpp \ @@ -461,14 +453,7 @@ SOURCES += src/core/feeddownloader.cpp \ src/gui/treeviewcolumnsmenu.cpp \ src/services/abstract/labelsrootitem.cpp \ src/services/abstract/label.cpp \ - src/miscellaneous/externaltool.cpp \ - src/services/inoreader/inoreaderentrypoint.cpp \ - src/services/inoreader/network/inoreadernetworkfactory.cpp \ - src/services/inoreader/inoreaderserviceroot.cpp \ - src/services/inoreader/gui/formeditinoreaderaccount.cpp \ - src/services/inoreader/inoreaderfeed.cpp \ - src/network-web/oauth2service.cpp \ - src/gui/dialogs/oauthlogin.cpp + src/miscellaneous/externaltool.cpp OBJECTIVE_SOURCES += src/miscellaneous/disablewindowtabbing.mm @@ -495,9 +480,7 @@ FORMS += src/gui/toolbareditor.ui \ src/gui/settings/settingsbrowsermail.ui \ src/gui/settings/settingsfeedsmessages.ui \ src/gui/settings/settingsdownloads.ui \ - src/services/tt-rss/gui/formeditttrssaccount.ui \ - src/services/inoreader/gui/formeditinoreaderaccount.ui \ - src/gui/dialogs/oauthlogin.ui + src/services/tt-rss/gui/formeditttrssaccount.ui equals(USE_WEBENGINE, true) { HEADERS += src/gui/locationlineedit.h \ @@ -506,7 +489,15 @@ equals(USE_WEBENGINE, true) { src/gui/discoverfeedsbutton.h \ src/network-web/googlesuggest.h \ src/network-web/webpage.h \ - src/network-web/rssguardschemehandler.h + src/network-web/rssguardschemehandler.h \ + src/services/inoreader/definitions.h \ + src/services/inoreader/inoreaderentrypoint.h \ + src/services/inoreader/network/inoreadernetworkfactory.h \ + src/services/inoreader/inoreaderserviceroot.h \ + src/services/inoreader/gui/formeditinoreaderaccount.h \ + src/services/inoreader/inoreaderfeed.h \ + src/network-web/oauth2service.h \ + src/gui/dialogs/oauthlogin.h SOURCES += src/gui/locationlineedit.cpp \ src/gui/webviewer.cpp \ @@ -514,7 +505,14 @@ equals(USE_WEBENGINE, true) { src/gui/discoverfeedsbutton.cpp \ src/network-web/googlesuggest.cpp \ src/network-web/webpage.cpp \ - src/network-web/rssguardschemehandler.cpp + src/network-web/rssguardschemehandler.cpp \ + src/services/inoreader/inoreaderentrypoint.cpp \ + src/services/inoreader/network/inoreadernetworkfactory.cpp \ + src/services/inoreader/inoreaderserviceroot.cpp \ + src/services/inoreader/gui/formeditinoreaderaccount.cpp \ + src/services/inoreader/inoreaderfeed.cpp \ + src/network-web/oauth2service.cpp \ + src/gui/dialogs/oauthlogin.cpp # Add AdBlock sources. HEADERS += src/network-web/adblock/adblockaddsubscriptiondialog.h \ @@ -547,7 +545,9 @@ equals(USE_WEBENGINE, true) { src/gui/treewidget.cpp FORMS += src/network-web/adblock/adblockaddsubscriptiondialog.ui \ - src/network-web/adblock/adblockdialog.ui + src/network-web/adblock/adblockdialog.ui \ + src/services/inoreader/gui/formeditinoreaderaccount.ui \ + src/gui/dialogs/oauthlogin.ui } else { HEADERS += src/gui/messagepreviewer.h \ diff --git a/src/miscellaneous/databasequeries.cpp b/src/miscellaneous/databasequeries.cpp index aad602678..27c8d6c2d 100755 --- a/src/miscellaneous/databasequeries.cpp +++ b/src/miscellaneous/databasequeries.cpp @@ -22,9 +22,6 @@ #include "miscellaneous/iconfactory.h" #include "miscellaneous/textfactory.h" #include "services/abstract/category.h" -#include "services/inoreader/inoreaderfeed.h" -#include "services/inoreader/inoreaderserviceroot.h" -#include "services/inoreader/network/inoreadernetworkfactory.h" #include "services/owncloud/definitions.h" #include "services/owncloud/network/owncloudnetworkfactory.h" #include "services/owncloud/owncloudfeed.h" @@ -36,6 +33,12 @@ #include "services/tt-rss/ttrssfeed.h" #include "services/tt-rss/ttrssserviceroot.h" +#if defined(USE_WEBENGINE) +#include "services/inoreader/inoreaderfeed.h" +#include "services/inoreader/inoreaderserviceroot.h" +#include "services/inoreader/network/inoreadernetworkfactory.h" +#endif + #include #include #include @@ -1483,6 +1486,7 @@ Assignment DatabaseQueries::getCategories(QSqlDatabase db, int account_id, bool* return categories; } +#if defined(USE_WEBENGINE) Assignment DatabaseQueries::getInoreaderFeeds(QSqlDatabase db, int account_id, bool* ok) { Assignment feeds; QSqlQuery q(db); @@ -1591,6 +1595,8 @@ bool DatabaseQueries::createInoreaderAccount(QSqlDatabase db, int id_to_assign, } } +#endif + Assignment DatabaseQueries::getTtRssFeeds(QSqlDatabase db, int account_id, bool* ok) { Assignment feeds; diff --git a/src/miscellaneous/databasequeries.h b/src/miscellaneous/databasequeries.h index d0174de00..63a6b6675 100755 --- a/src/miscellaneous/databasequeries.h +++ b/src/miscellaneous/databasequeries.h @@ -79,12 +79,14 @@ class DatabaseQueries { static Assignment getCategories(QSqlDatabase db, int account_id, bool* ok = nullptr); // Inoreader account. +#if defined(USE_WEBENGINE) static Assignment getInoreaderFeeds(QSqlDatabase db, int account_id, bool* ok = nullptr); static QList getInoreaderAccounts(QSqlDatabase db, bool* ok = nullptr); static bool overwriteInoreaderAccount(QSqlDatabase db, const QString& username, const QString& access_token, const QString& refresh_token, int batch_size, int account_id); static bool createInoreaderAccount(QSqlDatabase db, int id_to_assign, const QString& username, const QString& access_token, const QString& refresh_token, int batch_size); +#endif // ownCloud account. static QList getOwnCloudAccounts(QSqlDatabase db, bool* ok = nullptr); diff --git a/src/miscellaneous/feedreader.cpp b/src/miscellaneous/feedreader.cpp index ab7fb812a..485e3e9e6 100755 --- a/src/miscellaneous/feedreader.cpp +++ b/src/miscellaneous/feedreader.cpp @@ -19,7 +19,11 @@ #include "miscellaneous/feedreader.h" #include "services/abstract/serviceroot.h" + +#if defined(USE_WEBENGINE) #include "services/inoreader/inoreaderentrypoint.h" +#endif + #include "services/owncloud/owncloudserviceentrypoint.h" #include "services/standard/standardserviceentrypoint.h" #include "services/tt-rss/ttrssserviceentrypoint.h" @@ -65,7 +69,9 @@ FeedReader::~FeedReader() { QList FeedReader::feedServices() { if (m_feedServices.isEmpty()) { // NOTE: All installed services create their entry points here. +#if defined(USE_WEBENGINE) m_feedServices.append(new InoreaderEntryPoint()); +#endif m_feedServices.append(new OwnCloudServiceEntryPoint()); m_feedServices.append(new StandardServiceEntryPoint()); m_feedServices.append(new TtRssServiceEntryPoint());