Commit graph

2371 commits

Author SHA1 Message Date
cketti
9dc86ba522
Merge pull request #6019 from k9mail/simplify_imap_compression_setting
Simplify IMAP compression setting
2022-04-20 17:06:46 +02:00
cketti
eb305db65d
Merge pull request #6008 from arissystem/Issue-6007
Disable messageview_show_next item when messageview_return_to_list is checked
2022-04-20 14:11:10 +02:00
cketti
a042e66367 Merge branch '6.0-MAINT' into main 2022-04-20 14:06:35 +02:00
cketti
0a8f9b45f2 Version 6.000 2022-04-17 20:21:06 +02:00
cketti
72e679dca0 Add migration for IMAP compression in settings file 2022-04-12 21:58:15 +02:00
cketti
814583a89e Add migration for persisted IMAP compression preference 2022-04-12 21:58:15 +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
0a60b7ce21 Simplify UI to configure IMAP compression 2022-04-12 21:58:15 +02:00
cketti
391d45d52b Merge branch '6.0-MAINT' into main 2022-04-12 00:23:08 +02:00
cketti
58b4cb02a9 Version 5.916 2022-04-12 00:05:37 +02:00
cketti
bd76b75bb4 Merge branch 'pr_6006' into 6.0-MAINT 2022-04-11 23:43:12 +02:00
cketti
f427326da6 Simplify error notifications 2022-04-11 20:15:51 +02:00
cketti
e815d318aa Don't set notification sound/vibration/light on Android 8+
On Android 8+ these values should be ignored anyway. But on some devices setting a notification sound could lead to a SecurityException (when the app doesn't have permission to access the notification sound URI).
2022-04-11 20:15:51 +02:00
cketti
c415635ae0 Prepare for version 5.916 2022-04-11 20:15:18 +02:00
cketti
31860a209e Fix usage of ContentResolver.openOutputStream() 2022-04-11 17:40:36 +02:00
cketti
6da9195179 Truncate file when overwriting existing settings file 2022-04-11 17:40:36 +02:00
cketti
dc9e667d53
Merge pull request #6006 from arissystem/issue-6004
Save and restore activeMessages in savedInstanceState to avoid NullPointerException
2022-04-11 16:29:09 +02:00
Alexandre
0dbca2dddf Append a space to » and › in messages list. 2022-04-11 15:13:54 +02:00
cketti
9b9b3d8f69 Prepare for version 6.100 2022-04-11 15:09:42 +02:00
r.zarchi
37bf6965d6 Disable messageview_show_next item when messageview_return_to_list is checked 2022-04-11 11:09:29 +04:30
r.zarchi
85a19ccb2b Save and restore activeMessages in savedInstanceState to avoid NullPointerException when rotating 2022-04-10 11:48:41 +04:30
cketti
d9153f4c20 Version 5.915 2022-04-06 17:39:51 +02:00
cketti
7f57fa286c Update translations 2022-04-06 16:50:45 +02:00
cketti
0c381c2bcd
Merge pull request #6002 from k9mail/Issue-5961
Fix issues when switching between LTR and RTL languages
2022-04-06 16:05:14 +02:00
cketti
d6f218b3ec
Merge pull request #6000 from k9mail/fix_update_notification_preferences
Fix reading notification settings from `NotificationChannel`
2022-04-06 15:59:45 +02:00
cketti
bf8ab4e6cf
Merge pull request #5998 from arissystem/Issue-5961
Activity recreate method changed because it didn't work properly on some Android versions
2022-04-05 16:48:20 +02:00
cketti
685374dad8 Explicitly set the layout direction on Android 12+ 2022-04-05 16:37:57 +02:00
cketti
49160cb1a9 Always use ActivityCompat.recreate() 2022-04-05 15:15:38 +02:00
r.zarchi
c3d5928c1f Activity recreate method changed because it didn't work properly on Android older than 9 2022-04-05 10:42:18 +04:30
cketti
6721a15663 Fix importing multiple accounts 2022-04-04 19:30:15 +02:00
cketti
486593919e Don't use app vibration defaults in NotificationVibrationDecoder
The code didn't handle the case where vibration was enabled but the pattern was `null` (system default).
2022-04-04 18:53:10 +02:00
cketti
f30a8ca3bb Use NotificationSettingsUpdater in AccountSettingsFragment 2022-04-04 18:53:10 +02:00
cketti
0e78b8aae6 Version 5.914 2022-03-24 18:41:05 +01:00
cketti
2483b975b9 Update translations 2022-03-24 18:04:44 +01:00
cketti
d53dc73e07
Merge pull request #5979 from k9mail/GH-5978_fix_folder_not_found_crash
Avoid crash when trying to open non-existent folder
2022-03-24 17:19:16 +01:00
cketti
322c8be4ae Avoid crash when trying to open non-existent folder
For now we load the default folder instead.
2022-03-21 18:48:17 +01:00
cketti
0f3df9d2e2 Avoid UninitializedPropertyAccessException 2022-03-21 17:54:45 +01:00
cketti
372252710d Update name/description of notification channels when app locale changes 2022-03-17 18:35:59 +01:00
cketti
aa842efea8 Set messagesNotificationChannelVersion on settings import
Avoid reusing previously created notification channels when restoring an account using settings import.
2022-03-15 00:39:28 +01:00
cketti
47441a9837 Prepare for version 5.914 2022-03-11 19:30:13 +01:00
cketti
40e446c442 Version 5.913 2022-03-11 19:30:13 +01:00
cketti
09ebe08f33 Update translations 2022-03-11 18:58:42 +01:00
cketti
075324af14 Clean up code to update notification channels 2022-03-11 18:44:36 +01:00
cketti
8206cbce4c Update accounts with NotificationChannel configurations before exporting settings 2022-03-10 16:06:46 +01:00
cketti
803e388b90 Extract logic to convert system vibration pattern into NotificationVibrationDecoder 2022-03-10 16:06:46 +01:00
cketti
25c0e4af43 Extract vibration settings to separate class NotificationVibration 2022-03-09 22:35:13 +01:00
cketti
f3241622d5 Avoid race condition when selecting a notification sound 2022-03-08 23:51:45 +01:00
cketti
aa90f4369d Avoid race condition when recreating the messages NotificationChannel 2022-03-08 22:53:22 +01:00
cketti
d784151ef0 Add support for updating existing notifications 2022-03-08 18:29:27 +01:00
cketti
4581bf3f8b Update SearchPreference to version 2.1.0 2022-03-04 00:55:16 +01:00
cketti
d5baa9982d Update Jsoup to version 1.14.3 2022-03-04 00:55:16 +01:00
cketti
eb1ea4f246 Update MaterialDrawer to version 8.4.5 2022-03-04 00:55:16 +01:00
cketti
7814b138d3 Update AndroidX Preference to version 1.2.0 2022-03-04 00:55:16 +01:00
cketti
c34340e14f Update AndroidX Navigation to version 2.4.1 2022-03-04 00:55:16 +01:00
cketti
e24d51a437 Remove @OptIn annotations that are now unnecessary 2022-03-03 16:55:36 +01:00
cketti
4c67bbd156 Update kotlinx-coroutines to version 1.6.0 2022-03-03 16:52:44 +01:00
cketti
f66f7e5073 Use account settings when creating the NotificationChannel for messages 2022-03-01 16:42:33 +01:00
cketti
237a6024e4 Remove unused callbacks 2022-02-24 20:46:58 +01:00
cketti
c206af5ab0 Remove unnecessary method parameter 2022-02-24 20:34:45 +01:00
cketti
51457a6859 Simplify LocalStore.searchForMessages() 2022-02-24 20:28:03 +01:00
cketti
4bed7a595b Remove unused method parameters 2022-02-24 19:56:50 +01:00
cketti
e59f57f602 Remove unused callbacks from MessageRetrievalListener 2022-02-24 19:42:01 +01:00
cketti
065f98cfdd Remove unnecessary method parameters 2022-02-24 19:24:17 +01:00
cketti
dea6bf1f01 Don't create notifications when manually refreshing the message list 2022-02-24 00:05:51 +01:00
cketti
58709b156a Remove commented out code 2022-02-22 22:14:21 +01:00
cketti
3a98e7b0ec Prepare for version 5.913 2022-02-22 21:47:45 +01:00
cketti
b165aeaf81 K-9 Mail 5.912 2022-02-22 21:47:45 +01:00
cketti
7413ee653a Update translations 2022-02-22 20:59:13 +01:00
cketti
e1c43beee1 Remove 'new message' notification when user deletes the message
We already handled the case where the deletion was synced from the server. This handles the case where the user locally deletes the message.
2022-02-22 19:22:21 +01:00
cketti
7a784f1fcd Remove 'new message' notification when user marks the message as read
We already handled the case where the message was marked as read on the server. This handles the case where the user marks the message as read locally.
2022-02-22 19:22:21 +01:00
cketti
66903ae692 Revert "Button bar in navigation drawer"
This reverts commit 96b7ca26
2022-02-22 17:59:42 +01:00
cketti
c0f8c43baa Add logging for summary notifications
These are the notifications responsible for sound/vibration/light.
2022-02-22 17:44:01 +01:00
cketti
48caeffe10 More logging when recreating a NotificationChannel 2022-02-22 17:44:01 +01:00
cketti
fea7b7c7bf Update Robolectric to 4.7.3 2022-02-21 18:43:01 +01:00
cketti
91239f92d2 Update StrictMode policy 2022-02-21 18:43:01 +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
ad18dc2f74 Create Outbox if necessary when attempting to send a message 2022-02-21 16:58:43 +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
9cf0708683 Display "New mail ringtone" setting on Android 8+
Some vendors don't support changing the notification sound via the system's user interface to configure notification categories.
2022-02-15 21:21:18 +01:00
cketti
aba7168393 Use intent chooser when sharing links
When sharing we don't want the user to be able to select a default app to perform the action.
2022-02-14 18:23:34 +01:00
cketti
4270e398e8 Prepare for version 5.912 2022-02-12 00:52:02 +01:00
cketti
49ceab2b6f Version 5.911 2022-02-12 00:35:19 +01:00
cketti
55e0288ffe Hold accountLock while saving an account 2022-02-12 00:00:11 +01:00
cketti
ffa0ebb5bb Change the Storage class to be immutable
Also make sure the in-memory state and the database are modified together while a lock is being held.
2022-02-12 00:00:11 +01:00
cketti
56ac6ab0bd Rework notification light setting 2022-02-11 23:56:12 +01:00
cketti
4d0bbd1e8a Remove rows from 'notifications' table when clearing notifications 2022-02-10 01:49:53 +01:00
cketti
d087fde125 Change NotificationSettings into a data class 2022-02-09 19:36:33 +01:00
cketti
0fb6bd9198 Add a proper type for the vibration pattern the user can select 2022-02-09 19:36:33 +01:00
cketti
c58e357030 Convert 'NotificationSettings' to Kotlin 2022-02-09 19:36:33 +01:00
cketti
6256ec6d89 Rename .java to .kt 2022-02-09 19:36:33 +01:00
cketti
b91c902247 Rename class NotificationSetting to NotificationSettings 2022-02-09 19:36:33 +01:00
cketti
f923da4487 Convert 'Account' to Kotlin 2022-02-09 19:36:33 +01:00
cketti
2dbdca0fc4 Rename .java to .kt 2022-02-09 19:36:33 +01:00
cketti
f196b8ca5e Convert 'SearchAccount' to Kotlin 2022-02-09 19:36:33 +01:00
cketti
566be079c9 Rename .java to .kt 2022-02-08 17:07:38 +01:00
cketti
dee2ca345d Convert 'BaseAccount' to Kotlin 2022-02-08 16:54:15 +01:00
cketti
4583218750 Rename .java to .kt 2022-02-08 16:54:15 +01:00
cketti
eff9f1bf5e Improve support for empty account name 2022-02-08 02:23:04 +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
ff97264c08 Use Account.toString() in log messages
Have Account.toString() only return the account name when sensitive debug logging is enabled. Otherwise return the account UUID.
2022-02-08 00:16:33 +01:00
cketti
deecc9ea16 Fix NotificationChannel recreation avoidance logic 2022-02-07 19:22:03 +01:00
cketti
d161f7972d
Merge pull request #5895 from k9mail/vibration_pattern
Unify settings to configure notification vibration
2022-02-07 18:29:52 +01:00
cketti
173dded6b0
Merge pull request #5896 from k9mail/keep_doctype
Retain doctype when sanitizing HTML
2022-02-07 17:43:31 +01:00
cketti
d4d3fe2a98 Retain doctype when sanitizing HTML 2022-02-05 17:34:32 +01:00
cketti
64c6bcd48f Unify settings to configure notification vibration 2022-02-04 06:52:52 +01:00
cketti
4c875027a6 Crash app when trying to add duplicate notification on debug builds
This is not a critical error. So we're not crashing release builds. We could skip the duplicate notification in release builds. But the hope is that users will notice them and report a bug, allowing us to find and fix the root cause rather than the symptom.
2022-02-03 02:16:06 +01:00
cketti
a4e1a77892 Switch to mockito-inline 2022-02-03 01:10:52 +01:00
cketti
979a9b4968
Extract string resource (#5888) 2022-01-28 19:08:08 +01:00
cketti
587e964e87
Merge pull request #5885 from k9mail/html_cleaner_cli
Add command line application to sanitize HTML files
2022-01-28 16:53:10 +01:00
cketti
362ecae297 Fix HtmlProcessor/HtmlSanitizer parameter types 2022-01-28 04:40:30 +01:00
cketti
6e9a8f9559 Move HtmlProcessor into a separate module 2022-01-28 04:40:30 +01:00
parkerfath
1265d0724b
Open Outbox from 'send failed' notification (#5887) 2022-01-28 03:33:06 +01:00
cketti
f74d1c0fee Change HtmlProcessor to retrieve custom <head> contents from an interface 2022-01-26 03:19:48 +01:00
cketti
7c05ec5b21 Don't use dependency injection for HtmlSanitizer 2022-01-26 03:12:11 +01:00
cketti
013e0dc788 Convert 'HtmlProcessor' to Kotlin 2022-01-26 03:05:42 +01:00
cketti
f84ebecd73 Rename .java to .kt 2022-01-26 02:57:01 +01:00
cketti
4f7bda0c29 Convert 'HeadCleaner' to Kotlin 2022-01-26 02:44:57 +01:00
cketti
2dd2b7492c Rename .java to .kt 2022-01-26 02:44:04 +01:00
cketti
cfc4c0bb71 Prepare for version 5.911 2022-01-25 19:41:32 +01:00
cketti
5c35d08f93 Version 5.910 2022-01-25 19:29:44 +01:00
cketti
262f97812f Remove JMAP app
The JMAP backend is still part of the repository. Only currently unused.
2022-01-20 00:28:01 +01:00
parkerfath
fda4e8243a
Allow remote search by default (#5867) 2022-01-20 00:20:22 +01:00
schlagi123
e8a798c9de
Change default color for registered contacts (#5865)
Change default value of `registeredNameColor` to have enough contrast in both the light and dark theme.
2022-01-20 00:10:05 +01:00
cketti
0e703cb380
Merge pull request #5864 from schlagi123/#5800
Trim usernames entered in setup screens
2022-01-15 01:08:20 +01:00
Bastian Wilhelm
1ffc7ba02c Remove warnings 2022-01-14 23:01:44 +01:00
Bastian Wilhelm
1efec7828f Trim username by setup 2022-01-14 23:01:44 +01:00
parkerfath
722e6b923f
Change delimiter in address fields from ASCII 0 to 1 (#5863)
Fixes search by sender name.

Co-authored-by: Fath <fath@147dda1a2773.ant.amazon.com>
2022-01-14 19:40:28 +01:00
cketti
343ead3fda Prepare for version 5.910 2022-01-12 16:33:30 +01:00
cketti
0269cd5df7 Version 5.909 2022-01-12 16:24:24 +01:00
cketti
35ac4b3726 Update translations 2022-01-12 15:04:25 +01:00
cketti
6e6fd8623a Only remove notifications for messages currently displayed
This only works for the Unified Inbox, the "new messages" view, and when viewing a single folder. Search views are currently not supported.
2022-01-11 01:46:01 +01:00
cketti
2dff253d43 Change code to remove notifications to accept a selector function 2022-01-10 22:01:13 +01:00
cketti
88e823d685
Merge pull request #5856 from k9mail/opening_message_from_notification
Open message from notification in Unified Inbox if possible
2022-01-10 18:25:54 +01:00
cketti
affc355e4a
Merge pull request #5854 from k9mail/fix_outbox_message_count
Trigger folder list update when a message has been sent
2022-01-10 18:23:41 +01:00
cketti
91c0787fa5 Open message from notification in Unified Inbox if possible 2022-01-09 23:10:04 +01:00
cketti
d68b326994 Trigger folder list update when a message has been sent 2022-01-09 08:12:29 +01:00
cketti
54ac569ea9 Don't intercept key events when the search view in the toolbar is expanded 2022-01-08 19:42:00 +01:00
cketti
b05c0ea5c4 Prepare for version 5.909 2022-01-06 00:08:41 +01:00
cketti
aa560736a6 Version 5.908 2022-01-05 23:56:41 +01:00
cketti
3b59a87329 Update translations 2022-01-05 22:29:11 +01:00
cketti
17e69419b8 Remove now unused BackendFolder.getLastUid() 2022-01-05 20:21:58 +01:00
cketti
2331626170 Add a migration to seed the new location with the highest known UID 2022-01-05 20:21:58 +01:00
schlagi123
30f5cac95e
Make ThemeManager listen to theme setting changes (#5833)
This way importing settings will automatically apply the imported theme value.
2021-12-29 23:03:49 +01:00
cketti
8bf1eb72a5 Prepare for version 5.908 2021-12-27 20:16:45 +01:00