cketti
d69c1f4c46
Add simple logging abstraction
...
Once there's a JVM artifact for Timber, hopefully all we have to do is replace the imports again.
2022-05-02 02:44:35 +02:00
cketti
ff48609b6f
Remove CertificateValidationException
's dependency on the Android SDK
2022-05-02 02:44:34 +02:00
cketti
c61dc117d2
Replace usage of android.text.util.Rfc822Token[izer]
in Address
...
At some point we need to clean up our email address parser mess. But for now we just copy Android's implementation of `Rfc822Token` and `Rfc822Tokenizer`.
2022-05-01 23:54:29 +02:00
cketti
2abe7d2b9f
Replace usage of android.text.TextUtils
in Address
2022-05-01 23:22:00 +02:00
cketti
0a05802843
Use our standard read/connect timeouts in SmtpTransport
2022-05-01 01:25:05 +02:00
cketti
906cc19b6e
Replace usage of JSONObject
with Moshi
2022-04-28 23:23:44 +02:00
cketti
4b1dc23ebb
Remove unused code from OAuth2TokenProvider
2022-04-28 22:39:39 +02:00
cketti
7f343e4fd1
Move DefaultTrustedSocketFactory
2022-04-28 22:18:14 +02:00
cketti
e2609f3a46
Move MailTo
and ListHeaders
classes
2022-04-28 18:56:53 +02:00
Bastian Wilhelm
d71e5b40ac
Replace AndroidX annotations with the ones from JetBrains
2022-04-28 14:52:48 +02:00
cketti
ef8d9abed3
Rewrite FlowedMessageUtils.deflow()
...
This new version should use a lot less allocations.
2022-04-22 16:28:47 +02:00
cketti
f7b6b8371f
Rename .java to .kt
2022-04-22 16:28:44 +02:00
cketti
77227b3290
Merge pull request #6030 from k9mail/fix_format_flowed
...
Fix bug in `FlowedMessageUtils.deflow()`
2022-04-22 16:27:28 +02:00
cketti
2f78315cb4
Fix bug in FlowedMessageUtils.deflow()
...
Properly handle the case when a quoted flowed line is followed by an empty line.
2022-04-21 02:56:00 +02:00
cketti
60baf4bd5b
Reformat FlowedMessageUtils.deflow
2022-04-21 00:50:44 +02:00
cketti
9b00bccb2c
Add tests for FlowedMessageUtils
2022-04-21 00:50:42 +02:00
cketti
a796b1d941
Change IMAP code to use single compression setting
2022-04-12 21:58:15 +02:00
cketti
a11c993491
Add support for duplicate "charset" parameters with matching values
2022-03-11 01:54:17 +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
a4e1a77892
Switch to mockito-inline
2022-02-03 01:10:52 +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
878400c15f
Explicitly specify locale in case conversion or string formatting
2021-11-26 15:43:28 +01:00
Tobias Preuss
f0d3f371f0
Avoid leaking CountingOutputStream.
...
+ Affects com.fsck.k9.mail.filter.CountingOutputStream.
2021-11-23 09:45:05 +01:00
cketti
9861fc4d5a
Take special care when decoding encoded words with charset ISO-2022-JP
2021-11-03 14:00:29 +01:00
cketti
94548c11a8
Convert DecoderUtil to Kotlin
2021-11-03 11:56:23 +01:00
cketti
abc2f263da
Rename .java to .kt
2021-11-03 11:56:23 +01:00
cketti
f564d0247c
Merge branch '5.8-MAINT' into main
2021-08-30 21:13:42 +02:00
cketti
32aefc2795
Fix ServerSettings.isMissingCredentials
...
We support SMTP without authentication and in that case set the username to the empty string :(
2021-08-28 03:13:21 +02:00
cketti
6084321bde
Update Kotlin to 1.5.30
...
Replace calls to deprecated stdlib functions
2021-08-26 17:44:49 +02:00
cketti
c2ae85e2ec
Convert FormatFlowedHelper to Kotlin and change API
2021-08-22 17:04:16 +02:00
cketti
108cdfb327
Rename .java to .kt
2021-08-22 16:53:44 +02:00
cketti
9ee3a76ef1
Move format=flowed decoding to MessageExtractor
2021-08-22 16:20:15 +02:00
cketti
6c2f4b6354
Rename FlowedMessageUtils to FormatFlowedHelper
2021-08-22 15:46:26 +02:00
cketti
766cf838e0
Merge pull request #5578 from k9mail/ignore_chat_messages
...
Add setting to suppress notifications for chat messages
2021-08-21 21:26:45 +02:00
cketti
0ad8ce2c0d
Fix check for missing incoming/outgoing server credentials
2021-08-19 23:09:39 +02:00
cketti
652d52b6a6
Add setting to suppress notifications for chat messages
...
Messages containing a 'Chat-Version' header field will not generate notifications when this setting is enabled.
2021-08-18 11:17:06 +02:00
cketti
4a65c5b4a0
Improve logging in MessageExtractor.getTextFromPart()
2021-06-02 00:49:23 +02:00
cketti
769d658e5a
Correctly persist message download state
...
Add the flag X_DOWNLOADED_FULL when the message has been downloaded completely, the flag X_DOWNLOADED_PARTIAL when only the text of a message has been downloaded, and set no additional flag when only the envelope and structure of the message has been downloaded. The latter happens when we fetch remote search results.
2021-05-10 00:47:27 +02:00
cketti
5444d8be3a
Remove explicit dependency on Kotlin's standard library
2021-04-22 03:54:15 +02:00
cketti
632d8f3cb7
Upgrade Mockito-Kotlin to 3.1.0
2021-04-22 03:54:15 +02:00
cketti
428ae60a58
Split Backend.fetchMessage() into two methods
...
The two new methods now also save the downloaded message data instead of returning a Message instance.
MessageStore.saveRemoteMessage() will now replace a message if it already exists.
2021-04-17 00:04:58 +02:00
cketti
24f55ee03e
Add test for RetrieveMessageOperations.getHeaders()
2021-04-01 01:32:46 +02:00
cketti
0e1ff7d6b1
Remove LocalKeyStore's dependency on Android's Context
...
And lazily initialize the KeyStore so we're not doing any work when the instance is created.
2021-03-30 22:08:06 +02:00
cketti
bb1c9c32be
Convert 'LocalKeyStore' to Kotlin
2021-03-30 22:06:12 +02:00
cketti
ac0a2525f7
Rename .java to .kt
2021-03-30 21:34:28 +02:00
cketti
f47862d789
Add tests for LocalKeyStore
2021-03-30 21:34:28 +02:00
cketti
00f13c0c8e
Pass keystore directory as File instance to LocalKeyStore
2021-03-30 20:03:13 +02:00
mehdisadeghi
a0b160c7cd
Add support for In-Reply-To parameter in mailto: URIs ( #5194 )
2021-03-09 15:32:30 +01:00
cketti
a205920510
Add 'MessageIdParser'
...
Can be used to parse the value of 'Message-ID', 'In-Reply-To', and 'References' header fields.
2021-03-05 18:45:21 +01:00
cketti
06de64cd2c
Make MessageHeaderParser more flexible
2021-02-20 13:28:15 +01:00
cketti
33d06a5ac9
Convert 'MessageHeaderParser' to Kotlin
2021-02-18 17:49:23 +01:00
cketti
224d56526e
Rename .java to .kt
2021-02-18 17:49:22 +01:00
cketti
69ed32ff8a
Convert 'ServerSettings' to Kotlin
2021-02-01 10:39:19 +01:00
cketti
2338381de1
Rename .java to .kt
2021-01-31 18:50:14 +01:00
cketti
1ebc487b56
Don't use custom ServerSettings subclass in SettingsImporter
2021-01-31 18:50:14 +01:00
cketti
97051f3f7c
Make WebDavStore use ServerSettings directly
...
Instead of using WebDavStoreSettings as a ServerSettings subclass make it a helper to extract WebDav-specific settings.
2021-01-31 18:50:14 +01: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
5bc7ac3901
When constructing new messages check header values
2020-10-13 03:29:20 +02:00
cketti
8663bbb5b9
Check (unstructured) header field syntax when adding them to MimeHeader
2020-10-13 03:29:20 +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
3b7c5ea10f
Display message headers in the original order
2020-10-08 16:16:50 +02:00
cketti
3c0d9b99f9
Remove unused Message.setCharset() mechanism
2020-10-04 23:33:31 +02:00
cketti
2a3cc1d422
Don't pass charset to EncoderUtil.encodeEncodedWord()
2020-10-04 23:30:23 +02:00
cketti
267c658492
Only consider US-ASCII and UTF-8 in EncoderUtil.determineCharset()
2020-10-04 23:30:23 +02:00
cketti
357e197256
Remove remaining (non-working) 'androidTest' tests
2020-10-04 23:11:42 +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
3211e3942c
Show image previews even when wrong MIME type is used
...
More precisely, show image preview when the MIME type is application/octet-stream and the file extension maps to a supported image MIME type.
2020-09-09 12:16:03 +02:00
Tobias Preuss
f8e6e59fd6
Use io extension functions to make code more concise.
...
+ This change replaces a few usages of BufferedWriter, ByteArrayInputStream,
OutputStreamWriter with their equivalent Kotlin extension functions.
2020-08-24 19:22:29 +02:00
Tobias Preuss
9c6d08142a
Infer type.
2020-07-08 13:58:23 +02:00
cketti
4b8d6bf50c
Replace 'blacklisted' with 'disallowed'
2020-06-02 17:15:51 +02:00
cketti
4e2ae11238
Don't select charset depending on the recipient address
...
It's 2020. We now always use UTF-8 for outgoing emails.
2020-05-27 03:07:29 +02:00
cketti
767f7e0efe
Remove StoreConfig
2020-05-01 05:42:50 +02:00
cketti
82db38bd08
Create ImapStoreConfig
2020-05-01 05:30:34 +02:00
cketti
a6f75dc587
Remove StoreConfig.getMaximumAutoDownloadMessageSize()
2020-05-01 05:15:51 +02:00
cketti
d7d1fe0c0e
Remove StoreConfig.isRemoteSearchFullText()
2020-05-01 04:18:16 +02:00
cketti
1858986fc4
Remove StoreConfig.isAllowRemoteSearch()
2020-05-01 04:03:02 +02:00
cketti
88bcea1552
Remove StoreConfig.getOutboxFolder()
2020-05-01 03:36:42 +02:00
cketti
fcfc7e6a22
Remove unused method StoreConfig.getInboxFolder()
2020-05-01 03:31:11 +02:00
cketti
d70564e423
Remove unused code
2020-04-18 19:51:48 +02:00
cketti
a44732ee38
Remove FolderClass.NONE
...
Rewrite entries in the database to use FolderClass.NO_CLASS
2020-04-08 19:33:03 +02:00
cketti
61f3f06ba7
Merge pull request #4641 from k9mail/remove_old_push_code
...
Remove old push code
2020-04-06 19:21:53 +02:00
cketti
2a78418911
Remove old Push code
2020-04-05 20:08:29 +02:00
cketti
59630fb13b
Change appearance of attachment boxes in message compose screen
2020-04-05 03:40:24 +02:00
cketti
f1b73a11b9
Convert 'MessageIdGeneratorTest' to Kotlin
2020-03-29 22:24:11 +02:00
cketti
576696e87e
Change fallback hostname for Message-ID to "fallback.k9mail.app"
2020-03-29 22:14:00 +02:00
cketti
ab0aae46c4
Extract interface for UUID generation
2020-03-29 22:10:20 +02:00
cketti
9ef845fda5
Convert 'MessageIdGenerator' to Kotlin
2020-03-29 22:00:03 +02:00
cketti
c71b1f0699
WIP: Renaming file 'MessageIdGenerator' with Kotlin extension
2020-03-29 21:49:11 +02:00
cketti
cfed7b0c08
Don't use android.net.MailTo in ListHeaders
2020-03-28 21:57:04 +01:00
cketti
b0aa07aef9
Move MailTo class to :mail:common module
2020-03-28 21:39:04 +01:00
cketti
982013ded4
Make sure Part.getMimeType() returns a valid MIME type
2020-03-24 02:29:01 +01:00
cketti
7918ffad85
Add MimeType class
2020-03-24 01:53:06 +01:00
cketti
c4ab630161
Remove 'androidTest' tests
...
We don't regularly run them and most of them don't even compile anymore.
2020-03-11 18:01:41 +01:00
cketti
e4cc7b9a91
Merge pull request #4575 from k9mail/MimeMessage_setReplyTo
...
Use AddressHeaderBuilder for MimeMessage.setReplyTo()
2020-03-02 14:33:49 +01:00
cketti
4325509d43
Use AddressHeaderBuilder for MimeMessage.setReplyTo()
2020-02-29 22:50:07 +01:00
cketti
916015b1f0
Convert 'MimeHeader' to Kotlin
2020-02-29 21:29:46 +01:00
cketti
21891f1d1d
WIP: Renaming file 'MimeHeader' with Kotlin extension
2020-02-29 18:27:13 +01:00
cketti
eccf4738b6
Get rid of 'm' prefix in MimeHeader fields
2020-02-29 18:26:18 +01:00