Commit graph

151 commits

Author SHA1 Message Date
cketti
dec364f062 Convert 'ImapBackend' to Kotlin 2020-08-27 22:35:36 +02:00
cketti
66347ff77e Rename 'ImapBackend' prior to conversion to Kotlin 2020-08-26 14:29:28 +02:00
cketti
83956aa502 Update OkHttp to 4.8.0 2020-07-15 17:51:31 +02:00
cketti
976590e190
Merge pull request #4840 from k9mail/convert_to_kotlin
Convert ImapFolder(Test) to Kotlin
2020-06-19 17:35:36 +02:00
cketti
dc119f9068 Convert 'ImapFolder' to Kotlin 2020-06-18 14:44:26 +02:00
cketti
14bf32cea4 Rename Backend.supportsSeenFlag to supportsFlags 2020-06-17 14:45:41 +02:00
cketti
4914ac589f Fix IMAP folder refresh
We were using the old format server ID (UTF-7 decoded, with prefix removed)
to create and update folders. But we used the proper server ID to figure out
which folders to remove locally. This could lead to too many folders being
removed. They'd be added back the next time the folder list was refreshed
and then be removed again the next refresh after that.
2020-05-12 12:05:14 +02:00
cketti
767f7e0efe Remove StoreConfig 2020-05-01 05:42:50 +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
7ac210956a Change List<? extends Message> to List<WebDavMessage> where appropriate 2020-04-27 18:37:10 +02:00
cketti
db7760a9e2 Change List<? extends Message> to List<Pop3Message> where appropriate 2020-04-27 18:37:10 +02:00
cketti
d3bdebccf3 Change List<? extends Message> to List<ImapMessage> where appropriate 2020-04-27 18:37:10 +02:00
cketti
e86f294a0f Change the BackendStorage API to add/update/remove folders
This way the code to update special folders only runs once, and not on
every change.
2020-04-27 06:44:26 +02:00
cketti
8abac750af Make ImapStore.getFolders() return the proper server ID 2020-04-24 22:00:10 +02:00
cketti
37eea88f82 Refactor ImapStore.getPersonalNamespaces() 2020-04-24 20:33:22 +02:00
cketti
d70564e423 Remove unused code 2020-04-18 19:51:48 +02:00
cketti
2a78418911 Remove old Push code 2020-04-05 20:08:29 +02:00
cketti
0554dfcd04 Clear local message cache when UIDVALIDITY value changes 2020-03-31 22:20:46 +02:00
cketti
2a8d094343 JMAP: Add support for uploading messages 2020-02-25 19:00:18 +01:00
cketti
3bde957b0c JMAP: Add support for copying/moving emails 2020-02-22 19:36:00 +01:00
cketti
72335a2c2d
Merge pull request #4548 from k9mail/jmap_delete
JMAP: Add support for deleting messages
2020-02-19 10:34:31 +01:00
cketti
d44bdfdb73 JMAP: Don't delete message only to download it again right away 2020-02-18 17:43:15 +01:00
cketti
a2f1487ba5 JMAP: Add support for deleting messages 2020-02-18 16:47:33 +01:00
cketti
94ce631f7d
Merge pull request #4545 from k9mail/jmap_set_flag
JMAP: Add support for setting flags/keywords
2020-02-18 16:46:40 +01:00
cketti
5b4376e90f JMAP: Implement Backend.markAllAsRead() 2020-02-18 03:06:00 +01:00
cketti
1deed00f45 JMAP: Implement Backend.setFlag() 2020-02-18 03:04:11 +01:00
cketti
d9abc13a1e Don't limit Mailbox/get call to changed properties
BackendStorage currently doesn't support partial updates.
2020-02-18 01:04:01 +01:00
cketti
6a0a5c8f88 Update jmap-client library to version 0.3.0 2020-02-17 18:44:52 +01:00
cketti
5693c898f6 Add JMAP message flags/keywords sync 2020-02-17 01:30:12 +01:00
cketti
b78c2e295e Add JMAP message sync (part 2) - delta sync 2020-02-14 00:16:34 +01:00
cketti
ab7feffa68 Add JMAP message sync (part 1)
This only supports doing a full sync and downloading complete messages.
2020-02-12 19:12:11 +01:00
cketti
611a57fb0e Remove now unused folder name from SyncListener callbacks 2020-02-05 01:27:06 +01:00
cketti
2a760ef4bb Remove local folder handling from Backend implementations 2020-02-04 19:58:24 +01:00
cketti
77ff9ea9ba Remove unused method BackendFolder.getUnreadMessageCount() 2020-02-04 18:17:22 +01:00
cketti
35da218170 Make WebDavFolder no longer extend Folder
This highlighted that a bunch of code in backend-webdav was unused.
2020-01-28 16:22:09 +01:00
cketti
579027e66c Make Pop3Folder no longer extend Folder
This highlighted that a bunch of code in backend-pop3 was unused.
2020-01-26 23:35:25 +01:00
cketti
76bc52beef Make ImapFolder no longer extend Folder 2020-01-26 23:35:25 +01:00
cketti
b99d445736 Remove unused message counts from MessagingListener.synchronizeMailboxFinished() 2020-01-22 17:16:06 +01:00
cketti
aeef338efd Remove unread count from MessagingListener.folderStatusChanged() 2020-01-22 17:02:16 +01:00
cketti
320cc8b40b Add UI to add a JMAP account to the app 2020-01-18 21:14:57 +01:00
cketti
0b21a7521d Add JMAP folder sync 2020-01-15 16:14:16 +01:00
cketti
65201633e8 Add JMAP backend module 2020-01-15 16:14:16 +01:00
cketti
2d470c73a0 Move FolderType and FolderClass out of Folder 2020-01-09 14:08:41 +01:00
ByteHamster
7b9f44ca1e Added function to move to trash and read to backend 2020-01-08 18:48:28 +01:00
cketti
5494e106c8 Use ImapMessage/ImapFolder instead of Message/Folder in ImapSync 2019-12-18 01:53:12 +01:00
cketti
84327e085d Don't pass Folder instance to Backend 2019-12-18 01:21:12 +01:00
cketti
b8b6b0497d Remove age checks when downloading messages
We already filter by age when deciding which messages to download.
2019-12-17 02:59:14 +01:00
cketti
876cabad70 Open connection before attempting to download message via POP3 2019-12-12 01:13:13 +01:00
cketti
b04ea348fc Remove now unused method parameters 2019-12-01 15:06:28 +01:00
cketti
b1faba725f Remove LocalFolder.purgeToVisibleLimit()
The method was only called at the end of a mailbox sync. But during sync
another mechanism already destroyed messages outside of the sync window.
2019-12-01 15:06:27 +01:00
cketti
93d0e14b68 Fix code style issues found by ktlint 2019-11-29 13:44:00 +01:00
cketti
88d863c4c2 Add ktlint and Kotlin code style settings for Android Studio 2019-11-29 13:39:16 +01:00
cketti
57ff989edd Add kotlinOptions.jvmTarget to Gradle projects using Kotlin 2019-11-17 14:45:05 +01:00
cketti
e3973096d3 Remove Checkstyle 2019-11-13 16:51:52 +01:00
cketti
56a37d9e14 Remove FindBugs
It's not maintained anymore and we're not currently using it.
2019-11-13 16:41:51 +01:00
cketti
105622a999 Use variable for 'sourceCompatibility' and 'targetCompatibility' values 2019-11-13 16:26:29 +01:00
cketti
91e5f629fd Add deleteMessages() method to Backend interface 2019-03-10 23:56:42 +01:00
cketti
932f5f2ddc Add 'isDeleteMoveToTrash' flag to Backend 2019-01-22 18:52:06 +01:00
cketti
aecdbf5a6a Add FolderType support to WebDavStore + WebDavBackend 2018-11-13 16:57:32 +01:00
cketti
cea3c41269 Add FolderType support to ImapStore + ImapBackend 2018-11-13 16:57:32 +01:00
cketti
4847c0fa31 Add FolderType support to (K9)BackendStorage 2018-11-13 16:57:32 +01:00
cketti
0351dc8694 Hide 'upload sent messages' setting when Backend doesn't support uploads 2018-09-04 18:05:03 +02:00
cketti
56882dc6c3 Fix unresolved references in Javadoc comments 2018-09-03 00:13:58 +02:00
BO41
c043eb0df4 Replace explicit type arguments with <> 2018-09-02 23:35:09 +02:00
BO41
f24cb76d9e Improve accessibility, correctness and performance 2018-09-02 22:49:48 +02:00
cketti
9514086513 Open remote folder before fetching message 2018-08-20 18:18:44 +02:00
cketti
de49c9d6c2 Move folder list sync logic into Backend implementations 2018-07-22 18:34:16 +02:00
cketti
87132562f8 Remove unused parameter 2018-07-22 18:31:41 +02:00
cketti
b35074315c
Merge pull request #3519 from k9mail/add_folder_extra_values
Allow backend code to store additional per-account and per-folder data
2018-07-22 18:21:51 +02:00
cketti
5104780468 Update BackendStorage to allow getting/setting extra values 2018-07-22 18:06:21 +02:00
cketti
0af83029cc Change ServerSettings#type to a String 2018-07-19 12:40:57 +02:00
cketti
50e955d2da Remove default port information from ServerSettings.Type 2018-07-18 19:25:43 +02:00
cketti
7ca3806c33 Remove knowledge of store URI from :mail:protocols:webdav module 2018-07-17 21:33:04 +02:00
cketti
9cb5c70e4b Remove knowledge of store URI from :mail:protocols:pop3 module 2018-07-17 20:39:18 +02:00
cketti
f046313d98 Remove knowledge of store URI from :mail:protocols:imap module 2018-07-17 20:39:18 +02:00
cketti
fe8477cd9b Make k9mail module specify which Backend implementations to include 2018-07-15 20:45:05 +02:00
cketti
6bb8805aa9 Update BackendFolder to allow getting/setting extra folder values 2018-07-15 15:29:52 +02:00
cketti
e2c09e4155 Make account setup code use Backend to check outgoing server settings 2018-07-11 19:57:51 +02:00
cketti
a63fcfd7fc Rename Backend.checkServerSettings() to checkIncomingServerSettings() 2018-07-11 19:45:18 +02:00
cketti
6e18375d19 Add send message functionality to Backend interface 2018-07-11 19:41:13 +02:00
cketti
cf232d6afc Remove references to RemoteStore from :k9mail module 2018-06-19 14:36:48 +02:00
cketti
782f3cc4c5 Move code to create Pusher to Backend implementations 2018-06-18 15:36:47 +02:00
cketti
d2dd21de97 Move protocol capability flags to Backend implementations 2018-06-18 02:44:05 +02:00
cketti
e46c0699da Move code to download attachments to Backend implementations 2018-06-18 02:29:42 +02:00
cketti
a57a4f6df3 Move code to download (partial) message to Backend implementations 2018-06-18 02:17:56 +02:00
cketti
455315f62e Move code to upload messages to Backend implementations 2018-06-17 17:43:32 +02:00
cketti
80c76e6fb9 Move code to search/fetch messages to Backend implementations 2018-06-17 16:57:18 +02:00
cketti
d7558a1313 Move code to empty the trash folder to Backend implementations 2018-06-17 04:13:17 +02:00
cketti
3b393964e2 Move code to get folder list to Backend implementations 2018-06-17 03:26:56 +02:00
cketti
af13655de1 Move code to move/copy messages to Backend implementations 2018-06-17 02:17:36 +02:00
cketti
34616a954b Move code to expunge messages from a folder to Backend implementations 2018-06-17 00:34:32 +02:00
cketti
0ee775c95c Move code to mark all messages as read to Backend implementations 2018-06-16 18:05:14 +02:00
cketti
294a678b16 Move code to set message flags to Backend implementations 2018-06-16 17:41:53 +02:00
cketti
80e884cd52 Convert Backend interface to Kotlin 2018-06-16 17:13:14 +02:00
cketti
e5c1351aba Create Gradle modules for POP3 and WebDAV backends 2018-06-02 22:25:17 +02:00
cketti
03a54b0d98 Rename RemoteMessageStore to Backend 2018-06-02 18:34:40 +02:00
cketti
8499a95f5a Move ImapMessageStore/ImapSync to new Gradle module :backend:imap 2018-06-02 15:50:55 +02:00
cketti
0fb76aa93b Remove ImapSync's dependency on K9 2018-06-02 15:15:00 +02:00
cketti
478b740d8b Introduce SyncConfig to remove ImapSync's dependency on Account 2018-06-02 15:03:16 +02:00