Commit graph

11370 commits

Author SHA1 Message Date
cketti
944547a532 Defer sorting opened messages to their new position in the message list
For the last N displayed messages we remember the original 'read' and 'starred' state of the messages. We pass this information to `MessageListLoader` so messages can be sorted according to these remembered values and not the current state. This way messages, that are marked as read/unread or starred/not starred while being displayed, won't immediately change position in the message list if the list is sorted by these fields.
The main benefit is that the swipe to next/previous message feature will work in a less surprising way.
2022-09-03 16:48:35 +02:00
cketti
83b50c6edb Update translations 2022-09-03 15:24:03 +02:00
cketti
d6ba51b899
Merge pull request #6266 from thundernest/convert_to_kotlin3
Convert `IdGrouper` to Kotlin
2022-09-02 19:26:39 +02:00
cketti
f4e75f0633
Merge pull request #6265 from thundernest/convert_to_kotlin2
Convert `FolderNameCodec` to Kotlin
2022-09-02 19:11:17 +02:00
cketti
980d8bea72
Merge pull request #6264 from thundernest/convert_to_kotlin
Convert `BoundaryGenerator` to Kotlin
2022-09-02 19:09:38 +02:00
cketti
b624f42277
Merge pull request #6270 from johnjohndoe/patch-1
Remove jcenter
2022-09-02 18:45:00 +02:00
Tobias Preuss
88c1297868
RIP jcenter. 2022-09-02 17:11:56 +02:00
cketti
ab9ac67a57 Remove redundant calls to MessageListFragment.setActiveMessage() 2022-09-02 15:28:00 +02:00
cketti
bdef79a6fc Be more selective when setting the "active message" for the message list 2022-09-02 15:17:21 +02:00
cketti
ad43f3b881
Merge pull request #6268 from thundernest/cache_fast_path
Add fast path to `MessageListRepository` to bypass an empty cache
2022-09-02 14:25:27 +02:00
cketti
034eac8847 Add fast path to MessageListRepository to bypass an empty cache 2022-09-01 16:12:25 +02:00
cketti
d091ccf317
Merge pull request #6263 from thundernest/remove_EmailProvider
Remove `EmailProvider` 🎉
2022-09-01 15:33:16 +02:00
cketti
5800627cb8 Convert IdGrouper to Kotlin 2022-08-31 20:46:08 +02:00
cketti
a54784fb4e Rename .java to .kt 2022-08-31 20:42:43 +02:00
cketti
5f4b24d5fe Convert FolderNameCodec to Kotlin 2022-08-31 20:11:29 +02:00
cketti
58ce09c43f Rename .java to .kt 2022-08-31 20:11:29 +02:00
cketti
2c22856781 Convert BoundaryGenerator to Kotlin 2022-08-31 19:53:32 +02:00
cketti
389f9f7175 Rename .java to .kt 2022-08-31 19:40:27 +02:00
cketti
5418f71fc5 Change API of MessageListCache to better match how it is used 2022-08-31 17:50:00 +02:00
cketti
cfa01261ae Rename EmailProviderCache to MessageListCache 2022-08-31 17:50:00 +02:00
cketti
7ea928bba5 Finally get rid of EmailProvider 2022-08-31 17:50:00 +02:00
cketti
6be1eb11dc Use MessageRepository instead of EmailProvider in MessageListLoader 2022-08-31 17:50:00 +02:00
cketti
dabb398e65 Add MessageListRepository.getThread() 2022-08-31 17:50:00 +02:00
cketti
4b03f99ff7 Add MessageListRepository.getThreadedMessages() 2022-08-31 17:50:00 +02:00
cketti
170f0dbecc Add MessageListRepository.getMessages() 2022-08-31 17:50:00 +02:00
cketti
b89f8c0e57 Convert EmailProviderCache to Kotlin 2022-08-31 17:50:00 +02:00
cketti
3345701471 Rename .java to .kt 2022-08-31 17:50:00 +02:00
cketti
a9d03a147d Fix EmailProviderCacheTest 2022-08-31 17:50:00 +02:00
cketti
4210237dff Rename .java to .kt 2022-08-31 17:50:00 +02:00
cketti
e9b91f3654 Add MessageListRepository
Remove the "message list changed" notification mechanism provided by `EmailProvider` and use a simple callback mechanism instead.
2022-08-31 17:50:00 +02:00
cketti
18b177e18e Remove MessageListItem.position 2022-08-30 16:32:41 +02:00
cketti
e14ce585a5 Add MessageStore.getThread()
This is more or less a copy of `EmailProvider.getThread()`.
2022-08-30 14:49:30 +02:00
cketti
9b90d18051 Add MessageStore.getMessages()
This is more or less a copy of `EmailProvider.getMessages()`.
2022-08-30 13:43:30 +02:00
cketti
be5867de83 Add MessageStore.getThreadedMessages()
This is more or less a copy of `EmailProvider.getThreadedMessages()`.
2022-08-30 12:39:57 +02:00
cketti
77396629cb Add MessageStore.hasMoreMessages() 2022-08-29 16:40:49 +02:00
cketti
8cb294fb25
Merge pull request #6257 from thundernest/MimeParameterDecoderTest_cleanup
`MimeParameterDecoderTest` cleanup
2022-08-29 14:21:58 +02:00
cketti
e209e8f746
Merge pull request #6256 from thundernest/html_sanitizer_updates
HTML sanitizer updates
2022-08-29 14:05:15 +02:00
cketti
1de1f54518
Merge pull request #6255 from thundernest/fix_shared_attachment_crash
Don't crash when trying to access attachment (meta) data
2022-08-29 14:04:36 +02:00
cketti
ef91c6d3ff Convert MimeParameterDecoderTest to using Truth 2022-08-25 22:22:46 +02:00
cketti
7381cb808d Fix test in MimeParameterDecoderTest 2022-08-25 22:03:37 +02:00
cketti
c0be8a8000 Keep 'name' attribute of 'a' elements 2022-08-25 16:35:48 +02:00
cketti
27d1dd3828 Keep 'align' attribute of 'div' elements 2022-08-25 16:32:52 +02:00
cketti
fd396b183d Don't crash when trying to access attachment (meta) data 2022-08-25 16:01:17 +02:00
cketti
9cf73c99d0
Merge pull request #6238 from thundernest/cleanup
Small code cleanup
2022-08-12 16:21:08 +02:00
cketti
ec76473a1c Remove RealImapConnection.handleConnectException() 2022-08-12 09:41:06 +02:00
cketti
89d3df091f Change ImapSettings.useCompression to a property 2022-08-12 09:34:01 +02:00
cketti
2b0a8469b8
Merge pull request #6237 from thundernest/convert_to_kotlin
Convert some IMAP-related classes to Kotlin
2022-08-11 17:49:58 +02:00
cketti
5bd3b1a7f7 Convert RealImapConnection to Kotlin 2022-08-10 19:55:03 +02:00
cketti
8334e692ad Rename .java to .kt 2022-08-10 18:33:47 +02:00
cketti
002b70fcf9 Convert RealImapStoreTest to Kotlin 2022-08-10 17:48:58 +02:00