Commit graph

1574 commits

Author SHA1 Message Date
cketti
86c517013b Add link to support forum to settings screen 2021-01-23 03:56:24 +01:00
cketti
540b77dd24 Add fragment to show the changelog 2021-01-21 08:01:41 +01:00
cketti
431f81978c Rework About screen
Add links to the website, the user forum, and the social media accounts.
2021-01-16 10:45:59 +01:00
cketti
d1f781f0e3 Change layout of library list items in About screen 2021-01-16 08:54:27 +01:00
cketti
b3ae2fe22f Clean up code for About screen 2021-01-16 08:29:14 +01:00
cketti
9d5273ee5e Remove Kotlin synthetics from About screen 2021-01-16 08:21:06 +01:00
cketti
8b5ed91629 Prepare for version 5.727 2021-01-06 07:52:11 +01:00
cketti
d29085774d Version 5.726 2021-01-06 07:42:43 +01:00
cketti
1259d372b6
Merge pull request #5085 from Monkey-Matt/fix-setup-back-navigation
Fix setup back navigation
2021-01-06 07:16:39 +01:00
cketti
a9122dfd5f Update translations 2021-01-05 19:17:22 +01:00
MonkeyMatt
835c2200c9 Change default so existing accounts continue to work
Ensure accounts made before the setup changes don't get deleted
2020-12-29 13:46:33 +13:00
MonkeyMatt
d6d3fb884e Add setup finished flag on account
Relying on account name caused faults when exiting setup flow at the last step
2020-12-29 13:12:29 +13:00
MonkeyMatt
ee6d7afc75 Allow back navigation through setup screens
Fixes setup flow and ensures an account is fully setup before being usable
2020-12-28 17:39:30 +13:00
cketti
938a265464
Merge pull request #5078 from k9mail/GH-5077_fix_FoldableLinearLayout_state_restore
Make FoldableLinearLayout.SavedState public
2020-12-23 01:15:52 +01:00
cketti
1f65982263 Make FoldableLinearLayout.SavedState public 2020-12-22 17:36:27 +01:00
MonkeyMatt
699c8408be Remove unused showPassword method 2020-12-21 15:48:31 +13:00
MonkeyMatt
c0341851fc Use TextInputLayout on setup outgoing
Also adds password visibility toggle
2020-12-21 14:11:37 +13:00
MonkeyMatt
c889259707 Use TextInputLayout in setup incoming
Adds the show password eye to setup incoming screen. Layout adjustments to account for the difference in TextInputEditText
2020-12-21 13:53:02 +13:00
MonkeyMatt
84557da148 Add show password eye to setup basic
Use TextInputEditText to handle show/hide of password rather than doing it with our own checkbox
2020-12-19 18:39:13 +13:00
Mathew Smith
9d6558adf2
Add e.email to providers 2020-12-16 22:04:28 +13:00
cketti
babf305f92 Prepare for version 5.726 2020-11-18 19:57:43 +01:00
cketti
1f586eb1aa Version 5.725 2020-11-18 19:47:26 +01:00
cketti
3fb457bb3c Update translations 2020-11-16 18:03:03 +01:00
cketti
70bbad03c7 Consider default email address in auto-complete suggestions 2020-11-16 15:53:54 +01:00
cketti
b6ba133d12 Convert 'MessageListFragment' to Kotlin 2020-11-06 14:58:22 +01:00
cketti
6d506151f3 Rename 'MessageListFragment' prior to conversion to Kotlin 2020-11-06 14:58:22 +01:00
cketti
011ac576a2 Remove MessageListFragment.context 2020-11-06 14:58:21 +01:00
cketti
32f04270fd Remove MessageListFragment.layoutInflater 2020-11-06 00:51:05 +01:00
cketti
1233675aa0 Prepare for version 5.725 2020-11-01 15:48:44 +01:00
cketti
ea01c92d1c Version 5.724 2020-11-01 15:44:13 +01:00
cketti
37c391f596
Merge pull request #5038 from k9mail/fix_message_list_loading
Don't crash when MessageListLoader couldn't retrieve any Cursors
2020-11-01 15:36:37 +01:00
cketti
413a32e0af
Merge pull request #5037 from k9mail/fix_special_folder_creation
Don't crash when special local folders already exist
2020-11-01 15:34:01 +01:00
cketti
fa9f6adb30 Fix parameter types to avoid NullPointerException 2020-11-01 15:16:19 +01:00
cketti
404edf8cab Don't crash when MessageListLoader couldn't retrieve any Cursors 2020-11-01 15:04:34 +01:00
cketti
760875bb8e Don't crash when special local folders already exist 2020-11-01 14:44:43 +01:00
cketti
f672183bee Prepare for version 5.724 2020-10-31 19:16:27 +01:00
cketti
2f564e991b Version 5.723 2020-10-31 19:11:05 +01:00
cketti
4acd304ff4 Update translations 2020-10-31 18:53:12 +01:00
cketti
7d7c198e73 Don't show recipient names in Inbox, Archive, Spam and Trash folders
Some people assign e.g. the 'Sent' role to the Inbox. In that case we need to treat the folder like the Inbox rather than the Sent folder when it comes to deciding whether or not to display the recipient address in the message list.
2020-10-31 17:57:58 +01:00
cketti
90c94dc38e
Merge pull request #5032 from k9mail/replace_groupie
Replace Groupie with FastAdapter
2020-10-31 16:09:25 +01:00
cketti
cd912fd2c0 Replace Groupie with FastAdapter 2020-10-31 15:52:42 +01:00
cketti
61e7b86a1a
Merge pull request #5031 from k9mail/message_list_kotlin
Convert MessageList to Kotlin
2020-10-31 01:44:51 +01:00
cketti
bec3cc9045 Use Koin's standard mechanism for getting dependencies in 'MessageList' 2020-10-26 17:22:45 +01:00
cketti
abf3d2a3a2 Convert 'MessageList' to Kotlin 2020-10-26 15:47:14 +01:00
cketti
ad2c37d343 Fix ThreadInfo to allow messageIdHeader being null 2020-10-25 16:48:31 +01:00
cketti
2004cfc4b1 Rename 'MessageList' prior to conversion to Kotlin 2020-10-25 14:56:16 +01:00
cketti
141bcf8f10 Hide message list footer while list is loading 2020-10-24 17:49:47 +02:00
cketti
2a6b242d40
Merge pull request #5024 from k9mail/improve_outbox
Improve Outbox
2020-10-24 16:52:35 +02:00
cketti
fcedb37035 Update folder list when moving message from Outbox to Drafts 2020-10-22 19:28:47 +02:00
cketti
000918fb06 Add "Move to Drafts" action to message view 2020-10-22 19:26:31 +02:00
cketti
a36ea7a1a3 When creating messages for sending mark them as read 2020-10-22 18:24:07 +02:00
cketti
251071c58e Don't allow messages in Outbox to be starred or marked as read via message view 2020-10-22 18:17:02 +02:00
cketti
8abcba90c0 Don't allow messages in Outbox to be starred or marked as read via message list 2020-10-22 17:36:13 +02:00
cketti
741bbe9ca8 Show number of messages in Outbox in side drawer 2020-10-22 16:57:31 +02:00
cketti
bea08ccb68 Remove EolConvertingEditText 2020-10-22 03:01:19 +02:00
cketti
fc67bc40b5 Prepare for version 5.723 2020-10-21 01:26:29 +02:00
cketti
78a70c305b Version 5.722 2020-10-21 01:11:58 +02:00
cketti
3917c102e7 Update translations 2020-10-21 00:34:33 +02:00
cketti
2b81618ad9 Remove unused constructor parameter from 'MessagingController' 2020-10-20 03:49:45 +02:00
cketti
da728ae456 Fix logging the name of pending commands 2020-10-20 03:49:45 +02:00
cketti
d5ae39565b Remove unused parameter 2020-10-20 03:45:06 +02:00
cketti
c7ed0ec8e4 Clean up 'SaveMessageTask' 2020-10-20 03:45:06 +02:00
cketti
1c57b31900 Clean up retrieving dependencies in 'MessageCompose' 2020-10-19 10:09:00 +02:00
cketti
09eb2561e9 Rename 'MessagesStoreProvider' to 'MessageStoreProvider' 2020-10-19 09:58:05 +02:00
cketti
f11b170a42 Make MessagingController.saveDraft() return message database ID 2020-10-19 09:25:56 +02:00
cketti
54e5d8af9c Change the way we replace drafts on the server
Don't overwrite the previous draft in the database. Create a new message entry and convert the previous one to a 'deleted' placeholder.
This also introduces a new pending command 'replace'. It is implemented as upload + delete.
2020-10-19 09:25:56 +02:00
cketti
1ef1af8b0f Log stack trace when pending commands fail 2020-10-18 22:01:44 +02:00
cketti
45bf5d0aef Inline constant parameter value (we always upload drafts if possible) 2020-10-18 21:53:34 +02:00
cketti
36c9e799f1 Don't use magic value when draft message ID is missing 2020-10-18 21:53:34 +02:00
cketti
1fecd0b588 Convert code to save drafts to Kotlin 2020-10-18 21:53:34 +02:00
cketti
ba8834d3f7 Make using LeakCanary in debug builds optional 2020-10-18 16:27:14 +02:00
cketti
1873593dc5 Format Kotlin code 2020-10-16 16:41:19 +02:00
cketti
ed8009d9fa Update ktlint-gradle to 9.4.1, ktlint to 0.39.0
Apply ktlint-gradle plugin to all Gradle subprojects.
2020-10-16 14:27:23 +02:00
cketti
d2fd52e206 Manually fix up formatting of some raw strings 2020-10-16 12:54:30 +02:00
cketti
40319700d8
Merge pull request #5006 from k9mail/message_id
Change the way moving messages between folders in the database works
2020-10-16 03:49:54 +02:00
cketti
a2ac5b167e Change the way moving messages between folders in the database works
Previously, when moving a message, the entry in the `messages` table was rewritten to reference the destination folder. Then a "deleted" message entry was created referencing the source folder.
This commit changes the move code to create a new entry for the message in the destination folder and then changes the original message entry to be a "deleted" entry.
It's a first step towards being able to use a message's database ID instead of the server ID in "pending commands".

This also continues the project of moving database-related code to the `storage` module. There should now be enough scaffolding in place to make moving code from `LocalStore` and `LocalFolder` relatively painless.
2020-10-15 23:51:49 +02:00
cketti
5aac50d1ee
Merge pull request #5009 from anadi198/automaticIdentityForwarding
Apply automatic identity selection for forwarding emails based on `to:` field of mail being forwarded
2020-10-15 19:04:49 +02:00
Anadi Kashyap
9a464eb6f1 Apply automatic identity selection to forwarding emails 2020-10-15 18:48:50 +02:00
Anadi Kashyap
f757ce9148 Replaced CDATA[] for unknown_recipient and unknown_sender with < and > in strings.xml 2020-10-15 21:06:17 +05:30
cketti
3921f57906
Merge pull request #5005 from k9mail/fix_urls_in_drafts
Fix URLs in drafts
2020-10-13 04:10:58 +02:00
cketti
2a67408981 Fix URLs in drafts
When converting from HTML to plain text, if the link text is identical to the link URL, only output the URL.
2020-10-13 03:57:47 +02:00
cketti
1835b502b5
Merge pull request #5001 from k9mail/no_encoding_in_MimeHeader
No encoding in MimeHeader
2020-10-13 03:54:13 +02:00
cketti
e3178a5117
Merge pull request #5003 from k9mail/show_recipient_name
Show recipient name for all messages in Sent, Drafts, and Outbox folders
2020-10-13 03:41:10 +02:00
cketti
57bde56e16
Merge pull request #5002 from k9mail/long_subjects
Display up to 3 lines of the subject by default
2020-10-13 03:37:12 +02:00
cketti
5bc7ac3901 When constructing new messages check header values 2020-10-13 03:29:20 +02:00
cketti
733624cfcf
Merge pull request #4998 from k9mail/fix_EmailSectionExtractor
Fix EmailSectionExtractor
2020-10-13 03:17:28 +02:00
cketti
b7dc6d9146
Merge pull request #4996 from k9mail/improve_http_uri_detection
Improve HTTP URL detection
2020-10-13 03:13:55 +02:00
cketti
604c87b130 Always show contact picture of sender in message view 2020-10-12 01:48:36 +02:00
cketti
5f05b8bb07 Show sender/recipient name in message list based on folder
The recipient name is shown for messages in the Sent, Drafts, and Outbox folders. For messages in all other folders the sender name is shown.
2020-10-12 01:48:36 +02:00
cketti
427aecb2ab Remove unused properties from MessageListItem 2020-10-12 00:06:05 +02:00
cketti
9227206872 Display up to 3 lines of the subject by default
Clicking the subject text will toggle between showing all lines and 3 lines max.
2020-10-11 23:06:51 +02:00
cketti
fac346009a Only pass encoded headers to MimeHeader
Remove code to encode header values from from MimeHeader.writeTo()
2020-10-11 02:28:36 +02:00
cketti
82f8a78e88 EmailSectionExtractor: Don't consider blank lines for indentation depth 2020-10-10 01:49:13 +02:00
cketti
955f556afa Fix EmailSectionExtractor to support empty quoted lines 2020-10-10 00:36:07 +02:00
cketti
2c95b7df65
Merge pull request #4994 from k9mail/message_batch_actions
Don't show archive or spam action when displaying the corresponding folder
2020-10-09 22:58:49 +02:00
cketti
ea7ca6e3d4 Make HTTP URL detection work with parentheses 2020-10-09 04:29:02 +02:00
cketti
b1d21dc27c Clean up 'HttpUriParser'
There shouldn't be any functional changes.
2020-10-09 02:33:11 +02:00
cketti
76e43a411d Convert 'HttpUriParser' to Kotlin 2020-10-09 00:52:18 +02:00
cketti
e4297b3a4c Rename 'HttpUriParser' prior to conversion to Kotlin 2020-10-09 00:37:51 +02:00
cketti
617dd1641e Don't show archive or spam action when displaying the corresponding folder 2020-10-08 22:56:05 +02:00
cketti
3b7c5ea10f Display message headers in the original order 2020-10-08 16:16:50 +02:00
cketti
8685da31d4 Prepare for version 5.722 2020-10-07 17:51:43 +02:00
cketti
e7bcfe7e3e Version 5.721 2020-10-07 17:07:23 +02:00
cketti
68405c91b4
Merge pull request #4991 from k9mail/signature_detection_fix
Fix bug in signature detection
2020-10-07 16:54:44 +02:00
cketti
4fbe07ed1c
Merge pull request #4989 from k9mail/copy_link_text
Add "copy link text to clipboard" option when long-pressing links
2020-10-07 16:49:19 +02:00
cketti
1a58f4d4f0 Fix bug in signature detection
When SignatureWrapper detected a signature it would exclude the last character of the text. This lead to an exception being thrown when the signature ended with a URL and the HtmlModification instance for the URL would not be fully contained within the one for the signature.
2020-10-07 15:43:29 +02:00
cketti
4fd51cf313 Add "copy link text to clipboard" option when long-pressing links 2020-10-07 02:04:53 +02:00
cketti
5312c3d1ca Treat all whitespace as separator when detecting URIs 2020-10-06 22:39:04 +02:00
cketti
378c90b46e Prepare for version 5.721 2020-10-06 20:29:06 +02:00
cketti
6c097b47da Version 5.720 2020-10-06 20:21:55 +02:00
cketti
388a7f263e Add zero-width space to changelog version values
For some reason version attributes like "5.700" are displayed as "5.7". We work around that by adding a zero-width space at the end.
2020-10-06 20:21:55 +02:00
cketti
08b6952382 Only keep resources for languages supported in K-9 Mail
This will strip strings of unsupported languages provided by libraries.
2020-10-06 19:41:18 +02:00
cketti
0c77513407
Merge pull request #4986 from k9mail/GH-4984_fix_preview_text_extraction
Fix preview text extraction
2020-10-06 16:11:40 +02:00
cketti
b8edb11eea
Merge pull request #4983 from k9mail/signature_display
De-emphasize signature when displaying text/plain part
2020-10-06 16:10:07 +02:00
cketti
e3b8855bdd Catch unexpected exceptions in MessagePreviewCreator 2020-10-06 15:15:19 +02:00
cketti
15ca949698 Make PreviewTextExtractor work with empty string 2020-10-06 15:11:02 +02:00
cketti
ca5a044247 De-emphasize signature when displaying text/plain part 2020-10-05 18:27:10 +02:00
cketti
7d6ca63cf2 Add support for nested HtmlModifications to TextToHtml 2020-10-05 18:13:55 +02:00
cketti
3133573139 Rewrite Share functionality in message view screen
The shared text now contains subject, date, sender, and recipients in addition to the message body text.
2020-10-05 05:38:54 +02:00
cketti
d38dd84e88 Exclude 'DebugProbesKt.bin' from APK 2020-10-04 21:51:17 +02:00
cketti
145c048326 Prepare for version 5.720 2020-10-04 20:19:45 +02:00
cketti
d541eaef51 Version 5.719 2020-10-04 19:12:01 +02:00
cketti
2c4744da60 Update translations 2020-10-04 18:33:09 +02:00
cketti
a5ef3f8b3c
Merge pull request #4964 from AlexKDawson/4936-bug/user-selected-account-lost
User selected Account is lost on screen rotation when setting up "Unread" widget
2020-10-03 18:27:23 +02:00
Alex Dawson
c671c84191 Persist state in unread widget configuration during screen rotation 2020-10-03 18:11:14 +02:00
cketti
8dd8881ab5
Merge pull request #4967 from k9mail/improve_preview_extraction
Improve preview text extraction
2020-10-03 03:41:52 +02:00
cketti
a1e9a521e3 Replace somewhat complex regular expression with code
Apparently the regular expression \n*(?:[^\n]+\n?)+:\n+$ is complex enough so matching takes the regex engine on Android forever on non-trivial inputs.
2020-10-03 02:28:48 +02:00
cketti
99ce09f19d Improve preview text extraction
Using 'EmailSectionExtractor' provides the necessary context to reliably detect quote headers, i.e. text like "On $date $sender wrote:". The regular expression previously used would remove almost any line ending with ":".
2020-10-03 02:28:48 +02:00
cketti
19eb78de30 Small code cleanup 2020-10-02 19:03:26 +02:00
starshipcoder
7f32c9e0d8 In recipient contact selection, display favorites first
Fix: sorting was case sensitive
2020-10-02 19:03:26 +02:00
cketti
6a25709e09 Convert 'PreviewTextExtractorTest' to Kotlin 2020-09-30 03:00:20 +02:00
cketti
4c08c964e7 Rename 'PreviewTextExtractorTest' prior to conversion to Kotlin 2020-09-30 03:00:20 +02:00
cketti
bb4ed7a15c Convert 'PreviewTextExtractor' to Kotlin 2020-09-29 23:31:24 +02:00
cketti
ab4e0229dc Rename 'PreviewTextExtractor' prior to conversion to Kotlin 2020-09-29 23:22:15 +02:00
cketti
5cec85cb15
Merge pull request #4958 from k9mail/GH-3653_fix_search_crash
Return empty result when EmailProvider query fails
2020-09-23 15:57:25 +02:00
cketti
172f98cd8c
Merge pull request #4952 from k9mail/GH-4951_fix_HtmlSanitizer
Add some HtmlSanitizer exceptions
2020-09-23 15:55:14 +02:00
cketti
7992be9068 Return empty result when EmailProvider query fails
In developer mode we still crash for all errors except for malformed MATCH expressions (which are rather easy to generate given that we pass user input to SQLite).
2020-09-22 18:13:28 +02:00
cketti
bedf26d19b
Merge pull request #4931 from GNUDimarik/issue_4914
Use correct OpenPGP key when sending signed-only email
2020-09-20 19:27:43 +02:00
cketti
b82be6f374 Retain some attributes of <body> element during HTML sanitization 2020-09-20 18:01:00 +02:00
cketti
10ce58d603 Add <title> tag to allow list 2020-09-20 17:42:35 +02:00
cketti
ec34b96bfa Convert 'HtmlSanitizerTest' to Kotlin 2020-09-20 17:42:35 +02:00
cketti
796eabb705 Rename 'HtmlSanitizerTest' prior to conversion to Kotlin 2020-09-20 17:42:35 +02:00
cketti
fc45e059fc Update to targetSdkVersion 29 2020-09-20 01:29:50 +02:00
cketti
391d8e403c Use mocked QuoteDateFormatter in TextQuoteCreatorTest 2020-09-20 01:08:39 +02:00
cketti
fd9d6f8d95 Use default Locale in QuoteDateFormatter 2020-09-20 01:04:33 +02:00
cketti
2db24bec08 Change QuoteHelper into QuoteDateFormatter 2020-09-19 20:44:54 +02:00
cketti
075fb35cd9 Get rid of QuoteHelper.QUOTE_BUFFER_LENGTH 2020-09-19 19:51:13 +02:00
cketti
e79dacd126 Use buildString() helper in TextQuoteCreator 2020-09-19 19:27:56 +02:00
cketti
0c97e2a4e0 Update Robolectric to 4.4
Replace usage of classes from transitive dependencies that are no longer available.
2020-09-18 03:14:46 +02:00
cketti
05882616d6 Update MiniDNS to 1.0.0 2020-09-18 02:42:07 +02:00