Commit graph

124 commits

Author SHA1 Message Date
Wolf-Martell Montwé
8ef49ee956
Rename containsAll to containsAtLeast 2024-01-03 15:02:16 +01:00
cketti
2160a759e4 Don't start ImapBackendPusher when the app doesn't have permission to schedule exact alarms 2023-12-01 15:23:14 +01:00
cketti
397a06131e Add "Show only subscribed folders" setting to folders section 2023-08-16 12:04:05 +02: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é
06bbeded6f
Change :backend:imap module to assertk 2023-03-21 14:05:50 +01: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
Wolf Montwé
22d8e4b924
Change build files from Groovy to Kotlin 2023-02-23 14:52:16 +01:00
Wolf Montwé
96e2784b22
Rename build.gradle files to build.gradle.kts 2023-02-23 14:52:15 +01:00
Wolf Montwé
29d5220995
Add trailing comma allowance to code style 2023-02-17 16:14:13 +01:00
Wolf Montwé
45da12646b
Change to jvm build plugin 2023-02-15 17:40:57 +01:00
Wolf Montwe
1854a2c911
Change Kotlin code format 2023-02-03 17:23:57 +01:00
cketti
5220c66d61 Remove Backend.isDeleteMoveToTrash()
This property is confusing and basically unused right now.
2023-01-26 12:08:26 +01:00
cketti
1052bd07c7 Rename some Gradle version catalog entries 2023-01-16 14:49:14 +01:00
Bastian Wilhelm
a3f6995a2e Migrate to Gradle's version catalog 2023-01-16 14:49:14 +01:00
klemens
6d528918a1 spelling fixes 2023-01-04 21:00:41 +01:00
Goooler
d4055ea252 Configure java extensions in allprojects 2022-12-07 19:04:23 +01:00
cketti
8b21092cc2 Convert :backend:* to JVM modules 2022-09-17 14:53:04 +02:00
cketti
a807373e99 Make sure overridden methods use same parameter names as super class 2022-08-09 17:28:43 +02:00
cketti
556188efcc Properly report progress when receiving multiple FETCH responses per message 2022-03-05 02:04:14 +01:00
cketti
9dd076686b Remove unnecessary/unused method parameters 2022-03-05 01:20:23 +01:00
cketti
1d5a291ac7 Don't reuse FetchProfile instance 2022-03-05 00:11:16 +01:00
cketti
f6454121f0 IMAP: Log number of downloaded messages (instead of unread) 2022-03-04 23:51:23 +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
cketti
b6f549215d Use BackendFolder.setFolderExtraNumber() to remember highest known UID 2022-01-05 20:21:58 +01:00
cketti
4ab0dff096 Rewrite ImapSyncTest to use less Mockito 2022-01-05 20:21:58 +01:00
cketti
61046ef0fd Update Mockito (Kotlin) to version 4.0.0 2021-10-30 05:32:51 +02:00
cketti
e9c45b4aa8 Disable Push if not supported by the server 2021-08-02 18:49:06 +02:00
cketti
95ecac8893 Close all Push connections when Android connects to another network
When the default network changes Android usually kills connections established over the old network after a little while. K-9 Mail treats this as a regular network error and sleeps for 5 minutes before trying to re-establish the Push connection(s). Closing old connections and opening new ones when a network change is detected avoids this error.
2021-07-04 21:27:38 +02:00
cketti
ebbe02c057 Add ImapPushConfigProvider 2021-06-23 15:34:31 +02:00
cketti
aa9f6eaefa Add IdleRefreshTimeoutProvider 2021-06-23 14:02:07 +02:00
cketti
8fea80f14c Add PushController implementation 2021-06-22 15:30:23 +02:00
cketti
a74c206a0c Add implementation for BackendIdleRefreshManager 2021-06-16 15:04:01 +02:00
cketti
c8808ae447 Add ImapBackendPusher that manages multiple ImapFolderPusher instances 2021-06-13 00:51:23 +02:00
cketti
d62aa030c9 Add BackendPusher interface 2021-06-13 00:36:34 +02:00
cketti
ca13a32fec Add ImapFolderPusher to listen for changes to an IMAP folder 2021-06-12 21:09:30 +02:00
cketti
94f630cf88 Introduce ImapStore interface 2021-06-10 21:00:58 +02:00
cketti
ededa33ff2 Use enum class for ImapFolder.open() argument 2021-06-09 16:15:12 +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
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
1f2404557b Migrate storeUri/transportUri to new server settings format 2021-02-01 17:30:21 +01:00
cketti
08d6d9bebc Delete remaining store/transport URI functionality 2021-02-01 17:30:21 +01:00
cketti
69ed32ff8a Convert 'ServerSettings' to Kotlin 2021-02-01 10:39:19 +01:00
cketti
42e180d6fa Make ImapStore use ServerSettings directly
Instead of using ImapStoreSettings as a ServerSettings subclass make it a helper to extract IMAP-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
9234b16c13 Convert 'ImapSync' to Kotlin 2020-08-27 22:35:36 +02:00
cketti
4dbb1ffaa0 Rename 'ImapSync' prior to conversion to Kotlin 2020-08-27 22:35:36 +02:00