Commit Graph

108 Commits

Author SHA1 Message Date
Matt Johnston d43f17ab94 Use java.util.zip for inflating
Can't use it for deflating since it doesn't have Z_PARTIAL_FLUSH
2011-02-21 04:57:46 +08:00
cketti 737cff0612 Hardcode folder name for (local) outbox and don't show outbox when
only being allowed to select remote folders.
2011-02-20 04:47:28 +01:00
Jesse Vincent 12d1097a24 Big, scary massive "ant astyle" to get us back to something
approximating AOSP coding standards.
2011-02-06 17:09:48 -05:00
Jesse Vincent 6550151684 Add serialVersionUID to Serializable classes to make eclipse happy 2011-01-31 23:45:14 +00:00
cketti 22834d6998 Removed unnecessary null pointer checks 2011-01-19 01:30:13 +00:00
Andrew Chen e56b044bbc Add support for HTML composition with text alternative.
Revamp K9 Identity string.
Quote names in Address only when needed.
Remove quoted text bar and move button to quoted text area.
2011-01-12 23:48:28 +00:00
Jesse Vincent 9c847d3e9d minor code cleanup 2011-01-06 16:55:34 +00:00
cketti f9f6160719 Correctly encode/escape strings when used in IMAP commands.
Fixes issue 2832
2011-01-06 00:39:09 +00:00
Jesse Vincent 9f4790088e Escape backslashes in IMAP mailbox names 2011-01-05 13:12:30 +00:00
Jesse Vincent 29fdb81f9b Fix for the "K9 skips every 101st message when fetching on IMAP" bug by
e-t172 <e-t172@akegroup.org>. Fixes Issue 2819
2010-12-30 23:57:41 +00:00
Fiouz 47762a9baa Remove coupling between ImapStore and ImapConnection by adding an settings indirection interface. Purpose: use the IMAP connection code to validate credentials without having an actual ImapStore instance. 2010-12-30 21:57:59 +00:00
Fiouz 05a8a31d4a Don't reference the enclosing type instance when it's not used (memory optimisation) 2010-12-14 19:26:51 +00:00
Jesse Vincent f5eb6e03af astyle 2010-12-01 06:32:29 +00:00
Jesse Vincent 78c900b5fe remove redundant ;s 2010-12-01 03:07:28 +00:00
Jesse Vincent cead5c7060 flip some loops to using java internals instead (per intellij) 2010-12-01 03:04:57 +00:00
Jesse Vincent c79ea226a5 Remove "throws" declarations that didn't actually get thrown. Remove a
couple of try blocks that only caught throws we didn't throw. IntelliJ
optimization.
2010-12-01 03:02:13 +00:00
Jesse Vincent 43cef54ad6 We don't cache positive DNS lokups. We shouldn't cache negative DNS lookups either 2010-11-21 02:10:59 +00:00
Marcus Wolschon b723769e65 translated "unable to connect". 2010-10-28 14:37:48 +00:00
Jesse Vincent 6061c42ea9 find src/com/fsck/ -name \*.java|xargs astyle --style=ansi --mode=java --indent-switches --indent=spaces=4 --convert-tabs 2010-10-05 06:04:28 +00:00
cketti 8cf2655dd8 Reverted r2332 and r2333 because the cause of the problem reported in issue 2078 seems to be different than initially thought. 2010-09-09 23:52:06 +00:00
cketti a85ea2ee53 - Reworked the previous patch with suggestions by jessev to be as runtime/memory efficient as possible without being useless.
- Output debug message when invalid responses are encountered.
2010-09-03 15:32:25 +00:00
cketti b9b15295cd Added yet another work-around for an IMAP server implementation with a creative interpretation of the specification. Sanity check results returned for a SEARCH command.
Fixes issue 2078
2010-09-03 13:58:09 +00:00
Jesse Vincent 7d2804549e Remove redundant "return" statements from the end of void methods (with
help from intellij)
2010-08-29 23:39:45 +00:00
Jesse Vincent 4f0bce1569 Simplify many, many boolean conditions with help from IntelliJ 2010-08-29 23:39:26 +00:00
Jesse Vincent ff5024eaec astyle 2010-08-18 02:48:55 +00:00
Jesse Vincent 8832933a60 It turns out that if you're only fetching the bodystructure, the mime4j
parser can't parse the message.
2010-08-17 04:21:22 +00:00
Jesse Vincent ece68bae5d Off-by-one error in the recent IMAP fetch work :/ 2010-08-12 02:21:56 +00:00
Jesse Vincent 0229d8a1fe Implement windowing for IMAP UID FETCH
Our previous implementation of UID FETCH didn't ever take into account
maximum command line lengths. When fetching, say 800 messages from a
GMail IMAP server, we could easily overflow the max line length leading
to a fetch that didn't get all the messages we wanted to and was
truncated before the description of which fields we want. That caused
K-9 to fetch complete messages, exhaust memory and ultimately fail,
even when we were just trying to get message lengths.

An equivalent fix needs to be made to seach by UID.
2010-08-11 03:36:40 +00:00
Fiouz dfb8f9e0f2 Memory management optimisation: help garbage collection by avoiding repeated instantiations of immutable arrays (empty arrays of String, Message, Flag, Address) 2010-08-07 15:10:07 +00:00
Jesse Vincent 7464a1527a Convert for loops to "enhanced" syntax per SDK performance guidelines
(Automatic with Eclipse)
2010-07-19 01:52:18 +00:00
Jesse Vincent 8ab165ef31 Allow per-protocol configuration of which wire protocols are
debug-logged
2010-07-13 21:16:42 +00:00
Jesse Vincent 5a43acff2a Rather than accidentally reusing a public API function name with a
different signature, give the private command to pull a count
from the remote imap store its own name
2010-07-11 15:41:20 +00:00
Jesse Vincent 20e47991c3 astyle 2010-07-11 15:39:26 +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
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 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
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 8cb7f8f317 Fixes Issue 1763
Patch from jca02266 to use locale independent date formatter.
2010-06-11 12:56:01 +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
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
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 24b178773f Make sure prefix is fetched before any call to getCombinedPrefix. 2010-05-22 17:34:16 +00:00
Daniel Applebaum 6afb8c8506 Make sure to compare capabilities using upper case. 2010-05-20 11:55:42 +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