Commit graph

593 commits

Author SHA1 Message Date
Jesse Vincent
580a562085 Lift the generic getMessages and searchForMessages up to the "store"
level from the "folder" level so we can search for messages across
folders
2009-12-27 16:53:37 +00:00
Jesse Vincent
6dcb10add6 Lift our column list for "load messages" out to the LocalStore, as the
first part of lifting "get messages" out of "folder" for search
2009-12-27 16:53:31 +00:00
Jesse Vincent
ddd6db3a7c Made our search activity actually exist 2009-12-27 16:53:24 +00:00
Jesse Vincent
09ecd2bc9a Make it possible to instantiate a localFolder by id. 2009-12-27 16:53:16 +00:00
Jesse Vincent
4cec247699 Make it possible to populate a MessageInfoHolder without a FolderInfoHolder 2009-12-27 16:53:09 +00:00
Jesse Vincent
fe67f0a40c temporarily disable new unfinished search code 2009-12-27 16:53:03 +00:00
Jesse Vincent
47b338fb94 Move message population to the message class. 2009-12-27 16:52:57 +00:00
Jesse Vincent
0005a8ea60 Remove lies from a comment 2009-12-27 16:52:50 +00:00
Jesse Vincent
54ad16edb8 Push a "is this the right folder?" check into our "add/remove messages from the message list, to better support search 2009-12-27 16:52:45 +00:00
Jesse Vincent
81a5820e5d swap the order of two methods for readability 2009-12-27 16:52:39 +00:00
Jesse Vincent
7c8a7b1f27 Remove an old comment/obsolete code 2009-12-27 16:52:33 +00:00
Jesse Vincent
2a77001acc First steps toward adding search results 2009-12-27 16:52:26 +00:00
Jesse Vincent
9a40457a2a Remove giant commented out method - that's what we have version control history for 2009-12-27 16:52:17 +00:00
Jesse Vincent
854da2664c Unify our "guard" against syncing the outbox or errors folder 2009-12-27 16:52:06 +00:00
Jesse Vincent
e2f84c4fa8 wrap a debug message in a debug-mode check; eliminate a temporary variable 2009-12-27 16:51:59 +00:00
Jesse Vincent
94e61ab62c Extract out the listener we're using when we ask for new messages.
It may eventually get further extracted.
2009-12-27 16:51:45 +00:00
Jesse Vincent
9d417133b5 reduce duplication of code 2009-12-27 16:51:38 +00:00
Jesse Vincent
c953ff2c1b Bulletproof MessageList against not having a folder loaded 2009-12-27 16:51:32 +00:00
Jesse Vincent
5c8a0a908c Remove a lie from a comment 2009-12-27 16:51:25 +00:00
Jesse Vincent
5e0bbf18aa Extract parts of title setting code into their own methods 2009-12-27 16:51:19 +00:00
Jesse Vincent
5b907c2d94 Remove an overridden subroutine that's now a noop 2009-12-27 16:51:13 +00:00
Jesse Vincent
c8bcad6a21 Refactor and reverse logic to be a bit cleaner 2009-12-27 16:51:06 +00:00
Jesse Vincent
721e298542 Invert some logic to clean up MessageList a bit 2009-12-27 16:51:00 +00:00
Jesse Vincent
56cdfa88c9 tiny grammar fix 2009-12-27 16:50:44 +00:00
Jesse Vincent
151ae5a2a3 First pass at adding "Searchable" infrastructure 2009-12-27 16:50:37 +00:00
Jesse Vincent
9ba102599f Fix SQL statmeent 2009-12-27 16:50:28 +00:00
Jesse Vincent
9bcc991ec8 Extract out the code to "load mesages from SQL" from inside our "load messages in this folder" code 2009-12-27 16:50:21 +00:00
Jesse Vincent
9796cb6487 First rouind of extracting the "load messages from the db" column list 2009-12-27 16:50:14 +00:00
Daniel Applebaum
1ea96796d6 Add a global preference for enabling animations, beyond those that are
necessary.  Defaults to "enabled."
2009-12-27 00:54:19 +00:00
Daniel Applebaum
ea65007b99 Disable inter-message animations, except when initiated by a swipe.
Fixes Issue 926.
2009-12-26 18:31:55 +00:00
Daniel Applebaum
070fd635d4 Allow user to set a limit on the number of folders to be handled with
push technology.  This provide a layer of safety in case of
misconfiguration (accidentally setting too many folders to push using
classes), which can bog down the device till it is unusable.  On a G1,
25 folders is a very large load.  Fixes Issue 871.

Also, move some pending commands to the background to make way for
more important user interface activity.
2009-12-24 18:08:23 +00:00
Jesse Vincent
8fca99bef4 Fixes to unbreak incoming account setup after CRAM_MD5 implementation 2009-12-21 17:49:16 +00:00
Daniel Applebaum
4859ff7e8f Add wakelocks for calling between MailService and Push/PollServices.
I don't know if these are truly necessary, but they should not be
harmful and might be a big reliability boost.
2009-12-21 01:48:15 +00:00
Daniel Applebaum
41d7ca51a3 Implementation of complete IMAP two-phase "delete/expunge" behavior.
On each IMAP account, the expunge behavior can be set to expunge
messages in a folder as soon as a move or delete is performed on the
folder ("immediately"), each time the folder is polled, or only when
executed manually.

In the Message List, there is now an Expunge action in the option
menu.

In the Folder List, there is now an Expunge action in the context
menu (long-press on the folder).

For IMAP accounts, it is also possible to disable the copying of deleted messages to the
Trash folder, by setting the Trash folder to -NONE-.

Fixes Issue 536.

Separately, in WebDAV accounts, the user can now choose the
server-side equivalents of the special folders, just like for IMAP.
2009-12-20 23:13:49 +00:00
Jesse Vincent
e82bb72a97 non-downloaded messages once again have a grey background.
Fixes Issue 899
2009-12-20 06:54:30 +00:00
Jesse Vincent
7e967c6110 removed now-unused subject coloring code 2009-12-20 06:54:23 +00:00
Jesse Vincent
b8b9e20e81 Hang onto our messaging controller rather than constantly reacquiring
it.
2009-12-20 06:14:10 +00:00
Jesse Vincent
2c9fc8b997 Backwards compatibility for the CRAM-MD5 implementation 2009-12-20 06:14:04 +00:00
Jesse Vincent
3914a78b53 xargs astyle --style=ansi --mode=java --indent-switches \
--indent=spaces=4 --convert-tabs --unpad=paren
2009-12-20 05:41:43 +00:00
Jesse Vincent
5a85446779 Initial implementation of CRAM-MD5 support for IMAP and SMTP.
Patch contributed by Russ Weeks <rweeks@gmail.com> in
<605ac1c0-808a-4f67-8c4d-736eec9587f8@e27g2000yqd.googlegroups.com>
2009-12-20 05:15:20 +00:00
Daniel Applebaum
921b022fb5 Enhanced header in Accounts, MessageList and Folder to show the unread
count, scoped for the Activity, the in-progress operation, the account
on which the operation is in progress, the folder for the operation,
when appropriate, and the progress of the operation, when it applies
to multiple items.  For the MessageList, also use the determinate
progress bar to show progress for synchronization of the folder being
displayed.

Fixes Issue 924.

Also, a minor change that might help with Issue 913, by putting the
insertion of the pending command into a background thread.
2009-12-20 00:02:46 +00:00
Jesse Vincent
4f42907315 preferences doesn't actually tie to an account. it shouldn't be in the account context menu 2009-12-18 03:49:52 +00:00
Jesse Vincent
462d4098e0 Removed debugging log messages that clutter and slow the runtime app 2009-12-18 03:49:19 +00:00
Jesse Vincent
91ad70cd5d Killed a bunch of debug logging that clutters (and slows) production apps 2009-12-18 03:48:24 +00:00
Jesse Vincent
83409d78fa remove a bunch of debug logging that was cluttering production logs 2009-12-18 03:46:46 +00:00
Jesse Vincent
3f841d1494 removing debugging messages 2009-12-18 03:46:05 +00:00
Jesse Vincent
f94823cba4 Enable the new synchronous messagelist population. Perhaps
counter-intuitive, but it's a whole lot faster
2009-12-18 02:39:41 +00:00
Jesse Vincent
25306fad83 unify the synchronous and asynchronous codepaths for listlocalmessages 2009-12-18 02:36:37 +00:00
Jesse Vincent
157455f26b As part of a refactoring move the "start" callback into the subthread. 2009-12-18 02:35:46 +00:00
Jesse Vincent
dc543fa9e3 now that we have more messages coming out of the database faster,
there's less use in special-casing the first 5
2009-12-18 02:34:50 +00:00
Jesse Vincent
c3e903942d we no longer need to check the deleted flag at this layer as we do it further in. 2009-12-18 02:34:13 +00:00
Jesse Vincent
5789b385a8 first pass at working around messaging controller perf insanity
port listLocalMessagesSynchronous back into the MessagingController

revert some stuff
2009-12-18 02:33:18 +00:00
Jesse Vincent
48e1f31b43 Revert commit 829 @gcode - it was a performance optimization which added
nontrivial code complexity for what's now a nil performance gain
2009-12-18 02:32:17 +00:00
Jesse Vincent
c8bd377e76 minor refactoring to cut down on repeated method calls 2009-12-17 05:24:48 +00:00
Jesse Vincent
ce44165634 Fix our auto-expand folder behavior - Fixes issue 918 2009-12-17 03:45:37 +00:00
Jesse Vincent
9ae7934cad improve the MessageList->FolderList flow. Should fix Issue 916 2009-12-16 05:26:43 +00:00
Jesse Vincent
85b4c43e10 Revert "Initial implementation of loading only 25 rows from the message list"
This reverts commit 7056cb918e3bc71465053bff4070b8d3b28761a7.
2009-12-16 05:26:21 +00:00
Bao-Long Nguyen-Trong
18ea30d00f More fix for issue 810: Delete intents are not also broadcasted when we delete a message because it was deleted on the server 2009-12-15 19:43:46 +00:00
Jesse Vincent
dc2f752f11 Bulletproofing against running IMAP Copy/Move commands with null messagelists. Fixes Issue 914 2009-12-15 17:40:04 +00:00
Jesse Vincent
bf4e37d3b5 Revert "An attempt to make message lists start displaying messages earlier by precomputing a list item."
Sadly, it caused explosions
This reverts commit 5b321f4d0893ad5538d229b1c84f6806d0d8cbfe.
2009-12-15 04:26:53 +00:00
Jesse Vincent
34c111eb47 Kill the no-op Welcome activity to improve startup performance 2009-12-15 04:06:32 +00:00
Jesse Vincent
a1302afe75 Initial implementation of loading only 25 rows from the message list
from SQLite at once. The hope is that this will improve perceived
performance on large folders by starting message display sooner.

In the case of a background sync while we're loading, we _may_ end up
doing more work than necessary, since we implement paging by "date
received"
2009-12-15 02:52:01 +00:00
Jesse Vincent
aa4f3535eb When we load up the "Accounts" activity as K-9 starts up, jump straight
to either the FolderList or the MessageList rather than always going
through the FolderList
2009-12-15 02:51:52 +00:00
Jesse Vincent
5d34ef2f19 An attempt to make message lists start displaying messages earlier by precomputing a list item. 2009-12-15 02:51:44 +00:00
Jesse Vincent
e82bbc25ab formatting from astyle 2009-12-15 02:51:34 +00:00
Jesse Vincent
647dc827d8 Replace MessageList's outdated message-passing mechanism with runOnUiThread for improved code clarity and performance. 2009-12-15 02:51:25 +00:00
Jesse Vincent
7b811e45a1 lazify loading of message headers in LocalFolder, since they're not needed in most of our use cases. 2009-12-15 02:51:18 +00:00
Jesse Vincent
f31b2702a4 Massive rename to K9, step 1.
Conflicts:

	src/com/android/email/Email.java
2009-12-15 02:50:53 +00:00
Bao-Long Nguyen-Trong
1cd67f8e16 Fixed issue 810: Implemented delete intent broadcast using a modified patch from stephane.lajeunesse 2009-12-15 00:03:22 +00:00
Daniel Applebaum
0cd2dfb77d Implements new "Batch ops" option menu in Message List. Provides for
flag/unflag, mark as read/unread and delete.  Also provides explicit
mode changing, and select/deselect all.  Move and copy are partially
implemented, but disabled.

Desperately needs a new icon.

The "Sort by..." menu now toggles ascending/descending when the
currently selected sort mode is clicked.

Also, an ineffective change to setting the title in the Message List.
A bit more work is in order on that.
2009-12-10 05:26:16 +00:00
Jesse Vincent
5b1c5b2289 Basic code style cleanups suggested by IntelliJ 2009-12-10 03:16:51 +00:00
Jesse Vincent
54c7d93f78 Let IntelliJ optimize our import statements 2009-12-10 03:16:42 +00:00
Jesse Vincent
cd7de68186 reimplement the "list widgets on the left?" preference I'd previously complained about as an account preference 2009-12-08 07:08:05 +00:00
Jesse Vincent
6fdf69d45b Revert "Fixed issue 858: Added option to choose which side the widgets in message list will be on"
This reverts commit b334e397431225280f30e5297f73392f331f2dc3.
2009-12-08 07:07:03 +00:00
Jesse Vincent
dc61614443 Switch to UUIDs for message-id generation. They're just as unique and lighter weight to calculate 2009-12-08 04:58:33 +00:00
Jesse Vincent
95159d8121 Defer creation of a MessageId until we actually need it. This was ~75% of our message load-from-db time 2009-12-08 04:58:10 +00:00
Bao-Long Nguyen-Trong
4117175b0f Fixed issue 858: Added option to choose which side the widgets in message list will be on 2009-12-08 01:32:59 +00:00
Jesse Vincent
3ffc447302 LocalMessage doesn't bother to populate the headers of the MimeMessage backing it until writeTo is called 2009-12-07 04:46:42 +00:00
Jesse Vincent
08588779f7 Added a setMessageId method to MimeMessage rather than just explicitly setting a header 2009-12-07 04:46:36 +00:00
Jesse Vincent
244bad1115 Cleaned up style drift using astyle 1.23
find  src/com/android/email/ -name \*.java|xargs astyle --style=ansi --mode=java  --indent-switches --indent=spaces=4 --convert-tabs --unpad=paren
2009-12-07 00:56:06 +00:00
Jesse Vincent
88e6c59e7e Get K-9 building on Java 1.5 again 2009-12-06 22:41:19 +00:00
Daniel Applebaum
b47ee0b492 Fixes Issue 860
By reinstating obsolete methods that should eventually be removed.
2009-12-05 14:17:32 +00:00
Daniel Applebaum
fe01446af6 Fixes Issue 856 2009-12-05 13:47:28 +00:00
Daniel Applebaum
514b4cf121 Fixes Issue 844
Definitely, some optimizations could be made

Also, reliably display the folder name at the top of the MessageList
Activity
2009-12-04 19:13:29 +00:00
Daniel Applebaum
2c7853c539 Fixes Issue 870 2009-12-04 04:22:07 +00:00
Daniel Applebaum
8a79690c42 Fixes Issue 850
Don't try to move, copy, or delete a K9mail-errors message on the
server-side.
2009-12-02 04:09:51 +00:00
Jesse Vincent
bb3d6f352b Updated regexes for text->html
Tested to not break unix logfiles ;)

Comment #7 on issue 819 by jessev: Hide empty CC: lines in Message View
http://code.google.com/p/k9mail/issues/detail?id=819

My intent is to default to showing Subject. Date and From or To (depending   on whether you're the sender) with a button/widget/hyperlink/something to fold down   and show more detail.

--
You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

Dec  1 19:15:48 mar-adentro kernel: [ 4291.016228] usb 1-6: reset high speed USB device using ehci_hcd and address 4
Dec  1 19:15:48 mar-adentro kernel: [ 4291.308225] usb 2-5: reset high speed USB device using ehci_hcd and address 2
Dec  1 19:15:48 mar-adentro kernel: [ 4291.552221] usb 3-1: reset full speed USB device using uhci_hcd and address 2
Dec  1 19:15:48 mar-adentro kernel: [ 4292.136224] usb 5-1: reset full speed USB device using uhci_hcd and address 2
Dec  1 19:15:48 mar-adentro kernel: [ 4292.425282] usb 3-1.1: reset full speed USB device using uhci_hcd and address 3
Dec  1 19:15:48 mar-adentro kernel: [ 4292.613282] usb 3-1.2: reset full speed USB device using uhci_hcd and address 4
Dec  1 19:15:48 mar-adentro kernel: [ 4292.780373] Restarting tasks ... done.
Dec  1 19:15:48 mar-adentro kernel: [ 4292.784292] usb 3-1.3: USB disconnect, address 7
Dec  1 19:15:49 mar-adentro kernel: [ 4293.230042] ADDRCONF(NETDEV_UP): eth0: link is not ready
Dec  1 19:15:49 mar-adentro kernel: [ 4293.987736] usb 3-1.3: new full speed USB device using uhci_hcd and address 8
Dec  1 19:15:50 mar-adentro kernel: [ 4294.141687] usb 3-1.3: configuration #1 chosen from 1 choice
Dec  1 19:15:54 mar-adentro pulseaudio[1548]: ratelimit.c: 82 events suppressed
Dec  1 19:16:06 mar-adentro kernel: [ 4310.825436] Registered led device: iwl-phy0::radio
Dec  1 19:16:06 mar-adentro kernel: [ 4310.825459] Registered led device: iwl-phy0::assoc
Dec  1 19:16:06 mar-adentro kernel: [ 4310.825479] Registered led device: iwl-phy0::RX
Dec  1 19:16:06 mar-adentro kernel: [ 4310.825500] Registered led device: iwl-phy0::TX
Dec  1 19:16:06 mar-adentro kernel: [ 4310.879827] ADDRCONF(NETDEV_UP): wlan0: link is not ready
Dec  1 19:16:20 mar-adentro kernel: [ 4324.261675] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
Dec  1 19:16:22 mar-adentro kernel: [ 4326.254795] padlock: VIA PadLock not detected.
Dec  1 19:44:22 mar-adentro kernel: [ 6006.712166] usb 2-4: new high speed USB device using ehci_hcd and address 5
Dec  1 19:44:22 mar-adentro kernel: [ 6006.865987] usb 2-4: configuration #1 chosen from 1 choice
Dec  1 19:44:22 mar-adentro kernel: [ 6006.869856] scsi7 : SCSI emulation for USB Mass Storage devices
Dec  1 19:44:27 mar-adentro kernel: [ 6011.871419] scsi 7:0:0:0: Direct-Access     HTC      Android Phone    0100 PQ: 0 ANSI: 2
Dec  1 19:44:27 mar-adentro kernel: [ 6011.873138] sd 7:0:0:0: Attached scsi generic sg2 type 0
Dec  1 19:44:27 mar-adentro kernel: [ 6011.906600] sd 7:0:0:0: [sdb] Attached SCSI removable disk
Dec  1 19:44:34 mar-adentro kernel: [ 6018.102244] sd 7:0:0:0: [sdb] 3862528 512-byte logical blocks: (1.97 GB/1.84 GiB)
Dec  1 19:44:34 mar-adentro kernel: [ 6018.110282]  sdb: sdb1
Dec  1 20:00:57 mar-adentro pulseaudio[1548]: ratelimit.c: 1 events suppressed
Dec  1 20:28:13 mar-adentro pulseaudio[1548]: ratelimit.c: 2 events suppressed
2009-12-02 03:16:31 +00:00
Jesse Vincent
bd09b880e9 Cache the message subject in a localMessage, rather than roundtripping through a MIME message 2009-12-01 13:45:28 +00:00
Bao-Long Nguyen-Trong
e354ba17b6 Added unset functionality to batch 'Read' and 'Flag' buttons. We are giving priority to setting the flags. So unsetting only happens if all selected messages do not have the flag set. 2009-12-01 00:50:19 +00:00
Daniel Applebaum
1593678cfe Fixes Issue 847 2009-11-30 23:37:46 +00:00
Jesse Vincent
c796897f36 Fix focus of flag/read toggles in bulk-update mode 2009-11-30 23:23:27 +00:00
Daniel Applebaum
87673c91a5 Implement Bao-Long's suggestion to modify
LocalStore.purgeToVisibleLimit only to work on undeleted messages.

Convert LocalStore.clear() to use the new DELETED column.

Make markAllAsRead only work on undeleted messages.
2009-11-30 04:57:29 +00:00
Jesse Vincent
b54dab0c7f remembering next/prev will work better if they don't use the same constant 2009-11-30 04:14:24 +00:00
Jesse Vincent
9552114075 actually set the deleted flag when purging a message. should help perf a bit 2009-11-30 04:03:16 +00:00
Jesse Vincent
2c1dad5554 when we go into a folder for the first time, jump to the first message being displayed rather than the widget at the end of the list 2009-11-30 04:03:08 +00:00
Jesse Vincent
da8ad69366 deleting messages in messageView now preserves the direction the user was "travelling" in before the delete 2009-11-30 04:03:00 +00:00
Jesse Vincent
4f5c9c8b3c Now that our not-deleted-messages mode works, actually use it in messagelists 2009-11-30 04:02:51 +00:00
Jesse Vincent
299cd9a07c add "deleted" to our default database indexes. (wants some query analysis at the SQLite level) 2009-11-30 04:02:43 +00:00
Jesse Vincent
ed4685e82d we need to generate valid sql in the not-yet-used "not deleted" mode. Thanks to danapple0++ 2009-11-30 04:02:34 +00:00
Daniel Applebaum
3126298b46 Bulk delete for WebDAV 2009-11-29 18:33:42 +00:00