Commit Graph

349 Commits

Author SHA1 Message Date
Brent Simmons 15184aa3f1 Finish changes mandated by DatabaseQueue changes. 2019-12-16 22:45:59 -08:00
Brent Simmons 51393967e2 Finish making Account and AccountManager compatible with DatabaseQueue changes. 2019-12-16 17:03:41 -08:00
Brent Simmons 3883d24ebe Simplify FeedlySetUnreadArticlesOperation. 2019-12-16 16:26:35 -08:00
Brent Simmons 67f65545b3 Continue changes mandated by DatabaseQueue changes. 2019-12-16 15:55:37 -08:00
Brent Simmons e700da9410 Mark appropriate functions as throws. 2019-12-16 15:32:08 -08:00
Brent Simmons f2052f110f Make updateUnreadCounts compatible with database changes. 2019-12-16 14:59:15 -08:00
Brent Simmons 9a36051d8a Remove a reference to database.isSuspended. 2019-12-16 14:43:25 -08:00
Maurice Parker 9dad3f0540 Pass the account metadata to delegate on initialization 2019-12-16 14:19:55 -07:00
Maurice Parker 58b24f3349 Rename callback: to completion: 2019-12-14 18:01:34 -07:00
Maurice Parker 43bf65b7a6 Rename occurrences of completionHandler to completion. 2019-12-14 17:14:55 -07:00
Brent Simmons 45cdb7bea3 Create a fetchStatuses method that will optionally create statuses if needed. Callback gets Set<ArticleStatus> — or nil if the app is suspended. 2019-12-11 22:28:01 -08:00
Maurice Parker e303d64c1d Refresh feeds and sidebar when downloaded articles update all their unread counts. Issue #1430 2019-12-10 18:17:54 -07:00
Maurice Parker b8ef6c7549 Don't process OPML file if it hasn't changed since it was last produced. Issue #1428 2019-12-10 14:10:07 -07:00
Maurice Parker 358f386c4b Change progress view to use the most recent last fetch end time. Issue #1383 2019-12-09 18:34:26 -07:00
Brent Simmons 0b87531f2f Make fetchStarredArticles an async call. Also have it respect subscribed-to feed IDs. 2019-12-07 22:23:44 -08:00
Brent Simmons a561ea9484 Fetch unread article IDs async. Also: fetch only for feeds currently subscribed-to. Fix #1218. 2019-12-07 20:57:23 -08:00
Brent Simmons a5c1341b0c Resume databases for all accounts before resuming anything else, so that notifications don’t trigger database calls. 2019-12-04 22:11:20 -08:00
Maurice Parker 95c1b36fe7 Change order of suspending steps to prevent work from going to a suspended queue. Issue #1400 2019-12-04 17:27:39 -07:00
Maurice Parker f159371967 Change to make sure all queue's get cleared before suspending the database. Issue #1389 2019-12-02 14:14:35 -06:00
Maurice Parker 7a8155f58f Add suspend and resume to managed files 2019-12-01 17:16:52 -06:00
Brent Simmons 45804a3d1a Use the new VoidCompletionBlock instead of (() -> ()). 2019-11-29 23:42:11 -08:00
Brent Simmons b5f1c69f8e Add AccountManager.resumeAll, Account.resume. Add suspend() and resume() to AccountDelegate and to individual AccountDelegate instances. 2019-11-29 22:57:14 -08:00
Maurice Parker ebd7f4904d Persist the Feeds Read filter across application launches. Issue #1349 2019-11-26 20:23:12 -06:00
Jonathan Bennett ce51e4e632 Merge branch 'master' into feature/feed-wrangler 2019-11-24 20:41:43 -05:00
Maurice Parker 6a56936850 Moved expanded state away from Node so that it won't get lost on rebuilds. Issue #1346 2019-11-24 18:29:00 -06:00
Maurice Parker 43744ec128 Add folder read fetch query. 2019-11-22 10:21:30 -06:00
Jonathan Bennett b4a862d207 Merge branch 'master' into feature/feed-wrangler
# Conflicts:
#	Frameworks/Account/Account.swift
#	Frameworks/Account/Account.xcodeproj/project.pbxproj
#	NetNewsWire.xcodeproj/project.pbxproj
#	submodules/RSCore
2019-11-20 14:01:04 -05:00
Maurice Parker 5ce5175bc0 Change to not suggest root folder for Accounts that don't support it. Issue #1287 2019-11-16 13:25:55 -06:00
Maurice Parker 91a3e4fd73 Change Add Web Feed folder selection to be a separate controlling instead of the picker wheel. Issue #1270 2019-11-16 12:02:58 -06:00
Maurice Parker afd9783711 Merge branch 'master' of https://github.com/brentsimmons/NetNewsWire 2019-11-14 20:11:50 -06:00
Maurice Parker 06bd5b3a6f Renamed Feed and related classes/instances to WebFeed 2019-11-14 20:11:41 -06:00
Kiel Gillard bec80922ce Enables accounts and their delegates to prepare to be deleted. Provides a variation of the Account Inspector on iOS for Feedly. 2019-11-15 09:47:39 +11:00
Kiel Gillard 8c27187ad8 Make the OAuthAuthorizationClient an implementation detail the Account.framework. 2019-11-09 21:44:13 +11:00
Kiel Gillard b8f7e3f519 Use ASWebAuthenticationSession to authenticate Feedly users and grant NNW access tokens. 2019-11-09 21:44:13 +11:00
Kiel Gillard 6bef313937 Feedly accounts now refresh their access tokens on initialisation. 2019-11-07 18:55:05 +11:00
Kiel Gillard 434b11ed17 Ensures Feedly status operations finish at the right time. In part, this is achieved by adding and using completion handlers to the asynchronous ensure status API. 2019-11-06 13:26:12 +11:00
Maurice Parker c6e3ed6692 Cancel network activity when told to shutdown by the OS. Issue #1232 2019-11-04 20:24:21 -06:00
Brent Simmons 4cb602f24a Merge mac-release. 2019-10-26 12:44:33 -07:00
Brent Simmons 3354d5a569 Delete articles and statuses from feeds no longer subscribed-to. At startup. Fix #899. 2019-10-24 22:28:26 -07:00
Jonathan Bennett 77fc1bd8fe Merge branch 'master' into feature/feed-wrangler
# Conflicts:
#	submodules/RSCore
2019-10-23 21:10:57 -04:00
Maurice Parker af16731ecd Add the ability to specify folder in Add Feed shortcut 2019-10-20 18:49:17 -05:00
Jonathan Bennett 86caa869fc Merge branch 'master' into feature/feed-wrangler
# Conflicts:
#	Frameworks/Account/Account.xcodeproj/project.pbxproj
2019-10-16 05:48:03 -04:00
Brent Simmons c04322990c Merge branch 'mac-release' 2019-10-13 19:24:06 -07:00
Brent Simmons fcb0f0c439 Remove a no-longer-used Account.update function — we have a new one that’s way faster. Also: assert that we’re in the main thread in that new update function. 2019-10-13 19:23:36 -07:00
Brent Simmons c5e0d96adb Merge changes from mac-release, including performance fix. 2019-10-13 19:08:27 -07:00
Brent Simmons 1d0cacd5fc When syncing, update the database by articleIDs rather than by feeds — this means *far* fewer fetches and much less data pulled from the database. It should help app responsiveness dramatically during sync, and especially during an initial sync. 2019-10-13 19:02:56 -07:00
Brent Simmons 099172d9d2 Empty the database articles cache when NetNewsWire moves to the background. This helps prevent the cache from growing forever. 2019-10-12 15:06:21 -07:00
Kiel Gillard e1b0e17b6a Allows folders to efficient add and remove many feeds. 2019-10-03 18:45:16 +10:00
Maurice Parker 281416eaee Make sure metadata gets saved if background fetch is performed. 2019-10-02 15:32:34 -05:00
Jonathan Bennett 50428f3179 Allow adding Feed Wrangler accounts 2019-09-28 01:59:49 -04:00
Maurice Parker 6536dbf2a5 Use correct account method for adding folders 2019-09-27 06:38:43 -05:00
Maurice Parker b721f74e17 Merge branch 'mac-release' 2019-09-25 17:09:21 -05:00
Maurice Parker c4ee1edb69 Add externalID to Folder and persist it to OPML file. Issue #1060 2019-09-25 17:01:09 -05:00
Maurice Parker 59991d0478 Save resource files immediately in the share extension 2019-09-23 11:09:40 -05:00
Maurice Parker de994a305e Remove dead code. 2019-09-23 10:35:48 -05:00
Maurice Parker 0424ba3bb7 Make unread counts show up for new feeds added by share extension 2019-09-23 10:27:17 -05:00
Maurice Parker 6f9d3953f1 Ensure that account metadata gets propagated to delegates when it reloads 2019-09-23 09:57:50 -05:00
Maurice Parker 0709b006f4 Add feed meta data did change notification 2019-09-22 21:42:49 -05:00
Maurice Parker 124997feca Reset feed to feed metadata relationship on reload 2019-09-22 21:20:01 -05:00
Maurice Parker 43bed44d46 Merge branch 'mac-release' 2019-09-20 11:42:06 -05:00
Maurice Parker ea13f911f1 Change to ignore unsupported accounts instead of crashing 2019-09-20 11:41:28 -05:00
Maurice Parker af0d6c9022 Implement AccountBehaviors so that we don't have to keep adding boolean flags to account 2019-09-20 11:34:31 -05:00
Kiel Gillard 9cc5fa3608 Initial implementation allowing Feedly accounts to be added given the Feedly user's consent. 2019-09-19 10:11:53 +10:00
Maurice Parker 8e939e9942 Change Credentials to be a struct instead of an enum 2019-09-15 10:03:47 -05:00
Maurice Parker 82d4e0e3b3 Fixed metadata name suffixes 2019-09-13 16:41:08 -05:00
Maurice Parker 7b29eaab7a Make feed metadata a managed resource file 2019-09-13 16:35:53 -05:00
Maurice Parker b24e6a4725 Make account metadata a managed resource file 2019-09-13 16:12:19 -05:00
Maurice Parker 4d118d89db Move more OPML file management functions to the OPMLFile class 2019-09-13 10:15:11 -05:00
Maurice Parker 7de08e992e Add the ability to observe OPML file changes 2019-09-12 18:41:42 -05:00
Maurice Parker 83476baa5b Move OPML I/O functions into a separate OPMLFile class 2019-09-12 18:05:29 -05:00
Brent Simmons 2eccfbb90e Merge branch 'mac-release' 2019-09-08 21:44:28 -07:00
Brent Simmons 41c82eca15 Rename existingFeed(with:) to existingFeed(withFeedID:) to make it more clear. Make account.idToFeedDictionary private — callers should use existingFeed(withFeedID:). 2019-09-08 21:44:05 -07:00
Maurice Parker c4f7090b9c Automatically expand any activated accounts and clean up the expandedNodes table for inactivated accounts 2019-09-08 09:58:27 -05:00
Maurice Parker e61efbe47a Split AccountsDidChange notification into both add and delete notifications and automatically expanded new accounts on iOS 2019-09-08 09:43:51 -05:00
Maurice Parker ab0ca49882 Added new OAuth credentials 2019-09-06 17:38:48 -05:00
Maurice Parker fe2e0155da Add scoped searching of articles 2019-08-31 15:53:47 -05:00
Maurice Parker ea1f21797c Merge branch 'mac-release' 2019-08-30 11:28:16 -05:00
Maurice Parker a69be4117a Retrieve statuses before articles during sync process and default starred articles to read if there isn't an unread status Issue #868 2019-08-30 10:39:52 -05:00
Brent Simmons 1ab0f7c25c Merge mac-candidate. 2019-08-21 21:44:07 -07:00
Brent Simmons bffda93700 Give has(feed) a default implementation in Container.swift. 2019-08-21 21:07:40 -07:00
Brent Simmons fe2d329301 Make has(feed) a Container protocol method. 2019-08-21 21:05:47 -07:00
Brent Simmons f513741ddb Start work on filtering timeline so that articles from deleted feeds never show up. 2019-08-21 13:23:46 -07:00
Brent Simmons 4667e533fc Merge branch 'mac-candidate' 2019-07-24 09:27:34 -07:00
Brent Simmons 9edc726065 Make the Today smart feed show articles from the last 28 hours, so it doesn’t surprise people by emptying out at midnight. 2019-07-24 09:27:03 -07:00
Maurice Parker e263665a21 Merge branch 'mac-candidate' 2019-07-23 16:36:46 -05:00
Maurice Parker 4fc1998cf3 Make Account and AccountDelegate interfaces more consistent by requiring the container parameter on removeFeed. Resolves #802 2019-07-17 15:41:21 -05:00
Brent Simmons 0d5ebad782 Merge branch 'mac-candidate' 2019-07-08 23:10:41 -07:00
Brent Simmons 055e0f09ad Update code formatting in Account. 2019-07-08 23:06:40 -07:00
Brent Simmons 783477c58e Merge branch 'mac-candidate' 2019-07-07 15:07:21 -07:00
Brent Simmons 36791fc3ad Make fetching article IDs async — use a callback rather than a fetch sync and a returned value. 2019-07-07 15:05:36 -07:00
Brent Simmons 424daa0a5c Merge branch 'mac-candidate' 2019-07-07 14:26:05 -07:00
Brent Simmons 590961fb2c Add comment that Account is main-thread-only, and assert that we’re on the main thread in flattenedFeeds(). 2019-07-07 14:01:44 -07:00
Brent Simmons fe5570fbea Merge branch 'mac-candidate' 2019-07-06 11:54:14 -07:00
Brent Simmons a68ca58242 Remove a precondition that is no longer valid when doing async fetches. 2019-07-06 11:50:22 -07:00
Brent Simmons 3999c7b3c5 Merge branch 'mac-candidate' 2019-07-05 22:42:01 -07:00
Brent Simmons 7a204ad6ed Run database fetches async, in the timeline, when appropriate — for instance, when All Unread is selected and new articles come in. 2019-07-05 20:06:31 -07:00
Maurice Parker 5f045706e4 Removed usaged of UIApplication.present 2019-06-27 14:21:07 -05:00
Maurice Parker 1ac1144b2d Reduce footprint of Account credentials API 2019-06-20 11:19:15 -05:00
Maurice Parker fa62acb585 Rebrand Reader API to FreshRSS 2019-06-20 07:22:51 -05:00
Maurice Parker 74f84dc000 Restrict OPML import for Account types that don't support it 2019-06-19 17:50:32 -05:00