Commit graph

3083 commits

Author SHA1 Message Date
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
cketti
f95e22afc8 Version 6.602 2023-05-11 17:13:46 +02:00
Wolf-Martell Montwé
8f02a9e279
Merge pull request #6889 from IlyaBizyaev/fix/no-widgets-npe
Fix NPE on devices that don't support widgets
2023-05-11 08:52:52 +00:00
Ilya Bizyaev
1f45c2c391
Log the null AppWidgetManager 2023-05-10 21:54:13 +02:00
Ilya Bizyaev
f647e50a2e
Fix NPE on devices that don't support widgets
Turns out, AppWidgetManager.getInstance(context) can return null. I've
tested that this change fixes the issue on the device.
2023-05-10 00:02:50 +02:00
cketti
26fab0dff4 Change default reply action from "reply all" to "reply" 2023-05-09 13:56:36 +02:00
cketti
182e2c217c Fix escaping commas in buildOAuthBearerInitialClientResponse() 2023-05-08 15:46:04 +02:00
cketti
0220e1d800 Prepare for version 6.704 2023-05-08 13:48:20 +02:00
cketti
0df1fa5543 Version 6.703 2023-05-08 13:42:05 +02:00
cketti
cba7e52581 Update translations 2023-05-08 13:25:10 +02:00
cketti
d407f18b11
Merge pull request #6878 from thundernest/check_UriParser_startPos_argument
Explicitly check `startPos` parameter in `UriParser.parseUri()` implementations
2023-05-08 11:37:39 +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
3de2d3af40 Validate startPos parameter in UriParser.parseUri() implementations 2023-05-05 17:32:53 +02:00
cketti
0644407ff6 Convert HttpUriParserTest to Kotlin 2023-05-05 17:12:52 +02:00
cketti
745ebd96a0 Rename .java to .kt 2023-05-05 17:09:25 +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
cketti
94f95734b3 Prepare for version 6.703 2023-05-02 12:46:12 +02:00
cketti
87e0e979c8 Version 6.702 2023-05-02 12:33:41 +02:00
cketti
54daf0a28e Update translations 2023-05-02 12:08:57 +02:00
cketti
587c281434 Don't let R8 remove TokenCompleteTextView 2023-05-01 19:29:19 +02:00
cketti
f826bdd7cc Prepare for version 6.702 2023-04-28 18:35:37 +02:00
cketti
f1155d4be3 Version 6.701 2023-04-28 18:35:37 +02:00
cketti
7cecc124f8 Update translations 2023-04-28 17:28:47 +02:00
cketti
68be3c0b82
Merge pull request #6853 from thundernest/rename_thunderbird_module
Move autodiscovery modules and rename classes
2023-04-26 16:17:38 +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
6b68a2d5d7 Use app.k9mail as base package name for all :feature:autodiscovery:* modules 2023-04-26 13:06:07 +02:00
cketti
610d818f25 Move all :app:autodiscovery:* modules to :feature:autodiscovery 2023-04-25 19:30:14 +02:00
Wolf-Martell Montwé
6e27fe5c84
Merge pull request #6829 from thundernest/bump-to-android-studio-flamingo
Bump to Android Studio Flamingo
2023-04-25 15:38:35 +00:00
Wolf Montwé
71079908aa
Bump Gradle 8.0.2 -> 8.1.1 and remove suppress dsl scope violation 2023-04-25 17:21:58 +02:00
Wolf Montwé
0339444dd3
Bump Android Gradle Plugin to 8.0.0 and move Kotlin compatibility to build-plugins 2023-04-25 17:21:32 +02:00
cketti
8fc01ce486 Prepare for version 6.701 2023-04-24 15:50:06 +02:00
cketti
2492d9ffc4 Version 6.700 2023-04-24 15:39:27 +02:00
cketti
60716aca3d
Merge pull request #6850 from thundernest/update_translations
Update translations
2023-04-24 14:57:27 +02:00
cketti
1e97751a66 Update translations 2023-04-24 14:08:51 +02:00
cketti
975049ef71
Merge pull request #6841 from thundernest/fix_export_settings
Don't fail when exporting an identity without a sender name
2023-04-24 13:45:48 +02:00
cketti
9e7ee7215d Don't fail when exporting an identity without a sender name 2023-04-24 13:35:50 +02:00
cketti
63ba1f6944 Increase number of active notification to 9
This way users can know that when the number 9 is displayed in the group summary, there's more notifications than the 8 they can currently see.
2023-04-21 17:46:55 +02:00
cketti
3fc0110b26
Merge pull request #6831 from thundernest/fix_attachment_loading_crash
Fix crash when loading attachment metadata fails
2023-04-20 16:02:18 +02:00
cketti
df9abbd678
Merge pull request #6830 from thundernest/fix_MessageList_crash
MessageList: Don't crash when being launched with invalid EXTRA_SEARCH value
2023-04-20 16:01:52 +02:00
cketti
97ed7f6dc3 Fix crash when loading attachment metadata fails 2023-04-18 19:03:46 +02:00
cketti
7d429d565b
Merge pull request #6828 from thundernest/log_export_exceptions
Log exception when exporting settings to a file fails
2023-04-18 14:59:50 +02:00
cketti
40d87d574b MessageList: Don't crash when being launched with invalid EXTRA_SEARCH value 2023-04-18 14:55:35 +02:00
cketti
3119985ffb
Merge pull request #6825 from thundernest/file_uri_link
Don't attempt to open `file:` URIs in an email
2023-04-18 13:21:57 +02:00
cketti
11d004dc07 Log exception when exporting settings to a file fails 2023-04-18 13:16:59 +02:00
cketti
35dddef436 Merge branch '6.6-MAINT' into 'main' 2023-04-18 12:50:59 +02:00
cketti
af28c757dd Version 6.601 2023-04-18 12:14:01 +02:00
cketti
18fa505725 Don't attempt to open file: URIs in an email 2023-04-17 20:13:58 +02:00
cketti
423bb3e181 Change MessageWebView to use Koin to retrieve dependencies 2023-04-17 20:13:58 +02:00
cketti
30efd5051f Convert K9WebViewClient to Kotlin 2023-04-17 20:04:24 +02:00
cketti
6a202800f3 Rename .java to .kt 2023-04-17 18:18:04 +02:00
cketti
bda3a48784 Prepare for version 6.700 2023-04-17 15:33:32 +02:00
cketti
c414d0c209 Merge branch '6.6-MAINT' into 'main' 2023-04-17 15:33:13 +02:00
cketti
692b03a550 Enable home screen widgets by default 2023-04-17 15:13:08 +02:00
Wolf-Martell Montwé
9c017d2aac
Merge pull request #6806 from thundernest/update_dependencies
Update dependencies
2023-04-11 12:14:41 +00:00
cketti
35f4c28ffa Version 6.600 2023-04-11 12:58:16 +02:00
cketti
e621d3f693 Add support for signature delimiters using non-breaking space in HTML parts 2023-04-08 15:27:33 +02:00
Wolf Montwé
abc548edf7
Update Androidx Lifecycle to 2.6.1 2023-04-05 16:49:19 +02:00
cketti
10d93775cd Prepare for version 6.512 2023-03-31 17:14:46 +02:00
cketti
9da6212a86 Version 6.511 2023-03-31 17:14:46 +02:00
cketti
78d552d241 Update translations 2023-03-31 14:53:08 +02:00
cketti
3988d5cca1
Merge pull request #6793 from thundernest/remove_unused_setup_module
Remove unused Gradle module :app:ui:setup
2023-03-30 13:03:49 +02:00
cketti
3ed84fd013 Remove unused Gradle module :app:ui:setup 2023-03-29 12:37:47 +02:00
cketti
b86fcd39fe Change the way the message view is updated on message list changes 2023-03-28 14:41:46 +02:00
cketti
d60b071e88 Fix message details layout when contact pictures are disabled 2023-03-27 17:09:18 +02:00
cketti
7c7ce912f6 Always initialize AuthViewModel with an Account instance
This will avoid a NullPointerException when the activity result is handled after recovering from a process death.
2023-03-22 18:10:29 +01:00
cketti
276f8ead83
Merge pull request #6777 from thundernest/fix_DefaultMessageCountsProvider_NPE
Fix crash in `DefaultMessageCountsProvider`
2023-03-22 14:50:32 +01:00
cketti
76eeff60a5
Merge pull request #6778 from thundernest/fix_message_details_crash
Close message details bottom sheet using `dismissAllowingStateLoss()`
2023-03-22 11:00:44 +01:00
cketti
3db912dbdc
Merge pull request #6776 from thundernest/message_list_go_back
Remove `MessageListHandler.goBack()`
2023-03-22 11:00:21 +01:00
cketti
6781024456 Close message details bottom sheet using dismissAllowingStateLoss()
This should avoid a crash where the dialog fragment is being dismissed after `onSaveInstanceState()` has been called.
2023-03-21 18:51:25 +01:00
cketti
b5964f32f2 Change DefaultMessageCountsProvider to support LocalSearch.conditions = null 2023-03-21 18:34:21 +01:00
cketti
1ccbfea756 Add failing test for DefaultMessageCountsProvider.getMessageCounts(Account) 2023-03-21 18:34:21 +01:00
cketti
03224e9666
Merge pull request #6773 from thundernest/save_fragment_active
Fix missing message view menu after restoring instance state
2023-03-21 17:49:29 +01:00
cketti
b8931bd484 Remove MessageListHandler.goBack()
We no longer call goBack() from a background thread. So using MessageListHandler is no longer necessary.
This change should also avoid trying to modify the back stack after onSaveInstanceState() has been called.
2023-03-21 17:35:10 +01:00
cketti
7c4310fc6c Save value of MessageListFragment.isActive in instance state
Otherwise, restoring the message view after process death will lead to the toolbar menu items being hidden.
2023-03-21 14:42:18 +01:00
Wolf Montwé
fd30437c94
Remove truth library and remaining usage 2023-03-21 14:14:44 +01:00
Wolf Montwé
d1f5b0222b
Change :app:core module to assertk 2023-03-21 14:14:39 +01:00
Wolf Montwé
e98ceb70a5
Change UriMatcherTest to Kotlin 2023-03-21 14:14:23 +01:00
Wolf Montwé
66e0424fdf
Rename UriMatcherTest.java to UriMatcherTest.kt 2023-03-21 14:14:23 +01:00
Wolf Montwé
a2af0c7bf3
Change :app:storage module to assertk 2023-03-21 14:14:19 +01:00
Wolf Montwé
37612f90a2
Change :app:ui:legacy to assertk 2023-03-21 14:05:50 +01:00
cketti
ebc3af7b4d Prepare for version 6.511 2023-03-17 18:42:30 +01:00
cketti
c24b339daf Version 6.510 2023-03-17 18:27:58 +01:00
cketti
6bd9da83e7 Update translations 2023-03-17 17:15:33 +01:00
cketti
709b55f2d1
Merge pull request #6762 from thundernest/imap_authentication_failure
IMAP: Ignore errors during LOGIN fallback
2023-03-17 16:38:31 +01:00
cketti
f3c58438b9
Merge pull request #6761 from thundernest/housekeeping
Remove unused method
2023-03-16 12:56:36 +01:00
cketti
faf3a0b64e On authentication failures display message from server to the user 2023-03-15 19:39:58 +01:00
cketti
f17fb9fe17 Remove unused method 2023-03-15 17:28:58 +01:00
cketti
d7d221ebbf Don't rely on ViewHolder.unbindView() being called when an item is updated 2023-03-15 15:51:45 +01:00
cketti
4e639256e4 Message Details: Update list when the fragment is resumed
We want to update the list of participants when the associated contact has changed in the contacts database. Right now we don't listen to changes to the contacts database, but refresh the list when onResume() is called. This should catch the case where a user is adding a contact from the message details screen using one of the "add to contacts" buttons.
2023-03-15 15:47:45 +01:00
cketti
5fa993392b Message Details: Use stable IDs for list items 2023-03-15 15:20:35 +01:00
cketti
71c8fb11d9 Message Details: Don't create new adapter every time the list is updated 2023-03-15 14:54:08 +01:00
cketti
10c19f1890
Merge pull request #6759 from thundernest/message_view_account_chip
Message View: Tweak appearance of account chip
2023-03-15 12:48:10 +01:00
cketti
377449bfac
Merge pull request #6750 from jeroen1602/thunderbird_autoconfig_fetch_crash
Fixed ThunderbirdAutoconfigFetcher throwing on IOExceptions
2023-03-14 19:43:42 +01:00
cketti
bdd3477b28 Message View: Tweak appearance of account chip 2023-03-14 18:21:22 +01:00
Jeroen1602
6a89a03082
Fixed ThunderbirdAutoconfigFetcher throwing on IOExceptions
If the requested url does not exist then the `fetchAutoconfigFile` would just crash instead of returning `null`. This would mean that the discovery code would also crash instead of trying other URLs.
2023-03-14 18:11:02 +01:00
cketti
cbea30e5b8
Merge pull request #6746 from thundernest/contact_permission
Message details: Hide "Add to contacts" button when contacts permission is missing
2023-03-14 15:57:09 +01:00
cketti
3edb93e506 Always hide "Add to contacts" button when contact permission is missing 2023-03-14 15:55:41 +01:00
Wolf-Martell Montwé
9900fd4394
Merge pull request #6757 from thundernest/change_truth_to_legacy
Change truth testing library to legacy
2023-03-14 12:38:32 +00:00
Wolf Montwé
00b7bf45d7
Change truth testing library to legacy and only allow usage in old modules 2023-03-14 12:20:55 +01:00
cketti
5ca15aeb47
Merge pull request #6752 from thundernest/message_view_account_chip
Add font size setting for account name in message view
2023-03-14 11:57:10 +01:00
cketti
23981c1af7 Add font size setting for account name in message view 2023-03-13 18:26:59 +01:00
cketti
3060e111db Only show "recent changes" snackbar for 10 seconds 2023-03-10 14:02:19 +01:00
cketti
1e7d5bf4ee Change button text of "recent changes" snackbar 2023-03-10 13:49:13 +01:00
cketti
aa1a98439b Use colorSecondary for the snackbar button text 2023-03-10 13:33:42 +01:00
cketti
c642d7615f
Merge pull request #6743 from thundernest/fab_appearance
Change appearance and behavior of the floating compose button
2023-03-10 13:08:12 +01:00
cketti
c0f787b388
Merge pull request #6728 from thundernest/move_account_chip_back
Message list: Move account chip back to align with second line
2023-03-10 13:07:10 +01:00
cketti
cf635479e9 Change appearance and behavior of the floating compose button 2023-03-09 21:48:16 +01:00
Wolf-Martell Montwé
d88ea3752d
Merge pull request #6732 from thundernest/remove_precondition
Remove Preconditions
2023-03-09 14:03:28 +00:00
Wolf Montwé
532642d8db
Remove Preconditions 2023-03-09 14:02:02 +01:00
Wolf Montwé
9cdf3e2b7a
Add ContactRepository 2023-03-09 13:48:06 +01:00
Wolf Montwé
3ed19f0011
Move CursorExtensions to :core:android:common module 2023-03-09 12:14:28 +01:00
Wolf Montwé
8b049982a9
Add ContactDataSource and Contact entity 2023-03-09 12:10:25 +01:00
Wolf Montwé
5e09e067b0
Add email value type 2023-03-07 18:12:38 +01:00
cketti
5cf4235a3d Message list: Move account chip back to align with second line 2023-03-07 13:57:10 +01:00
Wolf-Martell Montwé
7a9c373f92
Merge pull request #6725 from thundernest/change_messagehelper_to_kotlin
Change MessageHelper to Kotlin
2023-03-07 12:37:19 +00:00
Wolf Montwé
979240b6e1
Remove getInstance as instance should be controlled by dependency injection 2023-03-07 13:18:08 +01:00
cketti
4e883d2562
Merge pull request #6723 from thundernest/system_bar_colors
System bar color changes
2023-03-07 13:02:07 +01:00
Wolf Montwé
264deb98f2
Change MessageHelperTest to Kotlin 2023-03-07 09:40:32 +01:00
Wolf Montwé
5c7ede27ca
Rename MessageHelperTest.java to MessageHelperTest.kt 2023-03-07 09:40:32 +01:00
Wolf Montwé
b7bfb4006f
Remove unused context property and toMe method 2023-03-07 09:40:32 +01:00
Wolf Montwé
9fe1983c1a
Change MessageHelper to Kotlin 2023-03-07 09:40:32 +01:00
Wolf Montwé
0c299aeb7d
Rename MessageHelper from .java to .kt 2023-03-07 09:40:31 +01:00