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

1640 Commits

Author SHA1 Message Date
Jesse Vincent
00199de3bb Extract "disable buttons" on messageview and disable buttons before
shifting to the next message
2010-07-11 15:31:11 +00:00
Jesse Vincent
0a848d6526 Make the "header" section addressable in messageView (for later hiding) 2010-07-11 15:30:53 +00:00
Jesse Vincent
b3e6844e44 make the 'should we show animations' boolena actually 'showAnimations'
instead of isAnimations.
2010-07-11 15:30:40 +00:00
cketti
0c7d4825cc Avoid NullPointerException when trying to move a message before it is fully loaded (in message view).
Fixes issue 1957
2010-07-11 14:57:00 +00:00
Koji Arai
28d3967d0f Fixes issue 305
Support Content-Id header to show inline images.
2010-07-11 13:44:16 +00:00
Jesse Vincent
c359b2c6bf Comment out redundant logging of IMAP commands
Each IMAP command was logged 3 times in normal operation. It seriously
clouds the logs and makes it much harder to read and debug ongoing
connections
2010-07-11 12:31:47 +00:00
Jesse Vincent
7a543b45b1 Remove duplicate code between two message counting routines in ImapStore 2010-07-11 12:31:34 +00:00
Jesse Vincent
9321a045d9 When counting remote unseen/flagged messages, don't window to only the
most recent 300 messages - Since we display this # to the user, the
"last 300" heuristic ends up confusing and _wrong_ on a regular basis.
2010-07-11 12:31:22 +00:00
Jesse Vincent
ae339f1ac8 Add a per-account setting to choose how much of each message to download automatically. 2010-07-11 11:59:14 +00:00
cketti
e59987fdcb Display an error message (instead of "null") if a message couldn't be decoded because of a missing charset.
See issue 1480 for a test case.
2010-07-11 01:28:08 +00:00
Jesse Vincent
44f161fc7f extract "fetch unsyncced messages" from downloadMessages 2010-07-10 17:10:24 +00:00
Jesse Vincent
c2d9d0e15d extract "sync local message flags" from downloadMessages 2010-07-10 16:42:54 +00:00
Jesse Vincent
35b7fce087 factor out downloadSmallMessages from downloadMessages 2010-07-10 16:42:39 +00:00
Jesse Vincent
9dc3f09068 factor "downloadLargeMessages" out of "downloadMessages" 2010-07-10 16:42:12 +00:00
Jesse Vincent
ab8cdb3522 minor astyling 2010-07-10 16:41:48 +00:00
Jesse Vincent
0f17fc4a83 Factor a bit of code out of a 400 line method. Still needs a lot more
outfactoring
2010-07-10 16:41:34 +00:00
Jesse Vincent
4024cca2aa Add a comment about the custom IMAP command Yahoo! needs to work right. 2010-07-10 16:41:22 +00:00
Jesse Vincent
5aea9e7d9b Remove duplicate code from error message generation 2010-07-10 16:41:07 +00:00
Jesse Vincent
56217e8ad6 Debug message clarity fixes 2010-07-10 16:40:55 +00:00
Jesse Vincent
61b25c8760 only store an internalDate if we actually get it from the server; If we
don't have an internaldate, use the sentdate for sorting comparisons.
2010-07-10 16:40:34 +00:00
Jesse Vincent
52ff331771 When deciding whether a message is older than a certain date, we should
be prefering the date we can ~trust "Internal" to the date asserted by
the sender.
2010-07-10 16:40:13 +00:00
Jesse Vincent
ee63564138 "ReceivedDate" was an unused concept. Its value was never set. 2010-07-10 16:40:00 +00:00
Thialfihar
f2fe826fb3 make MessageList remember the last selected item 2010-07-09 11:12:32 +00:00
Thialfihar
67b23fc797 added a setting for language, overriding the system locale settings
Update issue 1290
2010-07-09 00:27:47 +00:00
Jesse Vincent
dbb4d6e21c Now that we have internal_date on all messages, we should be using it
for sorting. This will prevent spam with ...less true dates from pushing
messages to the top of your list. Additionally, when downloading
messages from the server, they'll actually appear in the order they were
received - the existing behaviour really screwed up users who were
trying to triage mail as it came in.
2010-07-08 16:33:19 +00:00
Jesse Vincent
fd234c2701 If we hit a race condition and download a message after it's already
been marked as suppressed, then don't actually save it locally
2010-07-08 15:49:26 +00:00
Thialfihar
190b597a45 add Archive keyboard shortcut to MessageList, refs issue 3 2010-07-08 15:27:22 +00:00
cketti
365d82407a Make "Settings" work in search folders.
Fixes issue 1844
2010-07-08 13:30:30 +00:00
cketti
8bc42639c4 Fix market-reported NullPointerException
Fixes issue 1660
2010-07-08 01:09:43 +00:00
cketti
1eb37c2031 Added menu option to select & copy text in the message view.
The standard ScrollView causes problems when selecting text (and the message is long enough so scrolling is possible). The newly introduced ToggleScrollView can be set to disable scrolling via touch gestures thus making copying multi-line text sections possible.

Fixes issue 662
2010-07-07 22:14:45 +00:00
Thialfihar
76df04e949 make shortcuts honour the account setting for the startup folder even if changed after shortcut creation, based on cketti's patch, refs issue 1025 2010-07-07 18:31:16 +00:00
Thialfihar
00a8f948eb added launcher shortcuts to accounts, refs issue 1025 2010-07-07 16:17:13 +00:00
Thialfihar
5d4073072f use "http://" as baseUrl in WebView instead of "email://", refs issue 267 2010-07-07 10:54:50 +00:00
Jesse Vincent
a826f33eb3 find src/com/fsck/ -name \*.java|xargs astyle --style=ansi
--mode=java --indent-switches --indent=spaces=4 --convert-tabs
--unpad=paren
2010-07-06 10:29:26 +00:00
Thialfihar
96b93f7327 minor coding style fixes 2010-07-05 18:06:30 +00:00
Thialfihar
8752347b5f merged archive-move-spam-buttons into trunk 2010-07-05 13:41:52 +00:00
cketti
42b0845522 Remember last selected folder for copy and move operations and scroll this folder into view on subsequent folder selections (for move and copy operations).
Fixes issue 1538
2010-07-04 23:29:57 +00:00
Koji Arai
a5a1ae7d28 Fixes Issue 41
Should query whether saving the draft message or discarding when back button was pressed.

Suppress to save the draft message automatically when attaching any file.
2010-07-04 17:46:55 +00:00
Thialfihar
24079b673d some old code removed 2010-07-04 14:52:32 +00:00
Thialfihar
03b28c8b68 Added account settings for "archive" and "spam" folders. See issue 3. 2010-07-04 13:48:06 +00:00
Daniel Applebaum
cdbcb188ec Fixes Issue 1664
Correct thread safety on some member variables when doing null checks.

Explicitly check for mMessageCount == -1 and stop=true in idling loop.

However, the original error message "Message count = -1 for folder"
will still arise in some circumstances and is a valid error to
report.
2010-07-03 15:22:54 +00:00
Daniel Applebaum
318099082f Fixes Issue 794
Implements new setting "Sync remote deletions" which is checked by
default.  When unchecked, K-9 Mail will no longer remove messages from
local storage just because the message was removed from the server.
This functionality works for all account types.  Messages will still
be removed from the local store in order to stay within the limit
imposed by the "Number of messages to display" setting.
2010-07-03 13:10:38 +00:00
cketti
45339457f8 Added preference to go to Integrated Inbox on application startup.
Fixes issue 1797
2010-07-03 00:26:35 +00:00
Fiouz
e8cb293e03 Fixes Issue 1887
Save/restore In-Reply-To/References headers on configuration change
2010-07-02 21:17:06 +00:00
Koji Arai
dab0c9a97f Fixes Issue 1914
Show To, Cc and From headers on the part of additional headers without fetching all headers.
2010-07-02 14:57:55 +00:00
Koji Arai
3ee3fad3d6 Fixes Issue 1915
Added the vibrate pattern preference.
2010-07-02 14:47:01 +00:00
Daniel Applebaum
9d2276aa0a Fixes Issue 1790
Refresh dialog "message" each time the dialog is raised.
2010-06-30 00:41:27 +00:00
Daniel Applebaum
3c146c5a7f Fixes Issue 1832
If the message isn't worth showing immediately, it is not worth
saving!

(Don't save a message unless we get at least a non-null subject and
non-null sender during first pass sync.)
2010-06-30 00:16:59 +00:00
Daniel Applebaum
fc55c54db0 Fixes Issue 1875
Change initial value for maximum message age to -1 (unlimited) instead
of erroneous 10.
2010-06-28 02:51:47 +00:00
cketti
7adc168471 Added a null pointer check to protect from NullPointerExceptions.
See issue 1749
2010-06-21 18:17:10 +00:00
Jesse Vincent
e485aa83c6 Fix for the abiltiy to hit "Back" out of global preferences after
switching away from K-9 and back again.

Fixes issue 1791

Patch by fiouzy@gmail.com
2010-06-21 14:39:22 +00:00
cketti
4a6b99b647 Fixed some warnings 2010-06-20 14:19:01 +00:00
cketti
d5f53a99e6 Removed comment 2010-06-20 14:11:16 +00:00
cketti
648e3bd829 Added option to specify the message quote prefix character/string (default ">"). Applied patch provided by fiouzy (Thanks!) with some small modifications.
Fixes issue 1830
2010-06-20 14:07:03 +00:00
cketti
7f625b5ef4 Added option to specify Reply-to address for an identity. Patch provided by fiouzy (Thanks!).
Fixes issue 1762
2010-06-20 12:48:22 +00:00
cketti
e529bed259 Added option to return to the message list after deleting a message in the message view activity. Patch provided by fiouzy (Thanks!)
Fixes issue 1634
2010-06-20 12:15:29 +00:00
cketti
a5c5aaa054 Better handling of cases where a special folder is set to INBOX (e.g. Sent folder = INBOX). Make sure we count unread messages and don't exclude the Inbox from notifications in this case.
Fixes issue 1817
2010-06-17 12:42:22 +00:00
cketti
6b5e9949d7 Show "From", "To", "Cc" headers in "raw" form when displaying all message headers.
Fixes issue 1805
2010-06-16 19:58:09 +00:00
cketti
4f7ab92985 Move to next/previous message in message view if a message was moved.
Fixes issue 1621.
2010-06-14 13:46:08 +00:00
Daniel Applebaum
8cb7f8f317 Fixes Issue 1763
Patch from jca02266 to use locale independent date formatter.
2010-06-11 12:56:01 +00:00
Jesse Vincent
dcd83f243b For post-2.8 - start at replacing text buttons with image buttons.
better images are desperately needed.
2010-06-10 03:37:23 +00:00
cketti
2aac012282 Folder.fetchPart() is called when it shouldn't be. Disabled the exception for now. See issue 1733 2010-06-09 19:44:35 +00:00
Jesse Vincent
504f1b7e17 Fixed 1597
Switching "Touch-friendly view" option from message list view no longer causes NullPointerException / Force close
2010-06-09 02:45:28 +00:00
Daniel Applebaum
c3739bb43b Fixes Issue 1755
r1789 has incorrect Issue (1411) mentioned.
2010-06-09 00:16:55 +00:00
Daniel Applebaum
6476281379 Fixes Issue 1411
Only automatically finish the FolderList Activity when actively
managing the back button.
2010-06-08 23:26:48 +00:00
Daniel Applebaum
80ed18c469 Fixes Issue 422
Committing this change to properly credit 'mpredosin' with the patch
committed at r1783 "Convert to hierarchical traveral from deep
traversal."
2010-06-08 11:33:47 +00:00
Jesse Vincent
87a567ea40 Bullet proofing to make IMAP fetches not break when folders have insane
default visible limits.
2010-06-08 02:37:18 +00:00
Daniel Applebaum
07f9abe162 Fixes Issue 422
Convert to hierarchical traveral from deep traversal.
2010-06-08 01:01:20 +00:00
Daniel Applebaum
bcb986451e Fixes Issue 1728
Use the default account when composing from search results.
2010-06-08 00:45:07 +00:00
Daniel Applebaum
dd86cdfec6 Fixes Issue 1732
Initialize mDisplayCount to a valid value.
2010-06-07 15:55:14 +00:00
Daniel Applebaum
e1d3f38b11 Fixes Issue 1732
Handle accounts with negative (invalid) saved display count values.
2010-06-07 15:51:02 +00:00
Jesse Vincent
421ecac997 Strip PGP headers from message preview 2010-06-06 22:28:29 +00:00
Jesse Vincent
c287c2e7df Patch from fiouzy to fix back-button in folderlist when you don't have
"Manage Back Button" enabled.
2010-06-06 21:48:44 +00:00
Jesse Vincent
366ce15196 Very first pass at contextual search. This _should_ end up as a submenu
with searches for "Same recipient", "In this conversations", "On this
date", etc.
2010-06-06 21:33:44 +00:00
Jesse Vincent
4bfebe42f1 Allow users to choose whether they want plaintext messages to be
fixed-width when uprezzed to HTML.
2010-06-06 21:33:33 +00:00
Jesse Vincent
0624f119df Gr. typo to my "word character" regex 2010-06-06 21:33:15 +00:00
Jesse Vincent
222808b51d Bump up preview length from 160 to 250 to make better use of larger
displays
2010-06-06 21:33:05 +00:00
Jesse Vincent
18cf923072 Only strip : lines containing word characters. This should improve the
preview when someone sends mail starting with a time. (12:01)
2010-06-06 21:32:57 +00:00
cketti
84d5e7216d Fix a crash when using the back button in a search results list with "Manage Back button" preference enabled.
Fixes issue 1716
2010-06-06 14:47:24 +00:00
cketti
576078e778 Prefix IPv6-addresses with "IPV6:" in EHLO command.
Fixes issue 1708
2010-06-03 01:00:24 +00:00
cketti
3812c75f66 Applied patch by fiouzy to read In-Reply-To and References header from saved draft.
Fixes issue 1686
2010-06-02 16:29:59 +00:00
Daniel Applebaum
6d6a9d0ffd Fixes Issue 1707
Eliminate extraneous spaces

Also, abort IMAP IDLE connection attempt if mConnection is null before
IDLEing.  Otherwise, we cannot set the idle timeout.
2010-06-02 14:25:04 +00:00
cketti
64c7df60ab Don't log sensitive information in SMTP commands when "Log sensitive
information" is unchecked. Applied patch by fiouzy with some small modifications.

Fixes issue 1387
2010-06-02 13:14:30 +00:00
Daniel Applebaum
a308ce8a2d Eliminate expensive and unused expungedUid map. 2010-05-31 15:21:51 +00:00
Daniel Applebaum
b35f807820 Fixes Issue 227
Provide for controlling the maximum age of syncrhonized messages.
Efficient with IMAP, much less efficient with other Stores.
2010-05-30 21:20:47 +00:00
Daniel Applebaum
dedfd026be Fixes Issue 254
Provide for only showing folders that are subscribed on the server
(IMAP only)

Also:
Change default for Notification behavior to the old way.  Make going
to the search for unread messages off by default.

Fix up some hiding of labels, etc. on the incoming server settings.

Check for message suppression in search results.
2010-05-30 16:56:50 +00:00
Jesse Vincent
1a66072910 find src/com/fsck/ -name \*.java|xargs astyle --style=ansi --mode=java --indent-switches --indent=spaces=4 --convert-tabs --unpad=paren 2010-05-30 04:17:00 +00:00
Jesse Vincent
6b5bcd2c4d Make the back button behaviour configurable. The default should remain
identical to the most recent behaviour. As an option, the user can force
back to always go "up" a level like Jesse likes
2010-05-30 04:16:44 +00:00
Jesse Vincent
49c4a4f97c refactor search code to allow us to search on specific fields. 2010-05-29 21:56:17 +00:00
Jesse Vincent
cce6a95c2c start using the android API for "/sdcard" 2010-05-29 21:56:09 +00:00
Daniel Applebaum
291f6d18a2 Fixes Issue 1643
Fixes Issue 1664

Issue 1643: Some servers respond with an untagged EXISTS to every
NOOP.  This change parses through all untagged responses in a loop
until no more are being generated, avoiding calling internalOpen each
time.

Issue 1664: I have never personally seen this error, and the log looks
like a thread safety problem.  mMessageCount is being set in one
thread (the IDLE thread) but not properly visible in another thread
(the check mail thread).  mMessageCount and other ImapFolder private
variables are now volatile in hopes of correcting this problem.
2010-05-26 03:24:33 +00:00
Daniel Applebaum
3f0aada43b Eliminate duplicate calls to notifyAccount while synchronizing a
folder.
2010-05-22 22:00:06 +00:00
Daniel Applebaum
a8339dfe9d Provide for tracing length of WakeLock activity.
Improve thread safety using volatiles.
2010-05-22 21:58:35 +00:00
Daniel Applebaum
5e3e204a4c Fixes Issue 1643
Enhance K-9 Mail to be more tolerant of non-compliant IMAP servers.
Do not require a space following the + in command continuation
requests.  The rest of the token parser will swalow the space if it is
actually there but we don't really need it.
2010-05-22 20:52:01 +00:00
Daniel Applebaum
8eeebc593a Handle thread interruptions better and fix some race conditions. 2010-05-22 17:35:05 +00:00
Daniel Applebaum
24b178773f Make sure prefix is fetched before any call to getCombinedPrefix. 2010-05-22 17:34:16 +00:00
Daniel Applebaum
493cdc4f5d Correct push restart logic 2010-05-22 15:08:27 +00:00
Daniel Applebaum
6c814fb5e7 Fixes Issue 1653
All set the display class, whether or not in push mode.
2010-05-22 14:28:04 +00:00
Daniel Applebaum
7ca2086c73 Fixes Issue 1652
Fixes Issue 1644

Grab correct color from preferences storage for LED.

Also, remove LED and chip colors on account deletion.
2010-05-22 14:07:02 +00:00
cketti
5627117ddf Use 997 as maximum line length for References header. See http://code.google.com/p/k9mail/source/detail?r=1714 for details. 2010-05-21 16:37:45 +00:00
cketti
c5486469c2 - Add menu item to show additional headers in the message view
- Add option to save all headers locally (incoming server settings)

Applied patch provided by timmlinder with small modifications.

Fixes issue 43
2010-05-21 15:34:29 +00:00
cketti
c29722a56c Make sure the References header doesn't exceed 998 characters and the value won't get Q-encoded. Thanks to fiouzy for providing the patch.
Fixes issue 1559
2010-05-21 12:20:32 +00:00
Daniel Applebaum
6afb8c8506 Make sure to compare capabilities using upper case. 2010-05-20 11:55:42 +00:00
Daniel Applebaum
f318fc159b Fixes Issue 1641
Populate text and subject when handling ACTION_SENDTO
2010-05-20 11:08:40 +00:00
Daniel Applebaum
59f22d8e7e Save capabilities in upper case so we handle them case-insensitively,
too.  Make sure all CAPABILITY-detection constants are written in
upper case.
2010-05-20 04:19:15 +00:00
Daniel Applebaum
d873ecbe7a From cketti's reminder: check untagged response with equalsIgnoreCase.
Also, reset mCombinedPrefix when the delimeter is discovered.
2010-05-20 04:13:49 +00:00
Daniel Applebaum
af55c6f48b We don't need to log the content of the map each time we add to it. 2010-05-20 03:38:16 +00:00
Daniel Applebaum
44da2e1fe6 After discussion with cketti, reinstate using LIST to find the path
delimeter, but only if the server does not support NAMESPACE.  Since
we've encountered non-compliant servers that freak out at the LIST
command, enclose in a try/catch structure so that failures do not
totally prevent IMAP communication.
2010-05-20 02:33:44 +00:00
cketti
6e3183f54f Moved classes Regex and DomainNameChecker from android (package) namespace to K-9 namespace. This way we're protected from modifications to these classes in future Android versions. 2010-05-19 19:16:36 +00:00
cketti
b5a6a28f19 Fixed some more warnings:
- Removed unused imports
- Removed unnecessary @SuppressWarnings("deprecation") annotations
- Added @SuppressWarnings("deprecation") to API 1-3 code that's now (API 5) deprecated
- Added missing @Override annotation
2010-05-19 18:44:22 +00:00
cketti
26bd72573e Removed unused imports. 2010-05-19 18:32:30 +00:00
cketti
58b8479612 Code refactoring:
- Created "controller" and "mail.filter" package
- Moved a lot of classes to new/other packages
- Removed unused classes: NoSuchProviderException, MessageDateComparator
2010-05-19 18:17:06 +00:00
cketti
22ce159fe6 Merge imap-parser branch.
Fixes issue 1547.
2010-05-19 13:31:48 +00:00
Daniel Applebaum
0e3f9a9db4 Synchronize access to encapsulated WakeLock 2010-05-17 02:33:19 +00:00
Daniel Applebaum
f8994f6491 Turn off tracing by default.
Lower log level.
2010-05-17 01:04:42 +00:00
Daniel Applebaum
9cf42ef913 Provide for tracking all WakeLock usage.
Simplify WakeLocks use by pushing.

Correct fault in IMAP IDLE WakeLock usage.  The ThreadLocal in
MessagingControllerPushReceiver meant that the WakeLock acquired when
the DONE was sent was not being released when entering back into IDLE
state.

Consolidate the account notification so that all Activities use the
methods in MessagingController.
2010-05-17 00:30:32 +00:00
Daniel Applebaum
71c43b9634 Fixes Issue 1482
Utilize cketti's AutoSyncHelper in order to provide a way to make K-9
Mail obey the global Auto-sync setting.  K-9 Mail doesn't obey the
Auto-sync setting by default because K-9 Mail isn't listed as one of
the listed applications.
2010-05-15 21:26:15 +00:00
Jesse Vincent
a59ade4fdd When no messages are selected yet, "Select all" is the only valid batch
option. Instead of forcing the user through a submenu, show "Select all"
instead of the submenu
2010-05-15 21:03:44 +00:00
Jesse Vincent
ea6bb0000e Let users pick LED Notification colors different from their account chip colors 2010-05-15 20:35:59 +00:00
Jesse Vincent
384803076d When instantiating an account, set the default color to something
random, rather than blank, so that new accounts don't endup without
colors.
2010-05-15 20:35:47 +00:00
Jesse Vincent
f799be05c9 Account.java had developed dos line-endings. :/ 2010-05-15 20:35:39 +00:00
Jesse Vincent
ecebdf18cd find src/com/fsck/ -name \*.java|xargs astyle --style=ansi --mode=java --indent-switches --indent=spaces=4 --convert-tabs --unpad=paren 2010-05-15 19:46:16 +00:00
Daniel Applebaum
b51bce6ebf Fixes Issue 1551
Fixes Issue 1577

Issue 1551: 
Some IMAP servers send untagged EXPUNGEs to IDLEing
clients without ever haven't sent an untagged FETCH.  The untagged
EXPUNGEs are harder to deal with because they don't have a UID.  So,
if the user has elected to have the IDLE connection start with a poll,
we can maintain a map of message sequence numbers to UIDs that we can
use to figure out which message to delete.  To mitigate the risk of
the map falling out of date, we do a UID SEARCH UID before removing
the local copy of the message, just to make sure the message is really
gone from the server.  If we detect an error, do another poll to
resync the map.

Issue 1577:
Restore the removal of notifications for an account when the account's
unread message count goes to 0.
2010-05-15 19:35:07 +00:00
Daniel Applebaum
1502660826 Fixes Issue 1561
The user can elect to have opening a Notification open a
account-specific search for unread messages.
2010-05-12 05:35:08 +00:00
Daniel Applebaum
8b92bc3836 Fixes Issue 1474
Fixes Issue 1562

Issue 1474:
Provide new facility to totally wipe all data for an account but leave
settings intact.  This is useful because sometimes storage is so full
that SQLite cannot perform the usual VACUUM or message deletion.

Add confirmation dialogs to destructive Clear and Recreate operations.

Remove destructive Clear from FolderList so as not to have to
duplicate the confirmation dialogs.

Issue 1562:
Suppress notifications when new messages arrive in Trash, Sent or
Drafts special folders.
2010-05-12 04:17:52 +00:00
Jesse Vincent
e77729cb2d First pass at getting a blinky LED that's the account's color 2010-05-12 03:06:11 +00:00
Jesse Vincent
093d65513a Clickable folder icons in account lists to get to folder lists, even if
there's an auto-open folder
2010-05-12 02:52:10 +00:00
Jesse Vincent
ba021597c4 astyle 2010-05-12 02:51:59 +00:00
Jesse Vincent
1bf1643987 Move Account and Folder settings into a submenu. give access to global
preferences from there, too. - many users never leave their inboxes
making it hard to get up to Settigns
2010-05-12 01:18:12 +00:00
cketti
2121ebc012 Correctly encode attachment filenames with non-ASCII characters. Thanks to jca02266 who provided the base patch.
Fixes issue 1555
2010-05-11 15:05:50 +00:00
Daniel Applebaum
d5b128e8cf Specify that our notifications use the Notification audio stream. 2010-05-11 04:13:23 +00:00
cketti
6a40fd1f46 Helper classes to get the state of the Android auto-sync setting. Implementation differs for SDK 1.5, SDK 1.6 and SDK 2.0+. See issue 1482 for more details. 2010-05-10 20:15:41 +00:00
cketti
37b42f58a6 Fix error handling code in DB upgrade. 2010-05-10 00:14:26 +00:00
Daniel Applebaum
6562d43f56 Cleanup logic for controlling visibility of email field for each
account.
2010-05-09 15:50:58 +00:00
Daniel Applebaum
6aeac22dad Fixes Issue 300
Fixes Issue 772
Fixes Issue 852

Issue 300: Handle incoming IMAP tokens in a case-insensitive manner

Issue 772: Add Yahoo workaround

Issue 852: Add configurable IMAP IDLE refresh frequency in Incoming
server settings

Also:
Add configuration option for whether push system executes a poll on
each connect.

Move the configuration for the maximum number of push folders to the
Incoming server Settings.
2010-05-09 15:27:41 +00:00
cketti
29e024b24e Fixed small indentation issue. 2010-05-06 13:27:42 +00:00
Daniel Applebaum
e55d3019c3 Really fix this (I hope) based on more feedback from cketti. 2010-05-06 13:24:13 +00:00
Daniel Applebaum
590b222507 Code cleanup as suggested by cketti. 2010-05-06 11:29:26 +00:00
cketti
683f31e32e Code cleanup: Fixed some warnings 2010-05-03 13:46:55 +00:00
Jesse Vincent
c31b224de3 enable dan's new "resync accounts on reconnect" code for push 2010-05-03 00:20:27 +00:00
cketti
582c3f82b8 New preference setting to add buttons to attach images or videos which is needed to work around a bug in Gallery 3D. Buttons are enabled by default if a buggy Gallery 3D version is found.
Thanks to dman13 for providing the work-around and analysing the bug.

Fixes issue 1186
2010-05-02 18:24:33 +00:00
Daniel Applebaum
989e89f5b0 Fixes Issue 1048
Zero out unread and flagged counts on all folders in an account being
cleared.
2010-05-02 05:37:48 +00:00
Daniel Applebaum
6e9145f037 Adjunct to the new variable font sizes, allow the Account list and
Folder list items to vary in size based on the font sizes.
2010-05-02 04:54:09 +00:00
cketti
331a6ca99b - Always use light theme for the message view since we don't change the colors of the WebView (i.e. it always uses black text on a white background).
- Always display the date in the message view
2010-05-02 00:10:55 +00:00
Daniel Applebaum
68e7b7fa21 Fixes Issue 323
Fixes Issue 1105
Fixes Issue 1395
Fixes Issue 1421
Fixes Issue 1426

When the remote store is incapable of returning an unread message count (POP)
or a flagged message count (POP, WebDAV), count the number of local
messages with the desired atributes.
2010-05-01 23:20:54 +00:00
cketti
f706861599 Show "(No subject)" in the message view for mails without subject. 2010-05-01 23:15:59 +00:00
cketti
fd26ec475a Show "(No subject)" in the message list for mails without subject. 2010-05-01 23:12:27 +00:00
Daniel Applebaum
211d30582a Cleanup obsolete imports 2010-05-01 21:53:50 +00:00
Daniel Applebaum
d6fca0f1e9 Get rid of log used while debugging. 2010-05-01 20:11:42 +00:00
Daniel Applebaum
ee1b4b70e2 Fixes Issue 1412
Keep search results in sync with newly arrived or deleted messages.
Intentionally does not remove messages from search results due to
flag (flagged/starred or read/unread) state changes, because that
would be awkward while manipulating messages in search results.
2010-05-01 20:06:52 +00:00
cketti
c6fee3efb9 Quoted strings can contain '"' in escaped form. readStringUntil() fails to unescape and will will return prematurely when the string contains an escaped '"' character.
Fixes issue 512.
2010-04-30 13:51:19 +00:00
Jesse Vincent
8af7f4a7b6 find src/com/fsck/ -name \*.java|xargs astyle --style=ansi --mode=java --indent-switches --indent=spaces=4 --convert-tabs --unpad=paren 2010-04-29 04:59:14 +00:00
Daniel Applebaum
4c6df71fe1 Reduce logging level, and make Logs only happen when K9.DEBUG is true. 2010-04-27 05:00:08 +00:00
Daniel Applebaum
0459be3bb8 Fixes Issue 868
When connected to a server that does not automatically send an
untagged UIDNEXT with the responses to SELECT, explicitly SEARCH for
the currently highest UID in the folder on the server and then add 1
to it to get the UIDNEXT.
2010-04-27 04:06:26 +00:00
Daniel Applebaum
3f771474c1 Fixes Issue 1477
Keep mSelectedCount in sync with the number of selected messages.
2010-04-27 03:26:54 +00:00
Daniel Applebaum
78a101547c Provide for doing a full poll/sync of a folder whenever the IMAP IDLE
connection is established.  Turned off for now, but just get rid of
the false && on line 2641 in order to enable it.
2010-04-27 03:02:17 +00:00
Jesse Vincent
55d70c3bf7 rather than fetching 10 messages on push reconnect, fetch a full
compelment of displayable messages. This should help eliminate "Gaps"
when reconnecting push connections after going offline.
2010-04-26 16:20:43 +00:00
Jesse Vincent
ac36016b86 Only show the "Cc" lines in message view if there's a Cc. 2010-04-26 15:23:57 +00:00
Jesse Vincent
417db22879 Consistent random colors for accounts without color chips 2010-04-26 14:25:37 +00:00
Jesse Vincent
7b75788398 drop the intensity of the account color chips a bit 2010-04-26 14:25:18 +00:00
Daniel Applebaum
c01adf3246 If we're doing a folder-involved search and an account has no folders
that match the folder criteria, don't search in the account.
2010-04-25 17:52:59 +00:00
Daniel Applebaum
d7f18c7e35 Finally get the interaction right between integrated folder,
searchable folders, and the various search strategies.

Integration takes precedence over searchability.  The Integrated Inbox
doesn't care about folder searchability.  Nor does an unread or flag
search on specific folders.

Searches on specific accounts always go for displayable folders.  That
might need to change so that searches on specific accounts can be on
DISPLAYABLE or ALL, but never NEVER.  But in the current approach,
account-specific searches are done from the Accounts Activity, which
has an unread counter based on displayable non-special folders, so the
present implementation is the most logical for now.
2010-04-25 16:43:11 +00:00
Daniel Applebaum
267f02fc48 Add a color chip to the left side of the message headers so that it is
possible to tell in which account the message is located.  Especially
useful when traversing search results in the MessageView.
2010-04-25 16:33:32 +00:00
Daniel Applebaum
6686c3a910 Fixes Issue 1473 2010-04-25 14:47:10 +00:00
Jesse Vincent
167e856b15 default accounts to random colors rather than black 2010-04-25 09:07:34 +00:00
Jesse Vincent
c649073fa7 Finish removing the old Android 1.0 chips 2010-04-25 08:59:59 +00:00
Jesse Vincent
d6bc0765d8 Allow users to set the account 'Chip' color per account. 2010-04-25 08:47:24 +00:00
Jesse Vincent
6bf429fd0d Initial import of the android "demo" color picker dialog 2010-04-25 08:46:37 +00:00
Daniel Applebaum
6cfcfb953f Aggressively get rid of obsolete Flag X_NO_SEEN_INFO. It was
interfering with "unread" searches on POP3 accounts.

Flags really should be normalized in the database to eliminate the use
of LIKE while searching by Flags.
2010-04-25 06:17:15 +00:00
Daniel Applebaum
c7d679f773 Folder List should use Folder List-specific font sizes. 2010-04-24 19:15:43 +00:00
Daniel Applebaum
f185240f67 Make stars and envelopes on folder active. 2010-04-24 19:10:57 +00:00
Daniel Applebaum
4bec5ea2a3 Remove MessageReference from local list of MessageReferences when
message is deleted.
2010-04-24 18:02:45 +00:00
Daniel Applebaum
a2f4391501 Fixes Issue 1341
Pass around simple Serializable MessageReference objects containing
account UUID, folder name and message UID so that MessageView can
traverse lists of messages which span folders and accounts.
2010-04-24 14:59:27 +00:00
Daniel Applebaum
e7e59ef858 Fixes Issue 1450
Fixes Issue 1456

Don't add canned searches to account list if no real accounts exist.

Fix NPE.

Prep work for searching named folders.
2010-04-24 04:35:39 +00:00
Daniel Applebaum
8e0ee1a6e1 Star and envelope are now active for regular accounts. 2010-04-22 04:58:50 +00:00
Daniel Applebaum
41c5dc5986 Fixes Issue 1448
Fixes ClassCastException.

Also:
Envelope and star in Accounts Activity are now both "hot".  Tapping
the main part of the search opens the full search; tapping the
envelope opens the search only for unread messages; tapping the star
opens the search but only for starred messages.

The envelope and star are a bit small to reliably tap.  Both options
should be available via long-press, also.

Methodology will be extended to real accounts, as well.
2010-04-22 02:20:35 +00:00
cketti
8ebbc611e9 Fix NullPointerException when using the touch friendly message list. 2010-04-21 00:58:09 +00:00
cketti
f8695f9a61 Added preference screen to pick font sizes for all important information in account list, folder list, message list and message view.
Fixes issue 7
2010-04-20 16:37:03 +00:00
Daniel Applebaum
9310f3f6c6 Fixes Issue 1441
Shutdown threadPool when Service is destroyed.
2010-04-20 03:22:43 +00:00
Daniel Applebaum
e22f3d2c1b Provide user control over the account size measurement and search
result counting that are displayed in the Accouts Activity.  These can
both be slow, so some users may opt-out.
2010-04-19 02:55:02 +00:00
cketti
1d361d751e Added meta-Tag with charset=utf-8 to about box html source to fix UTF-8 issues. Thanks to gerberstef for the patch.
Fixes issue 1434
2010-04-18 16:57:49 +00:00
cketti
a7f9cf0037 Removed unused code implementing the UrlInterceptHandler interface 2010-04-17 21:28:59 +00:00
cketti
57acdb7033 Create 'folders' table with 'flagged_count' field when installing K-9 Mail. Previously it was only added when updating the application. 2010-04-17 21:27:06 +00:00
Daniel Applebaum
405d5f2e59 Only show flag-oriented pre-canned searches when message stars are
enabled.  This is an interim workaround for Issue 1411.
2010-04-17 04:41:25 +00:00
Daniel Applebaum
f27aa4c5c0 Only show flagged message counters when star preference is selected 2010-04-17 04:33:25 +00:00
Daniel Applebaum
5bd24fe425 Fixes Issue 1410
Fixes Issue 1431

Present flagged message count inside a star, matching the visual
presentation on individual messages.

Provide display of unread and flagged message counts for canned
searches.

Perhaps the message counts for searches and account size display
should be defeatable for improved speed.
2010-04-17 03:32:17 +00:00
Daniel Applebaum
7cf0ec7327 Needed for prior commits 2010-04-16 18:34:36 +00:00
Daniel Applebaum
5e30d5a784 Fixes Issue 1429
Remove dead code.
2010-04-16 14:46:44 +00:00
Daniel Applebaum
1079e03495 Fixes Issue 1430
Displaying the progress in the list was way too slow.
2010-04-16 14:44:01 +00:00
Daniel Applebaum
664c4d6a78 Fixes Issue 1394
Computing the account size is pretty slow for big accounts, and making
this functionality optional should be considered.

Also, displays the number of flagged messages ("stars") in each
account in the Accounts list and each folder in the FolderList.  Needs
better presentation of the flagged message counts, but this works as a
proof-of-concept and gets the data structures built.
2010-04-16 14:33:54 +00:00
cketti
110a6eb1c7 Removed unnecessary null pointer check. 2010-04-16 12:48:03 +00:00
cketti
57cc4cd735 Code cleanup. Fixed lots of warnings reported by Eclipse.
- Removed unused imports
- Removed unused variables/code
- Parametrized raw types
- Added @Override annotations
- Added hashCode() when equals() was overriden
2010-04-16 12:20:10 +00:00
Daniel Applebaum
86f3b28f79 Fixes Issue 1413
Look for + as acknowledgement that we're in IDLE mode, not "idling"
string.  

Also, to help with battery life:
1) Give up trying to IDLE after 10 failures.
2) Increase retry delays
2010-04-15 03:17:25 +00:00
Daniel Applebaum
47a80fbd6c Fixes Issue 1130
Fixes Issue 1308

Some IMAP servers seem not to provide an INTERNALDATE response.
2010-04-14 13:02:04 +00:00
cketti
d90e4020be Fixed NullPointerException if home button was pressed in AccountSetupBasics activity and no account object was created yet. 2010-04-08 11:54:41 +00:00
cketti
96489049d9 Use android.text.util.Regex.EMAIL_ADDRESS_PATTERN for email address verification before account creation.
Fixes issue 1386
2010-04-08 11:51:54 +00:00
Daniel Applebaum
0cd04a66c1 Terminate pointless comment. 2010-04-06 04:27:47 +00:00
Daniel Applebaum
9a8126d89c Addresses Issue 1348 and Issue 95
Not done, yet, but available for developers to use.

Definite things to be done in the short term:
1) Allow user to hide canned searches in Accounts Activity
2) Make newly arrived mail immediately appear in search results.

Possible improvements:
3) User-definable searches
4) Make newly deleted mail immediately disappear search results.
5) Make message with flag changes immediately appear/disappear from
   search results.
6) Show search result size in Accounts Activity.
2010-04-06 02:54:48 +00:00
Daniel Applebaum
d08c9d6ce2 Fixes Issue 957
Fixes Issue 868

May not be perfect, either, but may help in some situations with
getting all emails to arrive via push.
2010-04-06 02:39:57 +00:00
Daniel Applebaum
3c7eea7fa5 Remove controller first 2010-04-06 02:38:22 +00:00
Daniel Applebaum
9d2a4c3af9 Protect against a NullPointerException that happened once, but should
never have happened.
2010-04-06 02:35:42 +00:00
cketti
0a4577c930 Added code to only return newly created Account objects once they have been saved to the database (or are requested by UUID). This will allow the account creation process to be aborted without the application crashing (see issue 1375).
I don't particularly like this fix and hope to find a more elegant solution to this problem.

Kind of fixes issue 1375
2010-04-03 23:44:26 +00:00
cketti
f911b0e436 Added support for the Android 1.6 intent android.intent.action.SEND_MULTIPLE in a way that should work on older devices too. Worked fine in the Android 1.5 emulator.
Fixes issue 1210
2010-04-02 01:43:56 +00:00
Daniel Applebaum
5d18781156 Fixes Issue 1343
Fixes Issue 1126

Apply skisters2's patch for the POP notifications.  Also, add another
setRingNotified at the beginning of each poll to make sure the account
is in the right state.
2010-03-30 02:58:21 +00:00
cketti
648bec3efc Include support for another bad date format in the IMAP response parser.
Fixes issue 1295
2010-03-25 15:21:05 +00:00
cketti
50cd60787f Don't convert MIME content-type headers to lower case as this seems to cause problems.
Thanks to xingwang.xu for the analysis.

Fixes issue 1289
2010-03-25 14:39:07 +00:00
cketti
d595033fa8 Work-around for a buggy POP3 server software that places "+OK" in front of every line of the unique-id listing (UIDL response).
Fixes issue 1237
2010-03-25 13:42:48 +00:00
cketti
938317e700 Get rid of the "Did not get proper search result" message. This helps with buggy IMAP servers that don't return an untagged SEARCH response if nothing was found. Other untagged responses are simply ignored.
Fixes Issue 907
2010-03-25 01:24:21 +00:00
Jesse Vincent
a923d066d4 Revert "Fix for issue 1138: New emails after the first do not play new mail ringtone until notifications are cleared by skister2"
(Temporary revert until an NPE is dealt with)

This reverts commit 4bf862a827a456ffed20be707387b9ca4f2b721f.
2010-03-24 01:11:58 +00:00
Jesse Vincent
8ca034c3db Patch for issue 946: Only able to get contacts from a primary google
account by cketti
2010-03-23 03:19:12 +00:00
Jesse Vincent
50d1d7e7aa Fix for issue 1138: New emails after the first do not play new mail ringtone until notifications are cleared by skister2 2010-03-23 02:41:45 +00:00
Daniel Applebaum
fa73f71e95 Fixes Issue 790
Tolerate malformed UIDL response.  Thanks to @bengnc for thorough
analysis in Issue 790.
2010-03-18 03:43:39 +00:00
Daniel Applebaum
76f33ba5ff Fixes Issue 1330
Flush the output stream so that small messages have bodies.  (And
presumably so that the entirety of big messages are sent.)
2010-03-18 03:23:45 +00:00
Daniel Applebaum
ec9f395498 Fixes Issue 1090
Don't try to fetch content while reporting errors.

Generate unique URL for each upload.
2010-03-18 02:50:05 +00:00
Daniel Applebaum
24d96c36da Fixes Issue 1284
Remove notifications for removed accounts
2010-03-13 05:00:01 +00:00
Daniel Applebaum
bbedf7b9e0 Fixes Issue 1314 2010-03-13 04:49:15 +00:00
Daniel Applebaum
9d5803b174 Fixes Issue 981
Allow user to turn off gesture-based control.

Also, consolidate so that gestures could be used by other subclasses
of K9Activity.  Probably should be made usable to K9ListActivity, too,
by making MyGestureDetector its own class and make it used by
K9Activity and K9ListActivity, and have the Activities implement a
callback interface for onNext and onPrevious.
2010-03-07 23:43:27 +00:00
Daniel Applebaum
f0808fb3e0 Fixes Issue 1291
Provides for the user to elect to have certain folders displayed first
in the FolderList.  Folders so elected are displayed in alphabetical
order first, then folders not so elected are displayed alphabetical
order.

No special handling is done for Inbox any more, except that it is in
"top group" by default, to preserve current behavior until the user
changes the settings.
2010-03-07 17:02:21 +00:00
Daniel Applebaum
ecc10e572f Fixes Issue 1224
Implement DEFLATE compression for IMAP communication, enabled by
default.  User can disable compression for Wi-Fi, Mobile, or Other
networks, if it causes problems or if uncompressed communication is
faster, which is possible on Wi-Fi and wired networks, especially.

"Other" is to allow for the Android platform to introduce new
networking types without having to immediately change K-9 Mail.
However, as those arise, new network types should be added as explicit
types in K-9 Mail.
2010-03-07 00:30:40 +00:00
Daniel Applebaum
c0e4220b82 Fixes Issue 1116
Fixes Issue 1278
Fixes Issue 119
Fixes Issue 1077
Fixes Issue 1238

Worked performed by danapple0 and cketti in
https://k9mail.googlecode.com/svn/k9mail/branches/issue1116

Add support for most batch ops (except move and copy) in search
results.  Add support for batch move and copy on real folders.

Increase efficiency of bulk IMAP moves and copies by doing as multiple
UID operations.

Eliminated serialization of Account objects.

Provide up-references in useful places to make all future code cleaner
and more efficient.

Fixed a bunch of draft handling

Merged from issue1116 branch, except for Account.java, which was
copied wholesale.  Account.java was manually merged in issue1116
branch at r1489

svn merge -r 1459:1489 https://k9mail.googlecode.com/svn/k9mail/branches/issue1116 .
cp ../issue1116/src/com/fsck/k9/Account.java src/com/fsck/k9/Account.java
2010-03-04 04:00:30 +00:00
cketti
6fb59467b7 Changed SmtpTransport.writeLine() to only use one OutputStream.write() call. Apparently some servers got the "be liberal in what you accept from others" part of the robustness principle wrong. When we used multiple calls in writeLine() (command + CR + LF) a separate TCP packet was send each time. It appears that those broken servers accepted the DATA command after DATA + CR and interpreted the LF as part of the actual data. This caused our headers to become part of the body because that LF was interpreted as the empty line that separates headers and body.
As a side effect of this fix sending mail could be slightly faster now due to less packets being sent.

Big thanks to Kevin Newland of Michigan Technological University for organizing a test account.

Fixes issue 799
2010-03-02 02:48:52 +00:00
Daniel Applebaum
97c7bf1d65 Hopeful (but untested code) to get updated capabilities after
successful CRAM-MD5 authentication.
2010-02-27 17:48:00 +00:00
Daniel Applebaum
f6e7d5d4c0 Fixes Issue 1252
Handle CAPABILITY response in following cases:
1) When sent as part of the banner, no longer sends explicit
CAPABILITY command

2) When sent as an UNTAGGED response to LOGIN, updates stored
   capabilities.

3) When sent as part of the TAGGED response to LOGIN, updates stored
   capabilities.

Due to odd implementation of the CRAM-MD5 authentication, the
capability updates will not happen as part of the CRAM-MD5
authentication.
2010-02-27 17:34:38 +00:00
Bao-Long Nguyen-Trong
6b5ea9feda Reverted the revered version of AttachmentProvider so that people who used the attachment on sd card can still get to their attachments 2010-02-20 20:15:21 +00:00
cketti
ec3d9eb9ea Removed code from ImapStore.internalOpen() that tried to get the path delimeter before SELECTing a mailbox. This shouldn't be a problem since the delimeter
a) is already known if the server supports the NAMESPACE capability.
b) is included in the prefix anyway (=also known if namespace was set manually).
c) isn't needed when selecting a mailbox because we currently don't support folder hierarchy. So the delimeter is included in the folder name.

Fixes issue 1217
2010-02-20 01:07:38 +00:00
Jesse Vincent
f9d39e4814 Back out Attachments-on-SD support (it's on a feature branch now, while
Bao-Long makes it extra-awesome)

This commit should revert:
r1445
r1437
r1436
r1449
r1442
r1441
r1419
r1414
r1413
2010-02-18 03:28:31 +00:00
Bao-Long Nguyen-Trong
c5851f2866 Fixed issue 698: Set default attachment preview image in the code (and not only in layout) so that whne moving from a message to another we get the right preview 2010-02-16 06:53:02 +00:00
cketti
f7094a2a8e I broke email address validation with r1447. I changed EmailAddressValidator.isValid() to only accept email addresses without name part ('foo@bar.com' but not '"snafu" foo@bar.com') because AccountSetupBasics used it to verify the email address for an account. With the old validator spaces were allowed in the email field but lead to an exception later (issue 849). Unfortunately I missed the fact that there are implicit calls to isValid() to validate email addresses e.g. in the 'To field 2010-02-15 12:51:38 +00:00
cketti
51b92aaf80 Fixes issue 1225 2010-02-14 15:51:09 +00:00
cketti
6d84f199c5 Enforce maximum line length for 8-bit encoded messages transmitted via SMTP (998 characters + CRLF).
Fixes issue 1176
2010-02-13 23:45:45 +00:00
cketti
ab4e2ca2ec Commented out enhancements introduced in r1443 so we don't loose Android 1.5 support. 2010-02-13 19:35:47 +00:00
Bao-Long Nguyen-Trong
e435d9d616 Fixed issue 1205: Attachment storage location setting now takes effect immediatly. LocalStore is also better at handling when attachment are stored in a mix of internal and external storage (migration state after a setting change) 2010-02-13 19:07:10 +00:00
cketti
7b75b07f1f Fixes issue 849 2010-02-13 17:26:54 +00:00
Daniel Applebaum
2c3da067c3 Fixes Issue 1219
At cketti's suggestion, change the methodology for counting
server-side unread messages on an IMAP server from STATUS (UNSEEN) to
SEARCH UNSEEN NOT DELETED.  STATUS (UNSEEN) does not ignore DELETED
but unexpunged messages and leads to incorrect results.

http://www.mail-archive.com/c-client@u.washington.edu/msg00929.html
http://www.mail-archive.com/c-client@u.washington.edu/msg00931.html

This variant only checks for unread messages in the last 300 messages
in the folder, so will be wrong if there are unread messages earlier
in the folder.  However, it'll be more often correct than the old
version for the marjority of users.

Also, change the opening of folders for IMAP IDLE purposes to
read-only using EXAMINE instead of SELECT.
2010-02-13 17:02:27 +00:00
Daniel Applebaum
645ce28e18 Throwing the Exception will, at least, cause the exponential back-off
to take effect.
2010-02-13 15:14:28 +00:00
cketti
ae12453a57 Implement support for android.intent.action.SEND_MULTIPLE (e.g. send multiple images from gallery)
Fixes issue 1210
2010-02-12 15:21:10 +00:00
Bao-Long Nguyen-Trong
6fe2dad5cc Added some defensive code to prevent crashes caused by the LocalStore getting in a bad state due to issue 1205 (still being worked on). This fixes issue 1214. 2010-02-11 21:16:37 +00:00
Bao-Long Nguyen-Trong
8d8233bcc0 Store attachment on sd card is now off by default (which is what it should have been in the first place) 2010-02-11 05:37:50 +00:00
cketti
2bd4f9632b Better handling of IMAP FETCH responses.
Fixes issue 1068
2010-02-10 13:52:25 +00:00
Daniel Applebaum
e83a428107 Far more advanced poll scheduler. Now it remembers that finish time
of the last successful periodic mail and computes the next start time
as an offset from that successful finish.  The ramifications of this
new method is that changing polling interval on an account does not
force delaying all accounts to poll next in the future by the new
interval.  Instead, K-9 Mail now adjusts the next poll time based on
what the next poll time should be based on the last poll finish and
the new interval.  

Example 1: In the old way, if the old polling interval was 1 hour, and
the next poll was 50 minutes away (10 minutes have passed), and you
changed the interval to 15 minutes, the poll would happen 15 minutes
from now.  In the new way, the next poll will happen only 5 minutes
from now, which is 15 minutes since the last poll.

Example 2: In the old way, if the old polling interval was 1 hour, and
the next poll was 10 minutes away (50 minutes have passed), and you
changed the interval to 30 minutes, the poll would happen 30 minutes
from now.  The next poll would then happen actually 80 minutes after
the previous poll completed.  In the new way, it'll actually happen
immediately, because the time for the next poll, based on the new
schedule, has already passed.

Similar scenarios happen when a loss of network connectivity
occurs. In the old way, polling would resume using the restoration of
connectivity as the starting point.  Each time network connectivity
was lost and restored, the next poll would be further delayed.  *If
connectivity was lost and restored frequently, a poll might never
happen!* In the new way, the next poll is rescheduled based on the
time of the last successful poll, so will be rescheduled just like it
was before the loss of connectivity.  If the time has already been
passed, the poll will happen immediately.
2010-02-10 06:18:35 +00:00
cketti
48c7189d03 Fix r1436 2010-02-09 16:57:30 +00:00
cketti
80ae0402e5 Fixes issue 1199 2010-02-09 15:41:40 +00:00
Daniel Applebaum
03a06696dc Pre-r660 we didn't have this line, and things worked better. Also see
Troy Engel's comments in Issue 936.  If this commit isn't
satisfactory, perhaps try Troy's suggestion.

Fixes Issue 936.
2010-02-09 03:34:49 +00:00
Daniel Applebaum
23e5a132d4 Provide title bar display of next polling time 2010-02-09 03:26:40 +00:00
Daniel Applebaum
c12f720ba0 Lower logging level for CoreService and provide instance class name. 2010-02-09 03:11:15 +00:00
Daniel Applebaum
49534f22fc Fixes Issue 834
Provide for setting Sent folder to -NONE- which suppresses actually
saving sent mail in any folder.

Also, eliminate logging which folders are not configured for pushing.
It was just too much logging.
2010-02-09 03:03:40 +00:00
Daniel Applebaum
790ae2e25c Fixes Issue 1194
Do both a poll and push reset when connectivity or background data
status changes.
2010-02-09 01:14:55 +00:00
cketti
7cafc8547b Removed unnecessary FIXME comment 2010-02-08 19:12:40 +00:00
cketti
033e0d40de Optional signatures on per identity basis. Original patch by jiri.tyr (thanks!) slightly modified by me.
Fixes issue 461
2010-02-08 17:47:00 +00:00
cketti
3b6cccdf7a Use Reflection to call WebSettings.setBlockNetworkLoads() to prevent info leaks via external resource loading.
Fixes issue 1183
2010-02-08 03:23:41 +00:00
Daniel Applebaum
164ee7cbfd Fixes Issue 1059
Only reschedule polling and setup pushing when necessary due to
particular setting changes.  Makes the K-9 Mail UI much more
responsive to setting changes that do not affect polling and pushing.

The poll schedule is deliberately only rescheduled when the period is
decreased.  An increase in period will still allow the next scheduled
check to happen as originally scheduled.
2010-02-07 21:23:33 +00:00
Daniel Applebaum
2f8f52fb0b Fixes Issue 1112
Fixes Issue 1034

Refresh Account from Preferences, so that it'll have a fresh copy of
all information.  Failure to do this caused the AccountSettings
Activity to show stale information when invoked repeatedly from the
same prior Activity.
2010-02-07 16:05:29 +00:00
Bao-Long Nguyen-Trong
c497485b2f Better message flag management so that we don't end up with (POP3) messages having both X_DOWNLOADED_FULL and X_DOWNLOADED_PARTIAL 2010-02-07 06:05:11 +00:00
Bao-Long Nguyen-Trong
46bff831d1 Using X_DOWNLOADED_FULL flag instead of the X_DOWNLOADED_PARTIAL on to determine if we need to show the downloading icon. Some POP3 messages carry both flags. 2010-02-07 06:00:28 +00:00
Bao-Long Nguyen-Trong
131280c3f2 Still init LocalStore.mExternalAttachmentsDir even if sd card is not ready so that the object does not end up in a bad state 2010-02-07 05:58:04 +00:00
Daniel Applebaum
1fb03a45a0 Fixes Issue 1059
Provides for menu items to quickly change the mode of displayed
folders.  Also, reorganizes the menu to have an Advanced sub-menu,
like Accounts page has.

Desparately needs a new icon for the Folders menu item.
2010-02-06 23:23:22 +00:00
Daniel Applebaum
4fa4f22f2c Fixes Issue 494
Allow for setting the Outbox to have any name, as tying it to a server
side folder does not make sense.  It is never synced.
2010-02-06 22:36:22 +00:00
Bao-Long Nguyen-Trong
8403a265d9 We still need to be able to instanciate the LocalStore when the sd card is not mounted. So we do no throw an exception then. Exception will be thrown when we try to do attachment related things 2010-02-06 15:44:21 +00:00
Bao-Long Nguyen-Trong
55dac7ee4e Added option to have attachments store on sd card
(this is still a rough implementation)
2010-02-06 15:22:59 +00:00
Bao-Long Nguyen-Trong
49b223e20c Fixed issue 140 and issue 950: for partially downloaded messages, displaying what we already have while downloading the full message in the background
TODO: Need better icon indicating that the message is being fetched
2010-02-06 14:49:36 +00:00
Daniel Applebaum
6f064e1193 Partial implementation for Issue 1059. Doesn't help those without
physical keyboards, though, and should be modified to only re-setup
pushers.  Current implementation causes a wasteful reschedule of
polling.

Also gets the help Toast for the folder up-to-date after the
FolderList/MessageList split.
2010-02-06 05:55:40 +00:00
Daniel Applebaum
9ec77a9f9a Fixes Issue 1182
Never set up K9mail-errors or the Outbox for pushing
2010-02-06 05:35:15 +00:00
cketti
f1fba69790 Added comment that states the quoted-printable encoder was taken from Apache Mime4j version 0.6. 2010-02-05 16:10:21 +00:00
cketti
c64c0a1c30 Replaced base64 as default encoding for text bodies with quoted-printable. Please use issue 1176 for discussion. 2010-02-05 14:26:09 +00:00
cketti
14ee970b18 Fixed EOLConvertingOutputStream.
write('\r');flush();write('\n'); would lead to "\r\n\r\n" instead of simply "\r\n";
2010-02-05 02:36:52 +00:00
cketti
0422cae33e Implemented data stuffing. 2010-02-05 02:32:32 +00:00
cketti
45036ae5c8 Use 8bit transfer encoding for the text body if SMTP server advertises 8BITMIME. In all other cases base64 is still used (including saved copies in IMAP "Sent" folder).
Feel free to revert this if anything breaks.
2010-02-04 23:37:50 +00:00
cketti
6480e78b97 r1396 caused trouble for some clients due to a missing "MIME-Version" header. This should fix the problem. 2010-02-04 17:28:35 +00:00
Jesse Vincent
a9b538fd09 stop views from "resetting" to previous intents on rotate. 2010-02-04 02:38:30 +00:00
Jesse Vincent
5ce80cadaa Move FolderList initialization a bit earlier so as to not explode on reuse of the activity.
Fixes issue 1164
2010-02-04 01:49:56 +00:00
cketti
88854f4123 Fixes issue 1171. 2010-02-03 23:27:33 +00:00
cketti
c6d29cb10e Fixes issue 21 (All messages are turned into multipart messages) 2010-02-03 19:56:20 +00:00
cketti
8049e90b8c Changed IMAP command "UID SEARCH (HEADER MESSAGE-ID %s)" to "UID SEARCH HEADER MESSAGE-ID %s"
Fixes issue 1031.
2010-02-03 17:25:15 +00:00
Jesse Vincent
74aac85048 Use a real hostname rather than localhost.localdomain.
Fixes Issue 45

Patch by cketti
2010-02-02 02:06:35 +00:00
Jesse Vincent
a58095aae1 URLEncode username and password for accounts, so as to not fall apart on
nice simple characters like ':' in passwords.

Patch by cketti

Fixes Issue 1155.
2010-02-02 02:06:29 +00:00
Bao-Long Nguyen-Trong
5566c79e07 Fixed issue 1143: Calling finish() on Accounts activity when auto jumping to the only one existing account 2010-02-01 15:24:27 +00:00
Daniel Applebaum
ef1abffa26 Revert r1386 because it will break many folks email sending. 2010-01-31 19:11:51 +00:00
Daniel Applebaum
d114fa1bc3 Fixes Issue 1058
Add 's' hotkey for Select/deselect
2010-01-31 15:41:26 +00:00
Daniel Applebaum
a91e3e10e2 May have some beneficial impact on Issue 21 and Issue 799.
Just removes the base64 encoding on the text/plain body parts.  Does
not make the sent messages non-multipart.
2010-01-31 15:26:02 +00:00
Jesse Vincent
c38384e134 Further refactoring to MessageList and FolderList to (hopefully) address
force-closes and inconsistent data on activity reuse. Also, removing
broken/unused code to preserve activity state across invocations.
across invocations.
2010-01-30 03:26:45 +00:00
Jesse Vincent
22e1a3f574 Rather than manually managing the back button, try to give android better back button hinting
fix our notification -> intent behavior
2010-01-29 03:57:37 +00:00
Bao-Long Nguyen-Trong
e2edcd6d66 Fixed issue 1066: Better handling on mailto URI. Code adapted from AOSP. 2010-01-28 06:25:10 +00:00
Jesse Vincent
1945dc4ad4 Clean up our back button support to be actually consistent and to not leak nearly as many activities. 2010-01-28 00:29:27 +00:00
Jesse Vincent
3ffad03e9b Fix a force-quit by going to the Accounts page after creating an account 2010-01-28 00:29:18 +00:00
Jesse Vincent
cd7432b663 astyle 2010-01-28 00:29:12 +00:00
Jesse Vincent
68efec3782 Improve our "got mail" notifications to include "To:" when they're for messages we've sent 2010-01-26 02:48:22 +00:00
Jesse Vincent
c237ffc803 Tweak our message swipes to be a little harder to accidentally trigger 2010-01-25 04:28:11 +00:00
Jesse Vincent
7fb17b889e Fix a number of assumptions about accounts in MessageLists.
Fixes Issue 1079
2010-01-24 22:26:21 +00:00
Jesse Vincent
ff390b388a Bullet-proofing for database upgrades and better fallback for failures 2010-01-24 20:41:04 +00:00
Daniel Applebaum
a68168d55e Only alert once for each poll or push, even if multiple new unread
messages are found.
2010-01-23 23:44:03 +00:00
Daniel Applebaum
ac14826485 Store push state whether or not the messages arrived already deleted. 2010-01-23 17:54:11 +00:00
Daniel Applebaum
4f65b4270e Fixes Issue 1060
Don't show messages that are already deleted on the server when we
first download them.

Also, correct item 1 from my comments on r1355.  No longer notify for
mails I sent when I selected not to be notified for mails I sent.
2010-01-23 17:39:28 +00:00
Daniel Applebaum
9cd52d5ef3 Change WakeLock management logging to verbose level (now that it is
working)
2010-01-22 05:55:58 +00:00
Daniel Applebaum
4ced2fa0e1 Only cause MailService refresh when changing a setting that needs it.
Addresses part of Issue 1059.
2010-01-22 05:54:52 +00:00
Jesse Vincent
c59aeb2c78 Patch from Scott Kister to give us better new-message notifications,
somewhat worked over by me
2010-01-21 18:49:11 +00:00
Jesse Vincent
c6058686b3 Fix a crash on swipe in the message list. Thanks to cketti.
Fixes issue 1054
2010-01-20 22:10:10 +00:00
Bao-Long Nguyen-Trong
08e570d40f Fixed issue 1046 bu ending FolderList activity after auto-opening the default folder 2010-01-20 00:21:48 +00:00
Jesse Vincent
c5fa25151a unselect->deselect 2010-01-19 02:58:17 +00:00
Jesse Vincent
2c406a58b0 When disconnecting from an SMTP server, send a quit command to be a
better internet citizen. Fixes Issue 1044.
2010-01-19 02:20:24 +00:00
Jesse Vincent
a145d3c616 "Deselect all" -> "Unselect all" (at a code level)
"Deslect all" -> "Done" (at a UI level)
2010-01-19 00:51:02 +00:00
Jesse Vincent
ae029762cf Add a new preference to always show multiselect checkboxes. 2010-01-19 00:43:52 +00:00
Jesse Vincent
23af9f3e6d Guard against fling events that only have one motionevent defined 2010-01-19 00:15:21 +00:00
Jesse Vincent
4493044340 astyle pass 2010-01-18 00:11:02 +00:00
Jesse Vincent
9301aabc8c CRAM-MD5 for SMTP is now configurable 2010-01-18 00:10:49 +00:00
Jesse Vincent
22e771ef2a Disable our not-so-hot preview generation as part of database upgrade
for now. it took a long time and got mediocre results.
2010-01-17 22:54:08 +00:00
Jesse Vincent
591ca5bc5e Fix batch operations menu
* Add an explicit configuration option for stars
* Replace now-outdated "left handed" widgets config option, now that
  select widgets are always on the left.
* since the multi-modality of the message list was now only a "toggle
  stars" option, kill that, as it was lots of code and rather redundant
2010-01-17 22:49:03 +00:00
Daniel Applebaum
4aca44c1aa Hide the explicit "ring enabled" boolean behind the ringtone selection. 2010-01-17 18:14:17 +00:00
Jesse Vincent
f3275a8473 When we've entered "selection mode" actually make sure we _show_ the
selected-item check mark.
2010-01-17 05:52:22 +00:00
Jesse Vincent
591a3af6dc Eliminate "select" mode in favor of a unified swipe and context menu -based
always-available select action.  For the moment, this means
that widgets_on_left does nothing at all. based on feedback, I may kill
the preference and multi-mode behaviour entirely in favor of "show stars?"
(and possibly "show stars on left"

Stars, "checkboxes" and color bars updated to actually fit in wide mode.
2010-01-17 04:20:39 +00:00
Jesse Vincent
0de7b15aa1 Swipe to select/deselect from touchmode 2010-01-17 04:20:22 +00:00
Daniel Applebaum
64552e2ebe Fixes Issue 977 by correcting defect introduced in r1195. 2010-01-16 16:33:23 +00:00
Daniel Applebaum
f4ceb8d2bc Fixes Issue 673
Fixes Issue 806

Make sure to close opened folders in finally blocks in
MessagingController.

Don't make another connection when deleting or copying a
message.  (Nicely speeds up copy and delete, as well.)

Another connection is still created for creating a folder while
copying or deleting (a pretty rare event), and the IMAP IDLE
connections are not re-used for user initiated activity.
2010-01-16 16:22:20 +00:00
Daniel Applebaum
a89bd8e081 Only use the IDLE timeout for the folder while actually in IDLE state.
May help with Issue 1022, Issue 952, Issue 895
2010-01-16 14:14:12 +00:00
Daniel Applebaum
f3e06b4ef5 Adjust imports for new location of remote control classes 2010-01-15 05:05:41 +00:00
Daniel Applebaum
d245e81679 Reorganize remote control pieces.
Automatically build jar file for external applications.
Create convenience functions in K9RemoteControl so that external
applications do not need to know the details of handling the Intents
and broadcasts.
Send a permission string in the broadcasts so that unauthorized
applications cannot intercept communication to authorized
applications, such as K-9 Mail.
2010-01-15 05:02:27 +00:00
Daniel Applebaum
6c22507dfb Implementation of a Receiver and Service to provide for the capability
to accept control from other Android applications.  Allows for
changing both Account-level and global settings.  Account-level
settings can be applied to a single Account or to all Accounts.

The file class file derived from src/com/fsck/k9/K9RemoteControl.java
will be bundled into a JAR file for use by external applications.

This facility will be used for:
Issue 215
Issue 730
Issue 864
Issue 884
2010-01-14 04:33:50 +00:00
Jesse Vincent
d95705af4d Speed up the page-flip animation now that we load message views so much faster. 2010-01-14 01:26:09 +00:00
Jesse Vincent
64469e4b4e ran artistic style against src/com/fsck/k9/ 2010-01-14 01:07:28 +00:00
Jesse Vincent
34379dc9be Improved batch button behavior for touch view 2010-01-14 01:07:13 +00:00
Jesse Vincent
25b9f41491 Don't automatically show the batch buttons when entering multiselect mode 2010-01-14 00:33:13 +00:00
Jesse Vincent
e7807e0cf7 "Advanced" account context menu now works right 2010-01-14 00:00:38 +00:00
Jesse Vincent
9bfc01ca32 Add a preference for the new "touch friendly" view. 2010-01-13 03:37:13 +00:00
Jesse Vincent
d5c185545b Add a "done" to the batch buttons.
Make the "done" entry in batch buttons only show up in touch mode
2010-01-13 03:37:04 +00:00
Jesse Vincent
6343f3af5a If we're in touch mode and have selected items, any item click is now a select 2010-01-13 03:36:49 +00:00
Jesse Vincent
7ab9b8ee3c Added a first-pass view optimized for high-rez devices with both select and star 2010-01-13 03:36:43 +00:00
Jesse Vincent
5617b629d3 Added a "preview" column to messages containing a brief summary of the message 2010-01-13 03:36:36 +00:00
Jesse Vincent
23e46b82ce Batch-update buttons now show up when you actually have selected items. 2010-01-13 03:36:30 +00:00
Bao-Long Nguyen-Trong
1c5d240564 Made batch op button's text sensitive to which messages are selected 2010-01-12 19:39:20 +00:00
Daniel Applebaum
14587c3f30 Eliminate pointless, useless, deprecated, NOOP, incorrectly commented call. 2010-01-12 19:28:21 +00:00
Daniel Applebaum
64525028de Move execute into a re-usable location 2010-01-12 14:09:30 +00:00
Bao-Long Nguyen-Trong
11b7157772 Guess mime type (when not specified) of attachments of received messages using file name extension so that we can open them 2010-01-12 02:06:46 +00:00
Bao-Long Nguyen-Trong
f965417479 Exclude deleted messages from search results 2010-01-12 00:59:13 +00:00
Bao-Long Nguyen-Trong
230428d16a Fixed issue 1017: Added 'Search' menu option in account list screen 2010-01-12 00:56:51 +00:00
Jesse Vincent
0bdb02dc24 Minor reformatting 2010-01-09 23:49:44 +00:00
Jesse Vincent
e49fdc9913 Added a comment about why we're setting a click handler 2010-01-09 23:49:36 +00:00
Jesse Vincent
fb223ea61d rename a paremeter to better reflect its use: nextWidget->showWidget 2010-01-09 23:49:31 +00:00
Jesse Vincent
553625b72b Comment an attribute 2010-01-09 23:49:25 +00:00
Jesse Vincent
497ca01586 swap the order of compared values for a bit more logical sanity 2010-01-09 23:25:15 +00:00
Jesse Vincent
5802b84e16 Reorder methods for better logical grouping 2010-01-09 23:25:10 +00:00
Jesse Vincent
9db97e214d Restore Bao-long's original design for "widgets on the left" being a
global config option rather than a per-account one. (But with a new
implementation.) - As we now have views that show messages across
accounts, this needed to become a global)
2010-01-09 23:02:40 +00:00
Jesse Vincent
512177cded Remove more of the old messagepassing ui update code in favor of 'runonuithread' 2010-01-09 21:47:10 +00:00
Daniel Applebaum
e0b98cac21 Correct Exception text 2010-01-09 19:49:54 +00:00
Jesse Vincent
19adadae11 actually specify the size of our BufferedOutputStream as 1k to parallel
other implementations and quiet down a consistent warning in our android
logs
2010-01-08 23:47:34 +00:00
Jesse Vincent
e1c686d40d Fix NullPointerException when the user clicks on a "new mail"
notification.  Resolves Issue 1001
2010-01-08 23:18:44 +00:00
Daniel Applebaum
81fd4749cc Properly synchronize some new methods 2010-01-08 16:55:36 +00:00
Daniel Applebaum
f29f5adc4b Eliminate carriage returns from reply and forward text.
Fixes Issue 518
2010-01-08 04:27:58 +00:00
Jesse Vincent
8285766506 Now that messageview is faster, don't start displaying the new message
until _after_ we flip.
2010-01-07 01:29:59 +00:00
Daniel Applebaum
57acd3232e Don't show account-level chips until unread count is known. 2010-01-06 14:12:19 +00:00
Daniel Applebaum
9c761419c9 Preparatory code for providing move/delete/copy/setFlag capabilities
across multiple folders.
2010-01-06 05:41:19 +00:00
Daniel Applebaum
56a4b94748 Put the color chip with read/unread controlled brightness at all
levels except MessageView
2010-01-06 05:23:32 +00:00
Daniel Applebaum
a5166e3c2d Fixes Issue 963
MessagingController was calling the MessagingListener twice for
deleted messages.  By the time the second call was made, some
Activities already had removed the message holder, so a null holder
was being put on the list.

This change should prevent the double calls, and adds protection
against have the MessageList MessagingListener called with a message
that is no longer in the MessageList.

Also, some logical cleanups.
2010-01-06 04:54:24 +00:00
Daniel Applebaum
2b37fe6864 Restore long-lost debugging line 2010-01-06 03:44:23 +00:00
Daniel Applebaum
29947ef3c9 Delete obsolete commented out code. 2010-01-06 03:40:24 +00:00
Jesse Vincent
a4510696aa It turns out that blindly enabling/disabling views is _Very_ expensive.
Now we only do it when switching messageview entries if it's actually
necessary
2010-01-04 02:11:33 +00:00
Jesse Vincent
a926086f4b Replace old message passing code with more modern runonuithread code 2010-01-04 02:06:40 +00:00
Daniel Applebaum
60a2ceb604 Fixes Issue 934 by removing excess calls to finish() 2010-01-04 00:50:19 +00:00
Daniel Applebaum
d58d1c60c0 Proper super call 2010-01-04 00:48:33 +00:00
Daniel Applebaum
c86a46deb1 Preparatory for more BroadcastReceivers 2010-01-04 00:47:11 +00:00
Daniel Applebaum
33495135ac Respect account ring setting for notifications 2010-01-04 00:41:26 +00:00
Daniel Applebaum
41729af9b2 Add explicit ring setting for notifications 2010-01-04 00:40:41 +00:00
Jesse Vincent
6caec1100c Incorrect (and ancient code) would accidentally clobber the wrong attachment
(and only one, rather than all) when deleting a message.
2010-01-03 23:23:13 +00:00
Jesse Vincent
483655fa20 Log.w shouldn't be wrapped in an "if debug" statement. 2010-01-03 20:34:22 +00:00
Jesse Vincent
6a8ea924c9 Further log cleanup 2010-01-03 02:07:21 +00:00
Jesse Vincent
eb54a99aab EOLs got twisted by something. fixing 2010-01-03 02:07:14 +00:00
Jesse Vincent
0e273893bd Further log tweaking 2010-01-03 02:00:20 +00:00
Jesse Vincent
a926911e7f rerun astyle 2010-01-03 01:50:51 +00:00
Jesse Vincent
1c5073039a Further debug/info/verbose logging cleanup 2010-01-03 01:50:41 +00:00
Jesse Vincent
875dc31d5a Log message cleanup 2010-01-03 01:50:32 +00:00
Jesse Vincent
f9e8c877ff Wrap looging in if (DEBUG) statements. 2010-01-03 01:50:25 +00:00
Jesse Vincent
953b784fb9 First pass at fixing Issue 963 (explosions when trying to iterate over a
remotely deleted message) introduced in r1204.

(Before my all-day meeting)
2009-12-29 17:06:13 +00:00
Jesse Vincent
fb6d11222a Switch from old, scary message passing to more modern "run on ui thread" for Accounts.java
40 fewer lines of code.
2009-12-29 17:05:44 +00:00
Jesse Vincent
2ef3b15c87 make sure we don't accidentally open the context menu on a message when we're in multiselect mode. 2009-12-29 17:05:17 +00:00
Jesse Vincent
3e3b4d447d Fix reversed color chip alpha 2009-12-28 12:56:59 +00:00
Daniel Applebaum
60b02909a3 Announce folder status changes when syncing gets updated unread count.
Adjust logging levels for folder sync.
2009-12-27 20:19:41 +00:00
Jesse Vincent
bbd9e56770 Actually display 250/500/1000 options for "number of messages to sync" 2009-12-27 17:47:30 +00:00
Jesse Vincent
794f515bc8 Numerous small fixes to search results 2009-12-27 17:22:57 +00:00
Jesse Vincent
a53e9d1b89 on search, only fire one start event and one end event 2009-12-27 17:22:51 +00:00
Jesse Vincent
6c383256a2 Remove duplicate code from onCompose. make starting message composition without an account actually work 2009-12-27 17:22:44 +00:00
Jesse Vincent
0a2d9b9c9f make sure search results aren't updated incorrectly on incoming messages 2009-12-27 17:22:38 +00:00
Jesse Vincent
bfaba499fe Fix the Search header on search results 2009-12-27 17:22:32 +00:00
Jesse Vincent
63b6f6bf62 Refactoring to better propagate "folder" along with messages as they're instantiated 2009-12-27 17:22:26 +00:00
Jesse Vincent
d60521f06f further push down our "is this message for us" logic. 2009-12-27 17:20:56 +00:00
Jesse Vincent
6c7782b4bd remove another alternate calling convention for addOrUpdateMessage. Code
will get still cleaner when we start propagating back message folders as objects
2009-12-27 17:20:50 +00:00
Jesse Vincent
c608ffb672 Eliminate a variant of addOrUpdateMessage that was only called once 2009-12-27 17:20:28 +00:00
Jesse Vincent
1c4a0be0da enable searching of messages 2009-12-27 17:20:21 +00:00
Jesse Vincent
21238a3084 If we get a message from listLocalMessages and we're doing a search,
assume it's for us. Later, we may want to be smarter about that.
2009-12-27 17:20:13 +00:00
Jesse Vincent
a736a4267c Only trigger our "loading" indicator if the account matches "our" account 2009-12-27 17:20:06 +00:00
Jesse Vincent
204289a4ff when opening a message for display or edit, use its notion of account, not the folder's. 2009-12-27 17:19:56 +00:00
Jesse Vincent
f6756879ef Temporarily disable "left-handed" controls if we're doing a search.
view configuration needs to move to be global for this to work right.
2009-12-27 17:19:49 +00:00
Jesse Vincent
bc61c90e1a make the auto-open folder not trigger if we're doing a search 2009-12-27 17:15:46 +00:00
Jesse Vincent
81d72a2d8c make the color chip genuinely calculated per message 2009-12-27 17:15:38 +00:00
Jesse Vincent
ed19a8284e Propagate per-message account info into MessageInfoHolder and FolderInfoHolder 2009-12-27 16:54:23 +00:00
Jesse Vincent
302deea53e addOrUpdateMessage calls now propagate the account of the found message 2009-12-27 16:54:12 +00:00
Jesse Vincent
3ad69c799d When listing off messages, make sure that our "refresh the list" fires,
even if we didn't start off empty.

This could have prevented updated messages from showing up
2009-12-27 16:54:06 +00:00
Jesse Vincent
1b74c176a2 Add multi-account search to the MessagingController 2009-12-27 16:53:59 +00:00
Jesse Vincent
70f35a537e If we loaded a message from the local store without an associated folder, load up its folder. 2009-12-27 16:53:51 +00:00
Jesse Vincent
da45b81866 minor query reformatting 2009-12-27 16:53:45 +00:00
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
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
Daniel Applebaum
d50a16c6b4 Issue 530 2009-08-29 22:40:52 +00:00
Daniel Applebaum
65d7f2180a Issue 505 2009-08-29 22:17:49 +00:00
Daniel Applebaum
8785762986 Issue 575
Partially the patch supplied by mpredosin.

Partially restoration of other lost code.
2009-08-29 22:11:13 +00:00
Daniel Applebaum
033632b3ba Issue 503
Restore lost confirmation dialog.
2009-08-29 21:49:19 +00:00
Daniel Applebaum
280ed0dadd Issue 530
This new method will be useful later.
2009-07-24 05:12:17 +00:00
Daniel Applebaum
f6c6012e11 Issue 553 2009-07-24 03:55:54 +00:00
Daniel Applebaum
f1232a119a Addresses mpredosin's comments on r420 2009-07-24 03:48:49 +00:00
Jesse Vincent
16a31428b5 patch from typester to fix UTF8 headers (such as subject) Resolves issue 534 2009-07-02 05:49:09 +00:00
Bao-Long Nguyen-Trong
6c820c9f75 Removed image/gif from exclusion list so that the images can be viewed and save to SD card 2009-07-02 00:27:17 +00:00
Bao-Long Nguyen-Trong
a912f7aed5 Cleaned up message loading threading solving issues 249 and 524 2009-07-01 21:31:51 +00:00
Bao-Long Nguyen-Trong
2521e032a7 Fixed issue 522 and some minor navigation issue 2009-06-26 18:15:41 +00:00
Bao-Long Nguyen-Trong
c1ec077720 Added comment to document why we override MimeMessage.setRecipients() 2009-06-26 07:03:25 +00:00
Bao-Long Nguyen-Trong
6f8c83e8e3 Restored LocalMessage.setRecipients() and added checks for null and empty address list that allow to unset a recipient list 2009-06-26 06:55:32 +00:00
Bao-Long Nguyen-Trong
99562b8e01 Fixed issue 499 by removing LocalMessage.setRecipients() method to use the super implementation instead.
Anyone knows why was this method overridden in the first place?
2009-06-25 20:25:05 +00:00
Bao-Long Nguyen-Trong
b572c8e065 Fixed issue 497 2009-06-25 17:05:50 +00:00
Bao-Long Nguyen-Trong
3707e0e666 Fixed issue 519 and more navigation issues 2009-06-24 17:51:41 +00:00
Bao-Long Nguyen-Trong
9bf3c9b45a . Fixed navigation issue when going back from message 2009-06-23 16:48:08 +00:00
Bao-Long Nguyen-Trong
e6132286a0 FIxed issue 501 2009-06-23 14:57:16 +00:00
Bao-Long Nguyen-Trong
13cc3899d6 . Fixed issue 504: Added feedback (spinning progress on top right) when checking email in message list
. Added error message toast when checking email fails in message list
2009-06-21 17:20:37 +00:00
Bao-Long Nguyen-Trong
47a8537f08 . Clicking on the new mail notification gets you to the default folder if any else to the folder list 2009-06-20 04:06:44 +00:00
Jesse Vincent
2cb5bdebb3 Set the MessageId header, rather than Adding it when restoring from the local store. Hopefully, this will fix issue 498 2009-06-18 14:54:06 +00:00
Bao-Long Nguyen-Trong
98fe0cc25f Fixed issue 476
TODO: Add confirm dialog
2009-06-16 15:05:11 +00:00
Bao-Long Nguyen-Trong
3ea149bd37 Fixed issue 496
Note: No putting 'Account Settints' and 'Accounts' menu option on MessageList as it does not belong there
TODO: Add more menu options: Mark All As Read, Folder Settings, etc...
2009-06-16 13:58:27 +00:00
Bao-Long Nguyen-Trong
33b1d1b04f Fixed issue 496
Note: No putting 'Account Settints' and 'Accounts' menu option on MessageList as it does not belong there
TODO: Add more menu options: Mark All As Read, Folder Settings, etc...
2009-06-16 13:55:49 +00:00
Bao-Long Nguyen-Trong
c6f6e995f6 . Fixed issue 77 and issue 489: It was a bug in Cc and Reply-To header parsing 2009-06-15 05:04:03 +00:00
Bao-Long Nguyen-Trong
9dfe3d8f7b Fixed issue 126
+ display both date and time on old emails
2009-06-14 14:03:30 +00:00
Daniel Applebaum
339c8e247b Restore case-insensitive sort, but fall back on case sensitive, just
in case the case-insensitive version returns that the two folders are
equal during the insensitive comparison.
2009-06-09 04:01:04 +00:00
Daniel Applebaum
770032d960 Issue 481
When in MessageList, Check mail should only sync the displayed folder.
2009-06-09 03:23:07 +00:00
Daniel Applebaum
10b9b0a05b Issue 117
Issue 30

Provide support for multiple identities.  Identities can be managed in
the Account Settings.  While composing a message, an identity can be
chosen for sending.  Identity information and signature edits are
saved in a header field, so that they survive being synced to the
server and back.

Provide support for editing the quoted text, either for replies or
forwards.  The quoted text is immediately editable, in a separate
editor from the main body.  When saved in a draft, the two are
contatenated, but the length of the main body is saved with the
identity information, and is used to split the two parts again, when
opening the draft.
2009-06-09 03:11:35 +00:00
Daniel Applebaum
8e52a4efed Fix for my comment on r581 2009-06-09 02:10:49 +00:00
Bao-Long Nguyen-Trong
b7a846492a Minor performance optimization 2009-06-08 00:41:29 +00:00
Bao-Long Nguyen-Trong
84d7e0081b . Fixed 'Compose' and 'Accounts' menu options 2009-06-07 23:43:42 +00:00
Bao-Long Nguyen-Trong
b20649f2ad Added 'add to contact' feature when one clicks on the from address in message view (code taken from AOSP) 2009-06-06 15:55:26 +00:00
Bao-Long Nguyen-Trong
2a7c2fcfb2 Removed some commented out code no longuer needed 2009-06-06 15:50:06 +00:00
Bao-Long Nguyen-Trong
f6b4cbc43e . Fixed sdk 1.5 build and made it the default one
. Imported JARs for classes not exposed in teh sdk anymore
  . Imported src code from Android core for for classes not exposed in the sdk anymore
  . Updated MessageView implementation of UrlInterceptHandler modified in sdk 1.5 (pls review)
2009-06-06 15:46:17 +00:00
Bao-Long Nguyen-Trong
5e28b65c76 . Choosing '-NONE-' as default folder, was opening the MessageList of the '-NONE-' folder
--> It now opens, the FolderList
TODO: Externalize the '-NONE-' string
2009-06-06 15:42:33 +00:00
Jesse Vincent
a7d316ecdd Fix for Issue 328 and 332
Contributed by: Ludovic LANGE / ludovic.lange.android
2009-06-01 01:55:39 +00:00
Jesse Vincent
7d47328b2e Bring MIME4J current to match AOSP upstream as of 9e5757b5316f88d252b5d80fab1e3964ce19bbdf - Thanks to Ludovic LANGE / ludovic.lange.android 2009-06-01 01:53:13 +00:00
Jesse Vincent
909f677f91 r62972@17h: jesse | 2009-05-07 10:49:32 -0400
First stab at a folderlist that doesn't know or care about messages
r62973@17h:  jesse | 2009-05-07 10:50:11 -0400
A very broken first stab at a message list that only knows about one folder.
r62974@17h:  jesse | 2009-05-07 10:50:44 -0400
When you go from an account list to an individual account, open a folderlist, not an fml
r62975@17h:  jesse | 2009-05-07 10:51:24 -0400
Update Welcome activity to open an ml instead of an fml
r62976@17h:  jesse | 2009-05-07 10:51:59 -0400
When setting up accounts is over, open an fl instead of an fml
r62977@17h:  jesse | 2009-05-07 10:52:51 -0400
Update MessageView to use folderinfoholders and messageinfoholders from the 'correct' classes.
r62978@17h:  jesse | 2009-05-07 10:59:07 -0400
MailService now notifies the fl instead of the fml. Not sure if it should also notify the ml. - will require testing
r62979@17h:  jesse | 2009-05-07 11:01:09 -0400
Switch MessagingController's notifications from notifying the FML to notifying an ML
r62980@17h:  jesse | 2009-05-07 11:25:22 -0400
Update AndroidManifest to know about the new world order
r62981@17h:  jesse | 2009-05-07 11:26:11 -0400
Try to follow the android sdk docs for intent creation
r62982@17h:  jesse | 2009-05-07 11:28:30 -0400
reset MessageList for another try at the conversion
r62983@17h:  jesse | 2009-05-07 11:47:33 -0400
This version doesn't crash and has a working 'folder' layer. now to clean up the message list layer
r62984@17h:  jesse | 2009-05-07 15:18:04 -0400
 move step 1
r62985@17h:  jesse | 2009-05-07 15:18:37 -0400
move step 1
r62986@17h:  jesse | 2009-05-07 15:22:47 -0400
rename step 1
r62987@17h:  jesse | 2009-05-07 17:38:02 -0400
 checkpoint to move
r62988@17h:  jesse | 2009-05-07 17:40:01 -0400
checkpointing a state with a working folder list and a message list that doesn't explode
r62989@17h:  jesse | 2009-05-07 17:40:26 -0400
Remove debugging cruft from Welcome
r62990@17h:  jesse | 2009-05-07 22:00:12 -0400
Basic functionality works.
r62991@17h:  jesse | 2009-05-08 04:19:52 -0400
added a tool to build a K-9 "Beta" 
r62992@17h:  jesse | 2009-05-08 04:20:03 -0400
remove a disused file
r62993@17h:  jesse | 2009-05-09 06:07:02 -0400
upgrading build infrastructure for the 1.5 sdk
r62994@17h:  jesse | 2009-05-09 06:22:02 -0400
further refine onOpenMessage, removing more folder assumptions 
r62995@17h:  jesse | 2009-05-09 20:07:20 -0400
Make the Welcome activity open the autoexpandfolder rather than INBOX
r62996@17h:  jesse | 2009-05-09 20:14:10 -0400
MessageList now stores the Folder name it was working with across pause-reload
r62997@17h:  jesse | 2009-05-09 20:14:26 -0400
Removing dead code from FolderList
r63060@17h:  jesse | 2009-05-10 00:07:33 -0400
Replace the old message list refreshing code which cleared and rebuilt the list from scratch with code which updates or deletes existing messages.
Add "go back to folder list" code
r63061@17h:  jesse | 2009-05-10 00:07:50 -0400
fix message list menus for new world order
r63062@17h:  jesse | 2009-05-10 00:08:11 -0400
Remove message list options from folder list menus
r63063@17h:  jesse | 2009-05-10 00:10:02 -0400
remove more message list options from the folder list
r63064@17h:  jesse | 2009-05-10 00:10:19 -0400
fix build.xml for the new android world order
r63065@17h:  jesse | 2009-05-10 00:39:23 -0400
reformatted in advance of bug tracing
r63066@17h:  jesse | 2009-05-10 05:53:28 -0400
fix our 'close' behavior to not leave extra activities around
clean up more vestigal code
r63067@17h:  jesse | 2009-05-10 18:44:25 -0400
Improve "back button / accounts" workflow from FolderList -> AccountList
r63068@17h:  jesse | 2009-05-10 19:11:47 -0400
* Add required code for the 'k9beta' build
r63069@17h:  jesse | 2009-05-10 19:12:05 -0400
Make the folder list white backgrounded.
r63070@17h:  jesse | 2009-05-10 19:12:26 -0400
* Include our required libraries in build.xml 
r63071@17h:  jesse | 2009-05-10 19:13:07 -0400
Added directories for our built code and our generated code
r63072@17h:  jesse | 2009-05-10 19:13:36 -0400
Added a "back" button image
r63073@17h:  jesse | 2009-05-10 20:13:50 -0400
Switch next/prev buttons to triangles for I18N and eventual "more easy-to-hit buttons" win
r63074@17h:  jesse | 2009-05-10 20:17:18 -0400
Tidy Accounts.java for some perf hacking.
r63081@17h:  jesse | 2009-05-10 22:13:33 -0400
First pass reformatting of the MessagingController
r63082@17h:  jesse | 2009-05-10 23:50:28 -0400
MessageList now correctly updates when a background sync happens
r63083@17h:  jesse | 2009-05-10 23:50:53 -0400
Tidying FolderList
r63084@17h:  jesse | 2009-05-10 23:51:09 -0400
tidy
r63085@17h:  jesse | 2009-05-10 23:51:27 -0400
tidy
r63086@17h:  jesse | 2009-05-11 00:17:06 -0400
Properly update unread counts in the FolderList after sync

r63087@17h:  jesse | 2009-05-11 01:38:14 -0400
Minor refactoring for readability. replace a boolean with a constant.
r63090@17h:  jesse | 2009-05-11 02:58:31 -0400
 now that the foreground of message lists is light, we don't need the light messagebox
r63091@17h:  jesse | 2009-05-11 17:15:02 -0400
Added a string for "back to folder list"
r63092@17h:  jesse | 2009-05-11 17:15:24 -0400
Added a message list header with a back button
r63093@17h:  jesse | 2009-05-11 17:15:54 -0400
Remove the "folder list" button from the options menu. no sense duplicating it
r63094@17h:  jesse | 2009-05-11 17:17:06 -0400
Refactored views, adding our replacement scrollable header 
r63184@17h:  jesse | 2009-05-12 07:07:15 -0400
fix weird bug where message lists could show a header element for a child
r63185@17h:  jesse | 2009-05-12 07:08:12 -0400
Add new-style headers to folder lists. reimplement "get folder by name" to not use a bloody for loop
r63211@17h:  jesse | 2009-05-12 18:37:48 -0400
Restore the former glory of the "load more messages"  widget.  it still needs an overhaul
r63296@17h:  jesse | 2009-05-12 23:23:21 -0400
Get the indeterminate progress bar to show up again when you click "get more messages"
r63297@17h:  jesse | 2009-05-13 02:40:39 -0400
Fixed off-by-one errors in click and keybindings for messagelist
r63298@17h:  jesse | 2009-05-13 06:04:01 -0400
Put the folder title in the name of the folderSettings popup
r63299@17h:  jesse | 2009-05-13 06:04:49 -0400
Reformatting. Removing debug logging
r63300@17h:  jesse | 2009-05-13 06:05:32 -0400
Fixing "wrong item selected" bugs in the FolderList 
r63328@17h:  jesse | 2009-05-13 13:20:00 -0400
Update MessageView for 1.5
r63329@17h:  jesse | 2009-05-13 13:50:29 -0400
A couple fixes to "picking the right item"
Titles on the message context menu
r63330@17h:  jesse | 2009-05-13 13:58:37 -0400
Added an "open" context menu item to the folder list
r63347@17h:  jesse | 2009-05-13 18:00:02 -0400
Try to get folderlists to sort in a stable way, so they jump around less in the ui
r63349@17h:  jesse | 2009-05-13 20:37:19 -0400
Switch to using non-message-passing based notifications for redisplay of message lists, cut down redisplay frequency to not overload the display
r63432@17h:  jesse | 2009-05-16 13:38:49 -0400
Android 1.5 no longer gives us apache.commons.codec by default and apache.commons.logging by default. Import them so we have em.
There's probably something smarter to do here.
r63438@17h:  jesse | 2009-05-16 14:12:06 -0400
removed dead code
r63439@17h:  jesse | 2009-05-16 14:30:57 -0400
Minor tidy
r63440@17h:  jesse | 2009-05-16 14:39:34 -0400
First pass implementation making MessageList streamy for faster startup
r63441@17h:  jesse | 2009-05-16 21:57:41 -0400
There's no reason for the FolderList to list local messages
r63442@17h:  jesse | 2009-05-16 21:58:57 -0400
Switch to actually refreshing the message list after each item is loaded
r63450@17h:  jesse | 2009-05-16 22:34:18 -0400
Default to pulling items out of the LocalStore by date, descending. (since that's the uneditable default ordering)
This makes our messages come out of the store in the order the user should see them
r63451@17h:  jesse | 2009-05-16 22:34:44 -0400
Set some new defaults for the FolderList
r63452@17h:  jesse | 2009-05-16 22:35:43 -0400
set some new message list item defaults
r63456@17h:  jesse | 2009-05-17 12:56:10 -0400
It's not clear that Pop and WebDav actually set us an InternalDate. I'd rather use that so that spam doesn't topsort. But I also want this to _work_
r63457@17h:  jesse | 2009-05-17 12:56:47 -0400
actually check to make sure we have a message to remove before removing it.
r63458@17h:  jesse | 2009-05-17 13:10:07 -0400
Flip "security type" to before the port number, since changing security type is the thing more users are likely to know/care about and resets port number
r63469@17h:  jesse | 2009-05-17 18:42:39 -0400
Provisional fix for "see the FoldeRList twice" bug
r63471@17h:  jesse | 2009-05-17 20:47:41 -0400
Remove title bar from the message view
r63544@17h:  jesse | 2009-05-20 23:53:38 -0400
folderlist tidying before i dig into the jumpy ordering bug
r63545@17h:  jesse | 2009-05-20 23:56:00 -0400
Killing dead variables
r63546@17h:  jesse | 2009-05-21 00:58:36 -0400
make the whole title section clicky
r63556@17h:  jesse | 2009-05-21 01:48:13 -0400
Fix where we go when someone deletes a message 
r63558@17h:  jesse | 2009-05-21 22:44:46 -0400
Working toward switchable themes
r63563@17h:  jesse | 2009-05-21 23:53:09 -0400
Make the MessageList's colors actually just inherit from the theme, rather than hardcoding black

r63567@17h:  jesse | 2009-05-22 10:14:13 -0400
Kill a now-redundant comment
r63571@17h:  jesse | 2009-05-22 19:43:30 -0400
further theme-independence work
r63572@17h:  jesse | 2009-05-22 19:55:23 -0400
gete -> get (typo fix)
r63573@17h:  jesse | 2009-05-22 22:48:49 -0400
First cut of a global prefs system as well as a theme preference. not that it works yet
r63577@17h:  jesse | 2009-05-24 14:49:52 -0400
Once a user has actually put in valid user credentials, start syncing mail and folders in the background instantly.
This gives us a much better "new startup" experience
r63578@17h:  jesse | 2009-05-24 14:55:00 -0400
MessageList doesn't need FolderUpdateWorker
r63579@17h:  jesse | 2009-05-24 17:57:15 -0400
Fix "get message by uid"
Switch to showing messages 10 by 10, rather than 1 by 1 for huge loadtime performance improvements
r63587@17h:  jesse | 2009-05-24 19:19:56 -0400
Cut down LocalMessage creation to not generate a MessageId or date formatter.
r63589@17h:  jesse | 2009-05-24 22:22:32 -0400
Switch to null-escaping email address boundaries, rather than a VERY expensive URL-encoding
r63590@17h:  jesse | 2009-05-24 22:23:21 -0400
Clean up our "auto-refresh the list when adding messages after a sync"
r63593@17h:  jesse | 2009-05-24 22:53:45 -0400
replace isDateToday with a "rolling 18 hour window" variant that's more likely to give the user a useful answer and is 30x faster.
r63595@17h:  jesse | 2009-05-24 23:54:14 -0400
When instantiating messges from the LocalStore, there's no need to clear headers before setting them, nor is there a need to set a generated message id
r63596@17h:  jesse | 2009-05-24 23:54:39 -0400
make an overridable setGeneratedMessageId
r63597@17h:  jesse | 2009-05-24 23:54:55 -0400
Remove new lies from comments
r63598@17h:  jesse | 2009-05-24 23:55:35 -0400
Replace insanely expensive message header "name" part quoting with something consistent and cheap that does its work on the way INTO the database
r63605@17h:  jesse | 2009-05-25 17:28:24 -0400
bring back the 1.1 sdk build.xml
r63606@17h:  jesse | 2009-05-25 22:32:11 -0400
Actually enable switchable themese and compilation on 1.1
r63692@17h:  jesse | 2009-05-29 23:55:17 -0400
Switch back to having titles for folder and message lists.
Restore auto-open-folder functionality
r63694@17h:  jesse | 2009-05-30 18:50:39 -0400
Remove several off-by-one errors introduced by yesterday's return to android titlebars
r63696@17h:  jesse | 2009-05-30 23:45:03 -0400
use convertView properly for performance and memory imrpovement in FolderList and MessageList
r63698@17h:  jesse | 2009-05-31 19:42:59 -0400
Switch to using background shading to indicate "not yet fetched"
r63701@17h:  jesse | 2009-05-31 21:28:47 -0400
Remving code we don't actually need these bits of apache commons on 1.1
2009-06-01 01:35:05 +00:00
Bao-Long Nguyen-Trong
93b95b85b2 Fixed NullPointerException when trying to send message with to text body (attachment only for example). The message would end up being stuck in the outbox. 2009-05-22 05:42:16 +00:00
Bao-Long Nguyen-Trong
f64de34d2f Made MAX_SMALL_MESSAGE_SIZE match Store.FETCH_BODY_SANE_SUGGESTED_SIZE for consistency. See r623 2009-05-21 20:02:44 +00:00
Bao-Long Nguyen-Trong
49426f3107 Removed some logging that should not have made it to SVN 2009-05-21 18:53:27 +00:00
Bao-Long Nguyen-Trong
f4d7b54fb6 Bumped back FETCH_BODY_SANE_SUGGESTED_SIZE to 50K 2009-05-21 18:49:39 +00:00
Bao-Long Nguyen-Trong
73ded7170b . Greying out partially downloaded messages
--> All messages that will require download in order to be read are now "greyed" out
2009-05-20 04:46:55 +00:00
Bao-Long Nguyen-Trong
bae5fba355 Better HTMLization of plain text emails using <pre>: spaces / identation are now properly displayed 2009-05-20 04:44:45 +00:00
Bao-Long Nguyen-Trong
d8724784dd . Minor memory usage optimization of how we HTMLize plain text emails 2009-05-20 04:39:51 +00:00
Bao-Long Nguyen-Trong
23797b62ee . Fixed issue 423:
. HTMLized version of plain text email is not loaded up as a MIME part of the message anymore. We use a custom seperate variable in the text body class.
2009-05-20 04:36:20 +00:00
Bao-Long Nguyen-Trong
435e2c3532 Fixed issue 404:
. Free up memory as we go in MessagingController.synchronizeMailboxSynchronous()
  . IMAP: We only do a partial fetch of the text body of large messages during background sync. This allow for faster syncs and avoid expensive parsing that lead to OutOfMemoryError
2009-05-20 04:27:51 +00:00
Daniel Applebaum
130e00d72a Reflect Seen and Flag states while messages are not fully downloaded 2009-05-18 04:40:24 +00:00
Bao-Long Nguyen-Trong
d222a48a18 Added option setting/preference to specify the signature location. This fixed issue 74 2009-05-17 06:02:02 +00:00
Bao-Long Nguyen-Trong
42194562c1 Minor optimization to avoid the OutOfMemoryError we have been getting 2009-05-17 05:59:28 +00:00
Daniel Applebaum
8e51d6cf14 Issue 418
When no accounts are set for automatic sync, the MailService is
stopped.  When the MailService is stopped, the Android platform is
given greater leeway in killing the entire K9 process in order to free
system resources.
2009-05-14 02:26:23 +00:00
Bao-Long Nguyen-Trong
4a6f2e419b . Fixed bug where always BCC address is added again when editing a draft 2009-05-14 00:09:43 +00:00
Bao-Long Nguyen-Trong
536133daf1 . Fixed issue 419
. Moved signature to the bottom of the message body view so that it is not editable
TODO: Add signature location preference / settings
2009-05-14 00:03:19 +00:00
Bao-Long Nguyen-Trong
724c0aed31 Minor optiomization to help with the OutOfMemoryError pbs we have been getting 2009-05-12 05:31:21 +00:00
Bao-Long Nguyen-Trong
6caccc4ead . Rolled back some code from r505 that are not usefull. The code that really prevents the double message in POP3 is when we set the X_DOWNLOADED_FULL in the POP3 folder class 2009-05-11 23:31:59 +00:00
Bao-Long Nguyen-Trong
5ab77dcd64 Refactored message loading for view
--> Perfomance improvement: the code was doing duplicates calls to the server to set SEEN flag and duplicate access to the db.
2009-05-11 04:39:03 +00:00
Bao-Long Nguyen-Trong
7d98ed60ad Reverted signature formatting code that was not meant to be committed 2009-05-10 13:55:28 +00:00
Bao-Long Nguyen-Trong
bb8629abe8 . Potential fix for issue 404: now doing all HTMLization in one pass to minimize the amount of String objects 2009-05-10 07:05:24 +00:00
Bao-Long Nguyen-Trong
5b0dee8cc0 . Large messages are now only retrieved once for POP3 servers that don't support the TOP command 2009-05-10 05:47:26 +00:00
Bao-Long Nguyen-Trong
e844f4ab0c Fixed issue 191 2009-05-10 05:39:47 +00:00
Daniel Applebaum
97a4f97b64 Issue 234
Fix POP3 deletes.  Verizon uses - in their POP3 UIDs, and K9 was
assuming that only Local UIDs have -.  Removed that assumption.  Also,
after issuing DELE on POP3 connection, need to also issue a QUIT.  The
delete code in MessagingController now closes the folder after
deleting a message, which will slow down IMAP deletes, but also
conserve connections, so is probably a net benefit.
2009-05-09 15:22:36 +00:00
Jesse Vincent
718e27dab9 WebDavStore updates to fix authentication issues - based on design and counselling from ismarc31 2009-05-07 03:17:26 +00:00
Daniel Applebaum
96c98e3070 Reformat executeSimpleCommand 2009-05-06 00:16:47 +00:00
Daniel Applebaum
27e0ec1b80 Decrement mMessageCount when an untagged EXPUNGE is received 2009-05-06 00:12:30 +00:00
Bao-Long Nguyen-Trong
5be7ee8517 . Added Z as keyboard shortcut to toggle read flag
. Removed duplicate adapter notification and hence data reload
2009-05-05 16:26:04 +00:00
Jesse Vincent
1d7fdbeb92 expose download status of messages. slightly grey out messages that haven't yet been downloaded fully 2009-05-05 04:51:11 +00:00
Daniel Applebaum
aac64b03a5 Make sure not to lose an untagged EXISTS, even if it came during a
command that we didn't handle properly.
2009-05-05 04:03:56 +00:00
Jesse Vincent
4ed1c82855 Proposed fix for "unreopenable" folders bug 2009-05-05 03:15:07 +00:00
Jesse Vincent
d20fbc09fc Stop using a custom WebViewClient - it caused keybinding and url-opening bugs.
If anything the new version feels a bit faster
2009-05-05 02:13:02 +00:00
Jesse Vincent
7dcd346e0f MessageView shouldn't swallow keybindings 2009-05-05 01:56:41 +00:00
Daniel Applebaum
651642faeb Automatically re-synchronize the IMAP protocol. Previously, losses of
synchronization could happen if an Exception was thrown while parsing
an untagged response without using executeSimpleCommand.  For
instance, while doing a fetch.  Once synchronization was lost, later
commands would fail in surprising ways.  One manifestation of such
failures was spontaneously emptying of folders when search results
were not returned properly.  The new code makes sure to only accept OK
responses with the tag of the command, and discards the untagged
responses from previous command.
2009-05-05 00:42:05 +00:00
Jesse Vincent
7daf4ef1e6 We don't actually want to clear out the plaintext version of the message. K-9 uses that for replies 2009-05-05 00:29:15 +00:00
Jesse Vincent
dec4a6371f Fix auto-open of INBOX per danapple0 2009-05-05 00:24:18 +00:00
Jesse Vincent
323c294250 Move our linkification and htmlification of mesages from on-display to on-sync.
There's no need to defer this work until the user is waiting for it
2009-05-03 20:52:32 +00:00
Jesse Vincent
f2fa5ae2f6 FolderMessageList performance improvement from debauchedsloth++ (Partial application of his patch from Issue 285) 2009-05-03 04:39:13 +00:00
Jesse Vincent
2dda469255 MessageView performance improvlements by debauchedsloth++ (This includes all changes from Issue 285's MessageView.java patch) 2009-05-03 04:36:33 +00:00
Jesse Vincent
4b444b2bcf don't try to recreate the indexes on every db update as it will surely fail 2009-05-03 04:22:34 +00:00
Jesse Vincent
46eef4589d Fixed issue 160 - Applied a patch to enable K9 to respond to addtional SEND intents 2009-05-02 22:30:08 +00:00
Jesse Vincent
ab82b10918 Add a few indexes to the message and folder lists 2009-05-02 22:14:45 +00:00
Jesse Vincent
d185adfc27 Fix up text/plain message view to escape < and > and & when converting plain text to html for display 2009-05-02 22:06:42 +00:00
Daniel Applebaum
0ffe1621a2 Issue 394
Issue 252

394: Replace code change lost with move of DAmail MailService.java to
K-9.  Eliminate the stopSelfs.  Without the stopSelfs, the Service
remains active and the Android platform is far less likely to kill the
process, although not absolutely forbidden from doing so.  Better will
be to implement the full BroadcastReceiver methodology referred to in
Issue 394, which would allow replacing the stopSelfs, which would make
K-9 a better good citizen.

252: Fix logic for raising and canceling notifications based on number
of new unread messages and total unread messages.
2009-05-02 14:49:29 +00:00
Daniel Applebaum
b603d899db Issue 395
Fix database connection leak
2009-05-02 00:37:22 +00:00
Daniel Applebaum
509fa8c8d3 Issue 386 2009-04-28 12:23:57 +00:00
Daniel Applebaum
d1661ee1f5 Reset mMessageCount before executing SELECT. Only handle untagged
responses to SELECT once.
2009-04-21 05:34:57 +00:00
Daniel Applebaum
f0f07c36de Issue 63
Issue 201
Issue 224
Issue 342

Handle untagged EXISTS messages at any time.  Should increase
synchronization speed and accuracy.

Handle IMAP servers that send a NIL where a literal is normally.
Avoids failure to sync when folder contains certain messages.

Throw Exception if folder message count is less than 0, avoiding
accidentally emptying a folder.
2009-04-21 04:22:02 +00:00
Jesse Vincent
b0a295e1a3 Re-add the code I removed twice, now that dan explained what it works around 2009-04-20 06:27:51 +00:00
Jesse Vincent
d0d6eb5442 Set the landscape-mode text colors to something more reasonable (and really "default") in the landscape xml layout templates
Re-remove the explicit subject color hardcoding in FolderMessageList.java
2009-04-20 00:58:50 +00:00
Daniel Applebaum
c00eb30524 Restore text color handling 2009-04-19 14:59:18 +00:00
Jesse Vincent
64eda5106c Switch to a light visual theme more in keeping with every other mail client on the planet.
Start to improve padding/spacing/layout
2009-04-19 09:10:32 +00:00
Jesse Vincent
e24b3429dc Allow the user to continue setup, even if their server settings don't work 2009-04-19 07:20:38 +00:00
Daniel Applebaum
47f5230bed Issue 248
Issue 192

Do not remove markers for deleted messages, even if the corresponding
remote message is not returned by the remote store.  The remote
message may not be returned simply because the query did not encompass
it on this run.  If the account's delete policy is set to "Do not
delete from server", or the delete hasn't succeeded before a folder
refresh, a message for which the deleted marker has been removed can
errorneously reappear.

This will lead to the local store eventually having a large number of
deleted message markers.  In the long term, we'll need a way to manage
and possibly automatically remove them.
2009-04-17 03:22:45 +00:00
Daniel Applebaum
4ad4216de5 Fix problems connecting to POP3 servers which lack the CAPA command. 2009-04-15 13:05:29 +00:00
Daniel Applebaum
03dd89b3f9 Get rid of @Overrides that cause compilation failures with Java 1.5 2009-04-12 01:51:54 +00:00
Daniel Applebaum
aa4a92a541 Application of patch submitted by cnehren for Issue 356, with
generalization.
2009-04-11 15:24:22 +00:00
Daniel Applebaum
932adf5ed2 Issue 143
Merged from branch issue143 @ revision 426:

Complete replacement for SharedPreferences.  Uses SQLite database
stored in application's databases folder.

Will load from legacy preferences if DB-backed preferences are empty.

Editor conforms to atomic commit contract.
2009-04-11 14:33:54 +00:00
Daniel Applebaum
5711abdee5 Issue 234 Issue 366 Issue 329
Hardening of POP3 and SMTP communication:

SMTP: Decrement failure counter when no possible message send
occurred.  This way, K-9 will only stop attempting to send messages
for which a possible successful send occurred, but K-9 could not
detect.  Any message that is known to have completely failed to send
will be reattempted indefinitely.

POP3: Some reworking of Exception handling.  Also, if it is not
possible to get a "message number" for the UID of the message that is
being deleted, conclude that the message has already been deleted on
the server.  Mark this as a permanent error, so that it gets removed
from the pending actions queue.

MessagingController: Look for the permanentFailure flag on the
MessagingException, and if a pending action raised a permanent
failure, remove the pending action from the queue so that it will not
be re-attempted nor block later requests.
2009-04-11 02:11:17 +00:00
Daniel Applebaum
388969d76c Automatically fix folder selections. 2009-04-11 01:26:44 +00:00
Daniel Applebaum
bf98b5c2af Issue 366
Significant hardening of the email sending process.

A given message in the Outbox is only attempted to be sent 5 times.
Once the threshold is reached, the message is flagged.  asses through
the Outbox skip flagged messages.  The message can be tried again by
manually unflagging.  When any messages are flagged during a pass
through the Outbox, K-9 raises a notification with a fast flashing red
LED, alerting the user to the failure to send.  A note is also placed
in the K9mail-errors.

The read timeout on SMTP connections has been changed to 300000ms (5
minutes)

The send attempt counter is kept in memory, not stored with the
message, so a phone or application restart will clear the counters,
but not the flagged state.  As the intent of this revision is to avoid
runaway message sending, this is deemed to be acceptable for now.

The moving of messages from the Outbox to the Sent folder has been
changed to an atomic move.

Extra error checking has been added to the SMTP communication code.

The flashing LED may be excessive.
2009-04-09 17:48:05 +00:00
Daniel Applebaum
e92ac38052 Fix for empty real folder name issue identified in Comment 10 of Issue
366

Affected POP3 and WebDAV accounts
2009-04-09 15:05:24 +00:00
Daniel Applebaum
ee4ac07788 Issue 364
Provide preference for which folder is automatically expanded when
entering the Folder/Message list.

Can be set to -NONE-, so that no folder is automatically expanded.

Defaults to Inbox, which is like the default behavior of the core
Android Email.

Fails to move the automatically opened folder to the top of the
screen.  This needs more work.

The already selected folder should be highlighted (or otherwise
indicated) in the ChooseFolder Activity.  This needs more work.
2009-04-08 18:14:52 +00:00
Daniel Applebaum
f307bfc1eb Issue 235
Added dialog box for confirmation for "Mark all messages as read"
2009-04-06 01:37:35 +00:00
Matthew Brace
1b5fdb99d9 Fix for authentication issue describe in issue 359. 2009-04-02 01:52:00 +00:00
Daniel Applebaum
b210762ac7 Revert unintentional change 2009-04-01 03:38:55 +00:00
Daniel Applebaum
8ca1830afb Add "Check mail" menu items:
Accounts: Option menu->Check mail = check mail in all
   folders of all accounts
Accounts: Context (long-press on account) menu->Check mail = check mail
   in all folders of this account

Folder/Message List: Option menu->Check mail = check mail in all
   folders of this account
Folder/Message List: Contet (long-press on folder) menu->Check mail = check mail in this
   folder*

*All "Check mail" options, except for the long-press on an individual
folder, respect the normal synchronization class settings.

Eliminate all Refresh menu items.

Add progress indicators to Accounts activity.  Indeterminite progress
indicator while email checking is in progress.  Determinite progress
indicator while fetching unread counts.
2009-04-01 03:25:16 +00:00
Matthew Brace
f699361390 Prevent multiple appendages of the email signature (Issue 66). 2009-03-26 06:06:04 +00:00
Robert Jacob
b0cf11d64c IMAP "system" folders can be selected with pick list (Patch for Issue 182) 2009-03-24 18:20:16 +00:00
Daniel Applebaum
9f7a4b05d8 Elminate harmful selection of delete policy on Incoming settings page. 2009-03-12 01:50:06 +00:00
Daniel Applebaum
272bb699c9 Use format, instead of hardcoded concatenation, for formatting
recipient display.  (suggested by dumbfile in Comment 12 of Issue 10)
2009-03-12 01:31:55 +00:00
Daniel Applebaum
49c2708f4c Patch ImapFolders.r389.patch submitted in Comment 3 of Issue 214 by
dumbfile on Feb 28, 2009.

One change of my own, putting the actual folders name outside the
parentheses, and the functional/special name inside the parentheses.
2009-03-12 01:13:26 +00:00
Daniel Applebaum
45227e2708 Delete now uses LocalFolder.moveMessages
Copy now copied body (but attachments might not work right).

Move is now reliable (needed to open the destination folder), and
leaves a placeHolder message behind in the source folder so that
messages are not resynced.
2009-03-07 07:20:15 +00:00
Daniel Applebaum
6d5b158787 Restore ability to delete server-side messages for POP3 and WebDAV 2009-03-05 13:43:05 +00:00
Daniel Applebaum
014691bac9 Fix reverse sorting when in sort-by-date mode. 2009-03-05 08:08:37 +00:00
Daniel Applebaum
7b2a754009 Cleanup of minor issues with r395. r395 and this revision are to
address Issue 2, not Issue 3 as previously stated.
2009-03-05 07:50:53 +00:00
Daniel Applebaum
15e5cb4eaf Provides the ability to move and copy messages between folders. Issue
3.

Each remote Store (IMAP, POP3, WebDAV) can provide indications to the
higher level classes as to whether copy and move are implemented.
Currently, copy and move are only provided by ImapStore.java.  When
the facilities are not available, the user interface suppresses the
menu options.

The available destination folders can be configured using folder
classes.

Copy results in null message bodies in the destination copy of the
message until the next sync.  This is a problem that occurred with
deletes previously, and is likely a fault with the copyMessages method
of LocalStore.java.

Utilizes a modified version of the ChooseFolder.java Activity that
debuachedsloth contributed in a patch attached to Issue 285 on 16 Feb
2008.
2009-03-05 07:32:45 +00:00
Bao-Long Nguyen-Trong
db426c44b7 . Applied patch from dumbfile which fixes issue 307 and issue 265 related to date format when running on a device with a non US locale 2009-03-04 19:49:39 +00:00
Daniel Applebaum
73d5e16178 Fix for problem with r386 found by kanisdragon. 2009-03-02 00:47:27 +00:00
Daniel Applebaum
19c93d1816 Issue 10
All messages in all folders that were sent from the email address
associated with the account display the recipient, preceeded by To:,
instead of the sender.
2009-02-28 17:40:39 +00:00
Matthew Brace
91573e19ac Fix for null pointer exception when there is an exception thrown and the caught in processRequest without properly terminating checks (ie, during the recursive calls, resulting in a null data set being returned). 2009-02-26 06:56:30 +00:00
Daniel Applebaum
6f8a243bcc Issue 318
When performing a database upgrade, clear all cached attachments and
attachment thumbnails
2009-02-25 03:35:25 +00:00