Commit Graph

660 Commits

Author SHA1 Message Date
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
Daniel Applebaum 1b3d0eb992 The closest thing to bulk delete for POP3. Stupid POP3 has no
multiple delete command, but at least we can index UIDs in one shot.
2009-11-29 18:18:52 +00:00
Daniel Applebaum c7e7b9beda Bulk deletion for IMAP and stub for other Stores. 2009-11-29 18:07:34 +00:00
Daniel Applebaum f1abdbb769 Bulk flagging (read/unread, flag/unflag) implemented.
Message List batch ops wired to bulk flagging.

Manage batch button state when messages are deleted (from outside
agents) while in batch mode.

Remove throws clause from Folder.close() to make it easier to close
folders where necessary.

Eliminate some cruft from MessageList

Consolidate unreadMessageCount fetching in notifyAccount
2009-11-29 16:55:35 +00:00
Daniel Applebaum 61319d8c21 Fixes Issue 835 2009-11-29 06:25:03 +00:00
Daniel Applebaum d871d2d2ee Fixes Issue 827
Fixes Issue 734

On reconnection, IMAP IDLE folders will now fetch up to the most
recent 10 message that arrived while a IDLE connection was not
available.

Fixes Issue 232

A serving of NAMESPACE-based auto-configuration on the side.  If the
IMAP prefix is empty, and the IMAP server supports NAMESPACE, use the
IMAP prefix supplied by NAMESPACE.  Also, if the user manually puts
the separator as the last character in the prefix, don't append the
separator.

Also:
Improved reliability of IMAP IDLE incoming message and flag state
change handling.  Reduction (but not elimination) of multiple
connections under startup conditions.
2009-11-28 14:51:44 +00:00
Jesse Vincent 900bcb434c Now that we have multiselect mode, kill the "quick delete" mode. 2009-11-28 05:09:28 +00:00
Jesse Vincent 96958569b0 huge improvements to render quality of plaintext messages. 2009-11-28 04:56:58 +00:00
Jesse Vincent 46ddc7d8e5 text->html now does a better job converting
---------------------------------------------------------
2009-11-28 04:56:47 +00:00
Jesse Vincent cdf0693e27 remove unused constants 2009-11-28 01:59:52 +00:00
Jesse Vincent 8216640fe8 if chain -> switch 2009-11-27 23:45:30 +00:00
Jesse Vincent 7707270b31 Remove 100loc of custom date formatting code which worked around a deficiency in the android 1.0 API 2009-11-27 21:52:48 +00:00
Jesse Vincent 5727cb3c3b remove a temp variable 2009-11-27 21:52:36 +00:00
Jesse Vincent e2fd488e66 Fix multiselect so that one can use touch or the dpad or scroll ball to select
TODO: a preference to disable this behavior for folks who don't think like me
2009-11-27 03:28:26 +00:00
Jesse Vincent ae33aab57a only making the buttons active on the first click leads to weird race
conditions.
2009-11-27 03:28:16 +00:00
Jesse Vincent 769985dd48 cleaned up enable/disable activate/deactivate of multi-select action widgets. 2009-11-26 19:51:54 +00:00
Jesse Vincent ab706b6b31 abstract out the batch-button visibility settings 2009-11-26 17:43:51 +00:00
Bao-Long Nguyen-Trong 3525337075 1st wired up version of multi-select + delete button (still rough on the edges) 2009-11-26 15:47:58 +00:00
Daniel Applebaum 69e7243480 Naive, untested, bulk operations for the new multi-select
user-interface work.

Performance optimizations to be done later.
2009-11-26 05:30:13 +00:00
Daniel Applebaum fc91603429 Major IMAP IDLE rework:
1) Actual message sync on MessagingController uses same connection as
   IDLE for faster and more efficient push operation.  Uses fewer
   connections to the server.

2) More aggressive handling of untagged responses should more reliably
   get flag changes and new messages when many events happen at once.

3) Simplification of new mail notification

4) Push mail now respects the folder visible limit

5) When multiple untagged FETCH responses arrive en bloc, the actual
   message flags and UIDs are fetched with a single request
2009-11-26 05:10:12 +00:00
Jesse Vincent e4427f4f17 Added a "show no widgets" entry into the widgets rotation.
Eventually, we should have a preference per account for whether listview
starts in no-widgets or flag mode.
2009-11-25 16:21:01 +00:00
Jesse Vincent 0f85f22495 remove a useless focus handler 2009-11-25 15:41:40 +00:00
Jesse Vincent ae26b0eb0c better dpad left/right to cycle widgets 2009-11-25 15:35:25 +00:00
Jesse Vincent 0e821f575a first pass at toggling all widgets at once 2009-11-25 02:52:33 +00:00
Jesse Vincent 622155a57a make the Delete, Select and Star buttons share the same screenspace.
right now we toggle per row. next up is toggle all at once
2009-11-25 02:25:56 +00:00
Jesse Vincent 695aa42347 added code for inline delete buttons 2009-11-25 02:25:44 +00:00
Jesse Vincent 9cac2cd5b7 applied compromise code reformatting:
find  src/com/android/email/ -name \*java|xargs astyle --style=ansi \
    --mode=java  --indent-switches --indent=spaces=4 --convert-tabs \
    --unpad=paren
2009-11-25 00:40:29 +00:00
Bao-Long Nguyen-Trong e3727e1d91 Very early shot at batch message action UI 2009-11-24 18:05:53 +00:00
Daniel Applebaum 9971b9e8c5 Fix notifications for messages that arrive via IDLE 2009-11-23 03:17:03 +00:00
Daniel Applebaum 694ba471d4 Eliminate race condition which causes multiple connections to IDLE
simultaneously
2009-11-23 03:16:44 +00:00
Jesse Vincent ee463b32ff Overhaul our setup wizard to have a more reasonable bottom bar and to reuse that layout code where possible; standardize the id of the 'next' button 2009-11-23 00:23:34 +00:00
Jesse Vincent 8e0655d915 add double-tap at top or bottom to jump to the top or bottom of the message 2009-11-22 21:23:49 +00:00
Jesse Vincent 30459125aa Add a message-flip animation. Long-term, we want a ViewSwitcher instead 2009-11-22 21:23:36 +00:00
Jesse Vincent 027e213bb2 With this change, K-9 does a better job of loading embedded images by default for me. 2009-11-22 21:23:27 +00:00
Jesse Vincent 47cbf87e6d Disable built-in zoom controls for now. they make flipping way too hard. 2009-11-22 21:23:09 +00:00
Jesse Vincent 7a46a584c6 When flipping messages, be sure we jump to the top as we display 2009-11-22 21:23:00 +00:00
Daniel Applebaum 3f98e3204b Fixes Issue 784 2009-11-22 19:42:44 +00:00
Daniel Applebaum 0f24c6a28b Fix defect in r996
Prepare for disabling notification on messages the account identities sent.
2009-11-22 19:02:57 +00:00
Daniel Applebaum 5977809fe0 Fixes Issue 657
The Nays have it.
2009-11-22 17:34:29 +00:00
Daniel Applebaum c732f14c3d Fixes Issue 801 2009-11-22 17:15:11 +00:00
Daniel Applebaum 2e50cc5444 Log when attachment viewer cannot be found 2009-11-22 17:13:06 +00:00
Daniel Applebaum b551850827 Fixes Issue 188
Fixes Issue 394
Fixes Issue 763

Completely new Services architecture providing proper Service
lifecycle management.
  Long running tasks in MailService are executed in a separate thread,
  but the service is not stopped until the tasks are complete.

  SleepService for providing synchronous sleeps with proper WakeLock
  integration.

  Mail polling logic moved from MailService to PollService

  PushService to keep application from being killed while push is
  running.

Improved logging of IMAP protocol, including logging folder name,
thread and connection hashcode.

Don't put a failed connection back into the IMAP mConnections
storage. 

IMAP IDLE uses new SleepService for delaying between failed connection
attempts (allows phone to sleep and provides better reliability)

Use a ThreadLocal for ImapPusher wakelocks

Component enablement/disablement in Email is done only when components
are out of phase with desired state. (Issue 188)
2009-11-22 17:01:04 +00:00
Jesse Vincent c6b15012e0 tidied activity code: astyle --style=java -s4 --brackets=attach --convert-tabs 2009-11-21 22:45:39 +00:00
Jesse Vincent 094215ebe0 Reindent MessageView.java in advance of refactoring 2009-11-21 22:45:14 +00:00
Bao-Long Nguyen-Trong 04717b817a Fixed error handling code when trying to view a message that does not exists
This code was lost during the merge of issue4-1.x branch
2009-11-21 00:11:57 +00:00
Jesse Vincent 8a6180fa21 Swap swipes based on people with real devices pointing out that I got em backwards. 2009-11-19 15:26:45 +00:00
Daniel Applebaum a7a46ac6fa Fixes Issue 673 2009-11-19 15:19:23 +00:00
Jesse Vincent 031c1e5358 left and right swipes in message view. 2009-11-19 06:03:59 +00:00
Bao-Long Nguyen-Trong 59bc0ac467 Merge from 2.0-MAINT branch 2009-11-19 00:42:27 +00:00
Jesse Vincent 1e57188f38 First pass at stopping the "Sending messages" notification when there's nothing to send
A better fix would take into account not sending flagged messages
2009-11-18 03:06:23 +00:00
Jesse Vincent 582682b99d make docs lie a little less 2009-11-18 03:06:14 +00:00
Jesse Vincent b91aad8f59 FolderUids -> MessageUids (working to remove assumptions about folders) 2009-11-18 03:06:05 +00:00
Jesse Vincent c392e778e6 Add "starring" to MessageView 2009-11-18 01:59:41 +00:00
Jesse Vincent fcd8ee9aeb Implement References/In-Reply-To/X-User-Agen. Fixes issue 42. Patch from e.w.stemle 2009-11-17 21:13:29 +00:00
Jesse Vincent 35ab566f43 Cleanup of the LocalFolder perf optimization from last night. 2009-11-17 19:25:46 +00:00
Jesse Vincent c6b5a626bd Merge branch 'skip-deleted-in-sqlite'
* skip-deleted-in-sqlite:
  Create branch skip-deleted-in-sqlite
  First pass at doing our "don't show deleted messages in lists" filtering in SQL
2009-11-17 16:54:50 +00:00
Jesse Vincent b328cbe991 A first implementation of "starred" messages in portrait list views 2009-11-17 16:52:23 +00:00
Jesse Vincent 3bc8a0a8d4 Make item-clicks in MessageList a little less convoluted 2009-11-17 16:52:10 +00:00
Bao-Long Nguyen-Trong 3f4c4a97cf Added file missed in r948 2009-11-17 00:04:10 +00:00
Bao-Long Nguyen-Trong 1a64826e32 Fixed issue 44
. Added content-type detection using file name extension
. This adds better integration with OI File Manager which implements the ACTION_GET_CONTENT intent
2009-11-16 20:51:34 +00:00
Bao-Long Nguyen-Trong aa18be9c96 Fixed issue 762
+ more draft handling fixes
2009-11-16 20:47:27 +00:00
Jesse Vincent 4cc22f8208 Remove duplicated "make this account the default" option during setup 2009-11-16 19:33:23 +00:00
Jesse Vincent 84ab290046 Give the user the choice of whether to enable Push as they create a new IMAP account.
TODO: explanatory prose underneath
2009-11-16 19:33:01 +00:00
Jesse Vincent 849a1de91e rephrase the status message to put Push back to first with the space I so desperately craved 2009-11-16 19:32:39 +00:00
Bao-Long Nguyen-Trong 8557cefabc Fixed issue 761 2009-11-16 19:27:57 +00:00
Jesse Vincent ae4af71379 remove dead code that someone commented out rather than delete. 2009-11-16 18:35:16 +00:00
Jesse Vincent 1c5289f412 Make the status messages for folders that are being synced with push a bit prettier 2009-11-16 18:34:46 +00:00
Jesse Vincent b9509e73f2 Fix Issue 774 - Don't show folder choosers before we have a working account 2009-11-16 18:23:56 +00:00
Jesse Vincent 21481af667 Slightly better MessageView fit-to-screen and scrollbar flow 2009-11-16 16:42:15 +00:00
Daniel Applebaum f14ecdd66e Fixes Issue 574 2009-11-15 15:19:39 +00:00
Jesse Vincent 6596fb901d First pass attempt at fixing the "Android 2.0 breaks contacts lookup" issue 2009-11-15 05:59:16 +00:00
Daniel Applebaum eec4a96617 Fixes Issue 587
"Delete from server" is now the default delete policy for IMAP and
WebDAV accounts.  POP3 accounts still default to "Do not delete from
server"
2009-11-15 01:21:19 +00:00
Daniel Applebaum 730352c08c Fixes Issue 752 2009-11-15 01:12:26 +00:00
Daniel Applebaum 133964fbf3 Fixes Issue 59 (provides 2 - 24 poll check periods)
Improves Issue 742 (makes push settings more obvious)
2009-11-14 15:07:12 +00:00
Daniel Applebaum 84a1e0647d Fixes Issue 742 2009-11-14 14:25:09 +00:00
Daniel Applebaum 4a2c94938a Record permanent failures into K9mail-errors 2009-11-13 13:52:09 +00:00
Bao-Long Nguyen-Trong 27caf93e11 Fixed issue 589 2009-11-13 08:14:10 +00:00
Bao-Long Nguyen-Trong ff2be7e643 Fixed issue 753 2009-11-13 07:36:05 +00:00
Jesse Vincent df16bb2766 Add the German version of "re:" to our reply regex 2009-11-13 04:03:36 +00:00
Jesse Vincent 719f7dcd2d Enable fast scroll from "pick a folder" dialogs 2009-11-13 03:20:40 +00:00
Jesse Vincent 6daeb6b749 Sort the "NONE" folder to the top of the auto-expand folder list 2009-11-13 03:20:31 +00:00
Jesse Vincent 393519d352 Now that we are 1.5+, untodo the 1.5 style quick-sliders in message and list views 2009-11-13 00:55:52 +00:00
Daniel Applebaum eb7fd69ed6 Fixes Issue 747. 2009-11-11 00:45:19 +00:00
Bao-Long Nguyen-Trong cf143cda86 Fixed issue with reply icon in subject in message view screen not being set properly when navigating around using up and down arrows 2009-11-09 06:02:46 +00:00
Bao-Long Nguyen-Trong 5f96961cd6 Fixed bug where intent is broadcasted for non new emails 2009-11-09 03:52:59 +00:00
Daniel Applebaum 22bfa74ddf Fixes Issue 733 2009-11-07 20:27:30 +00:00
Daniel Applebaum 0baf9d6134 Fixes Issue 722 2009-11-07 20:16:15 +00:00
Daniel Applebaum 90198382a4 Increase chance of Push mail picking up messages when connectivity is
restored.
2009-11-07 16:51:08 +00:00
Daniel Applebaum b9642ee5f3 Fixes Issue 738
Fixes Issue 133

Really, just displays a Toast and allows K-9 to continue in some
situations that otherwise cause a crash.  Will hopefully allow users
of Android 2.0 to use K-9, but may just provide better info about what
is going wrong.
2009-11-07 16:21:47 +00:00
Daniel Applebaum 2f4b9a1178 Issue 737
Don't crash if unable to find the owner name.  The actual owner name
fetching code will need to be updated for Android 2.0, but this will
help for now.
2009-11-07 15:32:05 +00:00
Daniel Applebaum 1983a7e2a7 Correct unread message counts for stores (like Pop3Store) which are
unable to provide a server-side tracked unread message count.
2009-11-03 03:21:42 +00:00
Daniel Applebaum eabc9af9b3 Fixes Issue 668
Fixes Issue 577

K-9 has earned its Canine Good Citizen.

K-9 now respects the Android-global Background data preference, by
default.  However, there is an override, allowing K-9 to ignore the
global preference, by either always running around and synchronizing
in the background, or staying put and not synchronizing.

A user can now elect to turn off mail synchronization across all
accounts in either the K-9 Preferences page by setting Background
synchronization to Never, or leaving that value as "When 'Background
data' is checked" and deselecting the Android-global Background data
preference.
2009-10-31 18:51:59 +00:00
Daniel Applebaum 581486fbd5 Eliminate secret debug preferences activity. Add debug preferences to
global preferences.
2009-10-31 17:10:54 +00:00
Daniel Applebaum 8951363442 Fixes Issue 448
Fixes Issue 651
2009-10-28 12:45:22 +00:00
Daniel Applebaum 25e36da75d Fixes Issue 712. 2009-10-25 23:56:25 +00:00
Daniel Applebaum ffe930442f Fixes Issue 573
Patch from mpredosin, supplied in Issue 573 on Aug 05, 2009.
2009-10-25 13:58:08 +00:00
Daniel Applebaum f43b13446e Comment out intended comment. 2009-10-25 13:47:59 +00:00
Daniel Applebaum 75868b5aa4 Enhancements to WebDAV (Exchange) capabilities:
1) Automatically add / separators if not supplied by user.  Fixes
   Issue 290

2) Enable Move and Copy.

3) Enable setting a message to unread state.

4) Set authentication header for downloading and sending messages, so
   that those functions work with sites using Basic authentication.

5) Don't swallow log Exceptions.  Instead, allow Exceptions to
   percolate up to higher levels so that they can be logged into
   K9mail-errors.

6) Provide appendMessages function, so that Drafts get stored on the
   server.

7) Enable server-side message deletion, using user-selected Trash
   folder.
2009-10-25 02:58:26 +00:00
Daniel Applebaum ec25d145d6 Added Account Settings to the message list option menu. Did this
because a user that has auto-open set to a particular folder might
never get to the actual folder list which contains the option menu
containing Account Settings.  (There's been one comment in the Market
pertaining to this.)
2009-10-24 17:10:02 +00:00
Daniel Applebaum 99b239fa71 Issue 675
Prevent a crash, and puts up a Toast, but you have to start over
setting up the account again.

This page needs an effective Back button.
2009-10-23 01:20:12 +00:00
Daniel Applebaum e315ee9156 Issue 708
Basically, patch submitted by themaninthesuitcase in Issue 708, but
consolidated into a single method.
2009-10-23 01:03:51 +00:00
Bao-Long Nguyen-Trong 09fa19affa Fixed issue 556 2009-10-22 15:54:49 +00:00
Daniel Applebaum 959404cc68 Issue 4: Implements Push Mail for IMAP accounts using IMAP IDLE
This commit contains the entirety of the changes performed in the
issue4-1.X branch from revision 718 through revision 851.  Because the
issue4-1.X branch was up-to-date with trunk revision 847 at revision
849, the source of this commit was not an "svn merge".  Instead, it is
merely a copy of all changed files from the issue4-1.X branch to my
trunk working copy and a straight commit.

Also:
Issue 551
Issue 628
Issue 650
Issue 654
Issue 656
Issue 682
Issue 696
2009-10-22 00:41:06 +00:00
Bao-Long Nguyen-Trong 78da963031 . MessageListener.synchronizeMailboxNewMessage() does not requires a context to be passed anymore.
. We use the application as context when broadcasting message received intents
2009-10-21 04:48:28 +00:00
Bao-Long Nguyen-Trong 4ffe75fa85 Refactored intent constant classes 2009-10-20 05:27:06 +00:00
Bao-Long Nguyen-Trong 7323fe67fd Minor cleanup so that we only broadcast the message received intent once 2009-10-20 04:59:02 +00:00
Bao-Long Nguyen-Trong a59fcf3e89 . Fixed issue 607
. Added intent for viewing individial messages
2009-10-19 19:35:31 +00:00
Bao-Long Nguyen-Trong 5186c3610f Fixed issue 331: Now delete temporary draft created by screen rotation when email is sent or discarded 2009-10-18 03:34:54 +00:00
Bao-Long Nguyen-Trong b8f4fdb882 Fixed issue 684: Only accept callbacks if the message uid of the callback is the same one we invoked the controller with. 2009-10-18 03:30:42 +00:00
Bao-Long Nguyen-Trong 4e2ba837aa Fixed issue 663: The source message of the reply was re-loaded every time the screen is rotated populating all fields on top of the framework handling the screen rotation 2009-10-18 03:22:17 +00:00
Bao-Long Nguyen-Trong b3616e379d Moving a few more things to UI thread as message are not displayed reliably 2009-10-07 18:19:56 +00:00
Bao-Long Nguyen-Trong 791d99fc7a Putting the switch from loading... to downloading.. to the UI thread for this to happen more reliably 2009-10-07 17:23:34 +00:00
Bao-Long Nguyen-Trong 82491ab42b Fixed issue 671 by reverting the part of r788 that introduced it 2009-10-05 04:41:26 +00:00
Daniel Applebaum b414e4d77d svn merge -c 806 ../issue4-1.X/ .
r806 merged to trunk from issue4-1.X
2009-10-03 16:08:42 +00:00
Daniel Applebaum 02889cfe37 svn merge -c 794 ../issue4-1.X/ .
svn merge -c 800 ../issue4-1.X/ .
svn merge -c 803 ../issue4-1.X/ .

Issue 654
2009-10-03 06:11:29 +00:00
Bao-Long Nguyen-Trong 3bb0d08855 Fixed issue 620
+ removed some dead code in the way

Note: K9 crashed once over ~48hrs so we may need to rework how we use message listener in general
2009-10-03 04:26:22 +00:00
Bao-Long Nguyen-Trong 02e41e6da0 Minor perf optimization using addHeader() instead of setHeader() 2009-09-26 22:47:13 +00:00
Bao-Long Nguyen-Trong 41563f1d64 Minor changes to help with issue 636 2009-09-25 21:06:10 +00:00
Bao-Long Nguyen-Trong 931cc4c243 Minor changes to help with issue 636 2009-09-25 21:02:25 +00:00
Bao-Long Nguyen-Trong ac022ce467 . Fixed issue 626 and issue 528:
Date header was  not set properly
2009-09-25 19:12:37 +00:00
Bao-Long Nguyen-Trong c2ca739293 . Added defensive code against empty self BCC address
This fixed issues 639 & 646
2009-09-25 17:02:50 +00:00
Daniel Applebaum f3312eb064 Eliminate failing Toast. Perhaps it can be restored, if the Toast is
generated in the message handling thread.
2009-09-24 02:09:57 +00:00
Daniel Applebaum b4b1b081a7 Issue 624
Don't bother going to server while creating an ImapMessage from a UID
2009-09-24 01:06:24 +00:00
Bao-Long Nguyen-Trong 75636b697c Display 'Downloading...' instead of 'Loading...' when we are fetching a message from remote store 2009-09-17 17:40:05 +00:00
Daniel Applebaum 08cd19e5a8 svn merge -x -w -c 760 ../issue4-1.X/ .
Improve reliability of message viewing and composing while still using
MessagingController worker queues

svn merge -x -w -c 761 ../issue4-1.X/ .

Put loading a message from the LocalStore into a ThreadPool executor,
like was done previously in MessageView.  Remote loading still goes
through the work queue.
2009-09-17 03:43:02 +00:00
Daniel Applebaum 5d5c65bee3 svn merge -x -w -c 756 ../issue4-1.X/ .
Increase reliability of MessageView when it is paused then resumed
2009-09-16 12:31:52 +00:00
Bao-Long Nguyen-Trong d61c7a192c Removed some logging (too verbose) 2009-09-15 05:20:12 +00:00
Daniel Applebaum ac6358ec5c svn merge -c 749 ../issue4-1.X .
ImapStore.ImapFolder is not thread-safe, so all access to the remote
folders must be done through the work processing of the
MessagingController.
2009-09-15 04:28:37 +00:00
Bao-Long Nguyen-Trong a4965f042c Fixed issue with encoding of email addresses in the header with non ascii characters. The way were doing it was only compatible with certain email clients (Thunderbird) but not with K-9 itself 2009-09-10 17:33:19 +00:00
Bao-Long Nguyen-Trong 736d330e38 Fixed issue 560: This was happening only when the user has only one account 2009-09-10 17:31:11 +00:00
Bao-Long Nguyen-Trong c11c484718 Fixed issue 261:Commas within diplay names were considered as delimiters
--> Using built in Rfc822Tokenizer
2009-09-08 07:31:02 +00:00
Daniel Applebaum 3ca12e2bb9 Issue 478 2009-09-03 16:13:00 +00:00
Daniel Applebaum e9a17ada17 Prevent crashes if user attempts to sort while folder is loading. 2009-08-29 23:08:07 +00:00
Daniel Applebaum 44a52d54a7 Don't crash when no suitable intent found 2009-08-29 22:55:14 +00:00