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
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é
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é
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
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é
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
cketti
656a9d3862
Use relaxed mode to parse email addresses from message headers
2023-06-15 19:32:56 +02:00
cketti
fa487b2016
Always use extension function to create EmailAddress
instance
2023-06-01 14:29:28 +02:00
cketti
b1f876cbdc
Merge pull request #6876 from thundernest/manifest_changes
...
Explicitly set manifest attribute "hasFragileUserData" to false
2023-05-05 18:06:03 +02:00
cketti
b56e444a74
Explicitly set manifest attribute "hasFragileUserData" to false
2023-05-05 16:21:26 +02:00
cketti
ff188cdfb5
Remove WebDAV code
2023-05-04 22:14:00 +02:00
Self Not Found
f2ce1fe344
IMAP: Add support for sending ID command with app name
2023-04-26 14:58:44 +02:00
cketti
692b03a550
Enable home screen widgets by default
2023-04-17 15:13:08 +02:00
Wolf Montwé
9cdf3e2b7a
Add ContactRepository
2023-03-09 13:48:06 +01:00
Wolf Montwé
5e09e067b0
Add email value type
2023-03-07 18:12:38 +01:00
Wolf Montwé
cab1c71524
Cleanup remaining code style issues for Kotlin sources
2023-02-17 16:14:14 +01:00
Wolf Montwé
29d5220995
Add trailing comma allowance to code style
2023-02-17 16:14:13 +01:00
cketti
487787bdd2
Simplify creation of FolderNameFormatter
...
`FolderNameFormatter` is only retrieving string resources. For this the global `Resources` instance will do. There's no need to pass instances retrieved from an `Activity`.
2023-02-08 16:09:32 +01:00
Wolf Montwe
1854a2c911
Change Kotlin code format
2023-02-03 17:23:57 +01:00
cketti
c93f5ea799
Merge pull request #6612 from thundernest/message_counts
...
Refactoring: Message counts
2023-02-01 17:36:59 +01:00
cketti
4cc1643643
Remove message count functionality from MessagingController
2023-02-01 14:39:59 +01:00
cketti
3e90f8b85e
Remove unused methods
2023-01-27 19:50:46 +01:00
cketti
8e0a97a439
Don't disable home screen widgets on Android versions prior to 12
...
Due to a bug in older Android versions home screen widgets that are disabled by default won't be available even after the component has been enabled dynamically.
2023-01-09 13:05:46 +01:00
cketti
9b4941c67d
Move manifest entry so we don't get a RemoveWorkManagerInitializer lint error
2023-01-06 18:39:46 +01:00
cketti
8108787957
Change the way WorkManager
is initialized
2023-01-06 16:29:23 +01:00
cketti
fc3c9b3035
Add comments to components that are disabled by default
2023-01-06 16:08:56 +01:00
cketti
996f7e28ef
Disable more Android components by default
...
Only enable launcher shortcuts and home screen widgets after an account has been set up.
2023-01-06 16:08:56 +01:00
Goooler
280ec9ccb1
Remove unnecessary "enabled" attributes in manifests
2023-01-04 13:03:33 +01:00
cketti
f0b369711b
Remove support for old launcher shortcuts
2022-10-22 18:20:34 +02:00
cketti
da283a7c32
Change the way the message list widget listens to changes
...
Also change the code to only listen for message list changes when the message list widget has been added to the home screen.
2022-10-19 18:38:03 +02:00
cketti
343ed16ae0
Update the message list widget on app start
...
Now that we've changed the component name of `MessageListWidgetService` this is necessary so widget hosts learn of the new name. It's also a good idea in general to update all RemoteViews on app startup (since the app might have been updated).
2022-10-18 15:16:36 +02:00
cketti
2640c0e0a7
Retain fully-qualified name of MessageListWidgetProvider
in the manifest
2022-10-17 20:31:32 +02:00
cketti
c9d89657b0
Create a separate Gradle module for the message list widget
2022-10-17 19:15:17 +02:00
cketti
af11ca5e4e
Remove now unused MessageProvider
2022-10-17 11:37:57 +02:00
cketti
e75d15d7e6
Don't use MessageProvider
for message list widget
2022-10-17 11:37:57 +02:00
cketti
dfef2d9ece
Convert MessageListRemoteViewFactory
to Kotlin
2022-10-14 14:34:45 +02:00
cketti
2015fe7905
Rename .java to .kt
2022-10-14 14:33:54 +02:00
cketti
6ad7d022fe
Convert MessageListWidgetProvider
to Kotlin
2022-10-14 13:58:50 +02:00
cketti
ee98a96cba
Rename .java to .kt
2022-10-14 13:58:50 +02:00
cketti
f464b3be6d
Convert MessageListWidgetService
to Kotlin
2022-10-14 13:37:02 +02:00
cketti
755885bb2b
Rename .java to .kt
2022-10-14 13:37:02 +02:00
cketti
1690781e7a
Merge WebDavTransport
into WebDavStore
2022-10-10 16:45:16 +02:00
cketti
88d3f8b828
Change minimum size for message list widget to 2x2 cells
...
See https://developer.android.com/guide/practices/ui_guidelines/widget_design.html#anatomy_determining_size
2022-10-06 11:31:18 +02:00
cketti
3dc9dd2629
Enable nonTransitiveRClass=true
2022-09-26 16:51:50 +02:00
cketti
66739b4b70
Switch to using 'namespace' property in build.gradle
2022-09-20 14:53:19 +02:00
cketti
1766bbe2ce
Remove direct share support
...
We (can) no longer use the contacts database to keep track on how often someone has been contacted. Without that information we can't make meaningful automatic suggestions for share targets.
In the future we want to add support for app shortcuts to create a new message to a specific contact (see issue #2145 ).
2022-09-15 17:49:50 +02:00
cketti
7ea928bba5
Finally get rid of EmailProvider
2022-08-31 17:50:00 +02:00
cketti
46ca47facd
Remove unused parameter
2022-08-09 18:18:31 +02:00
cketti
713082fe55
Remove unnecessary elvis operator
2022-08-09 17:50:46 +02:00
cketti
bc7758b9cf
Remove notificationId
parameters from methods in NotificationActionCreator
2022-07-26 23:31:20 +02:00
cketti
147945f757
Make sure Intents
used by K9NotificationActionCreator
are unique
2022-07-26 23:31:20 +02:00
cketti
923453ad3f
Don't remove OAuth state on temporary errors
2022-07-14 17:06:31 +02:00
cketti
1ff327eda8
Display an error notification when creating a notification fails
...
When importing settings from another device, we could end up with a notification channel that references a non-existing notification sound. In that case creating a notification for a new message will lead to a `SecurityException`. We catch this case and display an error notification instead. This is fine because we create the "Miscellaneous" notification channel without a notification sound.
2022-07-11 18:06:22 +02:00
cketti
7d69ada798
Merge pull request #6115 from thundernest/oauth_outlook
...
Add OAuth support for Microsoft accounts
2022-07-05 17:19:35 +02:00
cketti
f96154f0b0
Display "authentication failed" notification when OAuth sign-in is required
2022-06-16 14:55:34 +02:00
cketti
598a171464
Add OAuth support for Microsoft accounts
2022-06-15 13:02:50 +02:00
cketti
6290e9b2a6
Add OAuth support for AOL accounts
2022-06-08 20:28:08 +02:00
cketti
79dd0fe1b2
Add OAuth support for Yahoo accounts
2022-06-08 20:28:08 +02:00
Olivier Blin
4c937ad7a6
Move redirectUri in OAuthConfiguration
...
Not all providers accept the redirect URI Google requires Android apps to use.
2022-06-08 20:28:08 +02:00
cketti
d08aa55853
Add proper way to retrieve OAuth credentials
2022-06-05 16:35:39 +02:00
cketti
d4883d1921
Add "Sign in with Google" button
...
This flow is not a great user experience. But it's the fastest way I could think of to add the button that was requested by Google.
2022-06-03 23:25:58 +02:00
cketti
14a7f1b0d3
Add support for OAuth 2.0 (Gmail)
2022-05-23 22:26:49 +02:00
cketti
7f343e4fd1
Move DefaultTrustedSocketFactory
2022-04-28 22:18:14 +02:00
cketti
4ad2e04cff
Decouple WebDavSocketFactory
from DefaultTrustedSocketFactory
2022-04-28 22:02:48 +02:00
cketti
7be4ea62fe
Remove ImapStore
's dependency on ConnectivityManager
2022-04-12 21:58:15 +02:00
cketti
a796b1d941
Change IMAP code to use single compression setting
2022-04-12 21:58:15 +02:00
cketti
903d0f43c4
Change Account
to use a single setting for IMAP compression
2022-04-12 21:58:15 +02:00
cketti
372252710d
Update name/description of notification channels when app locale changes
2022-03-17 18:35:59 +01:00
cketti
51457a6859
Simplify LocalStore.searchForMessages()
2022-02-24 20:28:03 +01:00
cketti
5d102ec610
Set targetSdkVersion to 31
2022-02-21 18:43:01 +01:00
cketti
13b57b7eba
Use android:exported="false" when possible
2022-02-21 18:42:27 +01:00
cketti
8847e30cb7
Add appropriate mutability flags to PendingIntents
2022-02-21 18:42:27 +01:00
cketti
f6e03ff040
Don't expose MessageProvider to third-party apps
...
If this was an important feature to you, please contact us and tell us a little bit about your use case.
2022-02-17 20:56:31 +01:00
cketti
dee2ca345d
Convert 'BaseAccount' to Kotlin
2022-02-08 16:54:15 +01:00
cketti
bfc708df19
Use Account.getDisplayName() when appropriate
2022-02-08 02:05:05 +01:00
cketti
19829eb2a2
Rename Account.getDescription() to Account.getName()
2022-02-08 01:13:30 +01:00
cketti
1d601c5c59
Rename Account.getName() to Account.getSenderName()
2022-02-08 00:50:26 +01:00
cketti
91c0787fa5
Open message from notification in Unified Inbox if possible
2022-01-09 23:10:04 +01:00
cketti
8e12d05a1d
Update summary notification click behavior
...
Open "New messages" view when tapping the summary notification and not all messages either belong to the Unified Inbox or to a single folder.
2021-12-11 15:41:15 +01:00
cketti
c289c74238
Update summary notification click behavior
...
When tapping the summary notification and all new messages belong to folders that are included in the Unified Inbox, we display the Unified Inbox.
2021-12-09 22:21:55 +01:00
cketti
514802e010
Make sure the message list widget reuses an existing MessageList activity
2021-12-09 02:01:40 +01:00
cketti
6c54b324d6
Switch back to using launchMode="singleTop" for MessageList
...
We previously removed it because using the default launcher intent would open the default folder instead of just bringing the app to the foreground. We now handle that case by ignoring the default launcher intent in MessageList.onNewIntent().
See 97a75a54ef
2021-12-09 01:50:56 +01:00
cketti
57d7616d5a
Create public version for certificate error notifications
...
Don't expose account name or error details when Android is configured to hide sensitive information on the lock screen.
2021-12-08 02:37:21 +01:00
cketti
981e7fbe70
Improve support for RTL languages in layouts
2021-11-26 22:45:48 +01:00