cketti
fea7b7c7bf
Update Robolectric to 4.7.3
2022-02-21 18:43:01 +01:00
cketti
ffa0ebb5bb
Change the Storage class to be immutable
...
Also make sure the in-memory state and the database are modified together while a lock is being held.
2022-02-12 00:00:11 +01:00
cketti
56ac6ab0bd
Rework notification light setting
2022-02-11 23:56:12 +01:00
cketti
a4e1a77892
Switch to mockito-inline
2022-02-03 01:10:52 +01:00
schlagi123
e8a798c9de
Change default color for registered contacts ( #5865 )
...
Change default value of `registeredNameColor` to have enough contrast in both the light and dark theme.
2022-01-20 00:10:05 +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
17e69419b8
Remove now unused BackendFolder.getLastUid()
2022-01-05 20:21:58 +01:00
cketti
2331626170
Add a migration to seed the new location with the highest known UID
2022-01-05 20:21:58 +01:00
cketti
a8937a2a2d
Mark all messages as "not new" when leaving the "New messages" view
2021-12-11 15:41:15 +01:00
cketti
386dd9073f
Update 'new_message' column when adding and removing notifications
2021-12-11 15:41:15 +01:00
cketti
245404d6e4
Add 'new_message' column to 'messages' table
2021-12-11 15:41:15 +01:00
cketti
c289c74238
Update summary notification click behavior
...
When tapping the summary notification and all new messages belong to folders that are included in the Unified Inbox, we display the Unified Inbox.
2021-12-09 22:21:55 +01:00
cketti
14be46389f
Persist data about notifications
2021-12-04 21:59:06 +01:00
cketti
4ff0eddaf2
Add 'notifications' table to the message database
2021-12-03 01:22:39 +01:00
cketti
230d0f4a84
Remove unused code (K9.Intents.Share.EXTRA_FROM)
2021-11-26 02:46:58 +01:00
Tobias Preuss
f0d3f371f0
Avoid leaking CountingOutputStream.
...
+ Affects com.fsck.k9.mail.filter.CountingOutputStream.
2021-11-23 09:45:05 +01:00
cketti
61046ef0fd
Update Mockito (Kotlin) to version 4.0.0
2021-10-30 05:32:51 +02:00
cketti
80f29f9b3b
Update Koin to version 3.1.3
2021-10-30 05:32:51 +02:00
cketti
d211b72892
Add MessageStore.getFolderServerId()
2021-09-24 18:52:42 +02:00
cketti
1ff1bd8454
Remove "hide subject in notifications" setting
...
This feature didn't work properly. And the "lock screen notifications" setting offers very similar functionality.
2021-09-21 19:59:30 +02:00
cketti
701b640da3
Move LocalFolder.getMessageCount() to MessageStore
2021-08-31 18:38:16 +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
f09f2d4003
Move LocalStore.compact() to MessageStore
2021-08-21 22:39:09 +02:00
cketti
eb1b310968
Add migration to rewrite 'last_updated' column
2021-08-18 11:55:55 +02:00
cketti
bc366e98eb
Add support for retrieving a folder's last checked time via MessageStore
2021-08-18 11:55:21 +02:00
cketti
3252002629
Rename MessageStore.setLastUpdated() to setLastChecked()
2021-08-18 11:53:53 +02:00
Andrew Fiddian-Green
4729ae044a
Optionally show starred message count in navigation drawer
2021-08-17 19:18:26 +02:00
cketti
7580c04d6c
Don't allow an IDLE refresh interval of 1 minute
2021-07-05 17:38:49 +02:00
cketti
f9f5f8eb1c
Set push class of Inbox to 'first class' by default
2021-06-26 22:17:24 +02:00
cketti
e6f152a00c
Remove migration that enabled polling when we temporarily disabled push
2021-06-24 15:22:10 +02:00
cketti
54a2cf8e28
Rewrite 'folderPushMode' value of non-IMAP accounts to 'NONE'
2021-06-24 15:22:10 +02:00
cketti
6862b737ed
Add FolderRepository.getPushFoldersFlow()
...
This method returns a flow that emits the list of folders to sync via Push. It will automatically update when the account's 'Push folders' setting or a folder's Push class is changed.
2021-05-28 14:15:48 +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
a389c1860f
Move notification mechanism from K9MessageStore to NotifierMessageStore
2021-04-24 01:09:37 +02:00
cketti
e05bc461b5
Re-implement copy message functionality in MessageStore
...
Instead of loading a message into memory and then saving it to the new folder the new code copies the database entries and data files.
2021-04-23 22:28:40 +02:00
cketti
9ef105d74f
Merge pull request #5267 from k9mail/update_dependencies
2021-04-22 18:37:38 +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
105d55a303
Remove unnecessary code to update thread entry
2021-04-22 03:43:00 +02:00
cketti
4573b5d001
Clean up ThreadInfo
2021-04-22 03:33:32 +02:00
cketti
813cc4eec2
Remove unused ThreadInfo.messageIdHeader
2021-04-22 03:17:48 +02:00
cketti
826e4a470e
Various message threading fixes
2021-04-21 20:44:47 +02:00
cketti
c43f27a9ff
Merge pull request #5259 from k9mail/save_messages
2021-04-20 21:23:47 +02:00
cketti
903babe917
Save drafts using MessageStore
2021-04-17 23:26:46 +02:00
cketti
f58860f8bb
Merge pull request #5257 from k9mail/save_messages
...
Split Backend.fetchMessage() into two methods
2021-04-17 21:45:00 +02:00
cketti
127e311385
Change FolderDetailsAccessor to better support local folders
...
For "local-only" folders the server ID column in the database is NULL.
2021-04-17 17:54:25 +02:00
plan3d
27e6dc9d84
Issue #5249 : Fixed NPE in folder settings of outbox folder
2021-04-17 10:12:54 +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
289744ec24
Change key/value functions in K9BackendFolder to use MessageStore
2021-04-15 01:51:54 +02:00
cketti
cf51883637
Change K9BackendFolder.getOldestMessageDate() to use MessageStore
2021-04-15 01:51:52 +02:00
cketti
4e4babeea6
Change K9BackendFolder.saveMessage() to use MessageStore
2021-04-15 01:19:18 +02:00
cketti
78e616ed37
Remove ThreadMessageOperations' dependency on LocalStore
2021-04-13 17:43:24 +02:00
cketti
923b0308b4
Change K9BackendFolder.setMessageFlag() to use MessageStore
2021-04-09 03:08:25 +02:00
cketti
c20de077d9
Change K9BackendFolder.getMessageFlags() to use MessageStore
2021-04-09 02:24:02 +02:00
cketti
c17db2cb94
Change K9BackendFolder.isMessagePresent() to use MessageStore
2021-04-09 02:00:10 +02:00
cketti
d52b4511fe
Change K9BackendFolder.setStatus() to use MessageStore
2021-04-08 21:33:25 +02:00
cketti
e7b764e6e8
Change K9BackendFolder.setLastChecked() to use MessageStore
2021-04-08 21:28:05 +02:00
cketti
cbb5825d03
Change K9BackendFolder.setMoreMessages() to use MessageStore
2021-04-08 21:23:48 +02:00
cketti
7dc4b6dd71
Change K9BackendFolder.getMoreMessages() to use MessageStore
2021-04-08 21:12:01 +02:00
cketti
3a86cc632e
Update 'delete_message' trigger to delete entries in 'threads' table
2021-04-08 20:27:03 +02:00
cketti
cf9037a513
Add code to delete messages to MessageStore
2021-04-08 20:27:03 +02:00
cketti
9d4d7f0352
Move code to get message server IDs and dates from K9BackendFolder to MessageStore
2021-04-07 20:39:19 +02:00
cketti
484db5730d
Move code to get message server IDs from K9BackendFolder to MessageStore
2021-04-07 20:23:54 +02:00
cketti
102fbc690f
Move code to get highest message UID from K9BackendFolder to MessageStore
2021-04-07 20:23:52 +02:00
cketti
2e6b5710be
Move code to retrieve folder details from K9BackendFolder to MessageStore
2021-04-07 17:21:40 +02:00
cketti
6373d0249f
Move delete folder code from K9BackendStorage to MessageStore
2021-04-06 22:17:38 +02:00
cketti
59b8ead290
Move create/update folder code from K9BackendStorage to MessageStore
2021-04-03 18:35:29 +02:00
cketti
9932ed3b68
Move "extra values" code from K9BackendStorage to MessageStore
2021-04-03 17:48:43 +02:00
cketti
9c257685a3
Move more code from FolderRepository to MessageStore
2021-04-03 02:32:13 +02:00
cketti
e2bc68e0ac
Move FolderRepository.updateFolderDetails() to MessageStore.updateFolderSettings()
2021-04-03 00:23:11 +02:00
cketti
796d22a132
Move FolderRepository.getFolderId() to MessageStore
2021-04-02 06:12:09 +02:00
cketti
392ae3eb3c
Move FolderRepository.getDisplayFolders() to MessageStore
2021-04-02 05:52:57 +02:00
cketti
05543214e5
Move more code from FolderRepository to MessageStore
2021-04-02 01:26:12 +02:00
cketti
0250736cf5
Move code to read a single folder from FolderRepository to MessageStore
2021-04-02 00:27:02 +02:00
cketti
24f55ee03e
Add test for RetrieveMessageOperations.getHeaders()
2021-04-01 01:32:46 +02:00
cketti
e76082568d
Move code from MessageRepository to MessageStore
2021-03-31 23:03:46 +02:00
cketti
dc93335100
Move old migration code from 'K9' to storage module
2021-03-24 16:28:07 +01:00
cketti
e601d866c3
Don't violate ServerSetting's nullability constraints when decoding store URIs
2021-02-11 13:24:40 +01:00
cketti
ddabe3a238
Rewrite stored value from "hideSpecialAccounts" to "showUnifiedInbox"
2021-02-07 15:45:14 +01:00
cketti
1f2404557b
Migrate storeUri/transportUri to new server settings format
2021-02-01 17:30:21 +01:00
cketti
de2560b90b
Remove Account.storeUri and Account.transportUri
...
The URIs are still used as serialization format when saving settings
2021-02-01 12:54:02 +01:00
cketti
ad2c37d343
Fix ThreadInfo to allow messageIdHeader being null
2020-10-25 16:48:31 +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
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
0fb0de1bb2
Add database migration to clear 'server_id' column of local folders
2020-06-13 02:02:56 +02:00
cketti
8ffd7e9c20
Add database migration to correct Outbox 'server_id' value if necessary
2020-05-29 19:42:34 +02:00
cketti
7a7d588b43
Clean up special local folders in database
2020-05-16 17:46:26 +02:00
cketti
9ed54011ce
Refactor MigrationTo75
2020-05-05 22:55:19 +02:00
cketti
cc637a6575
Rename Account.get*Folder() to getImported*Folder()
2020-05-04 16:31:00 +02:00
cketti
fe5dcfa8a1
Rename Account.getInboxFolder() to getLegacyInboxFolder()
2020-05-04 16:31:00 +02:00
cketti
8079ef89b4
Reset folder server IDs in Account
2020-05-04 16:31:00 +02:00
cketti
d298897b51
Store folder IDs of special folders in Preferences
2020-05-04 16:31:00 +02:00
cketti
789769ef39
Replace Account.getOutboxFolder() with Account.getOutboxFolderId()
2020-05-04 16:31:00 +02:00
cketti
9acef0e9a0
Remove placeholder messages that have been kept accidentally in the past
2020-04-29 12:03:46 +02:00
cketti
c5e5b7b4f1
Add migration to rewrite pending commands to use folder IDs
2020-04-25 03:12:46 +02:00
cketti
cc1002eeb4
Use folder database ID for PendingSetFlag
2020-04-25 00:39:34 +02:00
cketti
63c16c137c
Use folder database ID for PendingDelete
2020-04-25 00:02:50 +02:00
cketti
f4b25ba55f
Add index on message_parts.root
2020-04-23 01:52:57 +02:00
cketti
afcaf96f6d
Convert 'Migrations' to Kotlin
2020-04-23 01:37:07 +02:00