bc47398187c6ffd132435e51d8d61e6ec79a79db |
|
25-Sep-2012 |
Paul Westbrook <pwestbro@google.com> |
Merge Email1 into MR1 Change-Id: I45289d46b65faffc7a3a3dd46382899162f3aaab
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
6e5bccf2c984039da5ae1dc08cffa665b73b6474 |
|
08-Sep-2012 |
Marc Blank <mblank@google.com> |
Use correct attachment provider authority * Make sure new code works with old Attachment rows Bug: 7130972 Change-Id: Ia5d258930f39266517eead535a92bb4380fdb594
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
f6db592c313c77190727c7cd72d3edda9d23a099 |
|
02-Aug-2012 |
Marc Blank <mblank@google.com> |
POP3 renovation * Much, much faster * Remove message length pass and lots of other useless code * Create pseudo-attachment for long messages (click to download) that includes size (so user can determine whether it's worth it) * Handle download of message via pseudo-attachment; real attachments are then created as necessary. TODO: Add real UI with UX input (or modify existing to clean up the loose ends) TODO: Optimizations for loading the whole message TODO: Get server delete working (isn't working currently anyway) Change-Id: I31f3809fc5a2f9fd490d33cfed70d2930654e71d
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
f419287f22ae44f25e1ba1f757ec33c7941bbfa8 |
|
28-Jun-2012 |
Marc Blank <mblank@google.com> |
DO NOT MERGE: Move emailcommon2 sources to emailcommon Change-Id: I06df7e467cd2e0117df8b8db3ddc6ff9da13f1c7
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
03cd72805dab0379ed255d151f1c17cc60655fc3 |
|
25-Apr-2012 |
Marc Blank <mblank@google.com> |
Revert to old Email app * These are the last sources in the ICS-MR1 tree Change-Id: Ida4651bddd92a06a518d00f3e1f275ab3a80c8ae
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
824f7763653cd9c15f400301de53f5023ae37762 |
|
12-Mar-2012 |
Marc Blank <mblank@google.com> |
Fix up load of IMAP attachments Change-Id: I2f55fc2c3d92eff72ebfd50ff3f782928f3a85a2
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
50a092c3d6155fcd704990450640cf159072b1a2 |
|
24-Jun-2011 |
Marc Blank <mblank@google.com> |
Add IMAP support for the "replied" state in messages * Handle replied in new messages and updates * Code added for upsyncing replied state, but the CL for setting this state isn't yet submitted Change-Id: I6f3ff56475d70f686f96ed6a84fae3468f42b1c8
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
53ea83ebf91f820692e8fa8e781f5cc982dd94db |
|
14-May-2011 |
Ben Komalo <benkomalo@google.com> |
Move Mailbox to top level class. No other changes made. Change-Id: I3d8f3c521dc0d902be313b25252b4b6a4a96e7ee
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
0993190cafebc107bd27a26996b5d63d4a4ede10 |
|
06-May-2011 |
Marc Blank <mblank@google.com> |
Complete rewrite of account backup/restore code * Use EmailProvider to backup/restore into a backup database * Remove all of the old AccountBackupRestore code * Get rid of the legacy Account class and all of the Preferences crap that referenced it * Remove corresponding tests Change-Id: I2de75aafdacc87246174303961e58547303f641e
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
aeee10e57ef4d931e7708fde218d590453a82aea |
|
28-Apr-2011 |
Marc Blank <mblank@google.com> |
Rework of security policy storage * Replace crazy (and soon to be "full") bit fields stored in an account's securityFlags with a row in a newly created Policy table (thus, fully expandable) * Update code from database version 17 to 18; adds Policy table, a policyKey row in Account, and a revised trigger that deletes Policy information for deleted Accounts * Update old PolicySet unit tests to work against the new Policy class * Add test for the conversion of securityFlags to Policy * Tested in a variety of scenarios; appears to be functionally equivalent Change-Id: I1505ee75230d6a0d3c2b62a46326f39c2c7f9eb5
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
040ddf60cfef4aaecf4bfe1f897fce3248d777a4 |
|
04-Feb-2011 |
Todd Kennedy <toddke@google.com> |
Resolve build warnings; part 5 Remove dependence upon URIs for creating the host auth structure Change-Id: I92dee36fa329a8976b76bbd4991ed3469c6475f2
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
31d9acbf0623872f9d4a2b3210b5970854b654c7 |
|
12-Feb-2011 |
Marc Blank <mblank@google.com> |
Email split, part huit: Refactor constants, clean emailcommon * There are three pieces to this CL (sorry): 1) Move and/or rename some constants into emailcommon 2) Move Utility to emailcommon, moving the few UI related utilities back into Email (FolderProperties and UiUtilities) 3) Remove all references to resources from emailcommon * The three pieces relate in that, between them, they allow the emailcommon static library to compile cleanly Bug: 3442973 Change-Id: Ic5e3abaa2a1b36999e0b6653c6c2134ea1bd544f
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
a7bc0319a75184ad706bb35c049af107ac3688e6 |
|
10-Feb-2011 |
Marc Blank <mblank@google.com> |
Email split, part six: EmailContent * Moved EmailContent to emailcommon Change-Id: Ib3db1bfcfe74554c0e5afd3cfce6d72f26e9aeb9
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
2193962ca2b3157e79f731736afa2a0c972e778a |
|
10-Feb-2011 |
Marc Blank <mblank@google.com> |
Email split, part quatre: Move along, nothing to see here * No code was harmed, er, changed in the making of this CL * All that's happened is that code that is needed by both Email and Exchange have been moved into emailcommon * This required import changes to many files, which explains the length of the CL Change-Id: I4e12455ba057a4a8054fdbd0b578c73afa411c8a
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
8a574694606f0e5d781334d0d426fc379c51f3ed |
|
09-Feb-2011 |
Marc Blank <mblank@google.com> |
Email split, part trois: AccountService * Create AccountService.aidl and AccountServiceProxy in emailcommon * Implement AccountService in email * Use AccountServiceProxy in Exchange for account reconciliation, notifications, etc. * Move sync window constants into emailcommon * Split attachment provider utilities and constants into emailcommon Bug: 3442973 Change-Id: I89dce28b799b193243c07774dab65d830ae62775
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
7d51b7a05ba07377e3df0b07c2aaa430a8b5bc42 |
|
06-Feb-2011 |
Andy Stadler <stadler@google.com> |
Remove all compatibility with pre-2.0 data * Remove LocalStore (pre-2.0 mail database) and its unit test * Remove UpgradeAccounts (converted pre-2.0 accounts to Provider) * Remove FolderMessageList (receiver for pre-1.6 desktop shortcuts) * Remove "upgrading" paths through LegacyConversions * Clip out dangling references to everything above Bug: 3292310 Change-Id: I5654d55a0879b00b05b63055b94651855a8ee3ef
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
5e39f90e9d4665713eba38586b08546f1d581adb |
|
02-Feb-2011 |
Todd Kennedy <toddke@google.com> |
Resolve build warnings; part 4 Fix unchecked warnings Change-Id: I872740fca4e5050e6ed2922eabc7e46e5e97ff3c
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
8d8537cd2e39268e0fdcd019bc8b6c4572b7c520 |
|
02-Feb-2011 |
Todd Kennedy <toddke@google.com> |
Resolve build warnings; part 3 Fixes deprecation warnings NOTE: This does not resolve hostauth deprecation; that will be fixed in a separate CL. Change-Id: I47115516da34effbf885615cb439c9d3e6f95b84
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
75a873be8420e50f0aeb5a77716358ee0ca66b01 |
|
09-Dec-2010 |
Marc Blank <mblank@google.com> |
Implement prefetch of IMAP/EAS attachments * Load attachments in the background for IMAP/EAS messages * Download an attachment from account X if: 1) 25% of total storage free 2) Attachments for X use < 1/N of 25% of total storage, where N is the number of AccountManager accounts * Add accountKey to Attachment table for performance Change-Id: I913aa710f34f48fcc4210ddf77393ab38323fe59
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
fab77f147f85766d2f75d8aece0aaa4ffb3838e8 |
|
28-Oct-2010 |
Marc Blank <mblank@google.com> |
EmailProvider content caching * In this CL, we cache individual rows, based on the CONTENT_PROJECTION defined for the most common queries (Account, HostAuth, Mailbox, and Message) * Queries on individual rows (most often Class.restoreClassById()) will look to the cache first, rather than querying the database * Queries on smaller projections will build MatrixCursor's from cached data * Write-through caching updates the cache with changed columns * Experiments with live data indicate that > 95% of queries that are cacheable (single row, no selection) can be retrieved from the cache, thereby saving a great deal of disk access. * Timing experiments show that cache hits are > 40x faster than cache misses * Unit tests for the various classes exist, with more coming TODO ---- * More unit tests Change-Id: I386a948a2f4cc02b6548d07d9b2fefd1e018a262
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
66bcd34f457988bbfc68dec00c38f99a8b3ad387 |
|
16-Sep-2010 |
Marc Blank <mblank@google.com> |
Use MimeUtility to parse EAS 2.5 MIME data * Functionality is effectively unchanged, but we reuse existing code rather than custom code created for this purpose * Fix bug related to setting mFlagLoaded after loading a plain text body Change-Id: Iaaf647c0560827f318c8b7a00fb18a6570783c99
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
e7b9e4ab94093127002f4cddd3ffcc3deb1c0b41 |
|
02-Sep-2010 |
Marc Blank <mblank@google.com> |
Add snippets to messages * Add 'snippet' column in Message table and handle upgrades to the new schema * Generate a snippet from either HTML or plain-text message body, removing tags, extraneous whitespace, and other superfluous text along the way. Store the snippet in the Message table * Clean up MessagesAdapter to use the pre-existing list projection and constants * Write unit tests for snippet creation * The UI in this CL is always single-line, ellipsized TODO: Handle two-line subject if portrait and XL Change-Id: I84a2cbe10957975942edad6eb1255a726924a78a
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
9e2ddca59d048fc9ac55278b193ee36b330a7981 |
|
17-Mar-2010 |
Jim Shuma <jshuma@google.com> |
Add "vibrate when silent" mode to notifications * Add "vibrate when silent" choice in UI * Add storage for it in Email's provider. Existing accounts default to their current settings (always vibrate / never vibrate). * Respect new mode when notifications are posted * Updated existing unit tests Bug: 2457183 Change-Id: I5c933ac39dbef8b2028255f330e0b084a445421a
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
7d738cb7e89353c51c567e466a135b54337f310d |
|
18-Mar-2010 |
Andrew Stadler <stadler@android.com> |
Fix cases of attachments with no name * Most clients send name= in the content-type, but a few clients send only filename= in content-disposition. * There was code to handle both cases, but due to two typos, it didn't work. * Most easily reproduced by sending from hotmail/live web client. Bug: 2366961 Change-Id: I1d9a00b9b5fd1094cfb8566c3248d94286a8ae91
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
dfd53b0e821a6c48f128f62566066876a063fed6 |
|
11-Mar-2010 |
Andrew Stadler <stadler@android.com> |
Follow-up to MimeMessage efficiency improvements. I missed a case where message-id should not be set locally, which is the case where the Mime parser clears all headers *and* does not find a message-id. The parsed MimeMessage should accurately reflect this. In the old code, the local id was created at construction time and then immediately discarded by the parser (calling headers.clear()). In the new code, I was generating a message-id any time I couldn't find one. Now, when explicitly cleared or removed, I set a boolean to inhibit automatic generation of a new one. I also missed the fact that a missing message-id no longer throws an exception, it simply returns null, and so I changed the code that was catching that exception to simply check for null. (Note: Clearly, modeling of legacy behavior is becoming annoying here; It would be better to do away with all of the automatic logic, and simply generate message-id locally when appropriate: On locally-generated messages. I don't want to touch this for the current release, but I left a note in the code to this effect.) Bug: 2504774 Change-Id: Ibfcbd2363c7ae39ee6d44e4c3295f88258cb4945
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
fd249f61dd9c5fd1e7e0abffcb09b9e285d82bae |
|
08-Mar-2010 |
Andrew Stadler <stadler@android.com> |
More work on account migration * Split account copy loop to do POP3 accounts first, then IMAP * After upgrading accounts, upgrade folders * Upgrade messages in those folders * Preserve attachments on outgoing messages (e.g. drafts) * Enable composer and start syncing after upgrade * Fix latent bug in LocalStore (which was not used in Eclair) * Add tests for upgrade workers in LegacyConversions Bug: 2065528
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
842ac048287480e438a4049e95d6cbe116d9f31f |
|
11-Feb-2010 |
Andrew Stadler <stadler@android.com> |
Legacy account migration * Create new activity to encapsulate account upgrade * Populate it with a list of legacy accounts, and progress bars for each * Sidestep Welcome when there are legacy accounts to convert * Super lightweight account migration: - Account login info only - no folders, messages, or attachments * Scrub out old data * Return to Welcome screen As noted, the copies working (useable) POP & IMAP accounts, but does not try to deal with folders, messages, or attachments. Bug: 2065528
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
345fb8b737c1632fb2a7e69ac44b8612be6237ed |
|
27-Jan-2010 |
Andrew Stadler <stadler@android.com> |
Add utilities for processing account security policies * Add security sync key & signature columns * Add utilities for easy read/write of security columns * Write aggregator for multiple accounts * Simple API's for exchange security (very preliminary) * Unit tests of above Bug: 2387961
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
fc8d943a828cd79ff71c703ced37001bd5482173 |
|
21-Jan-2010 |
Andrew Stadler <stadler@android.com> |
Add security column to Account * Upgrade accounts table to add security column * Read/Write new column * Backup/Restore new column * Unit tests for all of the above * First cut at defining bitfields (non-binding, just putting down ideas) Bug: 2387961
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
d612717340b2670776a75a1d2e9e3df81fd4c052 |
|
21-Jan-2010 |
Andrew Stadler <stadler@android.com> |
Backup/Restore accounts - bugfix * Followup to 5e91cccd * Workaround for (HTC bug: 2275383) & (Moto bug: 2226582) * Restores mSyncKey as null instead of empty string, which is how a new account is initialized. Bug: 2385980 * Cleanup synchronized logic in backup & restore * Minor cleanups & improved comments
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
5e91cccd4b530eb2aeace5c5bf4f3328a5b5d69d |
|
20-Jan-2010 |
Andrew Stadler <stadler@android.com> |
Quick backup/restore of accounts * Workaround for (HTC bug 2275383) & (Moto bug 2226582) * Adds checkpoints for backing up and restoring accounts * Uses legacy Account / prefs to back up accounts - this is because some of this code will be reused for legacy account migration * Unit tests of Account & LegacyConversions * Unit tests of backup & restore * Not done: testing of EAS/Account Manager interface (this will require deeper dependency injection, to avoid the embedded calls to the Account Manager and other system services.)
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
5b0a12c199198870161876996296b1262c17408e |
|
14-Oct-2009 |
Andrew Stadler <stadler@android.com> |
Prevent duplication of POP3 attachments * For each attachment we add, check the DB for an existing attachment with similar metadata (name, mime type, content id, etc.) * Skip adding them if already held * Unit tests Fixes bug http://b/2084704
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
b6756688b1bf07c50b999c9d30dd6cb224d3812b |
|
07-Oct-2009 |
Andrew Stadler <stadler@android.com> |
Handle IMAP empty bodies more safely Some IMAP servers return NIL if you BODY.PEEK[TEXT] a messsage with no body, instead of the more canonical {0}CRLF. Instead of messing with the parser to deal with that, it makes more sense not to try and fetch empty bodies. So there are three changes: * Don't fetch parts when size = 0 * Don't append "null" when there is null body text * Slight change to attachment handling so size is reported >0 * Unit tests on some of the related lower-level protocol stuff Bug http://b/issue?id=2160387 Change-Id: Ifb8fb0ed5ce7297908e1ae8d5a02dda5975c4a3c
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
eb7752bf695b2a93854e0bb89ddbbc2236bb9aea |
|
06-Oct-2009 |
Andrew Stadler <stadler@android.com> |
Fix back-to-back message-id bugs * MessageCompose now adds message-id to new messages (it was previously done on its behalf by MimeMessage). * LegacyConversions.updateMessageFields() now handles missing message-id without error. * Unit tests for the LegacyConversions change These two issues were combining with a failure of comcast's SMTP server to insert message-id headers, to prevent delivery of a message between any two comcast accounts using this client. Bug # http://b/issue?id=2161478
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
c41c47fa07a22f8a7612fb0191f152a36d95b7a5 |
|
25-Sep-2009 |
Andrew Stadler <stadler@android.com> |
Enable message upload * Create logic to detect upsyncable messages in Sent * Note: Drafts is now local only for IMAP - no sync, either way * Rewrite MessageController.processPendingAppend for Provider world * Write provider message -> legacy message converter * Fixed bug in IMAP APPEND (it was not picking the right UID for the uploaded message.) * Better handling of server internaldate * Add constants for new X-Android-Body-Quoted-Part header * Add EmailContent routines to get each of the 5 parts of the body * Remove "Load more" from unsynced message lists * Add toString to MimeHeader for debug support Bug # 2097471 TODO (next CL): Upload attachments records too Change-Id: I209182f5adc6b6696919f559e3cbbdd58b3eed3a
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
0d00889f83fc8c1d69039a2c849b630fb4dd28dd |
|
23-Sep-2009 |
Andrew Stadler <stadler@android.com> |
Cleanup Provider Message in preparation for upload * Remove mServerIntId and its special logic * Add mServerTimeStamp * Add column dynamically so we don't lose accounts Bug # 2097471
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
6c21942ec45f561d711b3d74ecca8e62afb735c4 |
|
10-Sep-2009 |
Andrew Stadler <stadler@android.com> |
Implement move-to-trash for IMAP and POP3. * Define new message-loaded state "FLAG_LOADED_DELETED" (used only for POP3, which needs to write sentinel messages that are not displayed.) * Also renamed the other flags to make the naming more consistent. * Tweak MessageList query generation to inhibit display of deleted message sentinels, and MessagingController won't try to resync them. * Clean up implementation of Controller.deleteMessage() * Add support for move to trash to MessagingController. This operates in three primary modes: * POP3 local delete (no server-side interaction) * POP3 server delete * IMAP server delete (and copy to IMAP trash mailbox) * Add missing implementation in provider to delete all of the attachments for a given message * Fix progress reporting in activities (the test for error vs. progress was inverted, which caused progress indicators to keep spinning after errors.) * Fix broken account settings UI (POP3 delete policy was not persisting) Addresses bug 2097409 TODO delete from trash / empty trash Change-Id: I00188e6dc2093823106e009f35b68c760227c9e6
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
936babc145e2e6eb2e222f2ce5e3da8f9e4fb9f2 |
|
02-Sep-2009 |
Andrew Stadler <stadler@android.com> |
Bulk change of columns, LAST TIME. * Add reply columns to Body * Remove a bunch of unused columns from Message * Update SQL tables, content read/write, etc. * Small tweaks to app code that was not-really-using the old columns. * Update existing unit tests for new/changed columns * Disable TagsTests to solve a tests failure (prexisting, not caused by this CL) Change-Id: Ief493796dfe219669755170d76786f91570cbb9b
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
2ac94a9cc254ff0a4c17407eb1bda31d433ef651 |
|
26-Aug-2009 |
Andrew Stadler <stadler@android.com> |
Update Star and Read/Unread from IMAP server * Set the star and the read/unread states properly when a message is downloaded for the first time. * Update them on already-downloaded messages. This is download only - not upload Bug 1904385 Change-Id: Id03a0957677bb39f4a57ed0542eaa8accc36ab48
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
0d1078363581db8caded06cf94e729e88a88761a |
|
19-Aug-2009 |
Andrew Stadler <stadler@android.com> |
Finish loading large IMAP/POP messages * Handle messages >25k * When structure is available (e.g. IMAP) pull in the entire body and the list of attachments * When structure is not available (e.g. POP) pull in a large chunk of the body to try and capture the message body at least. * Implement loadAttachment for IMAP/POP to demand download large items * Tested with IMAP & POP messages INCOMPLETE (file bugs): * implement logic for the old loadMessageForView calls that comes from MessageView (when you open a message that's partially-loaded) * Resolve handling of mimetype when attachment info is read (currently we're assuming base64 in a couple of places) * delete account => delete attachments * delete attachment => delete file * create account => clear existing attachments for acct id
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|
3f1ac4da947f426775c9546f2e37206f58ce1a6e |
|
12-Aug-2009 |
Andrew Stadler <stadler@android.com> |
Add code to handle IMAP/POP attachments. IMAP messages up to about 25k will be downloaded properly. * Move Store->Provider message rewrite code to a separate utility. * Add code to descend a Store message and write provider attachments. * Unit test basic IMAP attachment handler TODO: * handle large IMAP messages. * unit test for POP * unit test for large IMAP messages
/packages/apps/Email/src/com/android/email/LegacyConversions.java
|