Commit graph

240 commits

Author SHA1 Message Date
cketti
a9179b6eac Use OutlinedButton for SignInWithGoogleButton
This way the "Sign in with Google" button looks and behaves more like a regular button.
2023-08-14 14:33:00 +02:00
cketti
5e9d9fe847
Merge pull request #7121 from thundernest/validation_hide_next_button
Always hide "Next" button in server settings validation screen
2023-08-14 12:31:46 +02:00
cketti
717cdfffbb
Merge pull request #7120 from thundernest/oauth_hide_next_button
Hide "Next" button in OAuth 2.0 flow
2023-08-14 12:31:15 +02:00
cketti
219a97e3d7 Always hide "Next" button in server settings validation screen 2023-08-10 19:54:20 +02:00
cketti
7e097fabf7 Fix AccountValidationMainScreen previews 2023-08-10 19:54:20 +02:00
cketti
1077f121df Hide "Next" button in OAuth 2.0 flow 2023-08-10 19:22:34 +02:00
cketti
c1726ebf28 Fix AccountSetupState.toAccountOptionsState() 2023-08-10 17:46:39 +02:00
cketti
b712f04db6 Add placeholder certificate error screen 2023-08-10 00:23:58 +02:00
cketti
a99d1817d9 Fix test for AccountAutoDiscoveryStateMapper.kt 2023-08-07 14:12:25 +02:00
Wolf-Martell Montwé
46deb14649
Add sign in message 2023-08-03 18:54:40 +02:00
Wolf-Martell Montwé
4f280d71f7
Remove AutoDiscover email address is enabled check to allow editing anytime 2023-08-03 17:42:03 +02:00
Wolf-Martell Montwé
5ab82847c6
Change AutoDiscovery to save state 2023-08-03 17:39:02 +02:00
Wolf-Martell Montwé
b005e26a02
Add OAuth to AccountValidation 2023-08-03 17:19:22 +02:00
Wolf-Martell Montwé
c8ca64ac29
Change injection 2023-08-03 16:36:00 +02:00
Wolf-Martell Montwé
559e68761c
Change Options to use AccountSetupState 2023-08-03 16:36:00 +02:00
Wolf-Martell Montwé
21b500c8a1
Change OutgoingConfig to use AccountSetupState 2023-08-03 16:35:41 +02:00
Wolf-Martell Montwé
cfccc950cc
Change AccountValidation to use AccountSetupState 2023-08-03 16:35:23 +02:00
Wolf-Martell Montwé
69ad9c52ef
Change IncomingConfig to use AccountSetupState 2023-08-03 16:34:56 +02:00
Wolf-Martell Montwé
a5a8291e55
Change AutoDiscovery to use AccountSetupState 2023-08-03 16:34:40 +02:00
Wolf-Martell Montwé
cdb7f77d2e
Move AccountAutoDiscoveryStateMapper to autodiscovery package 2023-08-03 16:34:23 +02:00
Wolf-Martell Montwé
9b62c1f8d0
Change AutoDiscoveryTest setup 2023-08-03 16:34:12 +02:00
Wolf-Martell Montwé
4c570e7985
Add AccountSetupState and repository to keep it in memory 2023-08-03 16:34:05 +02:00
Wolf-Martell Montwé
5f027d206c
Remove duplicated FakeAccountOAuthViewModel 2023-08-03 16:33:44 +02:00
Wolf-Martell Montwé
b19aa29e6d
Add OAuth to auto discovery flow 2023-08-03 16:33:37 +02:00
Wolf-Martell Montwé
9f0f32b0c0
Change Dummy to PreviewAccountOAuthViewModel 2023-08-02 14:18:35 +02:00
Wolf-Martell Montwé
7da66f1867
Merge pull request #7105 from thundernest/fix_timer_based_navigation
Fix timer based navigation
2023-08-01 07:49:38 +00:00
Wolf-Martell Montwé
d7a9ff1485
Merge pull request #7104 from thundernest/change_sign_in_button
Change SignInWithGoogleButton to fit to our button style
2023-08-01 07:48:55 +00:00
Wolf-Martell Montwé
303a8f94d6
Change back to not change state and instead navigate back immediately 2023-07-31 18:18:46 +02:00
Wolf-Martell Montwé
4c7b6366c3
Fix timer based navigation 2023-07-31 18:12:31 +02:00
Wolf-Martell Montwé
06a118ca41
Change SignInWithGoogleButton to fit to our button style and add outline to add contrast in light mode, also removed the loading indicator as not needed 2023-07-31 17:49:43 +02:00
Wolf-Martell Montwé
9d8e54683b
Move onBack method below onNext 2023-07-31 16:52:33 +02:00
Wolf-Martell Montwé
92e949c299
Change remaining AccountSetupViewModelTest to new turbine setup 2023-07-31 16:52:33 +02:00
Wolf-Martell Montwé
8cd96d2e77
Fix account setup back navigation flow 2023-07-31 16:52:32 +02:00
Wolf-Martell Montwé
660f183607
Remove unused string resources 2023-07-31 16:37:28 +02:00
cketti
4efbf3d0d9 Add OAuth to auto discovery flow 2023-07-31 15:16:09 +02:00
cketti
6ff458da6c Change AccountOAuthScreen() to AccountOAuthView() 2023-07-30 17:06:40 +02:00
cketti
cb6520efd2 Change ViewModel orchestration in account setup
Using more direct dependencies makes it easier to follow what's going on.
2023-07-30 17:06:40 +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
191693a534 Remove unused code 2023-07-29 20:21:35 +02:00
cketti
a8dc84a69b Remove FakeAutoDiscoveryService 2023-07-28 12:53:06 +02:00
Wolf-Martell Montwé
a00ca56f8e
Add validation flow to account setup 2023-07-27 20:18:13 +02:00
Wolf-Martell Montwé
eec5a358e9
Add incoming outgoing texts 2023-07-27 19:06:53 +02:00
Wolf-Martell Montwé
5e94369775
Change account validation bottom next button visibility to isSuccess state and wire it up 2023-07-27 19:06:53 +02:00
Wolf-Martell Montwé
9046a4c8fc
Remove loading from AccountOutgoingScreen 2023-07-27 19:06:52 +02:00
Wolf-Martell Montwé
1a7e60dfef
Remove loading from AccountIncomingScreen 2023-07-27 19:06:52 +02:00
Wolf-Martell Montwé
1360d058d7
Add string mapper 2023-07-27 13:17:07 +02:00
Wolf-Martell Montwé
63bfd64b37
Add AccountValidationScreen 2023-07-27 13:17:07 +02:00
Wolf-Martell Montwé
42e5bde2d3
Merge pull request #7088 from thundernest/add_validate_server_settings_use_case
Add ValidateServerSettings use case
2023-07-27 10:59:11 +00:00
Wolf-Martell Montwé
5897a655bf
Add ValidateServerSettings use case 2023-07-26 18:16:15 +02:00
Wolf-Martell Montwé
8af494fa52
Change WizardNavigationBar to be able to show and hide buttons 2023-07-26 18:13:19 +02:00
Wolf-Martell Montwé
0c0e57f7ba
Merge pull request #7079 from thundernest/add_account_setup_oauth
Add account setup oauth
2023-07-26 12:43:29 +00:00
Wolf-Martell Montwé
bfae204dc5
Remove OnNextClicked as SignInClicked controls the flow 2023-07-26 13:52:19 +02:00
Wolf-Martell Montwé
7b8107d2bc
Add error strings 2023-07-26 13:52:19 +02:00
Wolf-Martell Montwé
5b9d08fe8b
Add tests and remove CheckIsAuthorized as it's fully covered by the AuthorizationStateRepository 2023-07-26 13:52:19 +02:00
Wolf-Martell Montwé
35020a1cb9
Add CheckIsGoogleSignIn and use GoogleSignInButton 2023-07-26 13:52:19 +02:00
Wolf-Martell Montwé
615e16895f
Add FinishOAuthSignIn usecase 2023-07-26 13:52:18 +02:00
Wolf-Martell Montwé
e658b8256b
Add AccountOAuthScreen 2023-07-26 13:52:18 +02:00
Wolf-Martell Montwé
eeb03b6d15
Fix AutoDiscoveryStatusView border shape 2023-07-20 18:17:36 +02:00
cketti
3c344ff808
Merge pull request #7077 from thundernest/autoconfig_auth_types
Read all supported authentication methods from Autoconfig file
2023-07-20 11:47:50 +02:00
cketti
ce2ef439d0
Merge pull request #7075 from thundernest/client_certificate
New account setup: add support for client certificates
2023-07-20 11:47:30 +02:00
cketti
639f6e68b3 Use authentication type from AutoDiscoveryResult.Settings 2023-07-19 20:35:23 +02:00
cketti
f73cd2ffef Return all supported authentication methods from RealAutoconfigParser 2023-07-19 19:58:20 +02:00
Wolf-Martell Montwé
0a2a1b7d93
Change WizardNavigationBar to enable next and back button based on given state 2023-07-19 18:53:58 +02:00
cketti
92d7682e48 Use client certificate alias when creating ServerSettings 2023-07-19 18:25:06 +02:00
cketti
d4b7668368 Add UI element to select a client certificate 2023-07-19 18:25:06 +02:00
Wolf-Martell Montwé
ada21aebd1
Add AuthorizationRepository 2023-07-19 17:34:34 +02:00
Wolf-Martell Montwé
b0cf2e5f28
Merge pull request #7073 from thundernest/add_content_list_view
Add ContentListView to wrap repeated content view setup
2023-07-19 13:44:10 +00:00
Wolf-Martell Montwé
c2d067f968
Move EventStateTestUtil to core:ui:compose:testing 2023-07-19 15:03:23 +02:00
Wolf-Martell Montwé
cbffe44496
Add ContentListView to wrap repeated content view setup 2023-07-19 14:39:19 +02:00
Wolf-Martell Montwé
f3d096fed4
Merge pull request #7071 from thundernest/add_sign_in_with_google_button
Add SignInWithGoogleButton
2023-07-19 09:31:40 +00:00
Wolf-Martell Montwé
f0672ddd53
Add OAuth check to GetAutoDiscovery 2023-07-19 10:36:39 +02:00
Wolf-Martell Montwé
23b0e79a0e
Add account common module to host shared code for reuse in oauth module 2023-07-19 10:36:39 +02:00
Wolf-Martell Montwé
e6b2c66f44
Change contracts from sealed class to sealed interface 2023-07-19 10:07:27 +02:00
Wolf-Martell Montwé
60370fc1d9
Add SignInWithGoogleButton 2023-07-19 10:06:49 +02:00
cketti
d8489c1cf1 Disable "IMAP path prefix" input when auto-detecting IMAP namespace 2023-07-17 17:26:28 +02:00
cketti
d09cb2afeb Add source to AutoDiscoveryResult.Settings 2023-07-15 21:39:43 +02:00
cketti
e24cbaaddb Map IMAP advanced settings when creating ServerSettings 2023-07-13 16:29:32 +02:00
cketti
cb78d34610 Add "Send client ID" to incoming server settings (IMAP) 2023-07-12 15:50:00 +02:00
cketti
07ccf3b0cb Use AuthenticationType when creating outgoing ServerSettings 2023-07-03 18:24:42 +02:00
cketti
89b590b46d Hide username field in outgoing server settings when not needed 2023-07-03 18:19:16 +02:00
cketti
ba07e162e4 Hide password field in outgoing server settings when not needed 2023-07-03 18:16:49 +02:00
cketti
37ea82bd8f Don't show OAuth 2.0 option for POP3 accounts 2023-07-03 18:00:56 +02:00
cketti
0f6a50df73 Use AuthenticationType when creating ServerSettings 2023-07-03 18:00:56 +02:00
cketti
e80a02579a Hide password field in incoming server settings when not needed 2023-07-03 17:59:00 +02:00
Wolf-Martell Montwé
6cfd9481aa
Move AccountSetupFinishedLauncher to feature launcher 2023-07-03 10:21:14 +02:00
Wolf-Martell Montwé
b9e9dced5d
Move OkHttp dependency injection to account setup 2023-06-30 13:18:18 +02:00
Wolf-Martell Montwé
d5c3cf3bf8
Merge pull request #7032 from thundernest/add_account_creation
Add account creation
2023-06-30 12:31:21 +02:00
Wolf-Martell Montwé
fe180f282d
Add createAccount use case to account setup 2023-06-30 12:13:16 +02:00
Wolf-Martell Montwé
ece413d9a2
Cleanup account options 2023-06-30 12:04:27 +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
cketti
176a1e5bb7 Add authentication type to outgoing server settings screen 2023-06-29 17:46:12 +02:00
cketti
7156b92187
Merge pull request #7035 from thundernest/add_incoming_authentication_type
Add authentication type to incoming server settings screen
2023-06-29 17:02:24 +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é
10aab087dd
Fix lint issues 2023-06-29 12:23:35 +02:00
cketti
d677c542ef Add authentication type to incoming server settings screen 2023-06-28 15:19:09 +02:00
cketti
5c445256b0 Remove unnecessary elements from outgoing server settings screen 2023-06-28 14:33:42 +02:00