Brent Simmons
1368f3dace
Move images-related code into Images module.
2024-04-15 22:21:17 -07:00
Brent Simmons
6db1d40597
Replace forEach for for-in.
2024-04-07 17:06:39 -07:00
Brent Simmons
3fea0f0758
Fix numerous concurrency warnings by marking things as Sendable or as MainActor.
2024-04-02 22:07:19 -07:00
Brent Simmons
e56b1513b6
Move RSWeb from remote to local project; rename as Web.
2024-04-01 19:31:57 -07:00
Brent Simmons
402ee970cc
Convert markArticles to async await.
2024-03-26 18:48:44 -07:00
Brent Simmons
f6719d8b4f
Convert AccountDelegate.syncArticleStatus to async/await.
2024-03-26 16:50:11 -07:00
Brent Simmons
b2da353e8a
Convert refreshAll to async/await.
2024-03-25 23:36:27 -07:00
Brent Simmons
028df3a8f8
Convert syncArticleStatusAll to async/await.
2024-03-25 23:06:05 -07:00
Brent Simmons
e371d31bd6
Switch to async didReceiveRemoteNotification.
2024-03-24 23:36:05 -07:00
Brent Simmons
cda4c9eb29
Make ArticleThemeDownloader a struct with static funcs, which fixes the concurrency warning about the static shared property (which got removed).
2024-03-24 21:25:11 -07:00
Brent Simmons
13871495f3
Update iOS code to handle module changes.
2024-03-20 20:54:21 -07:00
Brent Simmons
2461e937bf
Replace RSCore with several local modules. Update code as needed.
2024-03-20 20:49:15 -07:00
Brent Simmons
6ab10e871c
Fix numerous concurrency warnings.
2024-03-19 20:33:54 -07:00
Brent Simmons
b2d3128b2d
Fix build errors.
2024-03-19 10:15:30 -07:00
Brent Simmons
78047fcaf7
Get rid of SecretsManager. It wasn’t thread-safe, and it existed only for tests (and it wasn’t thread-safe for tests either). Pass SecretsProvider parameter where it’s needed.
2024-03-10 22:22:41 -07:00
Brent Simmons
22f3fb62f8
Remove some no-longer-needed #available checks.
2024-02-27 20:06:57 -08:00
Brent Simmons
4c866b7230
Rename WebFeed and webFeed to Feed and feed.
2024-02-25 23:12:21 -08:00
Brent Simmons
ca3de24738
Fix deprecation warnings.
2024-02-25 19:02:29 -08:00
Brent Simmons
df956dfe27
Fix deprecation warnings.
2024-02-25 18:45:44 -08:00
Brent Simmons
2640132f36
Remove extension points.
2024-02-22 21:47:00 -08:00
Dimitris Apostolou
94ae4d348c
Fix typos
2022-01-05 00:25:20 +02:00
Stuart Breckenridge
8b39dc4abb
Uses SceneCoordinator
...
Adds a `func` to SceneCoordinator to handle dismisses vis-a-vis using notifications.
2021-11-08 09:52:12 +08:00
Stuart Breckenridge
0db88c5f92
Fixes #3335
...
When the app is brought to the foreground from an external action (e.g., tapping on the widget, opening from a notification), a notification is posted (with a slight delay).
`MasterFeedViewController` and `SettingsViewController` are observers. `MasterFeedViewController` will dismiss any `SFSafariViewController`s that are presented, while `SettingsViewController` will dismiss itself.
2021-11-06 22:43:50 +08:00
Maurice Parker
12324bf498
Remove font debugging code
2021-11-02 05:44:21 -05:00
Maurice Parker
c16a231530
Added the Hyperlegible theme
2021-11-01 21:22:22 -05:00
Stuart Breckenridge
78e0595708
Various ThemeDownloader Updates
...
- `try` added where applicable to ArticleTheme inits
- `ArticleThemePlist` has fixed spelling of theme identifier and conforms to Equatable
- `ArticleTheme` now uses `ArticleThemePlist`
- `ArticleThemeDownloader` is now a class
- `ArticleThemeDownloader` will now download themes to Application Support/NetNewsWire/Downloads on macOS and iOS.
- `ArticleThemeDownloader` will remove downloaded themes from the Download folder when the application is closed.
- macOS app delegate now observes for theme download fails
- Error display code moved from SceneDelegate to SceneCoordinator so that it can use existing presentError on rootVC.
2021-09-21 09:10:56 +08:00
Maurice Parker
e3245f1144
Fix some incorrectly named variables
2021-09-07 20:12:21 -05:00
Maurice Parker
512e83d786
Refactor Styles to now be Themes
2021-09-07 16:58:06 -05:00
Maurice Parker
ba279d2a6e
Make the Styles folder configurable so that it can be in different places on macOS and iOS.
2021-08-24 20:20:20 -05:00
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