Commit Graph

109 Commits

Author SHA1 Message Date
Brent Simmons 9d2c8f000f Create and use IconImageCache. It centralizes and de-dupes logic for getting feed/article images, and it caches the results, which helps performance. 2021-05-08 12:42:44 -07:00
Maurice Parker 991297165b Add completion callbacks so that we can ensure that unreads have been marked before determining the next unread. Fixes #2993 2021-04-12 19:42:05 -05:00
Stuart Breckenridge 3898edc8b1
widget text spacing 2020-12-23 21:16:32 +08:00
Stuart Breckenridge 8a05d2f448
handles actions from notifications 2020-12-23 20:15:25 +08:00
Stuart Breckenridge 8498e723ce
Widget Performance 2020-12-03 20:32:26 +08:00
Nate Weaver a33d42ba66 Replace the single usage of a Log object with os_log() 2020-12-02 07:57:48 -06:00
Stuart Breckenridge d9c39a6964
timeline refresh can now be controlled 2020-11-30 10:08:23 +08:00
Stuart Breckenridge 58e18f4bcb Widget Bundle
• Adds small smartfeed summary widget.
• Adds medium widgets for today, unread, and starred.
2020-11-18 10:49:12 +08:00
Maurice Parker 0b170b7ff5 Merge branch 'ios-release' into main 2020-10-18 19:59:11 -05:00
Maurice Parker bad21330f3 Revert to requesting notifications on application launch so that the badge can be configured. Issue #2447 2020-09-22 17:39:29 -05:00
Maurice Parker b724658528 Refactor how we do Secrets to work with the new Swift Package structure 2020-07-30 17:40:45 -05:00
Stuart Breckenridge f92b219cdc NetNewsWire-iOS AppDefaults is now a singleton 2020-07-02 10:47:45 +08:00
Maurice Parker 7d8e49a2ee Merge branch 'ios-release' 2020-05-18 03:05:59 -05:00
Stuart Breckenridge 6224dfad03
Notification Permission Requests
Fixes #2057

• On app launch, the app checks if notification permissions are granted and registers with APNS if that is the case. It will not request permissions as part of the app launch.

• When a user requests to be notified of new articles, the authorizationStatus is checked:
- if `notDetermined` or `provisional`, an authorization request is made, and if successful, the Notify of New Articles status is updated (otherwise it is reverted)
- if `denied`, an alert is thrown asking the user to enable in settings (and the change to notify of new articles is reverted)
- if `authorized` the update is made.

`WebFeedInspectorViewController` also monitors for the app entering the foreground so that it can get the latest notification auth settings.
2020-05-18 08:39:22 +08:00
Maurice Parker 85f7adaa0a Use MainThreadOperation to prevent article status updates from interleaving 2020-05-02 10:02:58 -05:00
Maurice Parker 6bdcd941ae Fix typo 2020-05-02 09:01:53 -05:00
Maurice Parker d30987ca0a Use main thread operation to only allow one remote notification at a time to run. 2020-04-29 15:46:29 -05:00
Maurice Parker 5d5093d26d Merge branch 'master' into extension-point 2020-04-21 20:25:50 -05:00
Maurice Parker f1357c0a23 Merge branch 'ios-release' 2020-04-21 20:25:14 -05:00
Maurice Parker 2454b807bb Always update the status sync timer when returning to the foreground. Issue #2005 2020-04-21 20:23:46 -05:00
Maurice Parker d4b5d7bde4 Add FeedProviderManager 2020-04-16 15:06:56 -05:00
Maurice Parker ea78b5683d Fix background notification processing of CloudKit changes. 2020-04-01 20:21:14 -05:00
Maurice Parker 187121298e Added support for CloudKit push notifications (subscriptions). 2020-03-30 02:48:25 -05:00
Maurice Parker d615a0a894 Fix bug where clean up shortcut wouldn't clear articles if wrong setting was off. 2020-03-24 16:00:01 -05:00
Maurice Parker 07042b8a2a Implemented Clean Up keyboard shortcut. Issue #1915 2020-03-15 18:15:52 -05:00
Maurice Parker 49257970af Removed testing code. Issue #1810 2020-03-13 15:35:33 -05:00
Maurice Parker 9007ed4b06 Changed so that Feeds and Timeline clear read items if necessary on manual refresh commands. Issues #1834, #1856, and #1845 2020-03-11 14:47:00 -06:00
Maurice Parker 2ae021960b Move account files to the documents directory and out of the shared container. Issue #1784 2020-02-12 16:21:48 -08:00
Brent Simmons 4fe2a3134f Suspend the databases sooner when suspending the application. 2020-02-02 12:11:39 -08:00
Maurice Parker 3a99e6430f Make the article icon code specify the desired article so that it can't pull the wrong one by mistake. Issue #1707 2020-01-27 12:58:32 -07:00
Maurice Parker 9a3763f57a Change to resume database earlier for notifications and home screen shortcuts. Issue #1597 2020-01-10 16:32:06 -07:00
Maurice Parker af76e44c0f Changed ArticleViewController to utilize UIPageViewController to provide gesture based navigation. 2019-12-31 16:55:39 -07:00
Maurice Parker 1e05238c54 Capture task to ensure it doesn't get deallocated 2019-12-06 15:47:25 -07:00
Maurice Parker 90b9ab7851 Change to rely on application state instead of scanning scenes to determine if application is in background. 2019-12-06 15:16:20 -07:00
Maurice Parker 2795de3452 Change check to see if any scenes are in the foreground rather than if any scenes are in the background. 2019-12-05 18:48:19 -07:00
Maurice Parker 910e06cf63 Don't try to suspend again if we suspended in the task expiration handler. 2019-12-05 17:43:38 -07: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 26f49d4b51 Change to call suspend on main thread when expiration handler called. Issue #1399 2019-12-04 16:56:09 -07:00
Maurice Parker 63428fb2a2 Change to ensure that the app gets suspended when running too long during a background refresh. 2019-12-02 14:44:52 -06: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 d9f2e13732 Suspend and resume account resources when moving between the background and foreground. 2019-12-01 16:51:25 -06:00
Maurice Parker 33c487de85 Change to only suspend on application termination. 2019-12-01 13:28:11 -06:00
Maurice Parker 4e0fe7b5f1 Fix retain loop in background refresh. 2019-11-27 18:03:19 -06:00
Maurice Parker 06bd5b3a6f Renamed Feed and related classes/instances to WebFeed 2019-11-14 20:11:41 -06:00
Maurice Parker 48fef65bc4 Remove refresh interval setting. Issue #1293 2019-11-13 17:13:06 -06:00
Maurice Parker 62d7fe34f1 Unify the cache deletion code between iOS and Mac now that the Mac uses the caches directory. 2019-11-08 12:20:21 -06:00
Maurice Parker 238289ec5d Ignore Feed Icon in special cases. Issue #1265 2019-11-06 17:59:27 -06:00
Maurice Parker b0f9d97650 Discard images that are too wide to be used as icons. Issue #1264 2019-11-06 17:36:05 -06:00
Maurice Parker 5ce45c8977 Remove background task scheduling when user defaults change. 2019-11-06 16:53:13 -06:00
Maurice Parker 461468e14f Dispatch the background task request on a dedicated serial queue. Issue #1180 2019-11-06 16:47:33 -06:00