Commit Graph

929 Commits

Author SHA1 Message Date
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