shannon
ef31fc4e66
Clear Keychain after fresh install (iOS-315)
...
Files are removed when an app is deleted from device, but the Keychain is not cleared. So now if we find no cached account information upon launch, we remove any accounts remaining in Keychain and the app launches to the Welcome screen.
Fixes iOS-315
2024-11-20 08:49:29 -05:00
shannon
299e4f2cdf
Cache updated account
...
contributes to iOS-319
2024-11-19 12:10:56 -05:00
shannon
7b0fe1a70b
Ensure that currentActiveUser is updated by the time activateUser() returns.
...
contributes to iOS-319
2024-11-19 12:10:48 -05:00
shannon
082f5e6ce3
Fully initialize AuthenticationServiceProvider from within init
...
contributes to iOS-319
2024-11-19 12:10:38 -05:00
shannon
d96be97cf6
Only publish new active user if it has changed, and only fetch info for current user.
...
contributes to iOS-319
2024-11-19 12:10:30 -05:00
shannon
96e3bec016
Save account information after successful updateCredentials
...
This used to be handled at one callsite.
contributes to iOS-319
2024-11-19 12:10:14 -05:00
shannon
ae7aaf091d
Only refetch information about the active user’s instance, not all of them.
...
contributes to iOS-319
2024-11-19 12:10:03 -05:00
shannon
54d04aed4e
Continue to make MastodonAuthenticationBox the standard form of passing user information
...
Further simplify the AuthenticationViewModel and the public interface of AuthenticationServiceProvider.
Publish currentActiveUser from AuthenticationServiceProvider instead of assuming all callers know to take the first in the list as the active one.
contributes to iOS-319
2024-11-19 12:09:55 -05:00
shannon
1e472c8232
Some simplification to login
...
Creating async await alternatives to Combine publishers in cases where that makes sense.
Near term goal is to centralize responsibility for caching of user info.
contributes to iOS-319
2024-11-19 12:09:27 -05:00
shannon
8ee189e3cf
Remove redundant function
...
contributes to iOS-319
2024-11-19 12:09:14 -05:00
shannon
9ed9c79f25
Begin moving filesystem cache responsibility into PersistenceManager
...
contributes to iOS-319
2024-11-19 12:08:22 -05:00
shannon
11c0deff2d
Move PersistenceManager to its own file
...
contributes to iOS-319
2024-11-19 12:08:12 -05:00
shannon
08b47dde37
Make coreDataStack private
2024-11-15 14:51:22 -05:00
shannon
d7f473c892
MainActor for the new PersistenceManager
2024-11-15 14:45:37 -05:00
shannon
9380ef3361
Remove unused additionalPredicate
2024-11-15 14:32:47 -05:00
shannon
35f1280904
Make view models @MainActor
2024-11-15 14:15:01 -05:00
shannon
c4442fe8a9
Fix crash on launch due to infinite loop
...
And more honestly about singletons.
2024-11-15 12:25:58 -05:00
shannon
77f3c5a64d
Combine AuthenticationService into AuthenticationServiceProvider
...
Also, AppContext, APIService, and AuthenticationServiceProvider are now more obviously singletons.
And AuthenticationServiceProvider can now be asked for the current active user, instead of every caller assuming the first element of a list of users is the active user.
2024-11-14 16:30:51 -05:00
shannon
5dcc64b094
Simplify MasotodonAuthenticationBox
2024-11-14 11:17:22 -05:00
shannon
cf9b947d94
Enforce immutability of MastodonAuthentication
2024-11-14 10:20:25 -05:00
shannon
04108fd0e4
Remove AuthContext
...
MastodonAuthenticationBox, which already wraps the MastodonAuthentication, is now used directly.
2024-11-14 09:49:19 -05:00
shannon
60f7f91114
Update accountCreatedAt date if missing
...
Contributes to iOS-252
2024-11-12 15:54:11 -05:00
shannon
93b8069ded
Properly format TODO
2024-11-12 13:00:42 -05:00
shannon
9257477f92
Deleting unused code
2024-11-11 14:31:50 -05:00
shannon
c6df2b0651
Fixes filtered posts take up too much space ( #441 )
...
Use content warning UI for filtered posts, and restrict height of CW area in all cases.
2024-11-08 15:07:54 -05:00
shannon
76498442e3
Fix for logged in user requiring reauthorization.
...
Related to iOS-252
2024-11-07 15:37:18 -05:00
shannon
280df2ae39
Always use vertical layout for edit history (iOS-383)
...
Quick fix for layout of languages with lengthier strings.
2024-11-07 15:37:18 -05:00
whattherestimefor
9d774cb541
Add ability to donate to Mastodon from the app ( #1353 )
...
This change only affects users logged in to mastodon.social or mastodon.online. A banner may be periodically displayed at the bottom of the homescreen encouraging donations and menu options are now available in Settings to make new donations or manage existing ones.
Amounts will not necessarily be returned from the server in order. The first amount returned is taken as the default and the amounts are sorted before display.
---------
Co-authored-by: Marcus Kida <marcus.kida@bearologics.com>
2024-11-06 19:37:52 -05:00
shannon
fdca50179e
Wait for authentications to be available before trying to use them.
...
The prior fix for memory corruption problems in authentications had caused the app to launch to the new user screen every time.
2024-10-30 14:41:48 -04:00
shannon
20f7d761bd
Increasing thread safety for authentications.
...
Attempting to fix multiple crashes associated with the call to persist() triggered by the authentications setter called in restore().
2024-10-30 14:41:48 -04:00
shannon
583c796a4c
Some defense against ProfileViewController.authContext.getter Forced Unwrapping Crash
...
Make the viewModel of the ProfileViewController optional rather than force unwrapping it. If the necessary information is not available, Profile page should show blank rather than crashing, and hopefully will have the expected info soon or the next time it is opened.
There is still a crash danger inherent in the use of TabBarPager, which requires a non-optional for several protocol methods were we can’t guarantee to have one to return. This dependency should be removed in the future.
2024-10-23 10:29:50 -04:00
Marcus Kida
9dc130eeaf
Fix layout constraint issue
2024-10-09 11:37:53 +02:00
Marcus Kida
cd2a5d4b6b
Update L10n
2024-10-08 09:54:34 +02:00
Marcus Kida
b6d326bb03
Bump FaviconFinder to 4.5.0 (IOS-289)
2024-08-29 10:17:00 +02:00
Marcus Kida
b13a0e03d6
Update strings
2024-08-02 10:45:44 +02:00
Marcus Kida
f15311f2f6
Receive on DispatchQueue.main for consistency (IOS-285)
2024-07-31 11:55:56 +02:00
Marcus Kida
147c417a74
Run NSDataDetector link detection on background queue (IOS-285)
2024-07-31 11:53:13 +02:00
Marcus Kida
d84ca7bc75
Fix link char count (IOS-285)
2024-07-31 11:29:47 +02:00
Marcus Kida
42b47af8de
Revert plural workaround
2024-07-30 15:09:59 +02:00
Marcus Kida
25cd3b4815
Fix pluralized fallback on notification filters
2024-07-30 13:53:51 +02:00
Nathan Mattes
5d8e453da6
Notification Filtering (IOS-241) ( #1319 )
...
- Adds a new cell on the "Everything"-notification-screen to show
unwanted notifications
- Users can define what "unwanted" means to them using the new
"Filter"-button in the upper right corner of the Notification-screen
- Filtered notifications are sorted by account and users can
dismiss/accept if they want to get notifications of that user (it's some
standard table-views and delegates)
## Screenshots
![ios_241_1](https://github.com/user-attachments/assets/b2297a13-e220-4916-b3b9-24dfcef431de )
![ios_241_2](https://github.com/user-attachments/assets/5fd5b894-cd4e-40f9-abce-56ff17d41dfa )
2024-07-26 11:15:31 +02:00
Nathan Mattes
bac8c23d2c
Adress feedback (IOS-241)
2024-07-26 11:08:28 +02:00
Nathan Mattes
8d535be84a
Fix bottom margins as requested (IOS-241)
2024-07-24 16:20:23 +02:00
Marcus Kida
07b0ddc14f
Improve empty state for lists (IOS-287)
2024-07-24 15:32:32 +02:00
Nathan Mattes
1bf763a94c
Add an english translation (IOS-241)
...
For whatever reason the plural-translation doesn't have a fallback to Base?!
2024-07-24 15:05:24 +02:00
Nathan Mattes
b3bfa5101b
Sprinkle in some, you guessed it: Localization (IOS-241)
2024-07-24 12:35:08 +02:00
Nathan Mattes
287587fcf1
[WIP] Plural Localization for banner-subtitle (IOS-241)
...
Caveat: doesn't work yet 🤡
2024-07-24 12:35:08 +02:00
Nathan Mattes
ffc80268c5
Localization for Banner (IOS-241)
2024-07-24 12:35:08 +02:00
Nathan Mattes
9e8de739ec
Localization (IOS-241)
2024-07-24 12:35:08 +02:00
Nathan Mattes
d87deffa6d
Update notifications after policy/request-change (IOS-241)
2024-07-24 12:35:08 +02:00