Commit graph

3105 commits

Author SHA1 Message Date
cketti
40d7db53f4 Prepare for version 6.710 2023-08-14 19:17:11 +02:00
cketti
7784d37e99 Version 6.709 2023-08-14 19:10:31 +02:00
cketti
ca851d1b80 Switch to new account setup UI 2023-08-14 18:44:57 +02:00
cketti
44bdef9c97 Tie creating new accounts to 'new_onboarding' feature flag 2023-08-14 16:14:04 +02:00
cketti
fe80fa9166 Prepare for version 6.709 2023-08-09 00:05:45 +02:00
cketti
a51d34b756 Version 6.708 2023-08-08 22:03:12 +02:00
cketti
92e0a0d3be Update translations 2023-08-08 20:24:22 +02:00
cketti
f35603e14c
Merge pull request #7115 from thundernest/fix_IdentityHeaderBuilder
Write empty string to identity header field if name is null
2023-08-08 20:15:33 +02:00
cketti
5cb765f199
Merge pull request #7012 from gitstart/K9-OSS-20
Fix : Screen reader won't say unread for unread message #accessibility
2023-08-08 20:12:19 +02:00
cketti
6ff3d4087f
Merge pull request #7113 from thundernest/wrap_pasted_url
Wrap pasted URI in angle brackets
2023-08-08 20:09:04 +02:00
cketti
8a3ea4dfd4 Clean up content description of message list items 2023-08-08 19:40:31 +02:00
GitStart
47469223ca Add "unread" to content description in message list
This should improve the experience for people using screen readers.
2023-08-08 19:26:35 +02:00
cketti
fee88a4b88 Write empty string to identity header field if name is null 2023-08-08 19:10:23 +02:00
cketti
fdc9052a29
Merge pull request #7006 from gitstart/K9-OSS-10
Migrate JobIntentService to WorkManager
2023-08-08 16:07:29 +02:00
gitstart
6ad1d0a65a Fix - Unintuitive "compose" icon in widget 2023-08-07 20:19:26 +02:00
cketti
12a7b31046 Wrap pasted URIs in angle brackets 2023-08-07 20:04:50 +02:00
cketti
e5e2a9bafb Add UriMatcher.isValidUri() 2023-08-07 19:32:25 +02:00
cketti
09240fec56 Implement AccountRemoverWorker.getForegroundInfo()
This is required to run expedited jobs on older Android versions.
2023-08-07 18:17:32 +02:00
cketti
d8e09b5790 Clean up AccountRemover[Worker] 2023-08-07 17:07:39 +02:00
GitStart
be83b62d32 Migrate JobIntentService to WorkManager 2023-08-07 17:07:39 +02:00
cketti
4efbf3d0d9 Add OAuth to auto discovery flow 2023-07-31 15:16:09 +02:00
cketti
8e7a5f3541 Add an AuthStateStorage parameter to ServerSettingsValidator
Typically we use `Account` to hold the (OAuth 2.0) authorization state. But during account setup we don't have an `Account` instance yet. So we allow a `ServerSettingsValidator` caller to pass an `AuthStateStorage` that we then use with `OAuth2TokenProviderFactory` to create an `OAuth2TokenProvider` instance. When setting up an account we can use an `AuthStateStorage` implementation that will simply hold the state in memory.
2023-07-29 23:36:02 +02:00
cketti
84f132c148 Add abstraction for storing and retrieving the OAuth state 2023-07-26 15:28:34 +02:00
Wolf-Martell Montwé
35020a1cb9
Add CheckIsGoogleSignIn and use GoogleSignInButton 2023-07-26 13:52:19 +02:00
cketti
d8598a64b3 Fix hostnames for Microsoft OAuth configuration 2023-07-20 14:50:39 +02:00
Wolf-Martell Montwé
ada21aebd1
Add AuthorizationRepository 2023-07-19 17:34:34 +02:00
cketti
0392f86a63 Extract values from ServerSettings when creating an IMAP account 2023-07-17 15:49:39 +02:00
cketti
8c35dd5b34 Log error when creating an account fails 2023-07-17 12:39:18 +02:00
cketti
037b39a566 Fix setting account name and sender name when creating an account 2023-07-17 12:37:44 +02:00
cketti
8b07c61d18 Use signature when one was configured during account setup 2023-07-17 12:22:26 +02:00
cketti
248fd3dc2a Set folderPushMode to NONE when creating account 2023-07-17 12:17:44 +02:00
cketti
588d7a7329 Use theme attribute to style outlined buttons 2023-07-12 18:28:30 +02:00
cketti
5ddffb1928 Use theme attributes instead of referencing TextAppearance styles directly 2023-07-12 18:20:30 +02:00
cketti
65c7d4bddf Remove K9.TextAppearance styles 2023-07-12 17:57:26 +02:00
cketti
b0e05ca4e4
Merge pull request #7004 from gitstart/K9-OSS-18
Message view: Account chip not displayed when viewing messages in a thread (from Unified Inbox)
2023-07-11 13:09:43 +02:00
cketti
f12ae161a2
Merge pull request #7003 from gitstart/K9-OSS-16
Deleting account doesn't change current color correctly
2023-07-10 12:59:09 +02:00
cketti
06005ac9f4
Merge pull request #7046 from thundernest/fix_changelog_layout
Fix changelog layout
2023-07-10 12:35:36 +02:00
cketti
6687f5dc18 Replace or remove usages of AppCompat styles 2023-07-04 12:52:20 +02:00
cketti
0f3dbff341 Fix changelog layout
The loading state wasn't displayed properly.
2023-07-04 12:43:39 +02:00
Wolf-Martell Montwé
878cc45c04
Merge pull request #7040 from thundernest/add_feature_flags
Add feature flags
2023-07-03 16:04:27 +02:00
Wolf-Martell Montwé
c781e7032d
Add FeatureFlagFactory to K9 app and use the flag in MessageList 2023-07-03 15:37:22 +02:00
Wolf-Martell Montwé
1aa69635f5
Add launch import settings 2023-07-03 15:30:57 +02:00
Wolf-Martell Montwé
771775c6c6
Disable new onboarding 2023-07-03 10:21:16 +02:00
Wolf-Martell Montwé
6cfd9481aa
Move AccountSetupFinishedLauncher to feature launcher 2023-07-03 10:21:14 +02:00
Wolf-Martell Montwé
9bf80c2266
Change AccountSetupFinishedLauncher to use custom intent for properly launching MessageList 2023-06-30 13:18:19 +02:00
Wolf-Martell Montwé
10e89e7e3e
Add onboarding entry point 2023-06-30 13:18:19 +02:00
Wolf-Martell Montwé
fe180f282d
Add createAccount use case to account setup 2023-06-30 12:13:16 +02:00
Wolf-Martell Montwé
5c076d4f69
Change AccountSetupExternalContract to suspend and wrap IO operations with coroutine IO dispatcher 2023-06-30 12:04:27 +02:00
Wolf-Martell Montwé
32a8f23dc7
Add create account use case 2023-06-30 12:04:27 +02:00
Wolf-Martell Montwé
1c142876d0
Add AccountOptions and state mapper 2023-06-30 12:04:27 +02:00
Wolf-Martell Montwé
5384350689
Add AccountCreator as external dependency for the account setup 2023-06-30 12:04:27 +02:00
Wolf-Martell Montwé
88a4b7913f
Add AccountOwnerNameProvider 2023-06-29 12:24:28 +02:00
Wolf-Martell Montwé
dbdbb25cdb
Add AccountSetupFinishedLauncher 2023-06-29 12:24:28 +02:00
Wolf-Martell Montwé
09c00f3bf8
Rename AccountCreator to AccountCreatorHelper 2023-06-29 12:24:28 +02:00
cketti
769f92c5a8 Fix fetching SuggestServerName via Koin 2023-06-27 18:46:15 +02:00
Wolf-Martell Montwé
a5d14de34a
Merge pull request #7026 from thundernest/refactor_oauth_flow
Refactor OAuthFlow
2023-06-26 14:18:10 +02:00
Wolf-Martell Montwé
1429327c69
Extract GetOAuthRequestIntent into own use case for use in the new account flow 2023-06-26 14:06:34 +02:00
cketti
46657ba23c
Merge pull request #7025 from thundernest/improve_send_failure_logging
Write error message to log when skipping message during send
2023-06-26 13:40:53 +02:00
cketti
ed49b34412
Merge pull request #7024 from thundernest/check_imap_server_settings
Add `ImapServerSettingsValidator`
2023-06-26 13:39:37 +02:00
cketti
4c8261089b Write error message to log when skipping message during send 2023-06-24 17:36:20 +02:00
cketti
1e42e92b1b Include more information in IMAP-specific ServerSettings
The additional properties are necessary to validate server settings.
2023-06-23 17:13:22 +02:00
cketti
6d53e41114 Use constructor injection for "clientIdAppName" 2023-06-23 14:35:12 +02:00
Wolf-Martell Montwé
5dfb37bfb0
Remove OAuth dependency from app.core 2023-06-23 11:52:13 +02:00
Wolf-Martell Montwé
526a6fe933
Refactor SuggestServerName 2023-06-23 11:46:05 +02:00
Wolf-Martell Montwé
03772c6a5c
Rename to SuggestServerName 2023-06-23 11:42:28 +02:00
Wolf-Martell Montwé
bbfc232975
Add feature:account:oauth module and move ServerNameSuggester there 2023-06-23 11:24:45 +02:00
Wolf-Martell Montwé
00148f1a99
Change OAuth to not use OAuthProvider enum and delegate configuration creation to the app 2023-06-21 14:05:28 +02:00
Wolf-Martell Montwé
e64d030d22
Refactor OauthConfiguration to be placed in common module with added OAuthProvder and OAuthProviderSettings 2023-06-20 15:17:47 +02:00
Wolf-Martell Montwé
9e0f1bd815
Resolve app.core dependency blocking oauth extraction 2023-06-20 15:17:45 +02:00
Wolf-Martell Montwé
141dd0974c
Resolve app.testing dependency blocking oauth extraction 2023-06-20 14:57:44 +02:00
cketti
8973559507 Prepare for version 6.708 2023-06-19 13:49:01 +02:00
cketti
955dc2380b Version 6.707 2023-06-19 13:38:23 +02:00
GitStart
1911580503 Message view: Account chip not displayed when viewing messages 2023-06-19 09:56:16 +00:00
GitStart
589d802410 Deleting account doesn't change current color correctly 2023-06-19 09:52:51 +00:00
cketti
e6469422a8 Prepare for version 6.707 2023-06-16 15:44:24 +02:00
cketti
f60e5e073f Version 6.706 2023-06-16 15:35:00 +02:00
cketti
fb457bc7d6
Merge pull request #6972 from gitstart/K9-OSS-3
Inconsistent recipient names when composing a message
2023-06-16 15:30:20 +02:00
cketti
ff79ee70fc Fix broken test and minor cleanup 2023-06-16 15:08:44 +02:00
GitStart
e23371985a Inconsistent recipient names when composing a message 2023-06-16 08:28:37 +00:00
cketti
656a9d3862 Use relaxed mode to parse email addresses from message headers 2023-06-15 19:32:56 +02:00
cketti
e7b0228369 Prepare for version 6.706 2023-06-12 17:13:37 +02:00
cketti
89fa882590 Version 6.705 2023-06-12 17:00:32 +02:00
cketti
6829b9c80f Update translations 2023-06-12 16:14:45 +02:00
GitStart
5e8b8fa573 Asks to save unchanged draft 2023-06-12 15:23:52 +02:00
cketti
f649a6a7d9
Merge pull request #6962 from thundernest/UserInputEmailAddressParser
Add `UserInputEmailAddressParser`
2023-06-09 18:49:39 +02:00
cketti
23ddb37d55 Switch to ACTION_INSERT_OR_EDIT for "add to contacts" action
This allows adding an email address to an existing contact.
2023-06-07 19:23:49 +02:00
cketti
3bf19ca3f6 Add UserInputEmailAddressParser
Used to parse name and email address pairs entered by the user when composing a message.
2023-06-07 18:40:49 +02:00
cketti
fa487b2016 Always use extension function to create EmailAddress instance 2023-06-01 14:29:28 +02:00
cketti
775e0389a1 Keep email address equality comparison out of DisplayRecipientsExtractor
This way the decision on what email address equality comparison strategy is used is limited to `Account.isAnIdentity(Address)`.
2023-06-01 13:13:01 +02:00
Simon Arlott
424a37eaeb Add (failing) tests to DisplayRecipientsExtractorTest 2023-06-01 13:09:16 +02:00
Simon Arlott
e731d08f3b
Don't make identity descriptions unique on import
Identity descriptions don't have to be unique so they shouldn't be modified
when imported to make them unique.

This also means that identities with no description can be imported without
giving them one (e.g. "Imported", "Imported (1)", "Imported (2)").
2023-05-27 14:10:54 +01:00
Simon Arlott
d105ba0fbb
Export identities that have no description
Identities must have an email address but all of the other fields are
optional, so email address should be used to determine identity keys.

Fixes #6932
2023-05-27 14:10:53 +01:00
Siva Subramaniam
89e55b2c31
Fix appearance of "Sign in with Google" button (#6928)
Change Button to AppCompatButton to support android:background attribute
2023-05-26 15:56:09 +02:00
cketti
ae165344e6 Prepare for version 6.705 2023-05-23 18:08:06 +02:00
cketti
1ee999ca7e Version 6.704 2023-05-23 17:37:48 +02:00
cketti
12fd0225aa Update translations 2023-05-23 17:14:39 +02:00
Georg Sieber
7edbe542bd
Fix "Cannot connect to crypto provider"
Initialize `openPgpCallback` before `onSwitchAccount()` is called from the class initializer.
2023-05-22 10:42:19 +02:00
cketti
ef498c60e4 Update assertk to version 0.26 2023-05-16 17:20:25 +02:00
cketti
5498567bf2 Switch assertions to assertk 2023-05-14 13:00:28 +02:00
cketti
7d7e585b03 Merge branch '6.6-MAINT' 2023-05-12 12:22:52 +02:00