- Make notification high priority if any previewed message is flagged
- Fix message ordering
- Go to folder list instead of folder of newest message if there are
multiple messages in the notification
- If there's only a single message in the notification, add 'Reply' and
'Read' (marks as read) buttons.
- If there's more than one message pending, add only 'Read'.
Currently only the Accounts activity uses the new count.
While working on this I realized that the unread/flagged search for
accounts currently looks for unread/flagged messages in all folders, not
all displayable folders without special folders (Trash, Spam, Outbox,
Sent, Drafts) like we used to.
Also, the "All messages" search currently doesn't limit the search to
searchable folders like it is supposed to.
This changes the interface to MessagingController and the way flags are
updated in the database. Now messages aren't changed one by one but in
batches of 500. This should give better performance, but breaks the
unread and flagged count. I'm not very sad about this, because now we
can move towards only displaying the number of unread/flagged messages
in the local database.
Missing:
- UI support for threading when polling
- code to upgrade existing installations
- UI elements to switch from/to threaded display mode
- threading of messages with same subject
* rbayer/IMAPsearch: (21 commits)
More cleanup
Code Cleanup getRemoteSearchFullText -> isRemoteSearchFullText line wraps for preference items
Refactor to allow fetching of extra search results beyond original request. Most code moved out of ImapStore and ImapFolder and into MessagingController.searchRemoteMessagesSynchronous. Should make it easier to add remoteSearch for other server types.
Prevent delete of search results while search results open
remove duplicated code block
Don't hide Crypto when IMAPsearch disabled
Code Style Cleanup: Tabs -> 4 spaces Remove trailing whitespace from blank lines
tabs -> spaces (my bad...)
Fix opening of folders to be Read-Write when necessary, even if they were previously opened Read-Only.
add missing file
Working IMAP search, with passable UI.
UI improvements
Simple help info when enabling Remote Search
Dependency for preferences
Basic IMAP search working
The loop extracted keys from `remodeUidMap` and then called
`remouteUidMap.get(...)` for every key. If both the key and the value
needs to be iterated on, `Map.entrySet()` is a more efficient solution
as it doesn't require O(n) Map lookups.