· Automatic folder config for Yahoo!, Gmail, and other RFC6154 SPECIAL-USE-compliant servers
· Set the IMAP namespace for Gmail during auto-configuration
· Changed UI to allow selecting the empty IMAP namespace
· Set 'When I delete a message' to 'Delete from server' by default for IMAP on automatic setup like manual setup does
· Set default names for Archive and Spam on manual config like automatic setup does
· Added autoconfiguration settings for several providers
· Option to have confirmation on deleting starred messages
· Option to strip signature from quoted text in replies
· Extended setting to hide subject in notification area (never, when locked, always)
· Save settings changes "on pause" rather than "on back" so we actually save settings when a user hits home or menu or whatever
· Added font size setting for text input fields in the message composition screen
· Added a setting to disable marking messages as read on viewing
· Enable system zoom and disable gestures by default
· Add discard confirmation dialog when pressing back in message compose
· Option to now refuse to save drafts of messages marked as encrypted
· Added a button to switch the identity in the message composition screen
· Prompt user which email address to use when a contact with multiple email addresses was picked
Replying to mail:
· Fixed quoting of text/plain reply when sending text/html messages (builds plain reply separately instead of converting from the HTML)
· Forwarded messages always use the quoting style 'Header'
· You can now can have reply and signature before quote, reply and signature after quote, or reply before and signature after quote (setting reply after and signature before still corrects to both after)
· Convert quote characters in plain text messages to blockquotes in the HTML version. "Be like Thunderbird."
· Colorize quoted text that has been converted to HTML. Like Thunderbird, but optimized for mobile (no right margin quote bar, thinner left margin quote bar).
· Added 'From:' addresses on "reply all" even when 'Reply-To:' is set. Don't repeat address in 'To:' field if it's already included because it's the 'Reply-To:' address.
· Preserve header order (with the exception of duplicate headers like 'Received' they all show up where the first one did)
· Improved zooming/scrolling when viewing a message
· Added long-press popup menu to links in email message display
· Workaround to detect the charset from HTML mail without charset parameter on the header
· Added button to show unnamed and inline attachments
· Added batch buttons for 'Archive' and 'Move'. Made batch buttons configurable
· Remember the most recent sort setting in the message list
· Added a "sort by arrival" option
· Added widget to display the unread count for an account
· Added launcher shortcuts for special accounts/folders ("Unified Inbox" and "All messages")
· Fixed the parsing of response data for WebDAV requests
· Fall back to HELO command if the server doesn't know EHLO (SMTP)
· Improvements to mail sending timeout issues
· Yahoo! IMAP seems to no longer require 'ID ("GUID" "1")' over non-3G. See http://mobile.yahoo.com/mail for IMAP setup instructions.
· Support ACTION_SEND extras when handling ACTION_SENDTO. Too many applications get this wrong and rely on the undocumented behavior of the AOSP Email app and Gmail
Notable bug fixes:
· IMAP message UIDs are 32 bit unsigned values and cannot be stored in int, so we now parse them as long.
· Disable special screen reader mode on ICS. The default message view has special accessibility features already.
· Don't save to drafts if drafts folder is -NONE-
· Hide buttons & settings that don't do anything on POP3 accounts
· Delete attachment metadata and thumbnails when deleting attachments
· Reset unread/flagged count on "empty trash"
· Updated French translation (erkan2005)
· Updated Japanese translation
· Added Hebrew translation (elyashiv sabach - אלישיב סבח)
· Updated zh-rTW translation (Jeff117077)
· Updated Polish translation (Błażej Jeżewski)
· Added Greek translation (IGaviotis)
· Updated Turkish translation (wakeup)
· Added Danish translation (mittaa)
· Updated French and German translation (damor)
· Updated Russian translation (Dmitry Ashkadov)
· Added Ukrainian translation (Andriy Kopanytsia)
· Updated Spanish translation (AntonioGPS)
· Updated Chinese (zh-CN) translation (sunnavy)
· Updated Finnish translation (jkinnunen)
· Updated Italian translation (Votyer)
· Work around a bug in Android 4.x (?) when the system locale is Turkish
· Version 4.011 fixes a crash on Jellybean devices
· Version 4.009 fixes a catastrophic error that could cause mail stored on SD cards to vanish.
· Version 4.008 fixes a regression on Android 2.1 or earlier introduced in 4.007
· Version 4.007 includes a fix for a permissions issue on K-9's data files discovered (and fixed) by Ashley Willis.
· Upgraded the "read messages" and "delete messages" permissions from "normal" to "dangerous" to allow users and devices to better manage user data security.
· Fixed a rare NPE in autocompletion of email addresses.
· Fixed "mark as unread" from message view (Issue 3958)
· Fixed problem when importing multiple accounts
· Fixed bug that caused drafts to be lost under certain circumstances (Issue 3696)
· Fixed importing account settings for IMAP accounts (Issue 3986)
· Show/hide ListView footer depending on message list type (Fixes issue 3946)
· Added new Danish translation
· 4.001 fixes a bug that stopped WebDAV support from working for many users
· Added ability to change the order of accounts (Issue 1251)
· Fixed counting of new unread messages
· Dynamically update the titlebar when the unread state of a listed folder changes (Issue 3177)
· Respect "move/copy destination folders" when selecting a target folder
· Search same sender from searchable folders instead of the unified inbox
· Switch subject to marquee ellipsis for landscape layout
· Properly keep selection in case of a configuration change (orientation, keyboard, etc.) during user interaction (e.g. a dialog)
· Reset visible limit when "clear messages" is used
· Improved support for picky/buggy apps when viewing attachments
· Rewrite broken MIME types to standard values (e.g. image/pjpeg to image/jpeg)
· Added support for requesting read receipts (Alessandro Russo)
· Added button to re-add the quoted text editbox after it has been removed
· Show (and populate) CC field when using "Reply all" on a message with recipients in the CC field (Issue 3509)
· Fixed restoring drafts saved with "Reply after quoted text" enabled (Issue 2568)
· Fixed bug with generation of HTML replies where no text was quoted
· Fixed bug where message was HTMLified when sent without quoted text but should have been sent as plain text (Issue 3530)
· Explicitly use Locale.US when dealing with dates in message headers
· Fixed parsing of messages with a very large header
· Make sure disposition size parameter is a valid number before using it (Issue 3712)
· Don't crash on messages without valid From-header (Issue 3683, Issue 3814)
· Fixed bug where invalid MIME boundaries could be created when using locales with difficult uppercasing rules (e.g. turkish) (Issue 3733)
· Added settings import/export
· Added account setting to configure whether or not to quote the original message by default
· Option to show next message after delete by default instead of previous
· Added 2MB, 5MB and "All" message download options
· Loosened the restrictions on the TLD to support custom private TLDs, as well as single label hostnames (Issue 2784) (rpimonitrbtch)
· Added Turkish translation (Recep PAYVERDI)
· Added Hungarian translation (Sándor Péter Nagy)
· Updated Catalan translation (dvbotet)
· Updated Dutch translation (Jan-Bart)
· Updated French and French Canadian translation
· Updated German translation
· Updated Japanese translation
· Updated Korean translation
· Updated Russian translation (Alexei Emanov)
· Updated Taiwan Traditional Chinese translation (Jeff117077)
· Disabled "download by date range" which caused messages outside the date range to be downloaded over and over
· Fixed bug where UID in response was truncated (Adam)
· Fixed some crashes
· Disabled "download by date range" which caused messages outside the date range to be downloaded over and over
· Don't open a connection to the POP3 server if a message is marked as read (since that's a local operation)
· Implemented work-around to handle malformed UIDL responses (Issue 3546)
· Treat 5xx SMTP return codes as permanent failures
· Don't crash when trying to connect to an non-SSL service using SSL (Issue 3798)
· Work around cases where mail was last checked in the future
· No longer suggest a display name based on the accounts configured in Android. Accordingly, no longer request the permissions android.permission.GET_ACCOUNTS and android.permission.READ_OWNER_DATA
· Stop service(s) if not in use (Issue 2777) (Christian Knecht)
· Added field UNREAD (João Pedro Taveira)
· Added field for sender address (Issue 3665) (Chris Banes)
· Fixed a bug that caused some messages to show up as "No Text"
· NPE fix in message list
· Restore support for Android 1.5
· Unavailable accounts are now greyed out
· You can now start typing to filter K-9's folder list
· Fixed display of colorized name in the message list.
· The date format preference is now refreshed each time the messages get listed. Previously, changes to the date format preference weren't noticed until the app restarted.
· Mark messages as ANSWERED only upon send.
· JPEG images with the MIME type "image/jpg" now open correctly on Motorola devices.
· Where a message has attachments, a long press on the "Save" button will allow the user to choose where to save the attachment to using either a file browser or by specifying a path; a short press saves to the default location (see "Configurability" below). Supported file browsers are OI File Manager, AndroidWorkz SystemExplorer, ES File Browser and Blackmoon File Browser (issue 1027).
· Fixes for downloading attachments
· Added an addressbook lookup button
· Explicitly set focus to "To:" input field when composing or forwarding a message.
· Made it possible to BCC to more than 1 address
· Fix display of icon in About box on Android 2.1 and earlier
· Use pre instead of div so that plain text clients get line wrapping correct.
· Correct encoding and decoding for the filename parameter in the Content-Disposition.
· Should store the disposition-type without Content-Disposition parameters.
· Implemented option to hide special accounts (issue 3060)
· Added option to disable confirmation dialog for "mark all as read" (issue 1415)
· Added "move to spam folder" confirmation dialog to MessageList
· Added "Save attachments to..." option to allow a default location for saving attachments (issue 1027)
· Updated Brazilian Portuguese translation from noeczisto
· Added Catalan translation from David Valls
· Added a Galician (Galego) translation from fernando.coello
· Updated Chinese translation update from sunnavy
· Updated Finnish translation from Patrik Selin
· Updated Italian translation with patch provided by paolo.maccione
· Updated Japanese translation
· Added a Korean translation (from sungguk)
· Updated Polish translation from alekhavoc and rabbbit
· Updated Swedish translation from daniel.malmgren.DM
· Updated Spanish translation with changes provided by Hayawata
· Added support for emoji input in message subjects (on Japanese Devices only)
· Improved support for iso-2022-jp messages
· Remove trailing space from IMAP command as a potential fix to issue 3089.
· Fix length-check of BODYSTRUCTURE reply; fixes issue 3116.
· Unify two IMAP date parsing paths, improving the exception so we can learn what date format we don't cope with.
· Added another badDateTimeFormat to ImapResponseParser to handle IMAP servers that generate timestamps without a timezone. Fixed issue 3179.
· Fix bug with partitioning of IMAP FETCH commands
· In getPersonalNameSpaces now we ask the server for the real folder names corresponding to the special folders ids (for which we have constants), so we can map the account folders using the real names.
· Support non-English Exchange installations.
· Fix the ability to accept invalid SSL certificates for exchange support.
· Made the minor modifications to support CRAM-MD5 authentication in POP3 accounts.
· Disable "Enable refile buttons" preference for POP3 users
· New accounts now default to using the SMTP submission port (587) rather than the regular server-to-server (25) transport port.
· Permanent failures when trying to deliver a message move it back to drafts.
· Tempfail outgoing messages after 5 delivery attempts
· Opening a "permfail" message takes you to the drafts folder
· Split out "tempfail" and "permfail" message delivery errors
· Fix "sending message failed" notifications to actually report the server error
· If an SMTP server tells us how big the biggest message they accept is, don't even try to deliver a message to them if it's bigger than that size
· For a while, it was possible for users to configure their outbox and drafts folders to be the same folder. This could result in drafts being sent over and over. We now use the K-9 Identity header as a shibboleth for drafts, as it's not actually set when a message is sent.
· Removed some extra spaces from SMTP commands which picky servers rejected. Fixes issue 3182.
· Add options for PLAIN and LOGIN authentication even when not advertised by the server. Legacy PLAIN autoselection behavior is retained.
· AttachmentProvider can now return an attachment with an unmodified MIME type. However, when viewing attachments this is not desirable. So we try hard to return a sensible MIME type (use extension to look up a MIME type if it's originally "application/octet-stream"; or replace with canonical MIME type if it's known to be wrong, e.g. "image/jpg" -> "image/jpeg")
· Add extra for the sender address(es) to the "Share intent"
· Get rid of the "Fwd: " prefix when sharing a message. Add recipients to the intent ("To:" = EXTRA_EMAIL, "CC:" = EXTRA_CC)
· Change our technique for sending /r/n at the end of smtp commands to deal with a weird failure on honeycomb
· We have a test suite that can run (thanks to achen's start)
· Added an 'astyle' build target
· Switched the code's style back to something resembling AOSP standards
· switch build infrastructure to git
· Restore tools/build-beta to its former glory. It can now build a "K9 beta with different keys" that can sit next to an installed K-9.
· K-9 now compiles in the libs we only need at build time when building with eclipse. This is an annoying default, but it'll make life easier for newbies starting out with K-9 for eclipse. We should ALWAYS do release builds with ant
· Fixed polling schedule after SD cards are mounted or unmounted
· Fixed several NullPointerExceptions
· Destroy all messages in one SQLite transaction
· Perf improvement: use parcels instead of serializable. Standard Java serialization is slow on Android. Replacing it w/ parcelable makes it around 10x faster (on a N1, with ~ 500 messages in the list).
· Replaced our local copy of jzlib with a clean jar built from jzlib 1.0.7 downloaded from jcraft
· Replaced local version of jutf7 with a homebuilt jar
· Replaced Apache Commons IO with v2.01 downloaded from apache.org as a prebuilt JAR
· Tell eclipse to bundle JARs in libs but NOT to bundle libs in compile-only-libs. (Results in Eclipse building something much closer to what ant does)
· Start building using a JAR of MIME4J
· Add support for building with precompiled JARs
· Removed dependency on (external) commons-codec and commons-logging
· Get rid of now unnecessary BouncyCastle jar
· Use SslCertificate that is part of the official Android API instead of BouncyCastle's X509Name (which is not shipped anymore in Android 3.0) to verify domain names on SSL/TLS connections.
· Use java.util.zip for inflating (Can't use it for deflating since it doesn't have Z_PARTIAL_FLUSH)
· When a user has accidentally configured their "Drafts" and "Outbox" folders to be the same folder, K-9 now tries harder to avoid sending draft messages.
· When an SMTP server sends a "permanent failure" error, K-9 stops trying to send the message
· When K-9 fails to deliver a message 5 times in a row, K-9 will now wait until the app stops and starts before trying again
· Error messages sent by SMTP servers should now actually be shown to the user in the Android Notification
· Slightly correct an IMAP command that made certain cranky servers cranky
· Now compatible (but not yet optimized for) Honeycomb and the Xoom
· IMAP, SMTP and Exchange protocol fixes
· When composing or forwarding mail, the "To" field is now automatically focused.
· Restore "only vibrate once" vibration notification option.
· Add a setting to enable Outlook-style message quoting.
· Add a setting to allow users to always show email addresses instead of the "friendly" parts of email addresses.
· Add a setting to disable unread count in notification bar.
· Add a setting to change the font size of the message preview in the message list.
· Round account color chips
· Be a little more graceful when scrolling horizontally in a (vertical) scroll view. Not quite to the point of diagonal scrolling, but hopefully closer.
· Visual cleanup to Message Lists, Message views
· Stop showing "Not polling" in the status header. Most of the time, this is because Push mail is enabled.
· Improve the first page of the wizard on tablet-scale devices
· Added a Brazilian Portuguese translation from Marcio Viterbo
· Updated Italian translation from Giuseppe Arrigo and Paolo Maccione.
· Updated Czech translation from lubekgc.
· Updated German translation with slightly modified version of the patch provided by OliverMe...@googlemail.com
· Updated Italian translation from paolo.maccione
· Updated Spanish translation from Adolfo Gutiérrez Ocaña
· Improved emoji support for a wide variety of carriers. HIRANO Takahito
· Support for emoji in message subjects. HIRANO Takahito
· Allow emoji input on Japanese devices. HIRANO Takahito
· Implement phonetic search of Contacts on Eclair and earlier.
· Upgrade to a newer version of MIME4J to gain significant performance improvements from the past few years of development
· Enable Strict Mode when a new "developer mode" is enabled and we're running on 2.3 or newer
· Update URL regexes by importing from AOSP and then from IANA
· Initial implementation of folder attributes on the folder, rather than in preferences
· Improve generation of plain text versions of HTML mail
· Improve generation of message previews
· Improve performance of account statistics generation.
· Call the routine to convert emoji to images only when a message actually contains emoji.
· Batch storing of unsynced messages to speed up DB update (chunk size set to 5).
· Execute LocalMessage.appendMessage() & LocalMessage.setFlag() in the same transaction for small message storing in order to speed up DB update.
· When mail is sent successfully, cancel the "couldn't send mail" notification
· Don't notify for new mail in a designated spam folder
· Prevent new mail notifications for IMAP messages older than our most recent message.
· Use a heuristic to try to avoid notifying POP3 users about older mail messages
· Preserve HTML formatting when replying to or forwarding HTML mail
· Clean up the display of quoted messages on the mail composition screen.
· When editing a previously saved draft, only show the BCC field if it has entries other than the auto-bcc for that account.
· Switch from generating X-User-Agent to User-Agent headers.
· Use full email addresses as usernames for alternate Yahoo! domains.
· Add support for other Yahoo! domains (ymail.com, rocketmail.com)
· Set up some reasonableish defaults for which folders to sync when creating a new account.
· Correctly encode/escape strings when used in IMAP commands.
· Escape backslashes in IMAP mailbox names
· Fix for the "K9 skips every 101st message when fetching on IMAP" bug
· Better handle the case where a list in an IMAP response is prematurely ended by CRLF.
· Changed SMTP code to handle reply codes without additional text.
· Try using IP addresses for EHLO if the local hostname is unavailable. Only use a default hostname if the IP address is unavailable.
· Fix usage of 'advanced' exchange settings.
· Fix form based re-authentication when logon cookies had expired.
· Don't reset visible limits every time K-9 is opened, only when the user changes how many messages they want to be synced.
· Italian translation updates from paolo.maccione
· Fix for a settings crash in Italian locales
· Updated Spanish translation from javier.crespocarreno and bergonzini
· Updated German translation from bobo_bb, therossoblu
· Updated Japanese translation
· Updated French translation
· Added a first pass implementation of being able to resend a message.
· Try much harder to send outgoing mail
· Better notifications when message sending fails
· Replying to a message you sent now sends mail to the recipients of the original message, not to you.
· Relabeled the "Choose Identity" menu item in message compose to be a bit more obvious to end users.
· Display name and email address in separate lines for auto-complete results in message compose activity. Fixes issue 2442
· Match beginning of words when searching for contacts in Android 1.5/1.6 (e.g. "Doe" will find "Doe, John" and "John Doe") Fixes issue 1354
· Mark contacts as contacted when a mail is sent to them. Fixes issue 2522
· Imported icon updates from Pierre-Luc Auclair
· Animated the batch-operations toolbar (Imported from AOSP)
· Pinch-to-zoom should now be more reliable. Patch by achen.code. Fixes isue 2720
· In Message Lists, unread message senders are now more consistently shown in bold. patch from achen.code. Fixes Issue 2719
· Implement the ability to store messages on SD. You can find the toggle in Account Preferences under Storage.
· Fixed significant bugs in how we garbage-collect deleted messages
· Improved the "Do what I mean" nature of "Empty trash" - it now syncs the trash folder after deletions to clear out local records of deleted messages and does a compact operation on the local store.
· Try to gracefully handle account DB corruption by deleting file on open exception. Updates issue 2537
· Added the ability to completely wipe the locally cached messages of a single synced folder.
· preliminary implementation of 'quiet time'
· Replaced our color picker with a variant of android-color-picker
· Added a "fetch all messages" visible limit
· Added a new preference to let users select how many lines to show in message-preview mode.
· Moved our "pick a folder" preferences out of the account setup wizard, into the "Folders" section
· Fixed an NPE when toggling "batch" update buttons.
· Fixed an NPE in account shortcuts
· Guard against null content from html parts on reply/forward, which was causing a bunch of NPEs on the market.
· We don't cache positive DNS lokups. We shouldn't cache negative DNS lookups either. (Should be extended to all protocols)
· Ignore messages without unique-id when parsing UIDL response Fixes issue 2731
Exchange / WebDAV:
· Exchange authenticaton and setup overhaul from Kris Wong
· Applied WebDavStore_cleanup.diff to remove dead code in the WebDav store from Kris Wong
· Changed external intent (e.g. Intent.ACTION_SEND_TO) handling code in MessageCompose
· only allow mailto URI for ACTION_VIEW and ACTION_SENDTO (as documented by AOSP)
· allow additional recipients via "to" parameter in mailto URI
· removed check for allowed MIME type when adding attachments since we're accepting all MIME types anyway
· show CC and BCC text fields when one of those recipient types was set by the intent
· use MIME type specified in intent for attachments (if present and doesn't contain a "")
· No longer delete the Outbox every time it's empty
· Significant automated code-cleanup from IntelliJ
· Improvements to message preview heuristics
· Fix for "http:/"-links in plaintext -emails. (add http:// is a link has no schema)
· Force close when returning to message list
· Force close while composing messages
· Crash while viewing certain HTML messages on Android 2.1 (Eclair.1)
· Fixed Force closes on Android 1.5 devices
· Updated Japanese Localization
· Add gmail-style "to me" and "cc me" indicators in messagelist
· Previews for HTML-only messages
· Improved accessibility for Next/Previous buttons in message lists
· When returning from a message view to a message list do our listview updates on a thread rather than on the main UI thread. This results in the list blinking with old data, but that's still a better user experience than the "frozen" behaviour in 3.200
· When doing a message search, break it into "first 10" and "more" - because a long SQL query takes more time before starting to return results, K-9 was increasingly slow on large folders.
· Workarounds for out-of-memory errors when HTMLifying plaintext messages.
· Updated MIME Type list with http://www.stdicon.com/mimetypes
· It turns out that not every android release has a good extension to mimetype mapping. restore our previous hardcoded mime database as a fallback
· Fix for NPE when changing identities
· Simplified Chinese translation -- zhangyin
· The IDEAL Group have joined the K-9 dogwalkers and submitted their code to give K-9 support for screenreaders to be part of K-9 -- jessev
· K-9 can now display Softbank, DoCoMo and KDDI Emoji (with the exception of 3 kddi glyphs that overlap with softbank). -- jessev
· BETA version of a new MessagingProvider to enable K-9 widgets. API MAY CHANGE IN FUTURE RELEASES -- stephane.lajeunesse, koxx33 and fiouzy
Selected Bug Fixes:
· Numerous internal performance and memory efficiency improvements -- everybody
· Fixes for several storage "leaks" that could cause K-9 mailboxes to grow quite large over time -- jessev
· Improvements in HTML mail forwarding -- jessev
· Word wrap quoted text in replies. -- cketti
· Remember "Show pictures" button state when changing orientation. -- cketti
· Try harder to make message loading feel responsive and scroll correctly. -- jessev
· Don't show K9mail-errors as move/copy destination folder. -- cketti
· Improved accuracy in to "more from this sender" -- jessev
· "Integrated Inbox" is now "Unified Inbox" - it's a bit shorter, slightly more descriptive and it matches iPhone terminology. -- jessev
· "Forward with another app" is now "Share" -- jessev
· "Preferences" is now more consistently "Settings" -- jessev
· New mail alerts automatically open the folder they're alerting about. Patch from thardie -- jessev
· Restore message list state when exiting message view -- jessev
· Keyboard filters on folder-selection -- Marcus.Wolschon
· K-9's theme has been disabled within the Settings UI to work around an android bug. -- jessev
· Add support for voice search -- jessev
· Significant overhaul of settings screens -- jessev
· Pinch-to-zoom messages -- jessev
· Single-column layout for messages -- jessev
· When to automatically show images in messages --jessev
· Volume key navigation in MessageView, MessageList and all K9ListActivity subclasses. Based on a patch from paulkilroy -- jessev
· Show names from contacts -- jca02266, cketti
· Top- or Bottom-post replies. Code By achen.code -- jessev
· Disable LED notification for new messages -- fiouzy
· Hide message subject in notification bar when device is locked -- fiouzy
· Delete confirmation in message views -- fiouzy
· Added support for country/region specific locales -- fiouzy
· Remove German version of the "Re:" prefix when replying to messages. So instead of "Re: AW: subject" we get "Re: subject". -- cketti
· New Canadian French translation, Pierre-Luc Auclair -- fiouzy
· New Dutch translation from Stephan Vijfhuizen -- jessev
· New Finnish translation from Ari Arokoski. -- fiouzy
· New Swedish translation from daniel.malmgren.DM / swedroid.se folks -- fiouzy
· Updated German translation by therossoblu, cketti -- cketti
· Updated French translation by Pierre-Luc Auclair, Antoine Aflalo, fiouzy -- cketti
· Updated Japanese translation -- jca02266
· Implement windowing for IMAP UID FETCH, improving K-9's performance and stability on very large IMAP mailboxes -- jessev
· Use the IP address for SMTP EHLO if the current hostname contains invalid characters, e.g. underscore. Fixes issue 2143 -- cketti
· Work around malformed UIDL responses (POP3). Fixes issue 2252 -- cketti
· Don't open unneeded connections to the server when the protocol doesn't support flags. This avoids unnecessary connections to POP3 servers. Fixes issue 2046 -- cketti
Major new features:
· added launcher shortcuts to accounts, refs issue 1025 - thialfihar
· Support for inline PGP digital signatures and encryption with APG - thialfihar
· Support Emoji for DoCoMo. Emoji icons are derived from http://start.typepad.jp/typecast/ - jca02266
· Added menu option to select & copy text in the message view. - cketti
· Allow users to choose an outgoing identity from any account during message composition - fiouzy & cketti
· First pass at a "download the rest of this message" button - jessev
· Added optional "Archive" and "Spam" buttons to Message View - thialfihar
· Added Czech localization provided by lubekgc (Thanks!) - cketti
· Added Japanese translation provided by hatty. - jca02266
· Updated french translation (thanks, p.lucauclair) - cketti
· Complete French translation added. Cheers, plauclair. - thialfihar
· Updated Polish translation with patch provided by borszczuk - cketti
· Google got rid of the android-6 distribution in the SDK. We now build against android-8, (though we're still backwards compatible to android-3.) - jessev
Selected internal improvements:
· Use of constants for immutable empty arrays (prevent useless memory allocation) - fiouzy
· Try to avoid a bunch of reallocations as we grow the temporary output stream by defining its size if we can get it - jessev
· Backport an update to getTextFromPart from AOSP as of 290348 - dealing with OOM as we import large messages - jessev
· Switch from the incomplete (but compatible with java 1.3) mime4j charset alias resolver to the core java nio version with a better charset database; rather than falling back to not showing the user a failing message, fall back to showing the user the message as ascii -- it makes it possible to get something out of an unknown-charset message, rather than just a "ha ha. no." error. - jessev
· use "http://" as baseUrl in WebView instead of "email://", refs issue 267 - thialfihar
· 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 - cketti
· Synchronize iterator accesses to mAdapter.messages to avoid ConcurrentModificationException in MessageList. Fixes issue 1598 - fiouzy
· Avoid NullPointerException when trying to move a message before it is fully loaded (in message view). Fixes issue 1957 - cketti
· 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. - jessev
· added a setting for language, overriding the system locale settings - thialfihar
· Add a per-account setting to choose how much of each message to download automatically. - jessev
· Added option to return to the message list after deleting a message in the message view activity. Fixes issue 1634 - fiouzy
· Added preference to go to Integrated Inbox on application startup. Fixes issue 1797 - cketti
· 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. Fixes Issue 794 - danapple0
· Added the vibrate pattern preference. Fixes Issue 1915 - jca02266
· Added option to specify the message quote prefix character/string (default ">"). Applied patch provided by fiouzy (Thanks!) with some small modifications. Fixes issue 1830 - cketti
· Added option to specify Reply-to address for an identity. Patch provided by fiouzy (Thanks!). Fixes issue 1762 - cketti
· With all the other performance work we've been doing, getting a message into the messagelist is now much, much faster. Intentionally loading the whole mailbox before we let the user interact with the list is increasingly painful. A 250 message mailbox takes 2+ seconds to "unlock" on a modern phone. - jessev
· Rather than doing a full count of all the unread messages in each and every folder for each message downloaded in a session, factor the "unread messages" count out into the calling code. It's slightly less clean, but a pretty huge performance gain. - jessev
· Remove URLs from message previews. Suggested by Kevin Falcone - jessev
· Show "From", "To", "Cc" headers in "raw" form when displaying all message headers. Fixes issue 1805 - cketti
· Support inline images in HTML mail. - jca02266
· Don't show "To: " if the only recipients were ccs and bccs. - jessev
· Experimental changes to tell WebView that the HTML versions of messages we generate from ascii are "mobile-optimized" - jessev
· Don't fire off a notification about new mail before we finish initializing an account. This should prevent "(null)" notifications on account setup- jessev
· K-9 wasn't properly clearing the thumbnail/tmpfile cache. We now properly clear it up on start, which causes K-9 to leak less flash memory AND fixes the "Wrong thumbnail" bug. - jessev
· After we download attachments, get rid of the "old" attachment views - jessev
· When marking a message as read as we're opening it from the message list, don't "bother" sorting the messagelist again before opening the message, it adds a bit of slowness when we don't need it and we'll sort again when we get back to the message list. - jessev
· remember which message was selected in MessageList in case the list changes while the dialog is up - thialfihar
· Applied patch by ndarilek (thanks!) to add android:contentDescription attributes to unlabeled input fields to improve accessibility. - cketti
· Moving sendMessage and saveMessage into AsyncTasks to make the send/save buttons much less janky - jessev
· Remember last selected folder for copy and move operations and scroll this folder into view on subsequent folder selections (for move and copy operations). - cketti
· Added account settings for "archive" and "spam" folders. See issue 3. - thialfihar
· Show To, Cc and From headers on the part of additional headers without fetching all headers. Fixes Issue 1914 - jca02266
· Hide the message header while flipping messages, rather than displaying the "wrong" thing during load. - jessev
· Ask the user to save a draft message or discard it when the press the back button. - jca02266
· Start at replacing text buttons with image buttons. - jessev
· make MessageList remember the last selected item - thialfihar
· Save/restore In-Reply-To/References headers on configuration change Fixes Issue 1887 - fiouzy
· Android is growing up a bit. artificially limiting the user to attachments of only 5MB is counter-productive, bump the artificial limit to 128M - jessev
· 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 - jessev
· Only ask for POP3 capabilities before authorization if TLS should be used. Always ask after authorization. - cketti
· A race condition made the outgoing certificate being compared to the old incoming mHost, throwing an exception with an untrusted certificate dialogue to accept or decline. - jessev
· Integrated Inbox for a unified view of messages across accounts -- danapple
· Flagged message counts are now shown per account and folder -- danapple
· Clickable folder icons always show folder lists, even if there's an auto-open folder -- jessev
· Add confirmation dialogs to destructive account Clear and Recreate operations. -- danapple
· Provide a visually more interesting unread mail counter box that works in both light and dark themes -- danapple
· Display long account names or email addresses a bit better -- cketti
· 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. -- danapple
· Optionally only show folders that are subscribed on the server (IMAP only) -- danapple0
· The context menu now has "Search for messages from this sender" -- jessev
· Message preview heuristics have been tweaked a bit -- jessev
· Fade out the bottom edge of message previews in the touch view -- jessev
· Show "(No subject)" for messages without subjects -- cketti
· Move Account and Folder settings into a submenu, along with global settings -- jessev
· When no messages are selected yet, show "select all" instead of the "batch ops" submenu -- jessev
· Keep search results in sync with newly arrived or deleted messages -- danapple
· Allow users to choose whether they want plaintext messages to be shown in fixed-width fonts -- jessev
· Add option to save and view full message headers -- timmlinder
· Add an account color chip to the left side of the message headers -- danapple
· Show "(No subject)" for messages without subject. -- cketti
· Only show the "Cc" header if there's a Cc. -- jessev
· Always use light theme since we don't change the colors of the WebView. -- cketti
· Always display the date -- cketti
· Use the default account when composing from search results. -- danapple
· Preserve In-Reply-To and References header when continuing saved drafts -- fiouzy
· Make sure the References header doesn't exceed 997 characters and the value won't get Q-encoded. -- fiouzy & cketti
· Populate text and subject when handling ACTION_SENDTO -- danapple
· Set background color of message compose view to white -- cketti
· Correctly encode attachment filenames with non-ASCII characters. -- jca02266
· New preference setting to add buttons to attach images or videos which is needed to work around a bug in Gallery. -- cketti (with dman13)
· You can now set font sizes for account lists, folder lists, message lists and message views -- cketti
· You can now select account chip colors -- jessev
· You can now control account size measurement and search result counting in the Accounts Activity -- danapple
· You can now optionally make the back button always go up one level -- jessev
· You can now enter alphabetic characters for the Outbox folder name -- danapple
· Add configurable IMAP IDLE refresh frequency in Incoming server settings -- danapple
· Move the configuration for the maximum number of push folders to the Incoming server Settings. -- danapple
· Remove notifications for an account when the account's unread message count goes to 0. -- danapple
· The user can elect to have opening a Notification open a account-specific search for unread messages. -- danapple
· You can now select LED notification colors on supported devices -- jessev
· Suppress notifications when new messages arrive in Trash, Sent or Drafts special folders. -- danapple
· Update German translation and adds strings for the new account color picker. -- timmlinder
· Added Polish translation -- borszczuk
· Added Russian translation -- dbriskin
· Removed date_format strings from polish and Russian translation so default values will be used -- cketti
· Removed region code for most translations -- cketti
· You can now set the maximum age of synchronized messages. Efficient with IMAP, much less efficient with other Stores. -- danapple
· K-9 now obeys the system-wide "Auto-sync" setting -- danapple
· K-9 can now sync with Yahoo IMAP servers over Wifi -- danapple
· To help with battery life, give up trying to IMAP IDLE after 10 failures. -- danapple
· To help with battery life, increase IMAP IDLE retry delays -- danapple
· Optionally perform a full poll/sync of a folder whenever the IMAP IDLE connection is established. -- danapple
· IMAP IDLE can now handle delete notifications from more types of servers (if poll on connect is enabled) -- danapple
· Response Parser overhaul -- cketti
· Parser Quoted strings can contain '"' in escaped form. readStringUntil() fails to unescape and will will return prematurely when the string contains an escaped '"' character. -- cketti
· 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. -- danapple
· 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. -- danapple
· Bullet proofing to make fetches not break when folders have insane default visible limits. -- jessev
· Eliminate extraneous spaces from UID SEARCH commands. Also, abort IDLE connection attempt if mConnection is null before IDLEing. Otherwise, we cannot set the idle timeout. -- danapple
· Be more tolerant of non-compliant servers. Do not require a space following the + in command continuation requests. The rest of the token parser will swallow the space if it is actually there but we don't really need it. -- danapple
· Save IMAP capabilities in upper case so we handle them case-insensitively, too. Make sure all CAPABILITY-detection constants are written in upper case. --danapple
· After discussion with cketti, reinstate using LIST to find the path delimiter, 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. -- danapple
· Correct fault in 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. -- danapple
· Workaround for servers which don't provide an INTERNALDATE response. -- danapple
· Look for + as acknowledgement that we're in IDLE mode, not "idling" string. -- danapple
· Handle incoming tokens in a case-insensitive manner -- danapple
· Prefix IPv6-addresses with "IPV6:" in the SMTP EHLO command -- cketti
· Don't log sensitive information in SMTP commands when "Log sensitive information" is unchecked. -- fiouzy
· Convert to hierarchical traveral from deep traversal. -- mpredosin
· Eliminate expensive and unused expungedUid map. -- danapple
· Switching "Touch-friendly view" option from message list view no longer causes NullPointerException / Force close -- jessev
· Bump our default target to android-6 since the current SDK doesn't offer an android-5. -- jessev
· 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. -- cketti
· Fix error handling code in DB upgrade. -- cketti
· 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 attributes. -- danapple
· Aggressively get rid of obsolete Flag X_NO_SEEN_INFO. It was interfering with "unread" searches on POP3 accounts. -- danapple
· Fix NullPointerException when using the touch friendly message list. -- cketti
· Added meta-tag with charset=utf-8 to about box html source to fix UTF-8 issues. -- gerberstef
· Fixed NullPointerException if home button was pressed in AccountSetupBasics activity and no account object was created yet. -- cketti
· Use android.text.util.Regex.EMAIL_ADDRESS_PATTERN for email address verification before account creation. -- cketti
· Handle accounts with negative (invalid) saved display count values. -- danapple
· Auto-complete for contacts from all address books (Android 2.0+) -cketti
· Added support for sharing multiple files (Android 1.6+) -cketti
· Folders that are marked as belonging to the "top group" are shown first in the folder list -danapple0
· Display parts of the mail while rest is being downloaded -baolongnt
· Add support for most batch ops (except move and copy) in search results. Add support for batch move and copy on real folders. -danapple0, cketti
· Provide title bar display of next polling time -danapple0
· Provides for menu items and hotkeys to quickly change the mode of displayed folders -danapple0
· Add 's' hotkey for Select/deselect -danapple0
· Allow user to turn off gesture-based control -danapple0
· Implement DEFLATE compression for IMAP communication -danapple0
· Use 8bit transfer encoding for sending mails if available, otherwise quoted-printable -cketti
· Use real hostname in SMTP EHLO command or fall back to IP (rather than localhost.localdomain) -cketti
· Don't send simple text mails as multipart messages -cketti
· Unified location of "Check mail" button in app menus -danapple0
· Better new-mail notification system. -danapple0, skister2
· Stop views from "resetting" to previous intents on rotate -jessev
· Make use of email signatures optional -jiri.tyr, cketti
· Sent folder can be set to "-NONE-" to prevent emails being saved -danapple0
· Security: Don't load any external resources (iframes, linked stylesheets) unless "show images" is pressed -cketti
· Improved IMAP push -danapple0
· 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 -danapple0
· Advanced poll scheduler. Works more reliably -danapple0
· Several fixes in the implementation of the IMAP protocol -danapple0, cketti
· Fixed issue with passwords containing special characters, e.g. ":" -cketti
· Fixed issue where the background turned black when scrolling through the message list on some devices -cketti
· POP3: Tolerate malformed UIDL response -danapple0, bengnc
· Bullet-proofing for database upgrades and better fallback for failures -jessev
· Updated German translation -wertarbyte, henning.stummer
· Checkbox rendering fixes on Android 1.5
· Resolve an issue that caused search result action force-quits
· Bugfixes for 2.0 -> 2.4 upgraders
Significant new features:
· It's much faster!
· Implement local message search - jessev
· Guess mime type (when not specified) of attachments of received messages using file name extension so that we can open them - baolongnt
· Headers in Accounts, Folder List and Message List now show unread count and background processing activity -- danapple0
· lazify loading of message headers in LocalFolder, since they're not needed in most of our use cases. -jessev
· 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 - jessev
· Kill the no-op Welcome activity to improve startup performance - jessev
· Added a new "touch friendly" style with message previews - jessev
· Made it possible to enable or disable "stars" for flagged messages - jessev
· Added swipe-to-select for operations on multiple messages - jessev
· Eliminated old multi-modal message lists. - jessev
· There is now an Expunge action in the option menu. - danapple0
· A new "Batch ops" option menu in Message List. Provides flag/unflag, mark as read/unread and delete and select/deselect all. Move and copy are partially implemented, but disabled. -danapple0
· The "Sort by..." menu now toggles ascending/descending when the currently selected sort mode is clicked. -danapple0
· Incorporate Vincent Lum's new icon for the batch ops sub-menu -danapple0
· Eliminate carriage returns from reply and forward text. (Fixes Issue 518 ) - danapple0
· There is now an Expunge action in the context menu (long-press on the folder). - danapple0
· Add a global preference for enabling animations, beyond those that are necessary. Defaults to "enabled." -danapple0
· 250, 500 and 1000 messages may now be synced per folder. - jessev
· Allow user to set a limit on the number of folders to be handled with push technology. - danapple0
· Initial implementation of CRAM-MD5 support for IMAP and SMTP. (Patch contributed by Russ Weeks) - jessev
· Only use the IDLE timeout for the folder while actually in IDLE state. (May help with Issue 1022 , Issue 952 , Issue 895 ) - danapple0
· For IMAP accounts, it is now possible to disable the copying of deleted messages to the Trash folder, by setting the Trash folder to -NONE-. - danapple0
· Each IMAP account 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. - danapple0
· For WebDAV accounts, the user can now choose the server-side equivalents of the special folders, just like for IMAP. - danapple0
· Improvements to cut down on the number of IMAP server connections opened - -danapple0
· Implemented delete intent broadcast using a modified patch from stephane.lajeunesse - baolongnt
· Delete intents are now broadcasted when we delete a message because it was deleted on the server - baolongnt
· 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. - danapple0
· Code namespace changed back to com.fsck.k9 (as it was before 0.31) - jessev
· Basic code style cleanups suggested by IntelliJ - jessev
· Let IntelliJ optimize our import statements - jessev
· Replace MessageList, FolderList and AccountList's outdated message-passing mechanism with runOnUiThread for improved code clarity and performance. -jessev
· Killed a bunch of debug logging that clutters (and slows) production apps - jessev
· Make it possible to instantiate a localFolder by id. - jessev
· Incorrect (and ancient code) would accidentally clobber the wrong attachment (and only one, rather than all) when deleting a message. - jessev
· Push mail for IMAP accounts using IMAP IDLE - danapple0
· Accelerated message list loading using pipelined architecture - danapple0
· More efficient background queue processing - danapple0
· Improved unread-count tracking - danapple0
· Improved threading model in MessagingController for higher efficiency and better responsiveness - danapple0
· Disable polling and pushing when no network is available - danapple0
· Provide explicit menu items to send messages from the Outbox - danapple0
· Restore operation of hot keys and zoom when viewing a message - danapple0
· Restore detection of hard keyboard to control display of navigation buttons when viewing a message - danapple0
· Persist a copy of the message list when rotating for faster response - danapple0
· Better deletion of IMAP messages and logging when deletion failures occur - danapple0
· WebDAV / MS Exchange improvements: move, copy, delete and mark as unread now work. - danapple0
· Fixes for WebDAV connection problems. - danapple0
· Fixed bug where wrong messages is displayed after screen rotation ( issue 556 ) - baolongnt
· Respect global 'Background data' preference and provide ability to turn of all synchronization. - danapple0
· Fixes for running on Android 2.0 - danapple0, jessev
· SMTP and IMAP protocol fixes - danapple0
· "Delete from server" is now the default for IMAP andxzz WebDAV accounts - danapple0
· New sort-by and reverse-sort icons by Vincent Lum
· Made the date column a bit wider to fully view time timestamp and view more of the date in landscape mode - baolongnt
· We now accept all mime types when handling the android.intent.action.SEND intent - baolongnt
· Normalize padding in setup widgets; turn off "fading edges" in setup widgets - jessev
· Added content-type detection using file name extension (This adds better integration with OI File Manager which implements the ACTION_GET_CONTENT intent) - baolongnt
· Remove duplicated "make this account the default" option during setup - jessev
· Give the user the choice of whether to enable Push as they create a new IMAP account. - jessev
· Make the status messages for folders that are being synced with push a bit prettier - jessev
· Don't show folder choosers before we have a working account -jessev
· Reorganize the Account Settings page, regrouping options by "what a reasonable user might want to change at the same time" - jessev
· Make our use of email/mail consistent. It's "mail" except for "Email address" - jessev
· Rephrase a number of unclear or oddly phrased messages (many dating from AOSP) - jessev
· Slightly better MessageView fit-to-screen and scrollbar flow - jessev
· First pass attempt at fixing the "Android 2.0 breaks contacts lookup" issue
· K-9 now targets Android 1.6 (with 1.5 support) to support QVGA devices - jessev
· K-9 now provides 2 - 24 poll check periods - danapple0
· Account setup UI overhaul - jessev
· Record permanent failures into K9mail-errors -danapple0
· K-9 now detects "Aw:" as being the same as "Re:" - jessev
· Enable fast scroll in message view, list view and "pick a folder" dialogs -jessev
· Sort the "NONE" folder to the top of the "auto-expand folder" list -jessev
· All our layouts now use dip instead of px, for great weird-resolution weird-screen-size justice - jessev
· Better italian translation - tauromenion
· Fixed issue with reply icon in subject in message view screen not being set properly when navigating around using up and down arrows - baolongnt
· Displays a warning and allows K-9 to continue in some situations that otherwise cause a crash. -danapple0
· Eliminate secret debug preferences activity. Add debug preferences to global preferences. - danapple0
· WebDAV: Automatically add / separators if not supplied by user. -danapple0
· WebDAV: Set authentication header for downloading and sending messages, so that those functions work with sites using Basic authentication. -danapple0
· WebDAV: Don't swallow log Exceptions. Instead, allow Exceptions to percolate up to higher levels so that they can be logged into K9mail-errors. - danapple0
· WebDAV: Provide appendMessages function, so that Drafts get stored on the server - danapple0
· Prevent a crash and put up a Toast when invalid data is entered early in the new-account setup workflow - danapple0
· MessageListener.synchronizeMailboxNewMessage() does not requires a context to be passed anymore. -baolongnt
· We use the application as context when broadcasting message received intents - baolongnt
· Refactored intent constant classes - baolongnt
· Better icon for the About menu item - baolongnt
· K-9 now broadcasts intents for new emails: com.android.email.intent.action.EMAIL_RECEIVED ( issue 607 ) - baolongnt
· Added intent for viewing individual messages - baolongnt
· small message display fixes
· donut improvements
· Work around Yahoo (and possibly other IMAP servers) faults with deletion, flagging, etc.
· Fixed missing Date header ( issue 626 and issue 528 )
· Fixed issue 639 and issue 646 preventing from sending emails when the self-Bcc setting is empty
· Reduced APK size back to 6xxK
· Updated Italian translation.
· Fixed issue 560 : Auto-expand set to NONE creates folder called NONE
· Fixed issue with encoding of email addresses in the header with non ascii characters
· Fixed issue 261 : Bad parsing of email with commas in their display names
· Fixed issue 541 : Switched all international versions to use < and > characters instead of text
· Fixed parsing of Cc and Reply-To headers
· Choosing -NONE- as default folder makes the folder list open when an account is opened instead of the -NONE- folder
· Added 'add to contact' feature when one clicks on the from address in message view (code taken from AOSP)
· Display Cc recipients
· Display both date and time on old messages
· Support for multiple identities (address/name/signature) for sending email.
· First BETA release of the K-9 1.x series - expect instability (but report bugs)
· Major rework of folder and message lists. (They're now separate)
· Significant performance improvements to message and folder lists
· User-selectable theme
· Usability/UI Improvements to new-account workflow
· Fix for hand-entered email recipients containing non-ascii characters
· Added option to have signature before quoted text
· Proper display of plain text message indentation
· Fixed issue 423 : Sending to Thunderbird client: double message appearance
· Fixed issue 404 : App crashes when trying to download large plain text messages
· IMAP only: Only messages under 50K are downloaded during background sync. For larger messages, only the header is downloaded. The body is downloaded when the message is opened
· POP3: Large messages are only downloaded once (vs both during background sync and upon opening the message)
· Fix for deletion of messages in POP3 account
· expose download status of messages. slightly grey out messages that haven't yet been downloaded fully
· Flip the message color background to white in the message list for better contrast
· Make sure not to lose an untagged EXISTS, even if it came during an IMAP command that we didn't handle properly.
· Proposed fix for "unreopenable" folders bug
· MessageView URL opening bug fixes
· mail reply fixes
· Fixed "auto-open" for INBOX
· IMAP Protocol reliability fixes
· Message View and Message List performance improvements
· Performance improvements to message display
· Improved background synchronization reliability
· Market release
· Ringtone preferences should now be saved properly
· Market release
· Improved IMAP handling
· New, "light" visual theme and other UI cleanups
· New preferences storage mechanism to eliminate lost accounts
· Improved SMTP and POP3 handling
· Preference for controlling which folder, if any, is automatically opened
· Add ability to manually check for new mail on all accounts, specific accounts, and specific folders
· Messages can be moved and copied between folders
· All sent messages are shown with recipient email address instead of sender.
· Changed threading to Sorting so there is now sort by date, subject, sender, flag, unread, and attachments. Also added ability to reverse the sort order.
· Fixed possible index issue with less emails in the inbox than the requested display message size for WebDav
· Provide proper relative URL support for authentication, providing support for Exchange 2007
· Folder threading (toggle with T hotkey or option menu)
· Fix for regression on k9mail software update on WebDav(Exchange) accounts
· Improvements to "instant" delete functionality in folder/message list and message view
· Authentication method for WebDav(Exchange) changed. Support for non-Form Based Authentication
· "Instant" Empty Trash
· Configurable navigation buttons for viewing messages
· Option to add path for login page off of base URL for WebDav(Exchange)
· Option to add path off of base server to post Form Based Authentication credentials to.
· Option to add mailbox path off of base server for authentication and data requests.
· New data model for returned XML data from WebDav requests
· Handle uppercase MIME types from non-compliant MUAs
· Add ability to suppress ongoing synchronization notifications
· Add ability to "flag" messages
· Indicate which message have been replied to
· Fix links in plain text messages
· Improved synchronization timing
· Added support for pulling login URL for WebDAV login
· Added default URL for mailbox path if path isn't returned after WebDAV login
· Added help messages in Message and Folder List views, shown when the 'h' key is pressed
· "Secret" debug screen now shows version number. (As opposed to version name, shown in the about dialog, and SVN revision, which is what was formerly and often inaccurately shown there.)
· Faster ("instant") message deletion
· All message operations can be done on messages in the Outbox
· Deleted messages in Trash now have full body
· Deleting a message in Trash deletes it permanently
· Fixed send issue in WebDAV-- messages not being sent.
DAmail merged into K-9:
· Ability to sync multiple folders
· True sync-while-sleeping
· Better sync indicator
· Ability to show only certain folders
· Mark all as read
· Performance improvements
· Empty trash
· Show unread message counts
· Delete policy is more flexible
WebDAV (Exchange) Fixes:
· Fix for some instances of subfolders not working.
· Fixed an issue where some Exchange servers wouldn't mark messages as read.
· Fixed incorrect URL encoding in some folder path names.
· Fix for date/time issues prior to fetch(BODY) or fetch(BODY_SANE) is called.
· Added support for proper deletions in WebDAV. Deleting a message the first time moves it to the (currently hardcoded) Deleted Items. Deleting an item in 'Deleted Items' will remove it completely.
· Added self-signed certificate/invalid certificate hostname support
· code renamed to ease merging
· Added silent 'ongoing' notification when checking email
· New email notification now includes purple blinking LED
· More reliable background sync by using wake lock --> Background sync now work even when the device is asleep
· Added about dialog.
· Update the domain validator to accept ip addresses and "localhost"
· block server entries in AccountSetupIncoming.java and AccountSetupOutgoing.java that are not valid domain names.
· Update for folders to display the "path" that the folder resides in (ie, Inbox/Work/To Me) rather than just the name of the folder. Allows an easier understanding of the hierarchy until true folder trees can be implemented.
· EXCHANGE Fixed an authentication issue with WebDav support that caused by the last update.
· Added support for scrolling on 2 of the screens in the account setup process to allow the full steps to be done in landscape mode. There are some graphical regressions in portrait mode from it that aren't resolved yet.
· EXCHANGE Removed display of path prefix. System now pulls all folders/subfolders. Does not display in a hierarchy, but will load messages from each folder. Only the final folder name is displayed instead of the path off of Inbox right now
· EXCHANGE Added change to populate the url for the mailbox each time authentication occurs (url is in the response). Updated initial message population to use reverse order so initial display has newest first (only noticeable on slow connections).
· Added the following 2 keyboard shortcuts in message list view
· S: Settings
· L: Last auto sync date time
· Fixed bug # 122: Some keyboard shortcuts only work when a message is selected
· fixed bug # 87: Accounts all refresh at the same frequency
· Fixed bug # 82: Messages lose their read status when getting new emails from POP3 server
· FIxed bug # 81: Notifications never show up wen using POP3.
· Added back auto-start of background message sync (most likely removed during merge)
· Initial implementation of Exchange support
· Ability to do new-mail notifications without ringtone
· Rejiggered message list views
· Reordered buttons in message create/display
· Configurable number of messages to fetch / display
· Custom Sent / Deleted folders
· IMAP Prefix fixes
· Self-signed certificate fixes
· Various IMAP fixes
· Support for self-signed SSL certificates
· UI tweaking and compaction
· Added 'd' keybinding in message list.