1
0
mirror of https://github.com/moparisthebest/k-9 synced 2024-11-30 21:22:26 -05:00
Commit Graph

2441 Commits

Author SHA1 Message Date
cketti
bc4fb530d0 Remove all code using the old unread/flagged count database columns 2012-12-07 15:45:36 +01:00
cketti
04ec2abd2c Use local unread/flagged count in folder list and message list 2012-12-07 15:04:53 +01:00
cketti
41d608f3be Refresh action bar title in FolderList when unread count was calculated 2012-12-07 14:25:30 +01:00
cketti
cf390861d6 Use constant "UUID" for search accounts
This way we can match the account stats to the search accounts when the
Accounts activity is restarted.
2012-12-07 14:06:03 +01:00
cketti
4ccb1c952a Set action bar title for Accounts activity in onCreate() 2012-12-07 13:43:42 +01:00
cketti
144884080d Retain unread count in Accounts activity during configuration changes 2012-12-07 13:35:49 +01:00
cketti
8100e00523 Remove leading space in action bar title of Accounts activity 2012-12-07 13:08:01 +01:00
cketti
d3e840a9ee Only list messages in searchable folders under "All messages" 2012-12-07 12:55:32 +01:00
cketti
251428e963 Restore behavior of unread/flagged filtered message list
The unread/flagged count/view for accounts now excludes special folders
and only includes displayable folders as specified by the display class.
2012-12-07 12:03:04 +01:00
cketti
73757af680 Only count local messages for unread/flagged count
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.
2012-12-07 05:34:44 +01:00
Andrew Chen
9a380c69ad Strip RE/FW from the MessageList subject line for thread subjects.
"Be like Outlook."
2012-12-06 17:41:39 -08:00
Andrew Chen
c81f68af33 Remove the progress spinner when not in use so that the "Load more..." text is centered. 2012-12-06 17:25:56 -08:00
cketti
b4bd80baa2 Fix "up" logic in MessageList
Fixes issue 4727
2012-12-06 06:26:39 +01:00
cketti
26b462a90e Refresh the list when returning to the message list activity 2012-12-06 06:26:39 +01:00
cketti
b04f1b4319 Add an "empty view" to the message list
This will display a spinning progress indicator while the message list
is loaded from the database.
2012-12-06 06:26:39 +01:00
cketti
d5bb462917 Don't create Message objects when changing flags of selected messages
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.
2012-12-06 06:26:38 +01:00
cketti
c0b5255e24 Make most important flags separate database columns
This is the first step to speed up searches and flag updates.
2012-12-04 05:13:58 +01:00
cketti
d30cda26fb Fix database version cache logic 2012-12-04 04:55:52 +01:00
cketti
fcc9e37f66 Add file missing in last commit 2012-12-01 08:29:25 +01:00
cketti
b2098c8d1c Add activity that is displayed during database upgrades
See UpgradeDatabases.java for a detailed description of the upgrade
process.
2012-12-01 08:02:55 +01:00
cketti
f67d543510 Remove unused imports 2012-11-27 17:22:58 +01:00
cketti
2db8034c31 Use one database transaction when doing bulk flag changes
Previously we used one transaction per message. For 500 messages the
database updates alone took over 30s on my Nexus 7.
2012-11-27 16:46:59 +01:00
cketti
3b022cd72f Remove excessive debug logging 2012-11-27 16:33:53 +01:00
cketti
38e8fc182c Don't use LocalSearch object in launcher shortcut intents 2012-11-27 00:50:32 +01:00
cketti
cd3cc88fd4 Fix "Notification opens unread messages" 2012-11-27 00:15:21 +01:00
cketti
689f12a7f8 Don't use FLAG_ACTIVITY_SINGLE_TOP to start MessageList
We currently don't implement onNewIntent() so using
FLAG_ACTIVITY_SINGLE_TOP won't work.
2012-11-27 00:01:51 +01:00
Jesse Vincent
c870c5acbc make the checkmark a little wider. 2012-11-24 17:44:07 -05:00
Jesse Vincent
134b1f1b78 Hide the threaded view wrapper to get slightly better spacing 2012-11-24 14:42:57 -05:00
cketti
b96e7bb058 Fix NPE related to changed initialization order in Android 4.2 2012-11-22 22:50:46 +01:00
cketti
f0118ecb85 Change authority of the new content provider to unbreak build scripts 2012-11-22 22:50:46 +01:00
Jesse Vincent
e2d347f0a3 Strip Re/Fwd/Aw etc from titles of thread view 2012-11-22 15:24:43 -05:00
Jesse Vincent
eacc5e2ffe Add titles to thread display 2012-11-22 15:19:27 -05:00
cketti
9452b9e4c6 Make sure MessageView menu is configured correctly 2012-11-21 02:45:37 +01:00
cketti
189452618a Reset the message view theme when the app theme changes 2012-11-21 02:18:52 +01:00
cketti
349b1e997e Use type of compose action as action bar title
I.e. one of "Compose", "Reply", "Reply all", "Forward"
2012-11-21 01:42:19 +01:00
cketti
08615f205f Merge branch 'content_provider' 2012-11-18 16:50:31 +01:00
cketti
bb01102403 Use Uri.getQueryParameterNames() workaround on pre-API 11 devices 2012-11-16 18:28:40 +01:00
cketti
411abbea64 Fix display of folder settings and account settings menu entries 2012-11-15 21:45:36 +01:00
cketti
999dd33169 Prevent NPEs in methods called by the handler after activity detached 2012-11-15 21:42:10 +01:00
cketti
4eefcb3a31 Fix crash when remote search fails after search screen has been left
Also, change error message to be less technical.
2012-11-15 21:28:05 +01:00
cketti
5accadab00 Enable loading more search results from the server 2012-11-15 21:26:46 +01:00
cketti
b108e7a539 Don't fetch already downloaded messages found by a server-side search 2012-11-15 21:05:45 +01:00
cketti
38fe4d1990 Fix "up" navigation when leaving a message list with search results 2012-11-14 15:01:18 +01:00
cketti
9cbbd06352 Restore settings to configure remote search 2012-11-14 02:08:08 +01:00
cketti
ff156ac7c9 Fix remote search 2012-11-14 00:19:10 +01:00
András Veres-Szentkirályi
a86354be7d Treat mailto-URI parameters case-insensitive
RFC 6068 defines these parameters case-insensitive, yet we only
supported lower-case values because the method Uri.getQueryParameters()
treats parameter names case-sensitive.
This patch introduces a wrapper class that implements case-insensitive
parameter name matching.

Note: commit message edited by cketti
2012-11-13 13:33:22 +01:00
cketti
9814833008 Merge branch 'master' into content_provider 2012-11-08 20:32:12 +01:00
cketti
246ed6990c Avoid endless loop via Handler 2012-11-08 18:20:52 +01:00
Jesse Vincent
9be4efe58f Get the Folder list to use the new common icons 2012-11-06 16:18:00 -05:00
Jesse Vincent
446cda8618 Clean up the icons in account list 2012-11-06 16:02:08 -05:00
cketti
d209c0cce3 Merge branch 'master' into content_provider
Conflicts:
	src/com/fsck/k9/activity/MessageList.java
	src/com/fsck/k9/fragment/MessageListFragment.java
2012-11-05 04:52:45 +01:00
cketti
52bfea65d1 Make the message selection code use the unique (Cursor) ID 2012-11-05 02:11:02 +01:00
cketti
f02d265f60 Removed unused column from projection 2012-11-05 01:06:10 +01:00
Koji Arai
c0cb734288 Should change Bcc address when Identity changed. 2012-11-05 00:02:57 +09:00
cketti
d530b20e2b Copy/move all messages in a thread when copying/moving placeholder 2012-11-03 08:30:32 +01:00
cketti
dfbfaf48dd Clean up method copyOrMove() 2012-11-03 06:27:27 +01:00
cketti
2cfd25fa23 Javadoc cleanup 2012-11-03 06:20:11 +01:00
cketti
c231b732ac Avoid converting lists to arrays when possible 2012-11-03 05:56:12 +01:00
cketti
46feb8b9d0 Group messages by account when moving to spam/archive folder 2012-11-03 05:24:41 +01:00
cketti
02aeccdedc Make flag operations work on all messages in a thread 2012-11-03 05:01:25 +01:00
cketti
7a266dcbdf Retain selected messages when message list is reloaded 2012-11-03 04:26:41 +01:00
cketti
36b572fa5f Fix deleteThreadsSynchronous() 2012-11-03 04:25:40 +01:00
cketti
fb5e8eea84 Fix computeBatchDirection() 2012-11-03 03:21:30 +01:00
cketti
e339dd1f10 Delete all messages in a thread when 'delete' is used on the placeholder 2012-11-03 01:52:45 +01:00
cketti
966794f169 Don't create (throw-away) Message objects when starting action mode 2012-11-02 09:30:23 +01:00
cketti
c686284a77 Remove unused method 2012-11-02 05:18:45 +01:00
cketti
db3ea36978 Include number of messages in a thread in number of selected messages
Selecting a placeholder message will select all messages in its thread.
2012-11-02 05:18:24 +01:00
cketti
2e1d25118a Fix JOIN-condition when searching for messages 2012-11-01 20:33:13 +01:00
cketti
60bf3e7e29 Rename class members 2012-10-31 01:49:11 +01:00
cketti
08b361ed36 Fix search for Unified Inbox
We don't want to list the Inbox contents of all accounts but the
contents of folders whose "Unify" setting is true.
2012-10-31 01:45:44 +01:00
cketti
a54666e020 Fix edge case in MergeCursor 2012-10-31 01:06:26 +01:00
cketti
b0ef68dfed Make search also search the message contents 2012-10-30 19:24:19 +01:00
Joe Steele
f70d835404 Provide menu option to search messages.
Recent phones frequently do not have a hardware search key, so
there is no way to initiate a search without a menu option.

Related to issues 3386, 3428, 4523, and 4643.
2012-10-30 12:42:51 -04:00
cketti
0baffd05c8 Hide remote search UI elements
Remote search is currently not working
2012-10-30 16:54:21 +01:00
cketti
968d948dd0 Restore show next/previous message functionality in MessageView
This is just a temporary fix. In the future we want to get rid of
passing the serialized message list from MessageList to MessageView.
2012-10-30 16:27:09 +01:00
cketti
303c1ee85d Extract generation of SQL queries for searches to SqlQueryBuilder 2012-10-29 02:27:34 +01:00
cketti
5778d135fb Add global setting to enable/disable threaded view 2012-10-28 20:10:52 +01:00
cketti
889e2502be Replace call to method only available with API 9 and higher 2012-10-27 05:09:58 +02:00
cketti
65b3a57340 Clone LocalSearch object before modifying it for unread/starred search 2012-10-27 04:48:37 +02:00
cketti
faa666394c Do sorting in MergeCursor when merging the query results
Disabled "sort by sender" for now because the database can't sort by
contact names from the contacts database. We probably have to
special-case that and do in-memory sorting.
2012-10-27 02:15:30 +02:00
cketti
d74ca8c8ce Move MessageInfoHolder comparator to MessageProvider
The MessageInfoHolder comparators aren't used in MessageListFragment
anymore.
2012-10-26 02:44:40 +02:00
cketti
08fba5468f Switch MergeCursor from using a List to an array 2012-10-25 23:14:28 +02:00
cketti
49a5a3b7ff Fix message sorting for message lists of a single account
To support sorting of message lists spanning multiple accounts (e.g.
Unified Inbox) we need a MergeCursor that also does sorting.
2012-10-25 21:51:14 +02:00
cketti
a4585657d1 Fix global search 2012-10-24 06:57:14 +02:00
cketti
d703286833 Make LocalStore.searchForMessages() skip empty messages 2012-10-24 06:01:26 +02:00
cketti
613ef6ced2 "Select all" now won't start selection mode when there are no messages 2012-10-24 05:35:45 +02:00
cketti
508e9e8aa6 Don't display threaded message list for filtered views 2012-10-24 05:28:38 +02:00
cketti
c7a2080b34 Only show message list footer when displaying a single folder 2012-10-24 04:34:41 +02:00
cketti
ec76dca57f Remove unused stuff 2012-10-24 01:37:33 +02:00
cketti
1fcce6fb8a Add database indices for thread columns in 'messages' table 2012-10-24 01:03:59 +02:00
cketti
3bef05b55d Removed LocalStore hack introduced in 16d2326 2012-10-24 00:32:29 +02:00
cketti
cba9d8fc88 Fix pull to refresh for normal list vs. "remote search"-able 2012-10-24 00:09:33 +02:00
cketti
1b98ce57e1 Notify observers (e.g. CursorAdapter) when the messages table changed 2012-10-24 00:08:44 +02:00
cketti
95b39c71d2 Add threading support to content provider 2012-10-23 03:01:50 +02:00
cketti
05a2571570 Fix display of named searches (e.g. "Unified Inbox") 2012-10-22 18:10:47 +02:00
cketti
6af48bd262 Restore TCP port value in incoming/outgoing server settings screens
Special thanks to zjw for the detailed analysis of this bug:
https://github.com/k9mail/k-9/pull/193
2012-10-21 20:04:53 +02:00
cketti
93ef3a7b0f Fix message list when no search condition is given (All messages) 2012-10-21 19:18:57 +02:00
cketti
f093b84142 Make (de)serialization work when LocalSearch has no search conditions 2012-10-21 19:17:01 +02:00
cketti
1d655f5bc2 Added ability to display special folders combining multiple accounts 2012-10-18 05:15:40 +02:00
cketti
20ed1ebe61 Code style cleanup 2012-10-17 20:52:03 +02:00
cketti
fff94956f4 Fixed LocalSearch.addAllowedFolder()
We need to use the node returned by add() as new root node.
2012-10-16 22:51:01 +02:00
cketti
502771dd0e Revert changing the default value for debug logging 2012-10-16 22:48:31 +02:00
cketti
f1e433e6df Whitespace cleanup 2012-10-16 22:42:51 +02:00
cketti
83d5102f3d Merge branch 'new_search_framework' into content_provider
Conflicts:
	src/com/fsck/k9/fragment/MessageListFragment.java
2012-10-16 20:57:47 +02:00
cketti
cc74a2ad2e Switched to ContentProvider and CursorLoader to display the message list 2012-10-16 15:46:40 +02:00
Sander Bogaert
49197b4f1c First attempt at making the fragmented messagelist and remote search play nice with the new search framework. Works partially. 2012-10-13 15:07:28 -04:00
Sander Bogaert
bf82d0af7c Changed all the calls to MessageList to work using the new LocalSearch class. These are all tested and working changes. 2012-10-13 15:06:57 -04:00
Sander Bogaert
f01f2f15cd Add static methods to create unifiedInbox and allMessages accounts. 2012-10-13 14:19:50 -04:00
Sander Bogaert
a3d227649f Change visibility of SearchModifier class and members. 2012-10-13 14:12:52 -04:00
Sander Bogaert
f550aaefb5 Add new SearchAccount class and move it together with SearchModifier to the search package ( refactor ). 2012-10-13 14:03:40 -04:00
Sander Bogaert
235e1f913b Avoid needless nullpointers. 2012-10-13 10:40:13 -04:00
Sander Bogaert
bdfc9d6852 Added two convenience methods to avoid dealing with exceptions all the time. 2012-10-13 10:08:39 -04:00
Sander Bogaert
9883148b2f Fixed wrong construction of leaf sets and unrightfully ignored exceptions. 2012-10-13 10:03:19 -04:00
Sander Bogaert
442805fe62 Made thread_root a searchable field of the message table. This can be used to display threads. 2012-10-13 09:28:19 -04:00
Sander Bogaert
d27f909600 Add new search logic to the MessagingController and LocalStore classes. 2012-10-13 08:53:00 -04:00
Sander Bogaert
5c6552cbf3 Adding the 3 core classes for the search framework. ConditionsTreeNode, LocalSearch and SearchSpecification. 2012-10-13 05:57:25 -04:00
Sander Bogaert
611bae3fb4 Created search package to hold the framework and moved over the SearchSpecification class ( refactor ). 2012-10-12 12:30:26 +02:00
cketti
c2bb451712 Don't display thread count in thread view 2012-10-10 04:32:48 +02:00
cketti
3413cbebf5 Worked around NPEs when the activity has been detached 2012-10-10 04:30:19 +02:00
Jesse Vincent
4e6453e7bb remove vestiges of a deleted setting 2012-10-09 21:31:19 -04:00
cketti
16d2326033 Nasty hack to retain threads in MessageListFragment when polling 2012-10-10 03:02:36 +02:00
Jesse Vincent
e9ae328164 Bring back the checkboxes option for messagelist 2012-10-09 18:22:00 -04:00
cketti
63b6b497a0 Early version of message threading
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
2012-10-08 22:51:29 +02:00
cketti
e66dd3d521 Fixed unit tests 2012-10-08 14:43:34 +02:00
cketti
d3f9633378 Merge branch 'fragments' 2012-10-08 14:33:33 +02:00
Jesse Vincent
f62ac401a0 make the stroke border on our color chips a bit wider to make them easier to see 2012-10-06 17:31:24 -04:00
cketti
93b13362b4 Converted message list to a fragment 2012-10-06 03:41:32 +02:00
cketti
12e9dce1d8 Renamed MessageList to MessageListFragment 2012-10-05 18:14:07 +02:00
cketti
8a226972a5 Extracted functionality common to most activities to K9ActivityCommon 2012-10-05 18:14:07 +02:00
cketti
bbcc4988ba Converted message view to a fragment
The fragment should be fully functional. The only thing missing is the
animation when showing the next/previous message.
2012-10-05 18:14:07 +02:00
cketti
c6bea2e6ab Copied ...activity.MessageView to fragment.MessageViewFragment
This commit breaks all sorts of things but should retain the Git
history of MessageView.
2012-10-05 18:14:06 +02:00
Andrew Chen
41756802a1 Move hasConnectivity() method into a helper method.
It's now used in multiple places, so unify the logic into one place.
2012-10-05 09:07:16 -07:00
Jesse Vincent
7b23704bd5 Add "cc Me" and "from me" color chips. Uprez the chips 10x so we get crisp views rather than awful bitmappy stuff 2012-10-03 21:56:28 -04:00
Jesse Vincent
0c34a21ff0 Add a fromMe method on messages 2012-10-03 21:56:28 -04:00
Andrew Chen
ecd4e0b001 Use the default date format if pulling from Preferences fails for any reason. 2012-10-03 10:06:40 -07:00
cketti
952c40710e Added setting to disable using the background as (un)read indicator 2012-10-02 22:56:06 +02:00
cketti
fad52e6dac Hide 'mark as (un)read' and '(un)flag' in the message list context menu 2012-10-02 19:59:08 +02:00
Andrew Chen
1491935465 Prevent remote search if we have no network connectivity. 2012-09-30 10:44:20 -07:00
Andrew Chen
3861e7ca35 Log NumberFormatExceptions. Fix whitespace. 2012-09-29 07:53:34 -07:00
Andrew Chen
5a487f154c Merge pull request #185 from chamonkey/issue3714
Add number format handling to Storage.java
2012-09-29 07:51:48 -07:00
Andrew Chen
6b10451b79 Whitespace; no functional changes. 2012-09-29 07:48:58 -07:00
Andrew Chen
1d0ad3cb38 Enable remote search by default. 2012-09-29 07:48:49 -07:00
chamonkey
6e27a90905 Addition of number format handling to Storage.java 2012-09-28 14:48:16 +01:00
Andrew Chen
39e2a973a1 Merge branch 'imapsearch'
* imapsearch:
  Change settings version to 18 to match what's currrently on master.
  Handle aborted imap searches by nuking in-progress connections.
  Move IMAP search into the Folder level.
  Remove duplicate notification on remote search start.
  Rename variables
  changed PREFERENCE_CLOUD_SEARCH_ENABLED from "cloud_search_enabled" to "remote_search_enabled" in activity/setup/AccountSettings.java to resolve FC.
  Add cloud search icon to local search result screen. Implement pull-to-remote-search.
  Log remote search exceptions in addition to toasting them.
  Add settings export for remote search settings.
  Whitespace; no functional changes.
  Handle implicit vs. explicit searches in ActionBar home button behavior.
  Whitespace fix; no functional changes.
  Add remote search actionbar icons.
  IMAP Search: log exceptions on remote search, properly dispatch MessageList changes.
  modified loadMessageForView() to dowload message if neither X_DOWNLOADED_FULL nor X_DOWNLOADED_PARTIAL.
  Add remote IMAP search support.

Conflicts:
	res/menu/message_list_option.xml
	res/values/attrs.xml
	res/values/themes.xml
	src/com/fsck/k9/activity/MessageList.java
	src/com/fsck/k9/preferences/Settings.java
2012-09-25 16:01:52 -07:00
Andrew Chen
d88a275840 Change settings version to 18 to match what's currrently on master. 2012-09-25 15:50:47 -07:00
Andrew Chen
2541753aff Handle aborted imap searches by nuking in-progress connections. 2012-09-25 15:46:30 -07:00
Andrew Chen
9f96cd36a7 Move IMAP search into the Folder level.
Should also consider moving the LocalStore search into the folder level and have the store call the folder level searches.
2012-09-25 14:34:59 -07:00
Andrew Chen
270d948edb Remove duplicate notification on remote search start. 2012-09-25 08:16:48 -07:00
Andrew Chen
5b59511c12 Rename variables 2012-09-25 07:50:10 -07:00
Jesse Vincent
0e3f87f77f Chip updates based on work by m0vie 2012-09-24 19:25:34 -04:00