• Home
  • History
  • Annotate
  • only in /packages/apps/Email/emailcommon/src/com/
History log of /packages/apps/Email/emailcommon/src/com/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
486e971066979f41c1a38ad7414cd1430a55d87e 15-Aug-2014 Tony Mantler <nicoya@google.com> Fix providers.xml alternate diversion

b/17048013

Change-Id: If2bc857266a6ba1445bf1fabbaed179c1b13a14f
ndroid/emailcommon/provider/HostAuth.java
f1789afa535b113047ef20623d79fdfb257537aa 07-Aug-2014 Tony Mantler <nicoya@google.com> Switch null checks to TextUtils.isEmpty()

b/16872654

Change-Id: Ib8943f068ad6988ff08f8bfd54e2df8fa5ce0274
ndroid/emailcommon/utility/EmailClientConnectionManager.java
751da261722f6b8964c9a4f4b198aeb730addb50 31-Jul-2014 Tony Mantler <nicoya@google.com> Add Exchange fallback and support diverting to Gmail

b/16679701

Change-Id: I59d7cb4a803f0ad8e782614d0c6cc635318d2375
(cherry picked from commit d039322f7402ef402eb66c92b899510dd6649e2d)
ndroid/emailcommon/VendorPolicyLoader.java
30a5e1d4613c8504d57134deb0f745f044849244 14-Jul-2014 Martin Hibdon <mhibdon@google.com> Add copyright notice

Change-Id: I80e074196ca8cb6962d400a756c510c8e3105899
ndroid/emailcommon/service/EmailServiceVersion.java
bb391e8018a56f27bb2025accf5171491e4b2a14 14-Jul-2014 Martin Hibdon <mhibdon@google.com> Merge "Update IEmailService" into ub-mail-master
7afbeee47e1a82680c815f2fb8cfdba32d6b0b84 11-Jul-2014 Martin Hibdon <mhibdon@google.com> Update IEmailService

Add version support
Change deleteAccountPIMData to deleteExternalAccountPIMData.
Data kept inside the EmailProvider can be deleted from within
the Email app. Only external data (e.g. contacts and calendar)
need to be deleted by the service which has protocol specific
knowlege.

Change-Id: I875d3051d0cfdbaf52775ec20eb114a345894a93
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/EmailServiceVersion.java
ndroid/emailcommon/service/IEmailService.aidl
8c03e2af9f439c6e0c6abb38b0c371da7ccdb72a 11-Jul-2014 Tony Mantler <nicoya@google.com> Remove direct entry points to AccountSettings

b/16240332

Change-Id: I9bc3f9a2e0b7faa4d8875a9ac7d6d585a65d9733
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/IAccountService.aidl
c3404cca71b3451e0bf79afe2abca45522738873 18-Jun-2014 Régis Décamps <regisd@google.com> Better documentation for "Account display name".

Give examples of what the display name is.

Change-Id: I2934dc9e8b95d0b32b9c1e9fab391d7ba9e997da
ndroid/emailcommon/provider/Account.java
1d8fd9c05449863ac6a151a6db87c267c4f55ac2 02-Jul-2014 Martin Hibdon <mhibdon@google.com> Add communication class for HostAuth

We want a separate class for communicating HostAuth objects
to and from IEmailService. The issue is that the HostAuth object
was being used for both to and from the database, and to and from
IEmailService. This is dangerous because The Email app may change
out of band with the Exchange app, and may need to change the
format of HostAuth. This bit us before when adding OAuth.
Now communication to IEmailService is done using HostAuthCompat.

Change-Id: I2fb8c2bd8158f58a7bb9bc3dc83a7936948c718c
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/HostAuthCompat.aidl
ndroid/emailcommon/service/HostAuthCompat.java
ndroid/emailcommon/service/IEmailService.aidl
88580cd5e04bd21a5a87ad4702a728ebbb57618c 27-Jun-2014 Tony Mantler <nicoya@google.com> Merge "Unify settings activity" into ub-mail-master
06415a635f5f01d8e1620b29f44d68dc4dfdf435 25-Jun-2014 Tony Mantler <nicoya@google.com> Unify settings activity

b/9566150

- Install PublicPreferenceActivity
- Create AccountServerSettingsActivity to contain all the crazy
logic we don't want in AccountSettings
- Add restoreAccountWithAddress to Account
- Refactor almost everything out of AccountSettings
- Tidy the QuickResponse fragment
- Majorly refactor the AccountSettingsFragment to decouple it from
the activity, and make it save settings immediately instead of
when pausing
- Move login warning dialog to AccountSettingsFragment
- Tweak HeadlessAccountSettingsLoader

Change-Id: Ie69181d968b9c3e5940cfef9690b1f5c70e21aa8
ndroid/emailcommon/provider/Account.java
3d16e5d4b994d92db51962c8c461c53bee04309f 25-Jun-2014 Anthony Lee <anthonylee@google.com> Move over to the new AttachmentService.

Change-Id: I4a687b003884ea6a92a755fcbf394001bfc96a38
ndroid/emailcommon/provider/EmailContent.java
4038f464dee0a33f1e7a58102857c24edf7e0eb2 20-Jun-2014 Paul Westbrook <pwestbro@google.com> Enable supression of combined account

This enables the client of the provider to suppress the email combined
account. Later, the UI can enable a combined account that spans all of
the account types

Change-Id: I77e201f751019240af2274a1f74e2124b9889aab
ndroid/emailcommon/provider/EmailContent.java
fb2a3a2f77f954265beaa92b87774006e2d7c185 12-Jun-2014 Martin Hibdon <mhibdon@google.com> Update IEmailService

This is not yet finalized, but it's needed to fix push syncs
on exchange.

Change-Id: Iaff20aa0bdea9685ef6603de1f861d58fbab6ff1
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/EmailServiceStatus.java
ndroid/emailcommon/service/IEmailService.aidl
51af59fc6643657d6ff7fb9ed05c5ce298b8d653 10-Jun-2014 Tony Mantler <nicoya@google.com> Remove unused preferences and dead code

Change-Id: Ica8bd735a91417ed44bd547ab7176832745d729e
ndroid/emailcommon/provider/Account.java
97fb20697c1f2e03ad4aec20bc263e5bae3aa912 10-Jun-2014 James Lemieux <jplemieux@google.com> Merge "Unit Tests for serialization of Account and HostAuth objects" into ub-mail-master
9250f4787222f8bc3afe539a2f351fd8d9875fba 09-Jun-2014 James Lemieux <jplemieux@google.com> Unit Tests for serialization of Account and HostAuth objects

b/14998528

These are particularly important since they are stored in JSON form within the
Account Manager, so maintaining backward compatibility when future changes are
introduced is crucial.

Change-Id: I51333a364726a4c7e2fe88ee888e8c4cc11d962f
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/HostAuth.java
524e0a5fbcb80b22e0b74920416f662d85a54396 10-Jun-2014 Tony Mantler <nicoya@google.com> am 73101f3a: Fix OAuth when changing credentials from settings

* commit '73101f3a7bc1e735199a7c2c18358e9db9af0bca':
Fix OAuth when changing credentials from settings
73101f3a7bc1e735199a7c2c18358e9db9af0bca 10-Jun-2014 Tony Mantler <nicoya@google.com> Fix OAuth when changing credentials from settings

b/15521401

Change-Id: I7909389943c8e3eefbef0699f1c7c9c338282ca5
(cherry picked from commit 994c282d804a635f783681ae314a6b4b244b476e)
ndroid/emailcommon/provider/Account.java
994c282d804a635f783681ae314a6b4b244b476e 10-Jun-2014 Tony Mantler <nicoya@google.com> Fix OAuth when changing credentials from settings

b/15521401

Change-Id: I7909389943c8e3eefbef0699f1c7c9c338282ca5
ndroid/emailcommon/provider/Account.java
f765f9b976222a8a0e45d4b04883566ecf355937 05-Jun-2014 Tony Mantler <nicoya@google.com> Clean up cert activity handling

Fix re-displaying the dialog on orientation change b/5622284
Add host/port when available b/4988512
Disambiguate intent between AOSP and EmailGoogle

Change-Id: Ideeda20dfd9bd0070998ccf42d8042765866ca0e
ndroid/emailcommon/utility/CertificateRequestor.java
163323294e20f620931ae531cc927ae3932cb368 22-May-2014 Martin Hibdon <mhibdon@google.com> Change IEmailService.sync to have two different forms

Change-Id: Id8e770154d6116b02746cbdfb8c7cdc9358398de
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
c5f5a14ae9095f76d8e8c411cfd8f8e0e8970aa2 21-May-2014 Martin Hibdon <mhibdon@google.com> Revert "Get rid of deleteAccountPIMData from IEmailService"

This reverts commit cf2178c4fa61538f5a2f862fe3f9bc16b9f06ebb.

Change-Id: I9b05dd7a29a2d2edf64529ca28e2305737a43115
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
cf2178c4fa61538f5a2f862fe3f9bc16b9f06ebb 21-May-2014 Martin Hibdon <mhibdon@google.com> Get rid of deleteAccountPIMData from IEmailService

This doesn't need to be part of the service because the
implementation doesn't need to be different between any
of the different protocols.

Change-Id: Ifddf16dd3ccaf397029f08f6d4283d9a5630f717
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
c1265d2090412b922725bc43324a819a3338bd88 15-May-2014 Tony Mantler <nicoya@google.com> Merge "Move email bodies to files" into ub-mail-master
34c2e1619d47d8140efd212c7bb037b935eb5d18 15-May-2014 Tony Mantler <nicoya@google.com> Fix FLAG_OAUTH usage

Also fix some excessive checking of incoming/outgoing settings fragments

b/14969455 b/14971192

Change-Id: I6cf83aa59d381d3bbfc33e0d4a6e133c1814ba69
ndroid/emailcommon/provider/HostAuth.java
82a207132b34377d532f19882f5bfc70bc657da0 14-May-2014 Tony Mantler <nicoya@google.com> Move account backup/restore to userdata in AccountManager

Change-Id: Iea9f2a1b1f2d87e07d63cbb1df5a0d6355ea4031
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Credential.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/utility/Utility.java
7525feb244db87eadf3a95baf3918438b0fbbb75 12-May-2014 Tony Mantler <nicoya@google.com> Move email bodies to files

Change-Id: Icfd0c4ab2ad25cc02b45cf41e7a205c17948ef2c
ndroid/emailcommon/provider/EmailContent.java
8518665a04b0da5a6abbf06b2763f71ca78a979f 14-May-2014 Tony Mantler <nicoya@google.com> Fix projection columns, begin removing another unused field

Change-Id: I89126dba47ed6e78c870d458c4f286a37f763a66
ndroid/emailcommon/provider/Account.java
2f97a7c658eb76ab9f388da8e73c1393b88d0def 13-May-2014 Tony Mantler <nicoya@google.com> Clean up unused code and warnings in Account

Change-Id: I40475eb6c8afa6b7b28fd143b9ad4fd268ff4657
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
bca4f9fcfb2301cd4bfdb9a4785f299f90e4263c 11-May-2014 Anthony Lee <anthonylee@google.com> Service intent's package matches the content provider's.

b/14596165. When setting the package of the service intent,
query the app that implements the Email content authority since
that is the same app that should handle the intent.

Change-Id: I29a34a056516edda78acb83b9c89547ca0dc5ca1
ndroid/emailcommon/service/ServiceProxy.java
2f288864b621cfb5aee44eda27df463460d33dd3 08-May-2014 Tony Mantler <nicoya@google.com> Fetch email bodies using ContentResolver#openInputStream

This brings us further along the path to storing email bodies
outside of the database.

Change-Id: I96296114ade0d561df724878ed92999306bcd176
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
9a80ffce14f5fac6c3234ee7aab768189fddc7ba 06-May-2014 Tony Mantler <nicoya@google.com> Handle attachment filenames with % characters

b/14571903

Change-Id: I3296bebfb4c6902750c68c9d3fb79ce644dbb137
ndroid/emailcommon/utility/Utility.java
aab514c942e8db9433f54652895e01516cdd588e 05-May-2014 Tony Mantler <nicoya@google.com> Catch empty mime type and substitute application/octet-stream

b/14564897

Change-Id: Id91dd18ef8b3fab449eb178bde73303107b78590
ndroid/emailcommon/utility/AttachmentUtilities.java
32471fc22e104156cf37ae36db05c4ab64722ceb 05-May-2014 Tony Mantler <nicoya@google.com> Catch exceptions when DownloadManager is disabled

b/14562210

Change-Id: If3f2da034e8492de049bc3bcac910a033c47d600
ndroid/emailcommon/utility/AttachmentUtilities.java
564a5343cc4f5da7d50fe1842dd70729e45876fa 05-May-2014 Tony Mantler <nicoya@google.com> Merge "Don't allow empty or null filenames" into ub-mail-master
d0b54a29489314935214db920180fa208fc3a8ec 03-May-2014 Tony Mantler <nicoya@google.com> Don't allow empty or null filenames

b/14500106

Change-Id: I519e4a0fe392c3bdbb84f1ccbdea89f07b9c1426
ndroid/emailcommon/utility/AttachmentUtilities.java
2fc13087e700ee044684adb99e7114c9f477c67f 03-May-2014 Jay Shrauner <shrauner@google.com> Parse abbreviated date fields

Add support for abbreviated dates with no timestamp (eg, "2009-01-02") to
parseEmailDateTimeToMillis.

Bug:14496986
Change-Id: Ifc77cb75fd9e23536b48c8f6ecefc0e2e8f1cc2c
ndroid/emailcommon/utility/Utility.java
d786b90cb53f435171d1358c0ab929fd8d53ef81 02-May-2014 Tony Mantler <nicoya@google.com> Don't allow non-constant format strings

Also clean up warnings and delete unused code

b/14488939

Change-Id: I0fc552b8437958331c30f2ddd05ae33c0010e79f
ndroid/emailcommon/utility/Utility.java
988d2b6e85ad7bd62bbadd0021f15cd2a70c82d0 28-Apr-2014 Jay Shrauner <shrauner@google.com> Fix Exchange crash when parsing abbreviated dates

Detect fully qualified and abbreviated date/time stamps in parseDateTime.
Previously parsed fully qualified forms like 20090211T180303Z; now also
parses 20090211.

Bug:14279251
Change-Id: I9a99ae16a5c1fe87b977fbebdba307baa653d539
ndroid/emailcommon/utility/Utility.java
40de3040e9f17551ac45a18461b6960f9ea6672b 29-Apr-2014 Tony Mantler <nicoya@google.com> Merge "Warnings and finals" into ub-mail-master
d3154ecc6ea87e37abc8d9d09e28883184ede446 29-Apr-2014 Tony Mantler <nicoya@google.com> Warnings and finals

Change-Id: Idc31b2f3376db73b90558fb22bdcdf4ff6f92b7d
ndroid/emailcommon/provider/Mailbox.java
4aec413a1e7c0269605ee744896c3bdb98463529 29-Apr-2014 Tony Mantler <nicoya@google.com> Warnings and Finals

Change-Id: I47f29c16c066eb077c64ef8c89e91df88d15caf0
ndroid/emailcommon/internet/Rfc822Output.java
533093abd783572e76868485704c2eb59a13bd01 25-Apr-2014 Anthony Lee <anthonylee@google.com> Make sure that queries against the Body table have ID columns.

Performed some cleanup and updated the source key projection
to include an ID to make sure that EmailMessageCursor works
properly.

Change-Id: I272fac474de876fdd2a08136e0ba97b3f5dc2c7e
ndroid/emailcommon/provider/EmailContent.java
dc6bb6aa417bae9572ed3e1fb85a50f2ee315d90 22-Apr-2014 Anthony Lee <anthonylee@google.com> b/14075613. Treat empty strings the same as null strings.

Found this issue when addressing the root problem for this bug and testing
with various mixes of text and html content in emails.

Change-Id: I875fd9fac85b07484c27db383e3ac4a3cb935ee6
ndroid/emailcommon/internet/Rfc822Output.java
3c73a04bec2a1d06ce0a3c861a3d88862b80c163 18-Apr-2014 Tony Mantler <nicoya@google.com> Continue purging the unused reply parts

Change-Id: I47b5bbe50ba36e68ad7ba80647f401b992660ba1
ndroid/emailcommon/provider/EmailContent.java
fd69e5b03600acd4b5c9fd0684c505d42740d817 17-Apr-2014 Tony Mantler <nicoya@google.com> Purge unused/obsolete body fields

Change-Id: Idafa09b58f5753e4cb3cad754c861cc8e3d80c34
ndroid/emailcommon/provider/EmailContent.java
9caaebb14282034576345b35402f5b6654c3f08d 16-Apr-2014 Tony Mantler <nicoya@google.com> Bypass the cursor completely when passing message within EmailContent contexts

We should investigate using PFDs when passing to the UI layer too, for consistency

Change-Id: I21ad1987926b93af20287ae8e49bfc7a4ad99570
ndroid/emailcommon/provider/EmailContent.java
3dd85723a1af5537e23e4b05bdc361cce9cd42be 11-Apr-2014 Tony Mantler <nicoya@google.com> Cleanup in EmailContent

Change-Id: Ifa251eb206779f59ea003f99395d454c7e407bc2
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Credential.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/provider/MailboxUtilities.java
ndroid/emailcommon/utility/SSLUtils.java
80d76769852635096227ea467ce6375e61bfe01d 11-Apr-2014 Tony Mantler <nicoya@google.com> Remove flawed body-mangling code, add some finals

Change-Id: Ia3dc53cc36e5c2912d4366d4e1a0d69b87c4409b
ndroid/emailcommon/utility/AttachmentUtilities.java
2aeb498d4e9b14e7365abb72dc76317d5a961a42 08-Apr-2014 Tony Mantler <nicoya@google.com> Fix attachment loading for messages which have been forwarded

These attachments have a contentUri where the attachment ID is not equal
to the ID of the actual attachment.

b/13900073

Change-Id: Ic62b8165be2e80bc47eac40dc9eb5ac53c3cd6c5
ndroid/emailcommon/provider/EmailContent.java
dc0ac5a316af62890d4e63c35ed964a927cd5acd 27-Mar-2014 Martin Hibdon <mhibdon@google.com> Upgrade my logging from .e to .wtf

b/13640564

Change-Id: I360aa6bab99cc1c414b4f89fcfe3c82eb6e282c3
(cherry picked from commit 8eaa3f029e2856605c082814e7fca448babf5c0d)
ndroid/emailcommon/provider/Credential.java
4d6225d6990220d6c8cb4f5ea628b69941ef8d54 27-Mar-2014 Martin Hibdon <mhibdon@google.com> Merge "Add logging to help track down a bug causing invalid credentials" into ub-mail-algol
7c8eee40c107a996b5ca5a18382dea3d37d58069 27-Mar-2014 Martin Hibdon <mhibdon@google.com> Add logging to help track down a bug causing invalid credentials

b/13640564

Change-Id: I1161764e1278375eb786689a11e6899e8363fc8b
(cherry picked from commit 541928471541c2494bd6c2911d682776c0900fed)
ndroid/emailcommon/provider/Credential.java
38f9991634ba5a3119065ee4f7b521946f9c1fec 24-Mar-2014 Tony Mantler <nicoya@google.com> Fix IMAP message upsync to include attachments.

b/13138456

Change-Id: If16b619a650c640a37cb4563750a6327a5e601e6
(cherry picked from commit 0c8696c2ebd52c7f2a92fa7b6b8d5d2005c19d1c)
ndroid/emailcommon/utility/CountingOutputStream.java
eba80c114e87346aeb64bbff91ef11b0ba566fd6 07-Mar-2014 Anthony Lee <anthonylee@google.com> b/9564335. Add support for a maxAttachmentSize column in the Account
table and connect the data to the Settings object in the existing
location (SettingsColumns.MAX_ATTACHMENT_SIZE).

Change-Id: Iaf48995757511e1dfb65aa35ff6d81bbc47187bd

Conflicts:
src/com/android/email/provider/DBHelper.java
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
8103f960d0c0469d67652afd616e9924687aa139 26-Feb-2014 Yu Ping Hu <yph@google.com> Add sync to IEmailService.

This supports the EasService design.

Yes, I just removed a startSync function from this interface last month. No,
I didn't quite know at the time that I'd be adding one back. :)

Change-Id: I19d9c7838473d8982560764fdba0056cba03d132
(cherry picked from commit 4a5b11d650ff6bd79da1dfecc137af3433ce6ca8)
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
70cb2878d72ce1c1775ac0426ff82698a5e59377 26-Feb-2014 Anthony Lee <anthonylee@google.com> Changed the IEmailService interface to accept and accountId in
the loadAttachment() call. This work was necessary to support
the new EasService & EasOperation infrastructure.

Change-Id: Idd507aec999596ccd4afa5f03ff2b3c2e38a9029
(cherry picked from commit efac8255ed75d22e60036e19e7a95f8407d18ad3)
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
701134953e4591bf2cca020838558a97eab570a1 25-Feb-2014 Yu Ping Hu <yph@google.com> Add pushModify to IEmailService.

This call lets the service know that the push settings for an
account have changed.

Change-Id: I7ed41853df6af6762c80283a2a3510ce41551657
(cherry picked from commit 446136a2278652c627068ecddff534de1ad431ab)
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
f679cd08d179645b5131d2cfdaa70fa42bb778c0 30-Jan-2014 Yu Ping Hu <yph@google.com> Delete unused functions from IEmailService.aidl.

Change-Id: I131d2d3436a50c94d664fc57c6514481d9afbc97
(cherry picked from commit 8ff6c107867bc2044ba50cad010dbf4a2e93436e)
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
0dffe3afd7a2fdfb394573aa0d8d06dd90e9fe12 30-Jan-2014 James Lemieux <jplemieux@google.com> Keep on getting a couldn't sign-in notification

b/11551107

This is caused by ImapConnection.doLogin() only throwing
AuthenticationFailedExceptions and not other varieties of exceptions.

While fixing this bug, I discovered that the ConversationListFooterView
that is displayed in response to a authentication failure contains a
button called "Sign In" that didn't actually do anything. I made it
navigate to the incoming account settings fragment where the user is
free to change the relevant account credentials.

Change-Id: I2c772ecab18f3e57059eceeae01de08f1fdab4c2
ndroid/emailcommon/utility/IntentUtilities.java
76472ae40cd55d17edb0420e8fc2a7bae60c50de 13-Feb-2014 Tony Mantler <nicoya@google.com> Merge setup fragments under a single activity

Change-Id: I10cf8bb9f6bc1a26ea97ae664f0196ae9e9493b5
ndroid/emailcommon/provider/Credential.java
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/utility/Utility.java
822f17d6c18065230fbf685ead1cb3f60784fc78 19-Feb-2014 Tony Mantler <nicoya@google.com> Merge "Mark otherwise unused method as @VisibleForTesting" into ub-mail-master
feeb1e3adac000f36e1e7a5d754ad6b4e3ab34c1 19-Feb-2014 Tony Mantler <nicoya@google.com> Mark otherwise unused method as @VisibleForTesting

Also fix spelling cancellAllInterrupt -> cancelAllInterrupt

b/13082964

Change-Id: I2fef949bb351a536fdd0d7058b3df2b03eecb39e
ndroid/emailcommon/utility/EmailAsyncTask.java
38fd08e4708b10e585cf6336d44fef53c50e65c6 14-Feb-2014 Martin Hibdon <mhibdon@google.com> Merge "Make settings flow work for OAuth" into ub-mail-master
87de90282bc7f00c154be460c66cef999072b555 14-Feb-2014 Martin Hibdon <mhibdon@google.com> Make settings flow work for OAuth

Now the password entry is removed from AccountSettingsBasics,
and the user is taken to either SignInActivity or AccountSetupType
after hitting the next button. This is a lot closer to the
desired setup flow as it allows for oauth signin.

Ideally this is not what we will ship for Algol, but it put us
in a state where we could ship if we had to.

Change-Id: I5b28bccd27c515572e4947ca877bd1772732507d
ndroid/emailcommon/provider/HostAuth.java
c165d9bd77744f4277a75e7dc491a272846d56e6 13-Feb-2014 Anthony Lee <anthonylee@google.com> Merge "Introduce an SSL handshake timeout value of 30 seconds." into ub-mail-master
37a4c65e58728b321850b1e51d87eecfe9d1d805 13-Feb-2014 Anthony Lee <anthonylee@google.com> Introduce an SSL handshake timeout value of 30 seconds.

Motorola 0009-IKXREL1KK-5011 patch. Hanging on an SSL handshake is
a real situation that needs to be handled. 30 seconds is more than
enough of a timeout to abort on a potential hang. The coincidental
thing is that there was a fix that was made a while back to email 1
that addressed the same issue in similar code. You can reference it
here: b/7583420.

Change-Id: I0533e57f8c5d45d241adb7f37d54ebe1f0ad9368
ndroid/emailcommon/utility/SSLUtils.java
6ef1621f444538337253f3aeae63dfe0098e238b 12-Feb-2014 Anthony Lee <anthonylee@google.com> In 4.4 unbindService can return other RuntimeExceptions outside of
IllegalArgumentException. Make sure we catch it.

This fix comes from Motorola 0007-IKXREL1KK-3886 but part of that
patch was reverted because we already had found and fixed the
other problem.

Change-Id: I0b6aa1f91e7d2fa4dfc3af5ff590781c8812c14e
ndroid/emailcommon/service/ServiceProxy.java
cd45d2025647719bd173b7557988fbe5de7532d3 07-Feb-2014 Tony Mantler <nicoya@google.com> Merge "Fix content observing" into ub-mail-master
0f8d16f56ad3aa1c2d3cd20b1ca0c24b486035ca 31-Jan-2014 Tony Mantler <nicoya@google.com> Fix content observing

b/12834957

Change-Id: I00e2fc48e1d78665e0cdcfc3f4fb483f5a047252
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Policy.java
58fbd2a47729bd21b5e3001c76bd0723ea868728 31-Jan-2014 Martin Hibdon <mhibdon@google.com> Add sign in Activity

This allows the user to choose which type of authentication
to use for existing IMAP accounts.

Change-Id: Ib44364a1059a2c4b8a7a0fa66b14cd042b28770e
ndroid/emailcommon/provider/HostAuth.java
7ee567f1b4f4cde5d33ff647d568da54ba1d187f 31-Jan-2014 Tony Mantler <nicoya@google.com> Merge "Clean up AccountSettingsFragment loading" into ub-mail-master
062f27fa370564d494260889c8141df50c07572f 30-Jan-2014 Tony Mantler <nicoya@google.com> Clean up AccountSettingsFragment loading

Also extend EmailContent to allow registering a ContentObserver

b/12816752

Change-Id: Ida873ac10101af92c627858d1d86c3a5ccd4ab26
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Policy.java
1fa303478c61e0d703011996e358037eef523176 23-Jan-2014 James Lemieux <jplemieux@google.com> Eliminate redundant methods in Address class

THIS DOES NOT CHANGE ANY EXISTING FUNCTIONALITY.

Address.pack() has been removed and all calls replaced with its synonym Address.toHeader().
Address.unpack() has been renamed to Address.fromHeader() to follow the new naming convention.

In days of yore, pack() and toHeader() used to do different things. Now they are identical and
thus one is superfluous. We have standardized on toHeader() and fromHeader().

Change-Id: Iac91c966eb6c1477f8dba0dd2ae01c84b359e539
ndroid/emailcommon/internet/Rfc822Output.java
e8eb6e659b5914eb7deab451c583e906010d0457 11-Dec-2013 Martin Hibdon <mhibdon@google.com> Make OAuth work

Now you can authenticate your account using oauth
for google hosted accounts (e.g. google.com, gmail.com)
The setup ui is still not up to spec.

Change-Id: Ib2826653550a823b4d1b8739c1e483746cccbc22
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Credential.java
ndroid/emailcommon/provider/HostAuth.java
ab29555b722256b591a5067a4e29df6631f89d87 03-Jan-2014 Martin Hibdon <mhibdon@google.com> Log the stack trace if we do a DB operation on the UI thread

Change-Id: I0b9e7fff502ef5ee0f8b373cb3352958b8de08c2
ndroid/emailcommon/provider/EmailContent.java
05723aa0f642fbbffd8859dce8181601576e245b 11-Dec-2013 Martin Hibdon <mhibdon@google.com> Don't put Credentials in HostAuth parcels

The problem is that exchange isn't compiled with this
change, so HostAuth parcels to or from exchange fail.
Ultimately, we'll need to probably create a HostAuth2
object or something along those lines. For now, just
change the format of HostAuth parcels back, so they
stay compatible with exchange, I'll figure out a real
solution later.

Change-Id: I9c8c8639b7b474fe82dfdc37a9e51a0451820105
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/HostAuth.java
44a6fc31a2947f8672604c5d819a19580425d76e 10-Dec-2013 Martin Hibdon <mhibdon@google.com> Merge "Allow database to hold oauth credentials" into ub-mail-master
0b25179dab10dc7dfb91210cabfe637f3067d777 04-Dec-2013 Martin Hibdon <mhibdon@google.com> Allow database to hold oauth credentials

Change-Id: I127297fd78c7676995f1dcfa59fbbcafe4e72e8e
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Credential.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
fb9deb96c3af56bf422e28e8ae3b7b838f343155 23-Nov-2013 Tony Mantler <nicoya@google.com> Make intents more explicit

also fix intent strings.

Change-Id: I880fd6cd6192ae43002e1ddc8558f823141c5952
ndroid/emailcommon/service/ServiceProxy.java
b174976d594501cd6c2fe4b1327dddcc77d3088c 05-Dec-2013 Jerry Xie <jjx@google.com> Merge "Get Email units to compile" into ub-mail-master
17d3a29c9d8f7a27c463239f190bdcc4e0804527 27-Nov-2013 Jerry Xie <jjx@google.com> Get Email units to compile

Change-Id: I171a0e2421c5006d9862ad94f886932146547020
ndroid/emailcommon/VendorPolicyLoader.java
ndroid/emailcommon/utility/AttachmentUtilities.java
e62688f0d67edd7119e82a5cbfe6b8815721df2f 03-Dec-2013 Martin Hibdon <mhibdon@google.com> Add configuration for oauth providers

There is now an xml file that holds parameters for oauth
providers, and entries in providers.xml can specify that
they can use oauth.

Change-Id: Ibce5b207f83ce9c773f8f713be9e73bb068070ed
ndroid/emailcommon/VendorPolicyLoader.java
34662f11b2ff38f05219415f3672a52a7af2338f 26-Nov-2013 Tony Mantler <nicoya@google.com> Save policy when saving account

Also add a loader to AccountSecurity, and ignore when a policy contains unsupported requirements.

b/11790165

Change-Id: Idd651153848eea3216656047c5aba3bbd750ca0a
ndroid/emailcommon/service/IPolicyService.aidl
ndroid/emailcommon/service/PolicyServiceProxy.java
a702a7bbd846572a2d6b3d29707f3ecd6e6c6cb4 26-Nov-2013 Yu Ping Hu <yph@google.com> Merge "Fix account deletion when removing security policies." into ub-mail-master
a60550e0eb08e0239d1fcea261b37ba592a35ba4 25-Nov-2013 Yu Ping Hu <yph@google.com> Fix account deletion when removing security policies.

- Delete accounts, not just account data.
- Wait for PIM data to get deleted before proceeding.
- Reconcile after deleting an account.

Bug: 11856902
Change-Id: Ie52b7c583688bf48a33bcf6b4e555b8c055b476c
ndroid/emailcommon/service/EmailServiceProxy.java
4b629cf25804fd74712b0f7acce1c2e59135b9bf 15-Nov-2013 Tony Mantler <nicoya@google.com> Null check certificate alias before trying to configure it

Bug: 11678638

Change-Id: Ia12789ac3553ef959a8c9bbf13f017b1a154f560
ndroid/emailcommon/utility/EmailClientConnectionManager.java
8fde9e27f86ec00e52dcecdd76ee276a4244a2f4 13-Nov-2013 Yu Ping Hu <yph@google.com> Merge "Check for ArrayIndexOutOfBoundsException" into jb-ub-mail-ur10
cde694c5e185ef1af5a5f5be94c6663be6ad1c6e 13-Nov-2013 Alon Albert <aalbert@google.com> Check for ArrayIndexOutOfBoundsException

Quoted text pos may be out of bounds of message body.
This may be caused by the pos being calculated in html while the message is being
sent as plain text. A seperate CL will attempt to address the root cause. This
is a last resort so we don't crash.

Bug: 11538910
Change-Id: I326ebe56ee15368983caa2fa76605e7658dab014
ndroid/emailcommon/internet/Rfc822Output.java
e39f2b0f272eb0bde5acd94c4ab577be28d6c452 11-Nov-2013 Martin Hibdon <mhibdon@google.com> Add fallbacks if sentDate is not set

b/11520812
This should make behavior better if the imap server
does not set the date header.

Change-Id: I593e14ce0a94179a39779ec47831fb8d3caef95b
ndroid/emailcommon/provider/EmailContent.java
2ed113c7137e6f1059a22fa018332d56ec740a0a 01-Nov-2013 Tony Mantler <nicoya@google.com> Foreign characters may be letters and digits, but they're not allowed in Uri/Url schemes

b/11356390

Change-Id: Ic510607ab5f671e3f3f474ea3c2f4af7e9966cb1
ndroid/emailcommon/utility/SSLUtils.java
5181cd6d4a60ed0b7dbed022484d299a3e91f0da 30-Oct-2013 Yu Ping Hu <yph@google.com> Add a provider call to get device friendly name.

For now, it sends the device model name as friendly name, in lieu
of actually having a user-supplied friendly name. This is wrong
for at least two reasons:

1) We need to have an actual user-supplied friendly name, but that's
not easy to find.
2) This really shouldn't be a provider query -- it should be something
the Exchange can know locally (ideally this is a system preference
but that's not currently implemented). This workaround just lets
us have some reasonable value that we can update easily.

Bug: 11161234
Change-Id: If83ad768736de19c9d0e833d1f86a6ce9daf5039
ndroid/emailcommon/provider/EmailContent.java
feacaf6351ad981890fd6dc790added452e3a570 25-Oct-2013 Yu Ping Hu <yph@google.com> Do not try to load nameless attachments.

Bug: 11347094
Change-Id: I46321755cebe25858c0188f35270d428dfe4a435
ndroid/emailcommon/utility/AttachmentUtilities.java
c86fbb5bcbff72102f87747d94948f0749402229 23-Oct-2013 Martin Hibdon <mhibdon@google.com> Add an additional mailbox key column to message table

b/11294681
The problem is that when we try to open an attachment for a
message in search results, it fails. The reason is that part of
loading the attachment, we need to open the remote folder the
message is in. For search results, the message's mailboxKey is
the special fake "search_results" folder, which doesn't actually
exist on the server.
For this change, I've added a new column called "mainMailboxKey".
For search results, this column will be populated with the real
mailbox the message is in. It will be blank for other messages.

This is a quick and low risk fix for this bug, but it's kind
of awkward. We would prefer to do one or both of the following
some time after MR1.

1. Make the "search_results" folder be a virtual folder, the same
way that unread, starred, and other virtual folders are. For these,
there is actually no mailbox row in the database, just some
queries that check various flags in the messages and behave
like folders in the UI. The messages actually still reside in the
real folders.
2. Remove the requirement to open the folder at all to load the
attachment.

Change-Id: I825ab846f78bf8b041a5d1d579260dc5d7b4c522
ndroid/emailcommon/provider/EmailContent.java
d0b81a0d062f9bad15c9d9ba104b6cdf8590e5fe 21-Oct-2013 Yu Ping Hu <yph@google.com> Treat updates into non-existent body rows as inserts.

Bug: 11245727
Change-Id: I648b0267e9149f3f431ce01be9789087f73edab1
ndroid/emailcommon/provider/EmailContent.java
a5a28ffb63785eefe8602174316d9ba6233ac428 18-Oct-2013 Yu Ping Hu <yph@google.com> Do not require RPC for getCapabilities.

Bug: 11241892
Change-Id: I3da136c9035414c821ee2038da01134c551bb9dd
ndroid/emailcommon/service/EmailServiceProxy.java
8c989772dfba08438650575f1ac2bb952bd56158 18-Oct-2013 Alon Albert <aalbert@google.com> Handle User Refresh in Edge Cases

Handle the following edge cases when a manual refresh is triggered:
* No connectivity
* Low storage space
* Timeout (sync not started)

Bug: 11241113
Change-Id: I580235d633fcb65999c0bfe8bf383c9c8ba72110
ndroid/emailcommon/service/EmailServiceStatus.java
f7078466c3a5ac9eefc388787aa5fcf187dfe4ee 11-Oct-2013 Martin Hibdon <mhibdon@google.com> Always fix parent keys on startup of email

b/11174975
There are already several database fixing steps that
occur when the database is opened, add another one
to correct uninitialzed mailbox parent keys.
This is because we use a two pass system for adding
mailbox rows, first to insert the rows, and second to
assign parentKeys to child rows. We need two passes
because we may insert a child row before its parent,
so the parent's rowId is unavailble. But if the process
dies before the second step is complete we'll be in
an inconsistent state.

Change-Id: Ifaeeaca7e82c1e99656033bc1a9f25d7acb67517
ndroid/emailcommon/provider/MailboxUtilities.java
cb30243fe1fa3a2f7540495cbeea470e77b539be 10-Oct-2013 Martin Hibdon <mhibdon@google.com> Disable sync settings controls for drafts folders

b/11158759
Make the default sync setting for drafts folders 0
(never automatically sync), and disable the settings
control so that it cannot be changed.
Also add a db upgrade step to set any existing drafts
folders to not sync, and clean up any Exchange synced
draft messages.

Change-Id: I256bde231d722089ef2a623482f570a20eccf1de
ndroid/emailcommon/provider/Mailbox.java
56aba8d8436b083bfc1169dd8b988161d537f7e5 09-Oct-2013 Martin Hibdon <mhibdon@google.com> Allow multiple mailboxes to be synced in a single request

b/11103878

Change-Id: Ic6abf51457fe94e89fe51b461da4371f50e0fe86
ndroid/emailcommon/provider/Mailbox.java
19675e8bd7e0a43ba3e253a6f618e080067abd2a 08-Oct-2013 Yu Ping Hu <yph@google.com> Add a mailbox type filter for syncing.

Bug: 11081520
Change-Id: I76bcc0db08d2def3418849b9536b2e7ac1769f34
ndroid/emailcommon/provider/Mailbox.java
6700000ad14145637a482679d5c1436885ac0a16 05-Oct-2013 Martin Hibdon <mhibdon@google.com> On initial sync, do inbox first

b/11081520
This improves perceived performance, the inbox
messages will come in before contacts and calendar

Change-Id: Icd9630d9cd2fb79a54d0ed2c11702a1a3091ed7e
ndroid/emailcommon/provider/Mailbox.java
cae08a64fb154b091f43595b9a5ab08474bd67fb 05-Oct-2013 Yu Ping Hu <yph@google.com> Fix my query. Again. :(

Change-Id: I2453bd3daa00f16cecdec8da93b21b98ae8d5e7b
ndroid/emailcommon/provider/Mailbox.java
29984af2b2cf8114c860d89765125a05316fd736 04-Oct-2013 Yu Ping Hu <yph@google.com> Fix a sql statement.

Change-Id: I32cb6f5e52173059b08a83cbf65c9e4ac31302b4
ndroid/emailcommon/provider/Mailbox.java
3f24a9e2c76af8b772953c8a026d9886321f0044 04-Oct-2013 Yu Ping Hu <yph@google.com> Don't push things that haven't performed initial sync.

Also remove the ping kick.

Bug: 11081520
Change-Id: I21d5050886b2c352771013f4f3e5b9282482d508
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
840408c41cfc95ffa491aaf11f1c3f4075eae9c9 04-Oct-2013 Tony Mantler <nicoya@google.com> Remove mAmAccount from the email provider account object

b/11070468

Change-Id: I51bad4be41800e4cd6dae42744005ade784cdf82
ndroid/emailcommon/provider/Account.java
921c04d2ac5df091fb3c5cfa823e6dc2fc6cdf5a 02-Oct-2013 Martin Hibdon <mhibdon@google.com> Add some logging

Change-Id: Ib26ffad0bb6841361b8ee7be4ee2a6255d509ae2
ndroid/emailcommon/provider/Mailbox.java
768c6b86db854569a687f68c9b8f232e9ebf1573 01-Oct-2013 Tony Mantler <nicoya@google.com> Don't show "No messages" when starting a search on Exchange

Also clean up some finals

b/11027351

Change-Id: Ib76cc90b04acb531d53b2d6bdc4e3b0ad911f72c
ndroid/emailcommon/provider/EmailContent.java
c4d139c4f4d924eae0307e8349ae977441dabbed 28-Sep-2013 Alon Albert <aalbert@google.com> Auth Notification

Some changes that allow a notification to open Account Settings for a specific
account

Bug: 10930585
Change-Id: Ib329e339b405ccbc0631d5ce6a23bf8fa6d62b83
ndroid/emailcommon/utility/IntentUtilities.java
463584d23f747cfbbd9856b39390269342363b41 25-Sep-2013 Tony Mantler <nicoya@google.com> Fix account matching at initial screen to match against email address

b/10210901

Change-Id: I64d60ca33a42a19e085dd98a7a61d68ac30027f9
ndroid/emailcommon/utility/Utility.java
aad690f699f61793facecc950d3d060baa62fd45 21-Sep-2013 Martin Hibdon <mhibdon@google.com> Improve display of attachments in pop

b/10714298
This is related to this CL in UnifiedEmail
https://googleplex-android-review.git.corp.google.com/#/c/363626/1

Change-Id: Idea2827791ed52e7558b11aaea07b1f3f1764db5
ndroid/emailcommon/provider/EmailContent.java
29d886ced72261a88d3c2c77c6edf06000c9c578 19-Sep-2013 Alon Albert <aalbert@google.com> Implement a resyncMailbox Method

Deletes all messages in a mailbox, resets the sync key and requests a sync.

Only supports Mail mailboxes for now.

Change-Id: Iab8c051631f38687c02a22cb80ce4f50c2d9c6f1
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
e9849404652f317c4fb3af822fd6fa9cd23ad881 13-Sep-2013 Yu Ping Hu <yph@google.com> Fix MessageStateChange to include mailbox id.

Also ignore messages without server ids for moves and
state changes.

Also cleanup to match needs of EAS upsync.

Bug: 10678136
Change-Id: Id4d5229b8479e61bd718b707b0d2bc77a9e68046
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/provider/MessageChangeLogTable.java
ndroid/emailcommon/provider/MessageMove.java
ndroid/emailcommon/provider/MessageStateChange.java
24bb2dabd9dd7d8bd39fed53f312ae6034e373bb 13-Sep-2013 Martin Hibdon <mhibdon@google.com> Kill the process when an account is deleted.

b/10653370
This prevents NPEs if a serviec happens to still be running
when an account is deleted.
This mirrors a similar pattern in the gmail app.

Change-Id: I6fd8ae5ffe41580df0a321ec22535403e3f32eee
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/service/ServiceProxy.java
ca79aba675d5282b6ba365184f3727b7b24a568f 05-Sep-2013 Yu Ping Hu <yph@google.com> Add the MessageMove & MessageStateChange tables.

We need to track changes that need to be unsynced. Because
Exchange handles moves differently from other changes, we
create two different tables. The tables are structured as
change logs to better handle error cases.

Change-Id: I4df90c75f36707fa117aed9718508426e60e0749
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/MessageChangeLogTable.java
ndroid/emailcommon/provider/MessageMove.java
ndroid/emailcommon/provider/MessageStateChange.java
e4ac06080ba8b8e57531982ea290354b1a9a4305 28-Aug-2013 Paul Westbrook <pwestbro@google.com> Don't use implicit events

Bug: 10189773
Change-Id: I4579f2e465bd23b8ab4cdf291bfbe80cf6518328
ndroid/emailcommon/service/EmailServiceProxy.java
0a710bde6817354211525b0f3176a1e294d1cd79 26-Aug-2013 Scott Kennedy <skennedy@google.com> Fix notification preference migration

These settings need to be migrated from the database, not the
SharedPreferences file that likely shouldn't even exist.

Everything added to Account.java was removed in
Ie6ec389b5b5d2e7ab1b299d0877811ae716526e2
when it was believed to be unnecessary.

Bug: 10211615
Change-Id: If6193758febda8a3272d82792492503549a44e32
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
c76d008c90dee88c53b182db9d95f6a18999b5cd 24-Aug-2013 Yu Ping Hu <yph@google.com> Merge "Add the moved messages query." into jb-ub-mail-ur10
336e65b6e1eb92fac8f03b5c39dde19361577cb4 23-Aug-2013 Yu Ping Hu <yph@google.com> Add the moved messages query.

Change-Id: I6dea8055c5d1a4195b9613f684fbd1f5e8d807fd
ndroid/emailcommon/provider/EmailContent.java
ed4accb24facd1324948abc61b0791eb3dc97cc4 23-Aug-2013 Tony Mantler <nicoya@google.com> Clean up warnings, finals, dead and useless code

Change-Id: I8225a78c3b1712479bb5752161e3585a2bc2be2e
ndroid/emailcommon/utility/Utility.java
b4d4729fa2fc285ddc7ed31d902b15d8ad0cacca 22-Aug-2013 Martin Hibdon <mhibdon@google.com> Merge "Add PingDuration to the Account table" into jb-ub-mail-ur10
52135c6e8750f19084695cdda78ffe34719c4b6c 21-Aug-2013 Martin Hibdon <mhibdon@google.com> Add PingDuration to the Account table

b/10328857
this is so that we can keep the current ping
duration and restore it on startup.

Change-Id: I7ae11fd21687cb9013222924934154c5ebe1f7e7
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
e568f1bd379d211d5ed743d2c3edc734d2cdf691 21-Aug-2013 Paul Westbrook <pwestbro@google.com> Use resources for authority/package name

This will better handle the case where the Email package name
changes from the "orignal package name"

Bug: 9763397

Change-Id: I8e01620551ce473e389e6a13963caaf685aea221
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
5440a405325c118ecab7ab4f124955ab3c92c245 17-Aug-2013 Paul Westbrook <pwestbro@google.com> Prevent NPE

If two threads call EmailContent.init(), one of them may use
uninitialized EmailContent contstants

Bug: 10355491

Change-Id: Iedcad01345989df62baf755bf4d63c123e307b7c
ndroid/emailcommon/provider/EmailContent.java
c6953b77552d4cb71776cf0537dc226029381628 14-Aug-2013 Tony Mantler <nicoya@google.com> Reimplement QuickResponse support

b/8622751

Change-Id: Id079efcf34dce15b5f5057f937582c0e198d3d50
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/QuickResponse.java
8708594f03068a8c71a6c6e752b52c2fc1a733d8 16-Aug-2013 Martin Hibdon <mhibdon@google.com> Use insecure socketFactory if "accept all certificates"

b/9176386

Change-Id: I1edc92bb4207d166e9b252bf3ed98ad8b2c4d996
ndroid/emailcommon/utility/SSLUtils.java
eb190a8d9d42ab9e4c063babc14d3b0094008bf7 14-Aug-2013 Yu Ping Hu <yph@google.com> Don't crash when the policy service is unavailable.

This isn't a great situation -- it suggests the PolicyService
is having some sort of RemoteException -- but when it happens
we should just treat it the same as if the policy is not
enforced.

Bug: 10315113
Change-Id: If2fbe1648a5c6f3df13cef02c8dc5bc6e858f2d9
ndroid/emailcommon/service/PolicyServiceProxy.java
948e503b4a2e1b2a74e3919bb64dc7df7dc91b33 12-Aug-2013 Tony Mantler <nicoya@google.com> Merge "Continue rewriting QuickResponse support" into jb-ub-mail-ur10
6d24534804ddf54cd353ed46c4cbd6d23152f899 10-Aug-2013 Tony Mantler <nicoya@google.com> Continue rewriting QuickResponse support

Change-Id: I95530e84d91f4becb3de5280af83ce546e1ed093
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
2bafe9d90497f48aaf4009d8428f30bbe97e89ba 10-Aug-2013 Yu Ping Hu <yph@google.com> Add a utility function to map mailbox type to authority.

Change-Id: I21731a5d9ba45850577fdda4d6bef8835d6d3249
ndroid/emailcommon/provider/Mailbox.java
d42e14ad722db6eb1a8e6b0696abb6d4a88fac4e 07-Aug-2013 Martin Hibdon <mhibdon@google.com> Merge "Implement two part imap sync" into jb-ub-mail-ur10
c75f5880ab70d9f4938727587696b864bb4ea02a 07-Aug-2013 Martin Hibdon <mhibdon@google.com> Implement two part imap sync

b/10075523
Now, every 15 minutes we'll sync the last 24 hours.
Every 4 hours we'll perform a full sync, which will
take either the last 7 days, or until the oldest message
we already have locally.

Change-Id: Idc55a46a28af2a68cc324e414d51d88373941595
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
c3ceed68948ef6720ae7b861955b4d341f331643 07-Aug-2013 Yu Ping Hu <yph@google.com> Fix ui notifications on folder list changes.

uifolders and uiallfolders cursors now setNotificationUri on
the appropriate uri. That uri is notified whenever:

- A folder is inserted, deleted, or modified.
- A message is inserted or modified (since this can affect
message counts).

This second one is still not quite right: there are some
conditions where counts aren't updating correctly.

While I was here, I renamed the notification uris to
avoid collisions between different versions of the app.

Bug: 9111855
Change-Id: Ia29bb6a65b4f673bf352fdf0e14270b3f1443ca8
ndroid/emailcommon/provider/Mailbox.java
2535e03ab25e2883367dd58953cf128d4d3e5dd6 06-Aug-2013 Yu Ping Hu <yph@google.com> Remove some unused functions.

Change-Id: I1df1cf8af01c81c47b11a1f44be819f8c384cf85
ndroid/emailcommon/provider/Mailbox.java
6602918f964bfec0c19fa975a2ff7f2ab68503ad 02-Aug-2013 Yu Ping Hu <yph@google.com> Add checks for whether a mailbox is syncable.

These will be used in Exchange and eventually in IMAP.

Change-Id: If04c78556a1e52f1daa18bc3be0dc3def3c48957
ndroid/emailcommon/provider/Mailbox.java
eb4ee8a7aa540e77c57af1635ede7f89124f1259 02-Aug-2013 Yu Ping Hu <yph@google.com> Move required system folder types to Mailbox.

I'm formalizing the concept of folders that must exist,
and the list of such folders should be accessible to all
sync adapters.

Change-Id: I9e4d2d51aa495d211eab2d1e36c3fa197a1ac00d
ndroid/emailcommon/provider/Mailbox.java
a5355442a0a198739c60c11a0d2fc44928218e0b 01-Aug-2013 Yu Ping Hu <yph@google.com> Merge "Improve message counting, ah ah ah!" into jb-ub-mail-ur10
9a0382bb46fffab5e0fd35f1c06b3fb5330af55b 01-Aug-2013 Scott Kennedy <skennedy@google.com> Remove more warnings

Change-Id: I0b7475a3569a05c90aa1ab6540c875326da96768
ndroid/emailcommon/provider/Policy.java
ndroid/emailcommon/provider/QuickResponse.java
ndroid/emailcommon/utility/SSLSocketFactory.java
5ff368b84573833497764c9d1661cc97717b7094 31-Jul-2013 Yu Ping Hu <yph@google.com> Improve message counting, ah ah ah!

- Restore message_count in the database.
- For UI queries on outbox, trash, and drafts,
use message count instead of total count.

Note this won't be the right thing to do when we properly
sync trash & drafts, but we'll address that when those syncs
are fixed.

Bug: 10098601
Bug: 10113686
Change-Id: I647c74396ee12ed981d89bfb654cc6d0a25cac95
ndroid/emailcommon/provider/EmailContent.java
2075c97f608a853923980865b72147a5c8ef71f0 30-Jul-2013 Yu Ping Hu <yph@google.com> Delete most of IEmailServiceCallback.

The old callback mechanism is deprecated, in favor of making
calls on the ContentProvider.

Bug: 9842867

Change-Id: I65f559e593cda24456c4ffb96f785e054626dd0b
ndroid/emailcommon/service/EmailServiceCallback.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/EmailServiceStatus.java
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/IEmailServiceCallback.aidl
e821797f27b094b55ad7aa4ed716089d36d71d82 25-Jul-2013 Martin Hibdon <mhibdon@google.com> Merge "Update IMAP sync method" into jb-ub-mail-ur10
25031796061b1d87cf2f38cdb34110c2291fbd47 18-Jul-2013 Martin Hibdon <mhibdon@google.com> Update IMAP sync method

Now it syncs using a date range query.

Change-Id: Ia520fbbe39521b1356acaf0fe764f9bdcc1aeb82
ndroid/emailcommon/provider/Mailbox.java
b3cb475fd29f827002b9743822b2a99ff85d1b38 24-Jul-2013 Yu Ping Hu <yph@google.com> Fix DB upgrade code to set lookback correctly.

Rather than use null, just force the valid default value.
Also rename SYNC_WINDOW_UNKNOWN to SYNC_WINDOW_ACCOUNT to
better reflect how it's actually used.

Bug: 9989995
Change-Id: I8d0b466fe3bc2e4c651c309d4815cea201058d22
ndroid/emailcommon/service/SyncWindow.java
9a1f00bee4c50c128df320a3795cfc8295d5e011 20-Jul-2013 Yu Ping Hu <yph@google.com> Change deleteAccountPIMData to take emailAddress, not id.

By the time the remote call actually runs, the account
may be deleted from the DB, so the account id is likely
useless.

Bug: 9021105
Change-Id: If28b4b8c4b5c52be35c6ff68b326c4ea28d7f7b4
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
0a68a255c5af6707ace6915791c133bd79858263 19-Jul-2013 Yu Ping Hu <yph@google.com> Delete unused projection.

My previous CL was a lie. Turns out I don't need this at all.

Change-Id: I090efbd19f10f0fa58566acac1886b6da54d3319
ndroid/emailcommon/provider/EmailContent.java
966f237e77510ca98c8bfcc0acd6808a9356296f 18-Jul-2013 Yu Ping Hu <yph@google.com> Hijack an unused projection.

This was unused, and I want to write a query in Exchange
that wants to get a message's mailbox key, so I'm taking
this over.

Change-Id: I142394bfd30df8c88c5e1b48347a8532a4758857
ndroid/emailcommon/provider/EmailContent.java
d5acf0bbc00cbe9a2c075e1bd4825ccbd9851d8d 15-Jul-2013 Yu Ping Hu <yph@google.com> Explicitly pass a callback when loading attachments.

This is part of moving away from the explicit setCallback,
which either has race conditions or is very noisy, or both.
(Each IEmailService call that wants callbacks should just
pass the callback explicitly.)

I'm not yet changing how the services actually handle the
call. Each protocol will need to fix this on their own.

Bug: 9735207
Bug: 9842867
Change-Id: If8cf69ffe82f3544ace9e58b1db5a183f38d038a
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
6e0f74de9304bfda7e31210142dec5813ce46f11 28-Jun-2013 Yu Ping Hu <yph@google.com> Add a constant for push-only sync requests.

This will be used in Exchange, but the constant belongs here.

Change-Id: I5be3bae75ccaa0562230252226375b25028dfb76
ndroid/emailcommon/provider/Mailbox.java
229c070b0b177793032ce9249cb77f6ca98e5aa4 27-Jun-2013 Scott Kennedy <skennedy@google.com> Change the concept of a default account

The user no longer has control over this. Now, the "default" account
(which is only used for prepopulating the name of new accounts is
either the last used account (to be defined), or the first account in
the database.

This removes a setting, and simplifies a lot of code.

We may also want to auto-select the default account when entering the
compose screen from the combined view, but we do not currently have
an easy way to do that.

Bug: 7442992
Change-Id: Iff5bb36d8cbd327334211b670fa4851cbda6b9a0
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
cdee4b0c11400d766ae826e6c01d234c2769554f 27-Jun-2013 Andrew Sapperstein <asapperstein@google.com> Use resource strings for system folders.

Fixes b/9193813. Previously we returned
a value from the database in all cases.
This meant that system folders were not
translated.

Change-Id: Ife568651886bfb6de76221b8bc5d013dac8fa21a
ndroid/emailcommon/provider/Mailbox.java
1b8e0fa23f6e9957f0b8753dd3f5b95d3f5d98ea 26-Jun-2013 Scott Kennedy <skennedy@google.com> Clean up a bunch of warnings

Bug: 9565838
Change-Id: I5e95562bbf463f057cbcc4a9884427a774473b45
ndroid/emailcommon/internet/Rfc822Output.java
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Policy.java
ndroid/emailcommon/service/AccountServiceProxy.java
a54ee609cdb79ad3abdda2d7180a29617fa38610 21-Jun-2013 Yu Ping Hu <yph@google.com> Convert Mailbox syncInterval column to boolean.

We are no longer doing per-mailbox sync intervals; instead,
mailboxes opt in to syncing, and the account sync interval
controls what happens.

Change-Id: I8ae32ea25079abbb63bb6a6a282bf5c06de73fca
ndroid/emailcommon/provider/Mailbox.java
6f2beeb59ae75ee26c78d99ded532acd87e1ff97 20-Jun-2013 Yu Ping Hu <yph@google.com> Add "account only" periodic sync for push accounts.

EAS push only gets changes to the contents of collections,
but not for changes to accounts or folder structure. This
adds a new sync type to fetch only accounts, and adds a
periodic sync of this type for push accounts.

Change-Id: I1e9337252dbb5e53db3f7c5953e089de2c69d18c
ndroid/emailcommon/provider/Mailbox.java
e7ebb5de04e2419763459883f37f45ee0d27e4c7 20-Jun-2013 Yu Ping Hu <yph@google.com> Remove references to deprecated sync states.

Change-Id: Ib22bac766fb0ac4d6e764ee92b56a8026baee852
ndroid/emailcommon/provider/Mailbox.java
aa0ca16a27e4a56a029e5cdebf96de5723bd84b6 18-Jun-2013 Yu Ping Hu <yph@google.com> Remove references to account mailbox.

Exchange implementation no longer uses them.

Change-Id: I221a914f2428c0c7989f79392ca82f7a8f4b1c52
ndroid/emailcommon/provider/Mailbox.java
21b2522d7f6b2bce8fc3382e6e532d4b4df1b140 14-Jun-2013 Yu Ping Hu <yph@google.com> Remove auto sync windows.

Also includes other DB upgrade code.

Bug: 8668336
Bug: 9226612

Change-Id: Id9664fd8cda466ec34862a793e41cbcce78efb4c
ndroid/emailcommon/provider/MailboxUtilities.java
ndroid/emailcommon/service/SyncWindow.java
560bfadc3151f7a06f3b06e9a6c92cfa534c63ec 26-May-2013 Scott Kennedy <skennedy@google.com> Unify LogTag

There is now only one LogTag class. The static initializer of
GmailApplication (existing) and EmailApplication (new) will now set
the log tag to "Gmail" and "Email", respectively. Up until that code
is run, it will be "UnifiedEmail".

"setprop log.tag.Gmail VERBOSE" (or .Email) will trigger all logs to
be printed as long as they go through LogUtils, regardless of what tag
is used by that individual log. This lets us still turn on logging
everywhere in one command, but also lets us use more descriptive tags
(like the class name).

And since we no longer have three com.android.mail.utils.LogTag
classes, builds will be much easier.

Also, we now use LogUtils everywhere.

Change-Id: I55f1c7a66ce50ead54877a13e40256422a56dc39
ndroid/emailcommon/Device.java
ndroid/emailcommon/Logging.java
ndroid/emailcommon/VendorPolicyLoader.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/provider/MailboxUtilities.java
ndroid/emailcommon/service/EmailServiceCallback.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/ServiceProxy.java
ndroid/emailcommon/utility/AttachmentUtilities.java
ndroid/emailcommon/utility/EmailClientConnectionManager.java
ndroid/emailcommon/utility/LoggingInputStream.java
ndroid/emailcommon/utility/SSLUtils.java
ndroid/emailcommon/utility/Utility.java
6be411edd0ef5a1fb357d90c7fee22de83632be5 05-Jun-2013 Andrew Sapperstein <asapperstein@google.com> Refactoring to support eml viewer in UnifiedEmail.

Moved two files out of Email into UnifiedEmail and
removed their dependencies on EmailContent. As a result,
those classes now return the data directly via a data only
class.

Change-Id: Iaf0618dd6879c9dc2a41943d3d15428904b65768
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/ConversionUtilities.java
ndroid/emailcommon/utility/TextUtilities.java
91973256c283ebc409398bf2cfd747b978bb7b03 01-Jun-2013 Andrew Sapperstein <asapperstein@google.com> Moved code out of emailcommon to UnifedEmail.

This CL is mostly just deletion since the new code
is in a new project.

Change-Id: I4aee519187a6ed7514c97d2a7a85ed29ea29d25f
ndroid/emailcommon/TempDirectory.java
ndroid/emailcommon/internet/BinaryTempFileBody.java
ndroid/emailcommon/internet/MimeBodyPart.java
ndroid/emailcommon/internet/MimeHeader.java
ndroid/emailcommon/internet/MimeMessage.java
ndroid/emailcommon/internet/MimeMultipart.java
ndroid/emailcommon/internet/MimeUtility.java
ndroid/emailcommon/internet/TextBody.java
ndroid/emailcommon/mail/Address.java
ndroid/emailcommon/mail/AuthenticationFailedException.java
ndroid/emailcommon/mail/Body.java
ndroid/emailcommon/mail/BodyPart.java
ndroid/emailcommon/mail/CertificateValidationException.java
ndroid/emailcommon/mail/FetchProfile.java
ndroid/emailcommon/mail/Fetchable.java
ndroid/emailcommon/mail/Flag.java
ndroid/emailcommon/mail/Folder.java
ndroid/emailcommon/mail/MeetingInfo.java
ndroid/emailcommon/mail/Message.java
ndroid/emailcommon/mail/MessageDateComparator.java
ndroid/emailcommon/mail/MessagingException.java
ndroid/emailcommon/mail/Multipart.java
ndroid/emailcommon/mail/PackedString.java
ndroid/emailcommon/mail/Part.java
ndroid/emailcommon/service/SearchParams.java
ndroid/emailcommon/utility/Utility.java
c28347552e543b2fc04c922336ddca75221a1eef 24-May-2013 Yu Ping Hu <yph@google.com> Handle redirection during validation.

This allows the validator to tell the app that
it should use a different host.

Change-Id: Ie42c32aa7aea83e4d95d2b82b88225036b2407a9
ndroid/emailcommon/service/EmailServiceProxy.java
0d5e21d0fcd337cecce929a3b1bdb0b8b5871b2c 18-May-2013 Yu Ping Hu <yph@google.com> Read protocol version from validation bundle.

Exchange used to just re-check version on first sync.
Version is known during validation so might as well use it.

Change-Id: I004fe671a1ad30a7cfe0a0659b74b20ee2136771
ndroid/emailcommon/service/EmailServiceProxy.java
7c3f85885c767b58eaa4dbbc8e8339bd567b73eb 09-May-2013 Yu Ping Hu <yph@google.com> Changes to support cleaving sync out of ExchangeService.

Change-Id: Idbfff4ddc8fca4829228d04816d40a4ab9639382
ndroid/emailcommon/internet/Rfc822Output.java
f55972ecd838f7362837070248ad5ca5abaa2af8 08-May-2013 Yu Ping Hu <yph@google.com> Add more sync status callbacks.

Change-Id: I77e8b122474d5240ad5aaed7556471263a05e6de
ndroid/emailcommon/service/EmailServiceStatus.java
71737836e6be308f752cb95c955a03146b039a9c 03-May-2013 Yu Ping Hu <yph@google.com> Add call for sync status updates to UI.

Change-Id: Ib91284b423cf88e8feac3b40d13627d26ccc7de7
ndroid/emailcommon/service/EmailServiceStatus.java
9e7f5a2a33a31ff392d3116f6432b2f93ffe8e71 25-Apr-2013 Yu Ping Hu <yph@google.com> Use system SyncManager for Exchange.

Change-Id: I77e4e75c94c532d22a28cf97e6f55f1259b8bdde
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/service/EmailServiceProxy.java
503cc0630d54de430a97f6013c6c7b7e851e343d 19-Apr-2013 Yu Ping Hu <yph@google.com> Stop using ContentCache and related caches.

Bug: 8655671
Change-Id: I349ce464b5d752b3ac687852dbce4f0b57e04c67
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Mailbox.java
7dd26feaea3b6c30339ec10720ebc481fe843cc0 11-Apr-2013 Yu Ping Hu <yph@google.com> Merge "Improve mailbox sync and load more." into jb-ub-mail-ur9
17d5bbf768c27ac7782b155e2ab25bcd480f5dcf 05-Apr-2013 Yu Ping Hu <yph@google.com> Improve mailbox sync and load more.

- Update syncTime for IMAP and POP whenever we sync.
- Change load more to simply include the delta in the RPC
rather than using the visibleLimit column.
- Add a query to get the message count for a Mailbox.
- Refactor code for updating totalCount and determining
the new message count when syncing.
- Remove dead code from Mailbox.
- Remove uses of visibleLimit from code.

Note that visibleLimit and messageCount in Mailbox table are
no longer useful and will be removed in a later change.

Bug: 8579767
Bug: 8523146
Change-Id: Ieb67e3b6f1c82c3b21b972c5a1e557cd75dc21db
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
69ef2b22ff6c5dcce78423ef502d14f841b04fed 11-Apr-2013 Paul Westbrook <pwestbro@google.com> Fix TempDirectory initialization

The proxy for local services were not intializing the TempDirectory.

Also, move the TempDirectory initialization out of the try/catch block.
Otherwise if Device.getDeviceId threw an exception, the temp directory
wouldn't be initialized

Bug: 8531456
Change-Id: Iea34e0b03203d6c6fe6e5d1ae9902d081bd90c27
ndroid/emailcommon/service/EmailServiceProxy.java
1389f0ed03696a4be4891ce1247867a5dec6b08c 06-Apr-2013 Yu Ping Hu <yph@google.com> Merge "Add virtual mailbox for all unread messages." into jb-ub-mail-ur9
c065e72819fad62c083fd97e8d300a6b8e78a7ae 05-Apr-2013 Yu Ping Hu <yph@google.com> Add virtual mailbox for all unread messages.

Also restores the trash icon. I'm not using the "correct"
icon -- it's the menu icon, not a folder icon -- but it
looks correct. Also, the "unread messages" icon is likewise
the menu icon for mark unread.

Bug: 8527132
Bug: 8444885
Change-Id: I7d3bc286f80f130e6f08ff1340a013d81700406e
ndroid/emailcommon/provider/Mailbox.java
156163cceb5f56bb53e88e68d4e79bd5c076797f 05-Apr-2013 Paul Westbrook <pwestbro@google.com> Prevent NPE

cherry-pick of https://android-review.googlesource.com/#/c/45703/

Change-Id: I8d6984d90365d6bc3e9f102285a06ac9c32a98d4
ndroid/emailcommon/provider/Account.java
c5c9c1c69e206b7632848a2535363693263f7fc9 03-Apr-2013 Yu Ping Hu <yph@google.com> Restore functionality for uploading new messages.

The code for syncing new messages from client to server
somehow never got moved from Email1 to Email2.

This change also includes minor cleanup on system mailbox
flags.

Bug: 8531552
Change-Id: I1f9396635ba14cb6e641d2bc1b506c6d702f6b2e
ndroid/emailcommon/provider/Mailbox.java
5a3aebbd2dd8cdd4d7c1a76ce3085cd6a314c0d0 22-Mar-2013 Paul Westbrook <pwestbro@google.com> Fix problem with sending attachments in Exchange

The problem was that when the attachment was attempted to be opened
from the Exchange process, it didn't have access to the cached file.
Instead, use a content provider uri to reference the cached file.

Bug: 8400456

Change-Id: I80abd66642e938cf09f73bf0e9bd049aa8d7ba1d
ndroid/emailcommon/internet/Rfc822Output.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/Utility.java
9ae81e2af07219bfad26c882516343e83c16d926 15-Mar-2013 Yu Ping Hu <yph@google.com> Move system folder string resources to emailcommon.

This permits us to move shared code for looking up system
folder names to emailcommon, which is also in this change.

Also renames emailcommon2 to emailcommon.

This is part of a multi-project submit with
I4a071a07c3e33aaa4ea404eb66a8db1eabc9ef0e and
I5746c0353783f9b29d52d6540472588c6542a6a2.

Bug: 8383232

Change-Id: I6c6eec4f1bcf2abd54c1ed05da1add8d894ee403
ndroid/emailcommon/provider/Mailbox.java
8e2c4056caffb9695fa7fdf3a90c1c4f056adb97 14-Mar-2013 Yu Ping Hu <yph@google.com> Clean up dead code. Should be a no-op for functionality.

Also includes a fix for saving a draft that's already
been saved (used to create a new one).

The following were unused:
- accountIdAddToField
- mailboxIdAddToField
- uisendmail
- uisavedraft
- uiupdatedraft
- uisenddraft

Deleting those also allows us to remove the translation
from the Bundle used by calls to the ContentValues used by
update (since the update paths are now gone).

Change-Id: I87f2875e3272177a128a8ff65541e51b1f2d05fc
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Mailbox.java
ae171be33637564d2aca12a00f416dc9f32c895f 13-Mar-2013 Paul Westbrook <pwestbro@google.com> Log when there are an unexpected number of attachments

Bug: 8373916
Change-Id: I89c4e754648e59855b153d31e59afe560360fd9c
ndroid/emailcommon/provider/EmailContent.java
4da36412922f19e63638c593537a2bf64ab57bd8 28-Feb-2013 Yu Ping Hu <yph@google.com> Clean up ServiceProxy.

ServiceProxy had more layers of threads than needed,
and also had out of date comments.

Change-Id: I0b9de4eeb9ba4b84b8e058279adff5172941a8d0
ndroid/emailcommon/service/ServiceProxy.java
9a95253846ccc7a94dd7d4c618ec2d808e2a4000 23-Feb-2013 Paul Westbrook <pwestbro@google.com> Cache attachments on send

Cache attachments in a email directory when sending to allow sending
to succeed when the content provider has a permission

Bug: 7381557
Change-Id: Icf9faead2048de237228625f998b42feade48978
ndroid/emailcommon/internet/Rfc822Output.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/AttachmentUtilities.java
ndroid/emailcommon/utility/Utility.java
b34608228f0b55e401415b67b8150ca9e00cee7d 11-Dec-2012 Scott Kennedy <skennedy@google.com> Move notifications to UnifiedEmail

This involves redoing the persistence model, to split general,
account, and folder settings into separate SharedPreference stores.

It also requires some preferences to be moved into UnifiedEmail.

Depends on Ibe2e3f93ec164370535ffc5f5b2409544cc8d36d (UnifiedEmail)

Change-Id: Ie6ec389b5b5d2e7ab1b299d0877811ae716526e2
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/service/ServiceProxy.java
ndroid/emailcommon/utility/Utility.java
f9997921cbea7feb13bbbd897e2f179494e5400e 29-Nov-2012 Scott Kennedy <skennedy@google.com> Change Email vibrate setting from tri-state to checkbox

Migrate the old value as necessary.
Update the unit tests.

Cherry-picked from I1c276ffde3496cbc66846ed4a007088d39f20382 with
minor changes.

Bug: 7624838
Change-Id: I1b3fa331b62f556701bacba5ce9cd64305d9b52a
ndroid/emailcommon/provider/Account.java
54347010fbbdd3ae1dea5b0e282514c640e16a5f 22-Sep-2012 Marc Blank <mblank@google.com> Allow legacy imap to sync

* Remove old (and dangerous) constants

Bug: 7210754
Bug: 7212263

Change-Id: I6a1463a653c5c4823a96c9fbb9ca37e53a45b48a
ndroid/emailcommon/provider/HostAuth.java
733a11467cc681d956eef9c5e98695f84743c39b 21-Sep-2012 Marc Blank <mblank@google.com> Add id to HashCode equals()

Change-Id: Ibe5d8cbfb88884e38505d9daf0b413730e1fb333
ndroid/emailcommon/provider/HostAuth.java
b203b2b1196bfd5507c83a4fe81d362de840ec0a 19-Sep-2012 Marc Blank <mblank@google.com> Remove useless class and crazy UIDL logging

* The logging makes it very difficult to debug POP3 issues

Change-Id: Ic3ffb9e5b3240918dff3e713fc2a7c49976efe84
ndroid/emailcommon/mail/Transport.java
47925465841af09b60fff7027132ceacec2933b7 15-Sep-2012 Marc Blank <mblank@google.com> Don't delete smart-forward attachments

Bug: 7115207
Change-Id: I3f0782a01e9faa83834e5abbaf40cdb2ac0f8718
ndroid/emailcommon/utility/Utility.java
be84c68beb233d82883b8f7ab688fd03b229d14b 13-Sep-2012 Marc Blank <mblank@google.com> Use correct test for updating attachment contentUri

Bug: 7146143
Change-Id: I594c1348f52b9912074f533faece4d0cbf521fbb
ndroid/emailcommon/provider/EmailContent.java
74c79a50432fcbf127fbfeadc1a461263ea92135 11-Sep-2012 Marc Blank <mblank@google.com> Modify intent names

Change-Id: Iad8b4842056a7f553363f9af47e65665c2b26a5d
ndroid/emailcommon/service/ServiceProxy.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
ndroid/emailcommon/internet/Rfc822Output.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/AttachmentUtilities.java
ndroid/emailcommon/utility/Utility.java
26164054710375519ba7468987971a7a3340ba7e 06-Sep-2012 Marc Blank <mblank@google.com> Improve trash folder picker upon account creation

* Use setup intent uri
* TODO: More cleanup

Bug: 7077441

Change-Id: Ieab5b0ed33b73b7a0e9012aedd6becf867db1566
ndroid/emailcommon/provider/Account.java
5abccf703558c31b93ab800b35ed08c0a3044a19 03-Sep-2012 Marc Blank <mblank@google.com> Fix Imap mail sending

Bug: 7100165
Change-Id: I0922311dce1d5e18c7332eb4e1edccfdb2d2069b
ndroid/emailcommon/provider/EmailContent.java
b82ae909d7514bf06090ee3a120aef2154ab0296 24-Aug-2012 Marc Blank <mblank@google.com> Add support for "load more" for Imap2

* Use new attribute in services.xml to indicate support
* Initial implementation

Change-Id: Ia8709d606d521c6d495c343a47ee074b5024d340
ndroid/emailcommon/service/IEmailService.aidl
e714bb9d153cfe13a7f0932e7d67ea08fa5a1d98 23-Aug-2012 Marc Blank <mblank@google.com> Convert authorities, intents, and account manager types

* Tested ok on wiped Nexus
* Tested ok on S3
* Upgrade verified on Nexus

Change-Id: If5d4ce594f8a309cdb59589d10b1d33f3b79326c
ndroid/emailcommon/AccountManagerTypes.java
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/provider/Policy.java
ndroid/emailcommon/provider/QuickResponse.java
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/ServiceProxy.java
ndroid/emailcommon/utility/AttachmentUtilities.java
77d166b8d1a12b898186d6f1c654e077c13301cb 20-Aug-2012 Marc Blank <mblank@google.com> Allow writeTo to accept a list of attachments to send

* The default is to send all attachments, of course, but with
smartSend, we need to exclude the original ones or they will
be duplicated
* Another CL in Exchange is required to fix the bug

Bug: 7005505
Change-Id: I0e8bab2fb53dd4d60c82f2ef9a525ff7b015f2eb
ndroid/emailcommon/internet/Rfc822Output.java
0e969171bb32050e845412fb51bc856bf8a2c954 16-Aug-2012 Marc Blank <mblank@google.com> Update client connection manager w/ bdc fix in AOSP branch

Bug: 6838215
Change-Id: I39a2ea0b54aca34062e1a2ccc472e701c3ef2f79
ndroid/emailcommon/utility/EmailClientConnectionManager.java
970fe5316b54cf6b60dbe9122e744eaa31772e10 04-Aug-2012 Marc Blank <mblank@google.com> Progress updates for POP3 message downloads

* Also, handle MessagingException when doing STAT

Change-Id: I5267b64f18a84fcc97fc2d003e49d4e373ea02c5
ndroid/emailcommon/internet/MimeMessage.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
ndroid/emailcommon/internet/MimeMessage.java
ndroid/emailcommon/provider/EmailContent.java
7d5e2a7c08966ffd4a9e8c78f504cc4fd5be4216 01-Aug-2012 Marc Blank <mblank@google.com> Do "same certificate" checking when using "trust certificates"

* Refactor/simplify Transport/MailTransport
* Add serverCert column to HostAuth table in EmailProvider
* During first connection to server, save the server certificate
in the HostAuth; on subsequent connections, ensure that the
certificate presented has the same public key as the one
stored
* For now, we'll just fail to connect (with a CertificateException)
if there's a mismatch

TODO: Add some UI to handle different certificates

Bug: 6888866
Change-Id: Ia79497e89eaad8d43617b50d3771121b2ed7f687
ndroid/emailcommon/mail/Transport.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/utility/EmailClientConnectionManager.java
ndroid/emailcommon/utility/SSLUtils.java
dba0b20d955d88831ce94d96dbdadc49dba4761a 27-Jul-2012 Marc Blank <mblank@google.com> Handle ALERT response to login command

* Allow AccountService loginFailed API to take a reason string
* Present the reason string in the dialog shown from the login
failure notification
* Handle ALERTs in IMAP login responses (for example, some servers
will occasionally require web login and we need to inform them,
rather than simply saying the password is wrong)
* This fixes a longstanding bug in our Imap1 implementation

Change-Id: I8b270cd5d4746559b6c8a78bce02f0e7c525bdea
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/IAccountService.aidl
0b5f15d61ebf7c0e8428100637bc479ed93a4cb2 25-Jul-2012 Marc Blank <mblank@google.com> Make sure account capabilities get set properly in UIProvider

* Change getCapabilities API to take an account, rather than
the id of the account
* getCapabilities() can therefore execute even before Exchange
is fully up and running

Change-Id: Id4c2a9942ea7a21e0c56401c50206b680274b43e
ndroid/emailcommon/provider/Account.aidl
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/ServiceProxy.java
00287c4d8f54ae07c89bb3893f440acdca09d728 20-Jul-2012 Marc Blank <mblank@google.com> Remove unused code; rename some constants

* Also handle large batch operations in chunks

Change-Id: Ie566cb8d8bb73e8edd663de5228e905c223f031b
ndroid/emailcommon/provider/EmailContent.java
a8b683cf3f2efe726220c0235368cf6ea899e3ba 18-Jul-2012 Marc Blank <mblank@google.com> More work on Imap2

* Handle sending mail and moving to sent folder
* Implement picker for sent folder
* Upload sent items to server
* Add support for "automatic" sync window
* Move some files from Email -> emailcommon
* The added files are copied directly from Email (and can be
removed if/when Imap2 is merged back with Email)

Change-Id: I3a6a3d224826e547748be2f1b567b6294ad5db89
ndroid/emailcommon/mail/Transport.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/CountingOutputStream.java
ndroid/emailcommon/utility/EOLConvertingOutputStream.java
c6089bc01f2ae49fb11904a4b4f222811358254f 29-Jun-2012 Marc Blank <mblank@google.com> Initial Imap2 implementation

This CL includes the following:
* New Imap2.apk generation (not included in builds)
* "Push IMAP" option for accounts when Imap2.apk present
* Account creation/setup
* 2-way sync of messages, deletions, flag updates
* Push (messages, flags)
* Folder list hierarchy handling
* Message text (one plain or html part)
* Picker UI for trash folder (placeholder)
* Capabilities handling/UI command

Major Imap2 new features:
* Push
* Multiple folder sync
* Sync window (like EAS)

TODO:
* Picker UI for sent folder
* Upload of sent messages to server
* Search
* Multiple viewable parts
* Probably lots more, incl. unit tests

Change-Id: Ia5d74073d9c307e0bdae72a7f76b27140dde7d14
ndroid/emailcommon/VendorPolicyLoader.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/MailboxUtilities.java
ndroid/emailcommon/service/EmailServiceCallback.java
ndroid/emailcommon/service/SyncWindow.java
f419287f22ae44f25e1ba1f757ec33c7941bbfa8 28-Jun-2012 Marc Blank <mblank@google.com> DO NOT MERGE: Move emailcommon2 sources to emailcommon

Change-Id: I06df7e467cd2e0117df8b8db3ddc6ff9da13f1c7
ndroid/emailcommon/Api.java
ndroid/emailcommon/CalendarProviderStub.java
ndroid/emailcommon/TrafficFlags.java
ndroid/emailcommon/internet/MimeUtility.java
ndroid/emailcommon/internet/Rfc822Output.java
ndroid/emailcommon/mail/Address.java
ndroid/emailcommon/mail/MeetingInfo.java
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/provider/Policy.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/IEmailServiceCallback.aidl
ndroid/emailcommon/service/IPolicyService.aidl
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/SearchParams.java
ndroid/emailcommon/utility/AttachmentUtilities.java
ndroid/emailcommon/utility/EmailClientConnectionManager.java
ndroid/emailcommon/utility/TextUtilities.java
ndroid/emailcommon/utility/Utility.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
ndroid/emailcommon/mail/Address.java
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/provider/Policy.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/IEmailServiceCallback.aidl
ndroid/emailcommon/service/IPolicyService.aidl
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/SearchParams.java
ndroid/emailcommon/utility/TextUtilities.java
ndroid/emailcommon/utility/Utility.java
e2166f75486da0a1b70b804ea34f11f600f11cfd 11-Mar-2012 Marc Blank <mblank@google.com> Add totalCount to Mailbox; send to UIProvider

Change-Id: If01868eb27a97540683f25148f32b8c41ae59c17
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
55d0e821eaecb5e454812a30c1137dbc95db98e2 09-Mar-2012 Marc Blank <mblank@google.com> Report search result total to UI

Change-Id: Ic88e7594b98548a96c8c6f96d2f8a585e539f520
ndroid/emailcommon/service/SearchParams.java
ebb79619e8ed3c9f0c051e7f323e3971bce7508d 09-Mar-2012 Marc Blank <mblank@google.com> Move account delete logic to EmailProvider

* This functionality had to move away from Controller

Change-Id: I557918a325eab8c83a9728fa1ce33dde8b86158f
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Mailbox.java
06a382f26fe80931359dba4872a2563e6a8e5732 08-Mar-2012 Marc Blank <mblank@google.com> Fix up delete to handle trash/drafts deletions

* Also, while we're here, create default "last touched time" for drafts and
sent so that they appear in the initial recent list

Change-Id: Ie2fe20b34625b5616dac5581f9bbd015f52a82bc
ndroid/emailcommon/provider/Mailbox.java
70bbe5ec3cabfc711cf4486318a04bb18e34ebf3 07-Mar-2012 Marc Blank <mblank@google.com> Add columns to Attachment for UIProvider use

Change-Id: I7f85431f409dbd6a5bd6d111b18d1fc89c00b9b2
ndroid/emailcommon/provider/EmailContent.java
54c26f9d32cf409f32c8e666e70fba1d56ff702b 05-Mar-2012 Marc Blank <mblank@google.com> Improve hashCode() for Address

Change-Id: Ifa15e57d8b7ff83511aab853dc0a5da1eb14892d
ndroid/emailcommon/mail/Address.java
0ba6b91842955635e1e927afe8836458af4aee4e 03-Mar-2012 Marc Blank <mblank@google.com> Give Address a hashCode() method

Bug: 1858468

Change-Id: Ic91292c7ab7cf8b42cdecd54fa2d4faf91b2ff4d
ndroid/emailcommon/mail/Address.java
9a5e2a798e11b666670281d64c1039483ad60546 26-Feb-2012 Marc Blank <mblank@google.com> Fix clearing of mailbox notifications

Change-Id: Ieb98a8908ec067229dd449790da55085585ef17b
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/Utility.java
bf5caf97c547c8fa4bbdc2b500e8d43ee6322fcf 24-Feb-2012 Marc Blank <mblank@google.com> Notify by mailbox, rather than account

* Update EmailProvider, removing two no-longer-used columns in Account and
Mailbox

Change-Id: Ie0f10eb0ca315d73e82be968f7760a51a239ba3f
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/utility/Utility.java
272d22d64137c7cd680ea0e77bd3b9480c4f1473 23-Feb-2012 Marc Blank <mblank@google.com> Add last sync result definitions to EmailContent

Change-Id: I43ea9a9ed3e1982610443887298d54654deb01b8
ndroid/emailcommon/provider/EmailContent.java
1dc7772d4313bec45af4a4d7609bc36f6e3a247b 22-Feb-2012 Marc Blank <mblank@google.com> Support syncStatus and lastSyncResult in EmailProvider

* Also, trigger a sync on refreshUri

Change-Id: Ia8dee593decfc2101873071ad64fcc3fd1fd5f23
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
4f813fb12937de74d3ccec730b8de0c9de7a87e0 14-Feb-2012 Marc Blank <mblank@google.com> Convert POP3 to service

* Remove MessagingController and (almost all of) MailService

Change-Id: I8953b58b237de6a71fda770f1727bd94081fec55
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
c84467afe1b5e0a657ed7d6a9fa1e3fe1ff259a0 09-Feb-2012 Marc Blank <mblank@google.com> Start of IMAP conversion to Service architecture

* Handle startSync and loadMore
* Use SyncManager rather than MailService for periodic sync
and upload sync
* First of many CL's to disentangle sync from UI
* Note that the large majority of this CL is a refactoring
of IMAP specific code out of MessagingController and into
ImapService; MessagingController will eventually be
removed entirely from the app, as will much of Controller

Change-Id: I13546d0694479b33cf93c25920dedc1d38227f6c
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailServiceCallback.aidl
87d7a604172d0e15454e8b615b163377e67050c1 02-Feb-2012 Marc Blank <mblank@google.com> Handle update of draft

Change-Id: I15c2b2b85afeff19e4ae7520c36a6119ab1e5cca
ndroid/emailcommon/provider/EmailContent.java
36ed276f7a97529d5ffdd42d4e9a89ce14d8a2f9 17-Jan-2012 Marc Blank <mblank@google.com> Store UI-friendly addresses in EmailProvider database

* Currently, we store a generally incompatible packed string format
for to, from, bcc, cc, and reply-to columns
* Change this to UI-compatible, comma-separated RFC822 strings
* Upgrade database to use new format

Change-Id: I42c01d72b49531c4324d3956edf5ff362d5c9120
ndroid/emailcommon/mail/Address.java
fd81e1977954a710cd3630ef3a9ab6aebff1094c 21-Nov-2011 Marc Blank <mblank@google.com> Don't save Policy with Account

Change-Id: Ib3601daee8780640a07db573f623e99279c9f9b1
ndroid/emailcommon/provider/Account.java
f20f3e216f90bb3c5e3be2e2c5ef77d9bc6e9935 03-Nov-2011 Andy Huang <ath@google.com> am 56d6f4a6: Merge "Style cleanup in email message header to make it more like Gmail" into ics-mr1

* commit '56d6f4a6f13b53051d17579c54cebe0372515f3d':
Style cleanup in email message header to make it more like Gmail
358a8157015c7cfe9ca219a9f516656f5975666d 02-Nov-2011 Andy Huang <ath@google.com> Style cleanup in email message header to make it more like Gmail

Linkify email addresses in expanded message details
Remove divider line in upper header on phone
Embolden sender name
Twiddle expanded details line spacing and padding to match Gmail
Add space char to collapsed details recipient enumerator (comma)

Bug: 5520692
Bug: 5520787
Change-Id: Iad4a265168d111aa01654a33a9a14f7968fc3181
ndroid/emailcommon/mail/Address.java
4317ff162ef623cb40c33fc96946f57ade8b2256 02-Nov-2011 Marc Blank <mblank@google.com> am dea198bb: Add utility to determine if account can\'t auto-sync due to roaming

* commit 'dea198bb041754745c3b1522671fd31a79c7168c':
Add utility to determine if account can't auto-sync due to roaming
af9e4ef82eaf241f0c588a2b726a45f38c6fcc76 02-Nov-2011 Mindy Pereira <mindyp@google.com> am ddcb0db4: Merge "Revert "Add utility to determine if account can\'t auto-sync due to roaming"" into ics-mr1

* commit 'ddcb0db429df71356360b2224b56b01b7051c34c':
Revert "Add utility to determine if account can't auto-sync due to roaming"
6638627595633a92c4d3034b5ee2299d3b2df83d 02-Nov-2011 Marc Blank <mblank@google.com> am 483f4927: Merge "Add utility to determine if account can\'t auto-sync due to roaming" into ics-mr1

* commit '483f49274e0aed3d4158ac6c2ba9fd693acb2809':
Add utility to determine if account can't auto-sync due to roaming
dea198bb041754745c3b1522671fd31a79c7168c 01-Nov-2011 Marc Blank <mblank@google.com> Add utility to determine if account can't auto-sync due to roaming

* We need to call this out to the user (a surprised user is an
unhappy user)
* Required for fix to bug referenced below

Bug: 5533550
Change-Id: I64a870a703de7e02ce882aefc3636a1668021eb8
ndroid/emailcommon/provider/Account.java
ea4adf0c6bbed52fbe26e7a9be439cb5ff06b9dd 02-Nov-2011 Mindy Pereira <mindyp@google.com> Revert "Add utility to determine if account can't auto-sync due to roaming"

This reverts commit 95abeed64aaf8f597d99b654760ec2c0b5024dc0
ndroid/emailcommon/provider/Account.java
95abeed64aaf8f597d99b654760ec2c0b5024dc0 01-Nov-2011 Marc Blank <mblank@google.com> Add utility to determine if account can't auto-sync due to roaming

* We need to call this out to the user (a surprised user is an
unhappy user)
* Required for fix to bug referenced below

Bug: 5533550
Change-Id: I7da337057b9b28300ddd485283920e12c1ae53da
ndroid/emailcommon/provider/Account.java
2736c1a11ce3ecdcd9d19aa9c324fb9ce0910c7b 20-Oct-2011 Marc Blank <mblank@google.com> Rewrite of security policy handling and service code

* Remove PolicyService APIs policiesRequired, policiesUpdated,
isSupported, clearUnsupportedPolicies, and isActiveAdmin
* Add PolicyService API setAccountPolicy, which is the sole
method by which security policies are promulgated
* Add protocolPoliciesEnabled and protocolPoliciesUnsupported
to the Policy class; these are packed, localized strings
indicating policies that the protocol itself have enabled
and/or cannot support (i.e. these are policies that are
unknown to the DPM, e.g. don't load attachments)
* Differentiate in security notifications between three kinds
of policy changes - changes that don't require user
intervention (e.g. reducing requirements), changes that
require user intervention (the legacy notification), and
changes that make the account unsyncable (e.g. the server
adding an unsupportable policy). Handle all possible policy
changes cleanly.
* Make security notifications per account (with multiple
accounts, notifications would get arbitrarily munged)
* Expose ALL enforced policies via the account settings
screen in two categories: policies enforced (including
both policies enforced by the DPM and policies enforced
by the protocol) and policies unsupported (note that these
can only be seen if policies are changed after an account
is created; we do not allow the creation of an account
when any required policies are unsupported). Add a
button that forces a sync attempt, for accounts that
are locked out, but whose policies have changed on
the server (this would otherwise require a reboot).
* Updated unit tests

Bug: 5398682
Bug: 5393724
Bug: 5379682
Change-Id: I4a3df823913a809874ed959d228177f0fc799281
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Policy.java
ndroid/emailcommon/service/IPolicyService.aidl
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/utility/TextUtilities.java
0ff0e155c51250bedc35b5b585003c8cb87f2244 21-Oct-2011 Marc Blank <mblank@google.com> Fix findExistingAccount to treat underscore properly

Bug: 2318959
Change-Id: Ia39ed29084dc8111c61ff552fa65519789b7c23a
ndroid/emailcommon/utility/Utility.java
223267f7019b97d14cc18158f57ddf05d07361ab 13-Oct-2011 Ben Komalo <benkomalo@google.com> Merge "Fix per account starred mailboxes."
513486cfb5d446f098b1c97d16932e51e316d1a7 13-Oct-2011 Ben Komalo <benkomalo@google.com> Fix per account starred mailboxes.

We always switched to combined view when we tapped "Starred" in a
mailbox list. This was confusing since tapping to show the mailbox list
will take you to the mailbox list for the combined view, even if there's
only one account on the device! Other confusing things happened like
showing coloured account chips, even if there's only one account.

This fixes it so that we pass the account ID when building the
selection. Lots of wiring to make it happen, but very little change
overall.

Bug: 5388326
Change-Id: I1fe52f211cceca0c1b26581e200f3c7adcd0734a
ndroid/emailcommon/provider/EmailContent.java
4d3f3f3ab95c03d4c1ab308801b92ba1d9df2276 12-Oct-2011 Ben Komalo <benkomalo@google.com> Fix hostname verifier for Exchange connections.

When the socketfactory init code was moved, I forgot to re-add in the check
to skip hostname verification. This made "Trust all SSL certificates"
checkbox useless.

Bug: 5450563
Change-Id: Ie4cba749aaf8c0fd9f9c43f09ebf354c6600d4f0
ndroid/emailcommon/utility/SSLUtils.java
71c9683087c348a117a6dd9c6f6eab96cbc46139 30-Sep-2011 Marc Blank <mblank@google.com> Improve policy logging

Change-Id: I023b7c5302ea00ab77edd697009fb00544951a80
ndroid/emailcommon/provider/Policy.java
b169192c8a59f8b61b019c80fda2183194ac5c00 06-Sep-2011 Marc Blank <mblank@google.com> Update account object in Policy#setAccountPolicy

* We weren't updating the account object passed in to setAccountPolicy,
which is problematic if the object is cached and used subsequently
in the code (it would have stale policy values)

Bug: 5245056

Change-Id: I279570dfd66c4a65d751f73e2e56578be186d339
ndroid/emailcommon/provider/Policy.java
c28fdfeaaddbd7d3f3b8f78895303f7a9ae5a521 30-Aug-2011 Marc Blank <mblank@google.com> Throw RuntimeExceptions when PolicyService calls fail

* Rather than returning false, which can cause unexpected
results, e.g. locking out an account until reboot
* Partial fix for the referenced bug (there might be other
causes)

Bug: 5221119
Change-Id: I5b47093a3411deb6995624887197297323db0d2d
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/ServiceUnavailableException.java
185fd5b3b8251858f0cfad0c180eefebcb38b801 25-Aug-2011 Marc Blank <mblank@google.com> Restore return statement erroneously deleted earlier

* Screwed up in I1f6e31bfd2e7c32bdd7886e54b02fd4640a96e6f

Bug: 5205488
Bug: 5203883
Change-Id: I619135bd5dd8359b4b0573316482356a9b517865
ndroid/emailcommon/Device.java
1aba472486f4b90284765bbd720b4ff13917f720 20-Aug-2011 Marc Blank <mblank@google.com> Remove unneeded logging from EmailProvider

Change-Id: I229c3044566b6067efb7a8a06c10f41dbea3ad5a
ndroid/emailcommon/provider/Mailbox.java
8b755f600c1a99a0b62eb0497115837f36237d7c 20-Aug-2011 Marc Blank <mblank@google.com> Make sure reconcileAccounts in AccountService is synchronous

* This is important so that callers can know that reconciliation
is complete.

Bug: 5189766
Change-Id: I4fbbaa6506042f975e7ad4e828fe8399c4d4a366
ndroid/emailcommon/service/AccountServiceProxy.java
9ca5751db0f3dd6609c6426f3a8ae59db33a3892 12-Aug-2011 Jorge Lugo <jlugo@google.com> Merge "Add conversationId field to Message"
c01a783cd622ba905c37d54db16c30144af62f72 11-Aug-2011 Jorge Lugo <jlugo@google.com> Add conversationId field to Message

So that exchange can pass along conversationId when
syncing. It's not persisted in the database.

Change-Id: I53d68b27b292b0db0fd808e0deeb28751361f1f4
ndroid/emailcommon/provider/EmailContent.java
a9f1631fb83200a59e40e23ed366f810d08b6f52 11-Aug-2011 Marc Blank <mblank@google.com> Remove STOPSHIPs in Email/Emailcommon

Bug: 5142183
Change-Id: I1f6e31bfd2e7c32bdd7886e54b02fd4640a96e6f
ndroid/emailcommon/Device.java
ndroid/emailcommon/provider/Policy.java
0e6a521747970d5427f10c25cdc070d2341dc93a 08-Aug-2011 Ben Komalo <benkomalo@google.com> Move IntentUtils to emailcommon.

This is needed so Exchange can fire up Email activities.
No change other than the move.

Bug: 5122497
Change-Id: I6ee3f61654745fafd444314ecf75eb8ae6bbd01d
ndroid/emailcommon/utility/IntentUtilities.java
03cb4a2135fce98109290e35093f73941c0dc10d 08-Aug-2011 Ben Komalo <benkomalo@google.com> Merge "Hide sync options and search icon when appropriate"
37a74697164b3e74fb10e0bf51bed7c064b275bc 06-Aug-2011 Ben Komalo <benkomalo@google.com> Hide sync options and search icon when appropriate

- hide sync options for mailboxes that aren't actually syncable
- hide search icon for any mailboxes that don't have any server
counterparts

Bug: 5086134
Change-Id: I60d5e5d1225a946464c5ea273c7d4b9299f433e5
ndroid/emailcommon/provider/Mailbox.java
994343b14bfba216969a9d9e86b53312686f7832 05-Aug-2011 Ben Komalo <benkomalo@google.com> Fix SSL certificate selection for exchange.

- Since the Email and Exchange processes do not share UID, we need to
ensure the call to the KeyChain to request the certificate happens in
the Exchange process
- Misc UI fixes so it's not so ugly

Bug: 5117682
Change-Id: If80698850902e0178eb0998493b4cf4b89e2a15c
ndroid/emailcommon/utility/CertificateRequestor.java
8ba8c1648c38cd339b09501a057fc2f5b0658b10 04-Aug-2011 Marc Blank <mblank@google.com> Prevent leaking ServiceConnection when process/threads killed

Change-Id: Id5d85fbdd0d044a59cc61748432e3f714264bcd5
ndroid/emailcommon/service/ServiceProxy.java
cb1d65c47825dc7a45c7954cd93669296b35305e 26-Jul-2011 Ben Komalo <benkomalo@google.com> Fix mailbox finding and unit tests.

We seemed to not properly fallback to querying the database if the cache
did not contain a mailbox of a specific type. We may want to consider
caching mailboxes related to PIM data, but for now this is a quick fix.

Also fixes unit tests.

Bug: 5019661
Change-Id: Idcac0a6f15aa7f174890ae586f478fbb8f6e05b7
ndroid/emailcommon/provider/Mailbox.java
81a153463bd9d2e4f71a0985a102548b16a88ec0 20-Jul-2011 Ben Komalo <benkomalo@google.com> Remove "Move" action on POP.

Bug: 5010614
Change-Id: If0a94840e9dc104566ba39d2e3240883dab5bba0
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Mailbox.java
aca94265813e72e692eace527f43eb4c02b09c76 20-Jul-2011 Marc Blank <mblank@google.com> Remove NotificationService; use Account columns for data storage

Bug: 5023662
Change-Id: I84df3b474dd6320327851003af985144cc16348e
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
4e4aba9ebc43c6a83190f3a883fa05bb7d5100b3 19-Jul-2011 Marc Blank <mblank@google.com> Clean up account reconciliation

* Move AccountReconciler to the Email app (from EmailCommon)
* Ensure that Controller.deleteAccountSync() performs ALL actions
needed to clean up after an account deletion (delete attachment
files, reset policies, refresh the UI, etc.)
* Add reconcileAccounts() API to AccountService
* Remove accountDeleted() and restoreAccountsIfNeede() from the
AccountService API
* Remove unused callback

Bug: 4883073
Bug: 4767084

Change-Id: I43ffaf009db1a6f306bb0f2a74fb4dd3b2c4b966
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/IAccountService.aidl
ndroid/emailcommon/utility/AccountReconciler.java
e71a19a52313a0fb615700e52a336b65f3c305da 15-Jul-2011 Ben Komalo <benkomalo@google.com> Build default mailboxes for POP3

Bug: 4580535
Change-Id: Ic800eed387d3e9e64e95cce691d13d98b4a48045
ndroid/emailcommon/provider/Mailbox.java
abec4e631ce7de385a707538d2797f4ea8790eff 14-Jul-2011 Jorge Lugo <jlugo@google.com> Merge "Prevent account flip flopping from compose"
4de538be2d17545fb63e781412b8565f0d0d97d4 13-Jul-2011 Ben Komalo <benkomalo@google.com> Prevent account flip flopping from compose

There were two issues:
- the default account ID from the provider wasn't consistent: it was
using a snapshot from the cached data but that simply returns a Map, and
the values aren't guaranteed to be sorted (and indeed I saw that the
order was different on consecutive calls!)
- hitting app up from Compose always just kicked you out to the inbox
for the default account, but it probably should have used the account of
the compose screen, since it can be specified in the Intent

Bug: 5012008
Change-Id: Ic9a753b261e047790453bc1a9417bc0c6d2f87f9
ndroid/emailcommon/provider/Account.java
190b2fb8a1be1d72475e2a60d0f00422712ee094 07-Jul-2011 Marc Blank <mblank@google.com> Add support for TrafficStats; use with IMAP/POP3

* All IMAP/POP3 functionality uses TrafficStats except for
attachment loading (subsequenc CL)

Bug: 4988322

Change-Id: I91d826e0f7151a2101b642c868ab8c37e9660332
ndroid/emailcommon/TrafficFlags.java
ndroid/emailcommon/utility/Utility.java
f4f10a3fdf3fdf94db4780017c4392823942b1d7 01-Jul-2011 Ben Komalo <benkomalo@google.com> Make client certificate requests optional.

This prevents things from always failing if the server requires a client
SSL certificate.

Note that the solution used to determine if a certificate request was
made for a given request is approximate; it is timestamp based and can
theoretically give a false positive. In practice, this is very unlikely,
since another cert request had to have happened around the same time,
AND the response must be a 401/403.

Change-Id: Ieb77cf91db3bd52ba4adf1fb07357fef7e204ba5
ndroid/emailcommon/utility/EmailClientConnectionManager.java
ndroid/emailcommon/utility/SSLUtils.java
025d29fd4b9dd8351fe2e0428a585cf327ddaca4 11-Jul-2011 Ben Komalo <benkomalo@google.com> Fix some missed account setup flags.

There were two places where account flags were being set on setup: one
was in manual setup when the user selected the account type
(pop/imap/eas), and another was when it was automatically determined
from XML. The two paths were inconsistent and one was setting bits like
SUPPORTS_SEARCH but the other wasn't.

This fixes being able to search in IMAP

Bug: 5011932
Change-Id: I50eada7485aaef4e2a85d25fa7eb9ac7ab03093a
ndroid/emailcommon/provider/Account.java
7891106a7d6b4c406792a8a9144e5148e6bf5ddb 06-Jul-2011 Ben Komalo <benkomalo@google.com> Write reply/forward flags on Controller.sendMessage

- also fix some mixups with the actual icon states

Bug: 4947145
Change-Id: Iec1bbfc46ac956a6bf050e4fb162b94ea3c6b316
ndroid/emailcommon/provider/EmailContent.java
745b33b8ff55e9a9c4871f07f9d97db893f784b2 01-Jul-2011 Makoto Onuki <omakoto@google.com> Fix all NoSuchMethodErrors

Change-Id: I05adf2b99c819d6aa2d3b52c52a8c655d9307337
ndroid/emailcommon/mail/Folder.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Policy.java
ndroid/emailcommon/utility/SSLUtils.java
ndroid/emailcommon/utility/TextUtilities.java
2bdf7ee0f0f4a2b11b5f7c0f8b193080600fefd8 01-Jul-2011 Marc Blank <mblank@google.com> Delete orphaned mailboxes/messages/policies at provider startup

Bug: 4972132

Change-Id: Icc756a9e28b77de052261903089b040d229e7b5d
ndroid/emailcommon/provider/Policy.java
8de5bda81594182757c1aa94a65cfb8c7b360b34 30-Jun-2011 Makoto Onuki <omakoto@google.com> Close cursor properly.

Also, don't issue separate query()s for each recent mailbox.

Bug 4977956

Change-Id: I3ccd437a7efd5c3599c4a1952ba091a7b3b815bf
ndroid/emailcommon/utility/Utility.java
0b8e04c84def3a06ef45126b48efc485fa0a7628 29-Jun-2011 Marc Blank <mblank@google.com> More Store cleanup

Change-Id: I8f542175b4468c7a320322a57bfdaf19a7320165
ndroid/emailcommon/provider/Mailbox.java
244d306ebb0addbc5d87008af9412b76c80e861e 29-Jun-2011 Marc Blank <mblank@google.com> Remove more useless code

* Strike another blow for sanity!

Change-Id: Id95b441f9577abda66f04113793d6b1c60500ebe
ndroid/emailcommon/mail/Folder.java
77160c8c08df90c8e9992596197e3438e46d41e5 29-Jun-2011 Marc Blank <mblank@google.com> Merge "Don't cache ImapFolders"
2720a818d5de169734434b114adfdf824a485f55 29-Jun-2011 Marc Blank <mblank@google.com> Don't cache ImapFolders

* ImapFolder is currently very unsafe for use by multiple threads,
causing, among other things, the referenced bug
* Since ImapFolder is very lightweight, there's no particularly good
reason to be caching them anyway
* Rename isOpenForTest to isOpen

Bug: 4972084
Change-Id: I2bf17b9cfc8549a222e991f3e59abfd00a4d3afd
ndroid/emailcommon/mail/Folder.java
50d934360d51392ac2aa6f11de4d6e1446cf78c9 29-Jun-2011 Makoto Onuki <omakoto@google.com> Fix the "onPostExecute executed even when cancelled" issue

Renamed onPostExecute to onSuccess and made sure it won't called
if a task is cancelled in time.

Also removed isCancelled(). To implement it right we should make sure
that onPostExecute() isn't finished when setting mCancelled, but it's a bit
of a pain to implement right, and we don't really have to use it.

Change-Id: I3a0baf504506ffc4952a5553f7098a8415842fa3
ndroid/emailcommon/utility/EmailAsyncTask.java
4a893e60b468e0b67db522c047fa7fab057cfd6f 29-Jun-2011 Makoto Onuki <omakoto@google.com> Switch to EmailAsyncTask

Also remove the isCancelled test in onPostExecute, where it should
never return true.

Change-Id: Ica2b07db22d73769c2ead5f232f4890bd3bb87da
ndroid/emailcommon/utility/Utility.java
6b968c1dce3ba78680d968e04fc6f59bbbb22073 28-Jun-2011 Makoto Onuki <omakoto@google.com> Introducing DelayedOperations

This helps post runnable to the handler and cancel pending runnables
at once.

It'll be used for delay-call methods that initiate a fragment transaction,
and cancel then in onSaveInstanceState().

Change-Id: Ib8bdb0e676e756854ab067a27e5e0f397219a4b4
ndroid/emailcommon/utility/DelayedOperations.java
5cba9c10ac7428287a26c0f322ae4ee14ac9012c 26-Jun-2011 Ben Komalo <benkomalo@google.com> Replace details dialog with expando subheader

Change-Id: I7b0f63b7b5ce7172ac32b8c00891005b9f2e28ee
ndroid/emailcommon/mail/Address.java
d8a2e33998a2959d28441e609e915f7e5ad07b7f 25-Jun-2011 Makoto Onuki <omakoto@google.com> Add debug log to investigate bug 4905749

Change-Id: I1cfe12b0150490ec08caa02332bcca88521ff5fd
ndroid/emailcommon/utility/Utility.java
472d75f1b4471b454b79aab7aea477f0be4fa5bf 24-Jun-2011 Ben Komalo <benkomalo@google.com> Merge "Misc cleanups and avoid logging PII"
9a01353f14f718c5447d6a3dc25b413be0f175d9 23-Jun-2011 Marc Blank <mblank@google.com> New search implementation for IMAP in MessagingController

* Add protocolSearchInfo column to Message table; this can be used
to store information related to search results. For IMAP, we
store the serverId of the mailbox that the message lives in on
the server
* Add upgrade code for this column
* Change MessagingController to use the proper serverId for remote
operations, depending on whether the Message is a search result
or not
* Fix some smaller issues with earlier code

Change-Id: I0c7f1d89a4659b95701d02646c0e8426680e2f6a
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
877b9070fa4d7a6b51ae1f75640a6c23cc86c963 24-Jun-2011 Ben Komalo <benkomalo@google.com> Misc cleanups and avoid logging PII

Change-Id: I9f906dabe0dd00a434ff88878f0639c835b2e2a7
ndroid/emailcommon/utility/SSLUtils.java
53300963ff0d2cefa94a7170bfb4a6418f5b5b17 23-Jun-2011 Ben Komalo <benkomalo@google.com> Save/restore message list context

This fixes opening messages after rotations. Oops.
Bug: 4905495

Change-Id: Ibb9984245f7a040b65d472ad4103da587c28c83b
ndroid/emailcommon/service/SearchParams.java
d12f78d6bac81590f97fc190723865ffe65e5d69 22-Jun-2011 Marc Blank <mblank@google.com> Fix cursor-related errors:

1) Have CachedCursor implement CrossProcessCursor; still need to
figure out how this ever worked
2) Close cursor used internally in findMailboxOfType

Bug: 4869024
Change-Id: Id20d37b7b83e133aa4d5fe9293a42ae217024f01
ndroid/emailcommon/provider/Mailbox.java
0404a331ad14f3473be5905f73956626896b05c8 22-Jun-2011 Marc Blank <mblank@google.com> Merge "Improve EmailContent caching..."
6e418aa41a17136be0dddb816d843428a0a1e722 19-Jun-2011 Marc Blank <mblank@google.com> Improve EmailContent caching...

* Guarantee that up to 16 Account (with HostAuths), and Policy rows
are always cached. Also, 6 commonly used Mailboxes per Account
(Inbox, Outbox, Drafts, Sent, Trash, and Search)
* Precache these rows when EmailProvider starts up
* Ensure that newly added, precachable rows are cached when created
* Clean up some inefficient/wrong caching code
* Fix a commonly called method in NotificationManager in which we
load a single Mailbox row using selection vs withAppendedId
* Confirm that we don't read from the database in typical use and
heavy message loading
* Add a special URI for finding mailbox by type (using the cache)
* Add special-case code for EmailContent.count(Account.CONTENT_URI)
which is used in a number of places (including on the UI thread)
and whose value is easily determined
* Add a special URI to get the default account id
* Confirm that all unit tests work

The goal here is to be able to load all Account, HostAuth, Policy,
and Mailbox objects (by id) without worrying about disk access.
There will still be a single disk read for uncommon Mailbox reads,
but this should be considered acceptable.

Change-Id: Ibc9aa7acc73185e360b0b6f3053b90a985e97210
TODO: Unit tests
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/Mailbox.java
505ac4b09bbe13ff099e40d94e45963e46a9261f 22-Jun-2011 Ben Komalo <benkomalo@google.com> Prevent NPE when account can't be found for policy

Added some tests to ensure no orphaned policy

Bug: 4686450
Change-Id: I64a1f5de05f3e73052cb41828ed6bf1a2e26d22a
ndroid/emailcommon/provider/Policy.java
95ad0f0e93d290b2c630a49a254e61f10b2783c8 21-Jun-2011 Makoto Onuki <omakoto@google.com> Wait for initial sync in Welcome.

Change-Id: I5052e8a3e3af5565184c391200b9ab63dff4b50b
ndroid/emailcommon/Logging.java
ce4cce05b2ee5ea2d9629c189a79f7f30778f534 21-Jun-2011 Makoto Onuki <omakoto@google.com> Fix failing tests

Fixed activity tests and and activity.setup tests.

Bug 4762098
Bug 4766087
Bug 4590590

Change-Id: Ifbd49f38c59854c65b6c48a1b03ca8153bfa558b
ndroid/emailcommon/utility/Utility.java
ae95fbf4d0238ee5a6fcd5892d9a9105e8db9249 21-Jun-2011 Jorge Lugo <jlugo@google.com> Merge "Added quick responses."
5a3888f35b669ffb3cc785d7dfe4862879a3896c 01-Jun-2011 Jorge Lugo <jlugo@google.com> Added quick responses.

Added "Insert quick response" button to MessageCompose's action bar. Clicking
it opens dialog with available quick responses. Selecting one of the responses
will insert it into message body at the current cursor location. Also added
menu in account preferences to create, edit, and delete quick responses.

Change-Id: I85f3f6b36801cf112ec9d7c31135a917456173d7
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/QuickResponse.java
ed1dc9ee72410e07de24bc4a072d066981611a48 17-Jun-2011 Marc Blank <mblank@google.com> Support "Load More" for IMAP search

Change-Id: I47e5fd1fab421026ee52af72ba56338c69e9b467
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/service/SearchParams.java
0b346432043e5871ab683da53550f755f82df0b9 17-Jun-2011 Marc Blank <mblank@google.com> Merge "First implementation of IMAP search"
627bc6ed57ee06cc588e64ff959bfd7870b659b6 13-Jun-2011 Marc Blank <mblank@google.com> First implementation of IMAP search

* Broke up synchronizeMailboxGeneric into three pieces; it's still
horrible, but this at least stops my eyes from bleeding
* Remove unused method/tests from Folder interface

Change-Id: Ib4d979536be657137cf70ca535cf429d707be41b
ndroid/emailcommon/mail/Folder.java
ndroid/emailcommon/provider/Mailbox.java
cb24e515b7983133133ca38bd3e3e6354daaab76 16-Jun-2011 Ben Komalo <benkomalo@google.com> Add one more error state to certificate process

When the KeyStore fails to give us back a certificate for any reason (it
was removed from the keystore perhaps), propagate the error back up.

Change-Id: I4f0ef783c1665589cc8ccb43d95da43a297a3e9a
ndroid/emailcommon/mail/MessagingException.java
ndroid/emailcommon/service/EmailServiceStatus.java
ndroid/emailcommon/utility/EmailClientConnectionManager.java
ndroid/emailcommon/utility/SSLUtils.java
1579b7864acfec1a9436ae5631de2caf79330447 16-Jun-2011 Marc Blank <mblank@google.com> Merge "Fix Store caching"
f4dbbf10996e6bca926a5825bbc69e1e172c20c0 16-Jun-2011 Ben Komalo <benkomalo@google.com> Indicate to the user when a cert error happens.

This introduces an exception which needs to be thrown from a KeyManager
when it tries to establish a connection with a server requesting a
certificate.

Change-Id: I06dfad7789ed5d320b630e7e4380e15da42a48df
ndroid/emailcommon/mail/MessagingException.java
ndroid/emailcommon/utility/EmailClientConnectionManager.java
ndroid/emailcommon/utility/SSLUtils.java
d09cff08882e553afce919865a2cc60b657d4659 06-May-2011 Ben Komalo <benkomalo@google.com> Make "don't allow camera" a supported policy.

This sends the bit to the DPM. Separate changes have been/will be made
to change the provision parser and support it in the DPM.

Bug: 4185316
Change-Id: I44872ceb095a28539b047a0641cc499c7186a9b3
ndroid/emailcommon/provider/Policy.java
f65bdbdaf5960951452b148f801c51feca864bfe 16-Jun-2011 Marc Blank <mblank@google.com> Fix Store caching

Bug: 4671090
Change-Id: I07413eb713c564f6dbcac45091357153cfe19a5d
ndroid/emailcommon/provider/HostAuth.java
913e26180d389cdeab2f6b96db4f1e3d9f68f5d7 15-Jun-2011 Ben Komalo <benkomalo@google.com> Fix ambiguously named getters.

Change-Id: Ieec918a520fd291d8d85695d1a86b85a73b266a5
ndroid/emailcommon/provider/HostAuth.java
22409fcffae4c6e551fb3e6ead4cdc92e33fded1 14-Jun-2011 Ben Komalo <benkomalo@google.com> Pass HostAuth when validating an account.

Since HostAuth is fully Parcelable, no sense passing the individual
fields.

Change-Id: I4d8fd2bbe7b47e8f1e2ff00c8c0cad8429eec159
ndroid/emailcommon/provider/HostAuth.aidl
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
78959916e771114ff8c48fc181e34a7dff0aa672 04-May-2011 Ben Komalo <benkomalo@google.com> Add support for client side SSL certificates

This introduces the ability for clients (i.e. the exchange service) to
register "special connection types" that use a client certificate stored
in the system keystore. The alias is encoded into the URI scheme for
those clients, and the socket factory used for those connections will
use the approprate KeyManager.

Lots of TODO's, including bubbling a lot of this up to the higher level
and wiring the UI to actually set the alias in the HostAuth table.

Change-Id: If5e1901c5b58731fdabd3e6b6da7198134b512d2
ndroid/emailcommon/utility/EmailClientConnectionManager.java
ndroid/emailcommon/utility/SSLUtils.java
e57a83d39a1414bd44eef7376f3a091264fce5d9 14-Jun-2011 Marc Blank <mblank@google.com> Add flags for server-side search support

* Also, a convenience method to test the base flag
* Follow-up CL will add these flags for Exchange

Change-Id: I38dc1d19e89805989e674c17919db238b4913a1c
ndroid/emailcommon/provider/Account.java
f5418f1f93b02e7fab9f15eb201800b65510998e 14-Jun-2011 Marc Blank <mblank@google.com> Move Account into its own top-level class

Change-Id: Ide7c991b7d4d418dbe17164421425bf898ba64ee
ndroid/emailcommon/provider/Account.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/utility/AccountReconciler.java
ndroid/emailcommon/utility/Utility.java
85e4c101b014857fe40f87c3837b82564cfc5b6c 08-Jun-2011 Marc Blank <mblank@google.com> Remove storeUri's except during auto-setup

* Remove per-store limitations
* Use constants for VISIBLE_WINDOW, rather than having the
potential for differences between Stores

Change-Id: Idd5e0874bba6e3390e4f093bcb03f4b1bb399c11
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
724c3a81cd3649b48ab47c6e49cb42f73f20c815 08-Jun-2011 Ben Komalo <benkomalo@google.com> Introduce scheme name escaping in SSLUtils.

Change-Id: I73f19e7d40d0b19dfd41cfaf7db0879ef2e3a3ea
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/utility/SSLUtils.java
313586c8eb4e23ceec068b82f3dc0be1c8a7045f 07-Jun-2011 Ben Komalo <benkomalo@google.com> Introduce client cert alias for HostAuth.

Some email servers require client certificates to be presented to
establish an SSL connection. While this certificate will be maintained
by the system key store, we need to store the "alias" of the certificate
stored in that system store.

Wiring up to use the actual alias will be done in future CL's. It is
currently unused.

Change-Id: I8d1290151342daea9ceb0df8a4088405b44faa81
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/utility/Utility.java
4c4b088a21dc4b438b1fd78096c09ab1d36706f4 03-Jun-2011 Todd Kennedy <toddke@google.com> Merge "Add "lastTouchedTime" column to the mailbox table"
9dcb72e1ecca83178c3af07f105c2ec12526a52c 03-Jun-2011 Todd Kennedy <toddke@google.com> Add "lastTouchedTime" column to the mailbox table

The last touched time will track the last time a message within that mailbox
was read. This will be used for the recent list.

Change-Id: I97a5fda52fd09b416fc3278a11a87b807da05c9c
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
75a754660e33c5e18cacffff193983ba22a7b9b0 02-Jun-2011 Marc Blank <mblank@google.com> Update searchMessages API

* Store various search parameters in a new parcelable class

Change-Id: Iadec6a803b1bf17d89cd401c3fca1cb0ad3340d4
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/SearchParams.aidl
ndroid/emailcommon/service/SearchParams.java
cd7dce5b39d8988c39f13cac4256636d33e30964 02-Jun-2011 Ben Komalo <benkomalo@google.com> Merge "Move the custom SSLSocketFactory into emailcommon"
a613aa18f596de9a7333ff2da1221e59a613326b 02-Jun-2011 Marc Blank <mblank@google.com> Merge "Add transient to Account (for holding AccountManager account)"
dcac884697f5996892a80c39dfc29146056e2510 02-Jun-2011 Marc Blank <mblank@google.com> Add transient to Account (for holding AccountManager account)

Change-Id: I2eba00b4e2f4fe0dfdc71547bfac9159728ea0e9
ndroid/emailcommon/provider/EmailContent.java
12a3e3e4b91ebab1ac4538d9f7a336b9e05dce0e 02-Jun-2011 Ben Komalo <benkomalo@google.com> Move the custom SSLSocketFactory into emailcommon

Change-Id: I48da54a74fd3fe573d20e581b69e35944ba9c8ff
ndroid/emailcommon/utility/SSLSocketFactory.java
fa1b3a8f37eada5efad690b7abd32ae248aa2f2b 01-Jun-2011 Todd Kennedy <toddke@google.com> Save widget config to shared preferences

The way the config activity communicates with the widget will be through
shared preferences. We now read / write shared preferences for widget
configuration. One step closer to the configuration activity...

Change-Id: I7c54259d84ad8d304a61652af5b3edff4c7d67db
ndroid/emailcommon/provider/EmailContent.java
44f5cd67c97da6a5c7e63a73b4dca7057b83cdbb 01-Jun-2011 Todd Kennedy <toddke@google.com> Remove widget views

The new widget UX allows for a single display mode for the widget. This can
be configured when the widget is added or at a later time during widget
re-configuration.

We don't have the configuration activity (yet). We first need to restructure
the widget to take a single account / mailbox combination. Hooking up the
configuration activity will occur in a future CL.

Change-Id: I38a5796c44938a6abd0d2bb50ac77241cc86a497
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
09a071a87938e0c1ed80962d54b6025618dca120 26-May-2011 Marc Blank <mblank@google.com> Don't use multipart/alternative for SmartReply/Forward text

* When confirmed fixed, this should be backported to MR2/MR2

Bug: 4490341
Change-Id: Ie99047b465ed7087e6e0100f7d517ac3fb6b803c
ndroid/emailcommon/internet/Rfc822Output.java
fae5ebbfd202b930296a1bbc67459152f1a6c6ce 26-May-2011 Marc Blank <mblank@google.com> Cleanup code in Policy

* Use a single method for setting/clearing an account's policy

Change-Id: I90fd97d4a5ba452d4656bbabd06a40797c82e10c
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Policy.java
f3ff0ba91076ef1fb087fc30fe65d9504011c2b3 19-May-2011 Marc Blank <mblank@google.com> Create AccountManager acct for pop/imap on upgrade from GB

* Also, unit test for upgrade path

Bug: 4439595
Change-Id: I508a3d8ea70c1a894a412528314e42a39f3ae0e7
ndroid/emailcommon/utility/AccountReconciler.java
5675ea88d3cc4ba9934d2a54fee008fd324d711f 24-May-2011 Todd Kennedy <toddke@google.com> Add a second fragment to select the mailbox

After choosing the account, we need to select a mailbox for the shortcut.
In order to replace the fragment, we cannot hardcode it in the XML. Instead,
we need to dynamically create it.

Also, restructure the fragment class and rely on the class to "do the right
thing"

Change-Id: I752ad5bbdf2484332ec2b73852cae74a5d2092fa
ndroid/emailcommon/provider/HostAuth.java
12b82d9374947c9268217f45befe8a74bd9b60d7 20-May-2011 Ben Komalo <benkomalo@google.com> Move HostAuth to top level class.

No other changes made.

Change-Id: I1c6497c98abc0f99443ea42d8aed6295b263c123
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/HostAuth.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/utility/Utility.java
b36ac017926f2557f4a476d0cefe49002d11233b 17-May-2011 Makoto Onuki <omakoto@google.com> Changes for NO_XXX

- Added Message.NO_MESSAGE
- Renamed PSEUDO_ACCOUNT_ID_NONE to NO_ACCOUNT
- Removed PARENT_KEY_NONE and use NO_MAILBOX instead
- For starters, cleaned up the UI controllers to use them.

Change-Id: I6cfd87ece2fced8e9f7c76d034c4d1dbf9e4db10
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
54c91f00d7f967690a80b992062e75c40182d088 17-May-2011 Makoto Onuki <omakoto@google.com> Use IllegalArgumentException, not InvalidParameterException

Because IllegalArgumentException is the standard one.

Change-Id: Ib4d0bfa88a3d4218148a7cb248d9baa2124a72ba
ndroid/emailcommon/provider/Mailbox.java
4c4e4c3515c3e3300e03f90e02a0c520dc2dff32 13-May-2011 Makoto Onuki <omakoto@google.com> Clean up the method to build message list selection.

- Moved the method to EmailCommon.
- Use *_SELECTION for magic mailboxes
(meaning we now use subqueries for magic mailbox selections, rather than
building the mailbox ID list by ourselves)

Change-Id: I3ebf6af62fd912fea6faea0f75e05fc61c87af3b
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/Utility.java
e0bb7e79092a1066f4cf42ec364a81ebb31ac808 14-May-2011 Ben Komalo <benkomalo@google.com> Make Mailbox parcelable

Also fix unit tests

Change-Id: I5f64f53b278b7bc27053d831760b155532a14e33
ndroid/emailcommon/provider/Mailbox.java
53ea83ebf91f820692e8fa8e781f5cc982dd94db 14-May-2011 Ben Komalo <benkomalo@google.com> Move Mailbox to top level class.

No other changes made.

Change-Id: I3d8f3c521dc0d902be313b25252b4b6a4a96e7ee
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Mailbox.java
ndroid/emailcommon/utility/Utility.java
bfac9f2e8a13f6c719608a6948203bbef921c99f 13-May-2011 Makoto Onuki <omakoto@google.com> Move some of the log constants from Email to Logging

Change-Id: If9f4e4e3adcdef897a0d6a4e153bb446a8b24fdd
ndroid/emailcommon/Logging.java
577ddb7dd76f2f2e3d0493952d53f7ab966d10bc 13-May-2011 Todd Kennedy <toddke@google.com> Remove notifyNewMessages() service callback

Since the notification controller now operates exclusively using database
observers, there's no reason for the exchange service to call the
notifyNewMessages() service API.

Change-Id: Iaa7e2f5eae786162eab23b02b03ce6d1e8a738e9
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/IAccountService.aidl
76061eba142586ade8678036b179ffab2ee7a8c0 13-May-2011 Todd Kennedy <toddke@google.com> Remove SuppressWarning("unused") wherever possible

Change-Id: Ie799f02ab39a7d020af1fb98b6bac45fc0fd1298
ndroid/emailcommon/mail/Folder.java
a830547adf85ff5032ab0c0d68a96f65909b8012 13-May-2011 Marc Blank <mblank@google.com> Merge "Add messaging exception status for "attachment not found""
5701e0a555a5c263862156c1291aa13b06850425 12-May-2011 Todd Kennedy <toddke@google.com> Suspend notifications for currently shown account

We will suspend notifications whenever we display the message list for an
account (including "combined inbox"). As soon as the message list is paused,
notifications will be resumed.

Change-Id: I481a0f59ce68f89c32210d862d0267f3f334063b
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/Utility.java
b221cbc785d7c868a69a144da31756c50c0e11b4 12-May-2011 Marc Blank <mblank@google.com> Add messaging exception status for "attachment not found"

* Adding this enables 4409976 to be fixed in a user-friendly manner

Bug: 4409976
Change-Id: I4f5ce890b6957c27a0f59656467dbe23b480a7e3
ndroid/emailcommon/mail/MessagingException.java
ffeb7de284b81a466a9f49ba380c045576cfc557 12-May-2011 Marc Blank <mblank@google.com> Merge "Fix a race condition in which an Attachment might be wrongly deleted"
2f6cbb021cd97e2450c29b72a27236ba4ef20823 12-May-2011 Marc Blank <mblank@google.com> Fix a race condition in which an Attachment might be wrongly deleted

* This is a serious bug dating back to the first Honeycomb release
* It was possible that a newly created Message could not yet be
committed to the database when the AttachmentDownloadService
tries to download one of that message's attachments.
* ADS, when it sees that the message (apparently) doesn't
exist, deletes the Attachment (it appears to be orphaned)
* The effect is that the user never sees one of the attachments
in a message.
* This bug has been reported externally
* The fix is simply to check for the message's existence before
deciding to delete it (this check will always work properly)

Bug: 4409692

Change-Id: I106ed2fe88d2435ad7a462fced5cb307c2559fd6
ndroid/emailcommon/provider/EmailContent.java
e7fb4ac9e3b098ece98d004403a89652f88bbe7a 12-May-2011 Todd Kennedy <toddke@google.com> Add account observer to NotificationController

The notification controller now observes changes to the account database and
adds or removes message observers as appropriate.

Change-Id: I1670fcfd6ce744030199b86708a6ada55b239a84
ndroid/emailcommon/provider/EmailContent.java
b2a909598ba78783b05c58508310f864c56c897b 11-May-2011 Marc Blank <mblank@google.com> Create/test method to set "not downloadable" flag based on policy

Change-Id: I08bec46d0c961bdc9530768f5198346338b3e2f3
ndroid/emailcommon/provider/Policy.java
791665da6757768be8f9520c66e77c8cdff83664 11-May-2011 Marc Blank <mblank@google.com> Merge "Add plumbing for disallowing attachment download per policy"
9d9b481a85df540f8f338d28919802828a387efe 11-May-2011 Marc Blank <mblank@google.com> Add plumbing for disallowing attachment download per policy

Change-Id: I860dfb5c28933dcd4bf96c8e4bc890bff0f53c42
ndroid/emailcommon/provider/EmailContent.java
d31d64d330e1276ffdcd0fe9978b3303a38d4e95 11-May-2011 Todd Kennedy <toddke@google.com> Merge "Use observers to manage new message notifications"
5d08360a9bcb80ca8ce4b11b2664c8aba96f0c29 11-May-2011 Marc Blank <mblank@google.com> Merge "Complete rewrite of account backup/restore code"
83693a6acaffd219f65e04054bc04530e9cc132f 10-May-2011 Todd Kennedy <toddke@google.com> Use observers to manage new message notifications

We were sort of using observers to maintain the new message notifications.
However, other parts of the code would poke into the notification controller
to set things such as a list of newly added message IDs. Now, we rely
exclusively on db observers to manage notifications.

As a side effect of this, we now set the notification text correctly to be
the most recently _added_ message. This may be different than the most recently
sent message [since there may be a non-negligable delta between when the
message was sent and when it was received].

NOTE this still suffers from an outstanding bug where we continue to get
notifications when the Eamil UX is visible. That and monitoring changes to the
account table will be addressed in future CLs.

Change-Id: I4c68273716cc685574a1ca71e5d634f53fe0d882
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/Utility.java
dd9d4725694ce641910779971dbf11b1f5063c3f 10-May-2011 Todd Kennedy <toddke@google.com> Merge "Add unit test for Utility#updateLastSeenMessageKey"
9279fc1b9439d3360db8c7b4b74418502d868c33 09-May-2011 Marc Blank <mblank@google.com> Add message flags for "replied to" and "forwarded"

* These will be required for EAS logo certification

Change-Id: Iaa8c970878a319fac68b3533889e6774f9cd54f9
ndroid/emailcommon/provider/EmailContent.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
ndroid/emailcommon/provider/EmailContent.java
a17ee57c7ff7eb3391cc32f700aaa4fed8aa971f 09-May-2011 Todd Kennedy <toddke@google.com> Add unit test for Utility#updateLastSeenMessageKey

Change-Id: I1335ac53c5de418fd0ed6c2b38be60165db1cb8c
ndroid/emailcommon/utility/Utility.java
ae993bda32746f9e9170d5d212a2a66b01d4ddf8 07-May-2011 Todd Kennedy <toddke@google.com> Merge "Add lastSeenMessageKey column to the mailbox table"
a9ac20b96f8d2e2e97fb2878afb9df4795024450 06-May-2011 Todd Kennedy <toddke@google.com> Add lastSeenMessageKey column to the mailbox table

The last seen message key is the id of the last message that we've "seen" for
that mailbox

Change-Id: I197f8a191654225ada1ce553cc959db775809c88
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/Utility.java
8d042850fb4257ca879f4d0c60e366b92a4c8422 06-May-2011 Ben Komalo <benkomalo@google.com> Re-work the way MessageCompose handles attachments

Now attachments are actually stored in an explicit list, instead of
being inferred from the state of the UI. This makes it possible to
switch states and restore attachments, and test.

Change-Id: I8c5f80f17f8c9e78d880ac4a1ac6ae22c2ec0579
ndroid/emailcommon/provider/EmailContent.java
c4cdb11d24c19428dd39f986b00c1a29e75e1505 03-May-2011 Todd Kennedy <toddke@google.com> Remove notification if messages seen off device

If we receive new messages, we may display a notification to the user. If
those same messages are read elsewhere (i.e. via a web client), we will
remove the notification.

Change-Id: Iba09afe01942e0deaac8210fd6f9b315b1c8c93f
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/IAccountService.aidl
c96cd4a8483798dc16010b0e7b9b3e95e3361615 05-May-2011 Marc Blank <mblank@google.com> Merge "Add new policies to Policy and associated data structures"
f91a03f5203bb64ae0726596d65ac90c35088666 05-May-2011 Marc Blank <mblank@google.com> Add new policies to Policy and associated data structures

* Update Policy unit test

Change-Id: I24a980537a73e40fca9fceb1b6ad6b2feaa9c342
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Policy.java
74143e89d538ce74e8c95e04cee56dca9412a7bd 05-May-2011 Marc Blank <mblank@google.com> Prevent NPE's in calls to database utility methods

* Before the Email/Exchange split, EmailProvider was guaranteed not to return a null
cursor; this is no longer true
* We now throw a new RuntimeException (ProviderUnavailableException) when calling
commonly-used utility methods (e.g. restoreXWithId) and the cursor as returned from
EmailProvider is null (which implies that the provider isn't available).

Change-Id: I152d13bff0129c23586cd570d23c87d69cfce372
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/ProviderUnavailableException.java
ndroid/emailcommon/utility/Utility.java
335a724ee68a0a36acec75299503b2eaf4ac97d5 04-May-2011 Marc Blank <mblank@google.com> Implement "automatic" sync lookback (Email side)

* Update sync window options to include "Automatic" and "All"
* Make the default (for new accounts) "Automatic"

Change-Id: Icbc696f55abcfad79e66079ebb414ca50778dcaa
ndroid/emailcommon/service/SyncWindow.java
55db7c098f1e5c8fb21e849245a5c15a4c20a789 03-May-2011 Marc Blank <mblank@google.com> Merge "Rework of security policy storage"
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
ndroid/emailcommon/provider/EmailContent.aidl
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/provider/Policy.aidl
ndroid/emailcommon/provider/Policy.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IPolicyService.aidl
ndroid/emailcommon/service/LegacyPolicySet.java
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/PolicySet.aidl
ndroid/emailcommon/service/PolicySet.java
0bb7f1c37c99beb2a91bd98e64fcc9656877e034 02-May-2011 Ben Komalo <benkomalo@google.com> Fixes to MessageCompose saving.

- "save draft" no longer closes the message
- ensure consistent state if there are successive saves
- misc changes to the way a message is loaded if there is a pending save

Bug: 3072398
Change-Id: I9cd01319772293e4d410020ab27603821a95ec9f
ndroid/emailcommon/utility/EmailAsyncTask.java
567442bcf810ece69410a8945b224215c317cb17 27-Apr-2011 Makoto Onuki <omakoto@google.com> Merge "Fix "move to" dialog."
4e033e0ac79d85bc8df8e52bdfc8b1fc9ad29f3e 26-Apr-2011 Makoto Onuki <omakoto@google.com> Fix "move to" dialog.

- Now we always use a fragment as a callback, rather than assuming the parent
activity implements it.
- Use a generics trick to make sure the callback fragments really implements
Callback.
(Might be abuse of a language feature, but it's at least safer than runtime
check...)

Bug 4314669
Bug 4345496

Change-Id: If4048d456b298784097e202cffab170177ac7b2d
ndroid/emailcommon/utility/Utility.java
e87ff6c3cbbfc5e3636f9827b58820652e3ea1c5 27-Apr-2011 Todd Kennedy <toddke@google.com> Opportunistic cleanup

not making any real code changes:
* removed deprecated, unused methods
* remove 'throws' clauses when that exception is never thrown
* renamed method Controller#moveMessage()-->moveMessages()

Change-Id: Ifd006f760f0c19283e94a11a45c71295c8da35f7
ndroid/emailcommon/mail/Folder.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
265530723b8c008f6bc23b1723f4de706a3e9556 26-Apr-2011 Marc Blank <mblank@google.com> Expose unsupported policies in the UI (account setup)

Change-Id: I75b650af92c87bd990009e54072ac4b58ed0895b
ndroid/emailcommon/mail/MessagingException.java
ndroid/emailcommon/service/EmailServiceProxy.java
27cf8b5ffe589eff05e1baf5c703a93f48787d48 26-Apr-2011 Todd Kennedy <toddke@google.com> Display full pathname in move-to dialog

With the recent changes to hierarchical folders, the move-to dialog is
quite unusable if you have multiple child folders with the same name.
While waiting for UX to decide on the exact display, make a few quick
changes to display the fully-qualified pathname instead of just the
child folder name.

Change-Id: Id5c1cc98364fbf7a82a05ac30e944507c7d16320
ndroid/emailcommon/provider/EmailContent.java
22208771b7b39c5d131372ba6bc45ab23cc22232 23-Apr-2011 Todd Kennedy <toddke@google.com> Add hierarchical folders to IMAP

We now create folder hierarcies for IMAP. This also includes a nifty SQL
statement that will get your existing database into shape.

Change-Id: If07a0632e9b250cf0c33c3e16bfba5816beab94c
ndroid/emailcommon/provider/EmailContent.java
d2fd1252d504fa61db9eb8362442cf20f1198e0f 22-Apr-2011 Marc Blank <mblank@google.com> Add status code(s) for disabled sync (needed for EAS 14.0)

Change-Id: Ie65141c4d83412274dbbc39dffed7c3be394bb84
ndroid/emailcommon/mail/MessagingException.java
ndroid/emailcommon/service/EmailServiceStatus.java
224c7215f1152ffb6a30ef46c2b4a0c8f88b42aa 21-Apr-2011 Marc Blank <mblank@google.com> Add new account flag SYNC_DISABLED and add comments to all flags

Change-Id: Ib153282c2294deb0e322b3cd71f90087a8cb23f9
ndroid/emailcommon/provider/EmailContent.java
7f40e8290bae756a56e604e9639abb4a76cb67ef 21-Apr-2011 Todd Kennedy <toddke@google.com> Merge "Simplify mailbox synchronization logic"
200c6bd9fa19b78acc2c1664f858521aa9885353 21-Apr-2011 Todd Kennedy <toddke@google.com> Simplify mailbox synchronization logic

The logic is simplified by creating database rows for new mailboxes down
in Imapstore. This means that the difference between local and remote folder
lists are mailboxes that need to be deleted.

Note -- this is still not the final CL. We probably update the database too
frequently and the column values aren't updated to support nested folders.

Change-Id: Ifbe4e0cf74ba81e5b6156b452ab72c56c35235ab
ndroid/emailcommon/provider/EmailContent.java
f11295f3352f7c89fc92c73731e41b057e236969 21-Apr-2011 Makoto Onuki <omakoto@google.com> Simplify showToast()

Now it can be used without an activity.

Change-Id: I9c122c9a1e330a909c5ba27aaaca27f746300929
ndroid/emailcommon/utility/Utility.java
a50fc99b0c433f0cde31ba1c7ab87fb9ea86345d 19-Apr-2011 Todd Kennedy <toddke@google.com> Use Account instead of URI to create transports

There's no need to create a URI just to rip in appart again. Additionally, to
support additional changes (i.e. to use Mailbox instead of Folder in the
MessageController), we need to store the actual Account.

NOTE -- This change only affects IMAP and POP3. SMTP will come in a follow-on CL

Change-Id: I400036a17271c99272fd9c603547dcd713b50b9d
ndroid/emailcommon/provider/EmailContent.java
8a05da7c8c5d5c499c1307cdfe8dee821960ef81 15-Apr-2011 Ben Komalo <benkomalo@google.com> Remove uneeded layer of parcelling.

ListStateSaver did nothing more than hold a Parcelable, and was a
Parcelable itself. The abstraction may have been useful at some point,
but that time seems to have passed.

Change-Id: I2f1f45828782ab44aa8935aa50b825e07845a2a5
ndroid/emailcommon/utility/Utility.java
28b3fec5c19129c2f3e2e8f047fc9fc17bcaa9db 14-Apr-2011 Ben Komalo <benkomalo@google.com> Include guava in Email.

- adds a compile time dependency to the guava library
- changes to use @VisibleForTesting in places to ensure it works

Change-Id: I2c5c4f9861234fec3613da011185e5c11f228466
ndroid/emailcommon/mail/Address.java
a8ba5e76dcc1596a356c08d0757814f4700e3cf5 13-Apr-2011 Todd Kennedy <toddke@google.com> Merge "only allow navigating to mailboxes w/ children"
f7036b737907f06df1a06507754b28596cf8225e 12-Apr-2011 Todd Kennedy <toddke@google.com> only allow navigating to mailboxes w/ children

If a mailbox doesn't have any sub-mailboxes, only allow selecting them to view
any contained messages. Do not update the mailbox list.

Change-Id: I6f469bf20a57dc440885402084c21ff184f13dff
ndroid/emailcommon/provider/EmailContent.java
4bf590d40047aa75802bda884591ff477a5f3419 13-Apr-2011 Marc Blank <mblank@google.com> Merge "Create constant for unknown sync window (0, i.e. uninitialized)"
38eb3b3a9470741fd1bd2f2305e27275bb15c349 12-Apr-2011 Marc Blank <mblank@google.com> Create constant for unknown sync window (0, i.e. uninitialized)

Change-Id: I85410162893e76748f293f48fd12571eeaf4b620
ndroid/emailcommon/service/SyncWindow.java
0efbee2bd0b28b8695bf53bdd3ba2f0986b729c9 12-Apr-2011 Makoto Onuki <omakoto@google.com> Merge "Fix bug that prevents from accepting 2 invites in a row."
5dceaa5b5ec6006aced6dfe37a718ea376decf53 12-Apr-2011 Makoto Onuki <omakoto@google.com> Fix bug that prevents from accepting 2 invites in a row.

mPreviousMeetingResponse is tied to the current response state, so it
should be reset too when we clear the response checkboxes.

Bug 4132763

Change-Id: If816706f47f8500441330882fb4f372b31465ff5
ndroid/emailcommon/service/EmailServiceConstants.java
2577842269f035856b877eb990567c7a32e81252 08-Apr-2011 Ben Komalo <benkomalo@google.com> Misc fixes and dead code removal.

Change-Id: I48b2fa5f7bf619197d882c71e8b174d31d130e26
ndroid/emailcommon/mail/Address.java
78684ccc795c0d5211dfc04a834cb452dccb1058 31-Mar-2011 Marc Blank <mblank@google.com> Temporary search UI

Change-Id: Ia138ca93f0b28fd0915aa79c965f752f7c08ee90
ndroid/emailcommon/utility/TextUtilities.java
e553c6ec0beafbb85f471e2880f6d4447cd7c413 05-Apr-2011 Makoto Onuki <omakoto@google.com> Merge "Store UUIDs in account shortcuts, rather than IDs."
0b6cb1c3307b10929fca7dc09125a128fc330a19 04-Apr-2011 Makoto Onuki <omakoto@google.com> Store UUIDs in account shortcuts, rather than IDs.

Bug 4192836

Change-Id: I1d6349ed3ad70867f113b9a9f7eb8717b88b24c1
ndroid/emailcommon/provider/EmailContent.java
3d1bb65eecc507466203a881397dc9c25334509b 04-Apr-2011 Marc Blank <mblank@google.com> Merge "Add searchMessages command to EmailService"
c60b8d0529168edecf2376a6f421a0ae1e10fe29 31-Mar-2011 Marc Blank <mblank@google.com> Add searchMessages command to EmailService

* Also, document service methods in EmailServiceProxy

Change-Id: I46cc68c8c2aa870ea82474c70d944640bb66b0ef
ndroid/emailcommon/Api.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/IEmailService.aidl
1e7e2829d85c8f2814d32434360bb156e100500d 04-Apr-2011 Marc Blank <mblank@google.com> Fix HTML highlighting

* We need to "and" off the alpha bits from the Color constant

Change-Id: I2e30bd9df74fffed82c637c79927993a49447e23
ndroid/emailcommon/utility/TextUtilities.java
76f614720db6a282c3e890969a600585122cdcc5 27-Mar-2011 Marc Blank <mblank@google.com> Highlight utility for HTML and text

* Add utilities for adding highlighting markup to HTML and
highlighting spans to plain text (for Webview and UI,
respectively)
* Rename Snippet.java to TextUtilities.java and move to utility
package

Change-Id: Ic443ab5ce9c0199fa82a68e1592bf259494cadd2
ndroid/emailcommon/mail/Snippet.java
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/utility/ConversionUtilities.java
ndroid/emailcommon/utility/TextUtilities.java
de70ee5f7868ede7a738fbeb8ba9f9fe3558aefb 25-Mar-2011 Todd Kennedy <toddke@google.com> Don't duplicate HTML in reply / forward

On exchange servers that support "smart reply", the original message is
actually appended by the server. In this situation, we should not append
the original HTML text on the client.

but 4177192

Change-Id: I6fad74ac761e2abfe7cb0f536df4db30f7d5ca9a
ndroid/emailcommon/internet/Rfc822Output.java
9f0283dbd7810953b0c795bcba7359fb7cd1f1ce 23-Mar-2011 Makoto Onuki <omakoto@google.com> Merge "Better fix for the PendingIntent issue."
284d8d7db5743d24b9aa246afe3d24139bdb0813 23-Mar-2011 Todd Kennedy <toddke@google.com> Add support for UIDPLUS capability

When copying messages between mailboxes using standard IMAP, we must perform
a QUERY or FETCH in order to determine the new message UID. However, if the
server supports the UIDPLUS capability, the server will return the new UID
as part of the response to the "UID COPY" command.

This is the first of a couple modifications. We still need to fallback to a
less efficient QUERY/FETCH if the server does not support UIDPLUS.

bug 4092301

Change-Id: I9279f7fd70daf85adba3b3e202c12d67ddf91f22
ndroid/emailcommon/mail/Folder.java
ndroid/emailcommon/utility/Utility.java
308ce9284793b597797994dfb1fb25155cbe0b20 22-Mar-2011 Makoto Onuki <omakoto@google.com> Better fix for the PendingIntent issue.

Refactor the changes introduced in Ib02842bb.

- Now Welcome and AccountSettingsXL accept intents with URLs of the following
style, and get IDs from query params, rather than extras.

Welcome:
content://ui.email.android.com/view/mailbox?ACCOUNT_ID=1&MAILBOX_ID=2&MESSAGE_ID=3

AccountSettingsXL:
content://ui.email.android.com/settings?ACCOUNT_ID=1

- Now the "new message" and "login failed" notifications use these new style
intents, so the system wouldn't merge PendingIntents for different accounts.

Also:
- Moved all notification creation logic to NotificationController.
(Except the one in CalendarSyncEnabler; which is used only to support
upgrading from pre-froyo and I don't think it's worth refactoring.)

- Note the "password expired/expiring" and "security needed" notifications
aren't changed; they still use extras to store account IDs. This is okay
because these notifications are not per-account.

Bug 4065269

Change-Id: I70737438d2e7c45fd7488a5b0a7105c8568e02f7
ndroid/emailcommon/utility/Utility.java
d72f7bdf114a21db6aac66a7e83d6b002c8e8ed5 21-Mar-2011 Makoto Onuki <omakoto@google.com> Improve EmailAsyncTask

Added 6 methods:
- execute{Parallel,Serial}
- cancelPreviousAndExecute{Parallel,Serial}
- runAsyncParallel{Parallel,Serial} (replacement for Utility.runAsync)

Bug 4083415

Change-Id: I5ca33000e52fc5265ccc84a6e5acb0d3359d0eb4
ndroid/emailcommon/utility/EmailAsyncTask.java
ndroid/emailcommon/utility/Utility.java
5604f5eebc1c06069bf677025ba26a8e3915fe44 17-Mar-2011 Marc Blank <mblank@google.com> am b50a766d: Merge "Remove STOPSHIP logging" into honeycomb-mr1

* commit 'b50a766d4acc563beff90d22dc3dac48038ff4f1':
Remove STOPSHIP logging
b50a766d4acc563beff90d22dc3dac48038ff4f1 17-Mar-2011 Marc Blank <mblank@google.com> Merge "Remove STOPSHIP logging" into honeycomb-mr1
b959d9b9b2f1af8cf9a6726192e764b79f8d905a 16-Mar-2011 Andy Stadler <stadler@google.com> am 22759bac: Handle complex chars policy correctly

* commit '22759bacd95385d95d3d9321f490763df1aba89d':
Handle complex chars policy correctly
da3c4b8261825063ddf081e9335823569b813bd3 15-Mar-2011 Marc Blank <mblank@google.com> Remove STOPSHIP logging

Change-Id: I73786fb2f4ff10d3c0767a873e5eb1e443f1affc
ndroid/emailcommon/Device.java
ndroid/emailcommon/internet/MimeUtility.java
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/ServiceProxy.java
22759bacd95385d95d3d9321f490763df1aba89d 16-Mar-2011 Andy Stadler <stadler@google.com> Handle complex chars policy correctly

* We needed to set DevicePolicyMnager.PASSWORD_QUALITY_COMPLEX
* Setting this, we also need to clear some of the defaults for complex
mode that are not correct for Exchange's definition of "complex".
* Unit tests

Bug: 4092218
Change-Id: Iea7bd05d48f1aa9406222c1db5937cfd7f2662b8
ndroid/emailcommon/service/PolicySet.java
665b1801471c4393f1a0e85c5f1206580b902eaa 08-Mar-2011 Makoto Onuki <omakoto@google.com> Merge "DO NOT MERGE: Make ACTION_SEND_MULTIPLE work with file: URI" into honeycomb-mr1
8e09307b2743045239402645948155fd30cbb096 08-Mar-2011 Todd Kennedy <toddke@google.com> am 39121c75: Fix display of inline images

* commit '39121c758dcc919b5fde4c893d488916e26d3140':
Fix display of inline images
39121c758dcc919b5fde4c893d488916e26d3140 07-Mar-2011 Todd Kennedy <toddke@google.com> Fix display of inline images

Inline images can be specified in two different ways -- explicitly with a
Content-Disposition of "inline" or implicitly with no Content-Disposition.
We correctly handled the former. For the later, we now default to an "inline"
disposition if one was not specified. This is acceptable per RFC 822 which
states:

Content-Disposition is an optional header field. In its absence,
the MUA may use whatever presentation method it deems suitable.

Additionally, if the disposition is not specified by the server, we need to
look at the Content-Type header for the file name.

bug 2824698

Change-Id: I146f7a67197b4e737e5f82a3d570e0f74e23fa35
ndroid/emailcommon/internet/MimeUtility.java
c5b23e1e7198c980126894f9d31955f61fe92dae 08-Mar-2011 Andy Stadler <stadler@google.com> DO NOT MERGE: Harden Device.getDeviceId()

* If we read a null deviceName, delete the file and create a
new one.

Bug: 3506362
Backport of Ida670db2f4b75cb9c94636a0af541ae5df50addf

Change-Id: If844fe2a2f3d7096a8b18e826a3640a7d9dff830
ndroid/emailcommon/Device.java
a0145e173faba7c16a3dd25a6ac8cb953afd2705 07-Mar-2011 Andy Stadler <stadler@google.com> DO NOT MERGE: Add account flag for use by sync adapters

Bug: 2028418
Backport of Idc4bd74877b4edee9dab5401c4825eab82220f23

Change-Id: Ie119973ef11e982d75caf85ff03caada6e869695
ndroid/emailcommon/provider/EmailContent.java
7a159387636507de95b9b0c052ab593d0e91c433 07-Mar-2011 Makoto Onuki <omakoto@google.com> DO NOT MERGE: Make ACTION_SEND_MULTIPLE work with file: URI

To determine mime-types of attachments from the ACTION_SEND and _MULTIPLE intents,
- Use ContentResolver.getType() for content: URIs
- Use inferMimeType() for file: URIs

Tested with Gallary and Downloads.

Bug 3510624

Backport of Ibfa4b383463f157e18fd634e55f5be4b9adf6aa5

Change-Id: Id2815738673f3822a97e92414b84f6a5d46eb96f
ndroid/emailcommon/utility/AttachmentUtilities.java
03f76150397ca8c500569ac013e052beeebbecba 07-Mar-2011 Makoto Onuki <omakoto@google.com> Merge "Make ACTION_SEND_MULTIPLE work with file: URI"
92cbc9369ba7dc80ebd7190bf99b99e9c43b8f66 04-Mar-2011 Makoto Onuki <omakoto@google.com> Make ACTION_SEND_MULTIPLE work with file: URI

To determine mime-types of attachments from the ACTION_SEND and _MULTIPLE intents,
- Use ContentResolver.getType() for content: URIs
- Use inferMimeType() for file: URIs

Tested with Gallary and Downloads.

Bug 3510624

Change-Id: Ibfa4b383463f157e18fd634e55f5be4b9adf6aa5
ndroid/emailcommon/utility/AttachmentUtilities.java
5f75f85454b485c9ff628b59a9b81a18b8ebfda7 05-Mar-2011 Marc Blank <mblank@google.com> Merge "Harden Device.getDeviceId()"
a6de89e79ca51535f92e38cd7b87fdfe32425c77 04-Mar-2011 Marc Blank <mblank@google.com> Harden Device.getDeviceId()

* If we read a null deviceName, delete the file and create a
new one.

Bug: 3506362
Change-Id: Ida670db2f4b75cb9c94636a0af541ae5df50addf
ndroid/emailcommon/Device.java
b812cc729832df63ad2186179a01fef789b4d669 04-Mar-2011 Marc Blank <mblank@google.com> Merge "Add account flag for use by sync adapters"
0dd02cc1f0ec868fa53cff3c9dc117f35cfc2c67 04-Mar-2011 Marc Blank <mblank@google.com> Add account flag for use by sync adapters

Change-Id: Idc4bd74877b4edee9dab5401c4825eab82220f23
ndroid/emailcommon/provider/EmailContent.java
ab8caebec6e6b4398a02abe6cb1305c424bea734 04-Mar-2011 Makoto Onuki <omakoto@google.com> Merge "DO NOT MERGE: Fix ANR: Run getPreviewIcon on bg thread" into honeycomb-mr1
d8bce7e73155dca734f45502e52c0039de4c9663 04-Mar-2011 Todd Kennedy <toddke@google.com> DO NOT MERGE Add original HTML message to forward/reply

When replying or fowarding an HTML message, we now send both plain text and
HTML bodies as a multi-part mime message. We take special care to ensure the
message bodies are in their own multi-part block and do not interfere with
any additional attachments to the message.

bug 3060920

Backport-Of: I2fc3cb4e1f65bcc28486a62731b44b0ee0a99719

Change-Id: I89ec2795b55ceb7472a8ee3db2dc8f50cf537d9c
ndroid/emailcommon/internet/Rfc822Output.java
7d513c791a9ceb36b0e0a8fdabeb4a962e11d576 04-Mar-2011 Todd Kennedy <toddke@google.com> Merge "Attach original HTML message on forward/reply"
ef2bc0b3e9f1fde01fe625906d0fa9b803a30471 03-Mar-2011 Makoto Onuki <omakoto@google.com> DO NOT MERGE: Fix ANR: Run getPreviewIcon on bg thread

The new class EmailAsyncTask might look overkill, but
this is what I've been wanting for long time.
In many activities we store all AsyncTasks we start to member fields
so that we can cancel them in onDestroy(). (e.g.
MessageViewFragmentBase.mLoadMessageTask and mReloadMessageTask)
With EmailAsyncTask these fields will no longer be necessary.
We'll be able to just fire up as many AsyncTasks as we want, and clean them
up in onDestroy() with just cancellAllInterrupt().

Bug 3480136

Backport of Id8aa1ba1500eee58cfab8b562b95e9ed852b3e29

Change-Id: I2d2966ff878862a5246c031d1d4e221da5a7e81a
ndroid/emailcommon/utility/EmailAsyncTask.java
ba125ab5ac747bb382dc8fe986dd8f0ed72ca596 03-Mar-2011 Makoto Onuki <omakoto@google.com> Fix ANR: Run getPreviewIcon on bg thread

The new class EmailAsyncTask might look overkill, but
this is what I've been wanting for long time.
In many activities we store all AsyncTasks we start to member fields
so that we can cancel them in onDestroy(). (e.g.
MessageViewFragmentBase.mLoadMessageTask and mReloadMessageTask)
With EmailAsyncTask these fields will no longer be necessary.
We'll be able to just fire up as many AsyncTasks as we want, and clean them
up in onDestroy() with just cancellAllInterrupt().

Bug 3480136

Change-Id: Id8aa1ba1500eee58cfab8b562b95e9ed852b3e29
ndroid/emailcommon/utility/EmailAsyncTask.java
9cc51b72c6902b95f65857af64eb38063aa4a42b 01-Mar-2011 Todd Kennedy <toddke@google.com> Attach original HTML message on forward/reply

When replying or fowarding an HTML message, we now send both plain text and
HTML bodies as a multi-part mime message. We take special care to ensure the
message bodies are in their own multi-part block and do not interfere with
any additional attachments to the message.

bug 3060920

Change-Id: I2fc3cb4e1f65bcc28486a62731b44b0ee0a99719
ndroid/emailcommon/internet/Rfc822Output.java
7fd14be80447de15bd5360321fa80e34f60fa251 03-Mar-2011 Andy Stadler <stadler@google.com> Enable SD card encryption policy when emulated

* This is is a minimal implementation that only supports the external
encryption policy when there is no physical/removable storage, and
the emulated external storage is located within an encrypted backing
store.

Bug: 3351426
Change-Id: Id96e9277f810beeebf816a914acd3d733eb713ea
ndroid/emailcommon/service/PolicySet.java
4ef09607904da0fd0fd67d6046bd2bbae244aa82 03-Mar-2011 Marc Blank <mblank@google.com> Merge "Add some Mailbox flags for use in folder management"
fdf4a94094888634366456fe1bf7dc227367b55b 02-Mar-2011 Marc Blank <mblank@google.com> Add some Mailbox flags for use in folder management

* These flags are documented in place
* Also add constants for sentinel values of PARENT_KEY

Change-Id: I0403a196599fa938528d874dc56d56522a573d56
ndroid/emailcommon/provider/EmailContent.java
19b2a7ebc9cc770baace1605ff5b44b3fcb46320 02-Mar-2011 Makoto Onuki <omakoto@google.com> New debug setting to enable strict mode logging.

For now it only enables it for the main process. I've added a flag
to EmailServiceProxy for EAS, but it's not used in the exchange side.

Bug 3500292

Change-Id: I5b27c69fe7cc995a430e9def54b2463076032c78
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/utility/Utility.java
37f3385803de19d4b6fb4ef1b1ac9a6196dec98c 02-Mar-2011 Ying Wang <wangying@google.com> Split out emailcommon/Android.mk

Change-Id: I846ee2a4b541f4709e647aa537c61549db2bec2e
ndroid/emailcommon/AccountManagerTypes.java
ndroid/emailcommon/Api.java
ndroid/emailcommon/CalendarProviderStub.java
ndroid/emailcommon/Configuration.java
ndroid/emailcommon/Device.java
ndroid/emailcommon/Logging.java
ndroid/emailcommon/TempDirectory.java
ndroid/emailcommon/internet/BinaryTempFileBody.java
ndroid/emailcommon/internet/MimeBodyPart.java
ndroid/emailcommon/internet/MimeHeader.java
ndroid/emailcommon/internet/MimeMessage.java
ndroid/emailcommon/internet/MimeMultipart.java
ndroid/emailcommon/internet/MimeUtility.java
ndroid/emailcommon/internet/Rfc822Output.java
ndroid/emailcommon/internet/TextBody.java
ndroid/emailcommon/mail/Address.java
ndroid/emailcommon/mail/AuthenticationFailedException.java
ndroid/emailcommon/mail/Body.java
ndroid/emailcommon/mail/BodyPart.java
ndroid/emailcommon/mail/CertificateValidationException.java
ndroid/emailcommon/mail/FetchProfile.java
ndroid/emailcommon/mail/Fetchable.java
ndroid/emailcommon/mail/Flag.java
ndroid/emailcommon/mail/Folder.java
ndroid/emailcommon/mail/MeetingInfo.java
ndroid/emailcommon/mail/Message.java
ndroid/emailcommon/mail/MessageDateComparator.java
ndroid/emailcommon/mail/MessagingException.java
ndroid/emailcommon/mail/Multipart.java
ndroid/emailcommon/mail/PackedString.java
ndroid/emailcommon/mail/Part.java
ndroid/emailcommon/mail/Snippet.java
ndroid/emailcommon/provider/EmailContent.aidl
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/EmailServiceConstants.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/EmailServiceStatus.java
ndroid/emailcommon/service/IAccountService.aidl
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/IEmailServiceCallback.aidl
ndroid/emailcommon/service/IPolicyService.aidl
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/PolicySet.aidl
ndroid/emailcommon/service/PolicySet.java
ndroid/emailcommon/service/ServiceProxy.java
ndroid/emailcommon/service/SyncWindow.java
ndroid/emailcommon/utility/AccountReconciler.java
ndroid/emailcommon/utility/AttachmentUtilities.java
ndroid/emailcommon/utility/ConversionUtilities.java
ndroid/emailcommon/utility/LoggingInputStream.java
ndroid/emailcommon/utility/SSLUtils.java
ndroid/emailcommon/utility/Utility.java
a07f2ae0b18964aa15e218e8b6be8be24e5c9f46 01-Mar-2011 Ying Wang <wangying@google.com> Revert "Split out emailcommon/Android.mk"

This reverts commit c28bf353190eb576072a8fd2f98821424144876e.
ndroid/emailcommon/AccountManagerTypes.java
ndroid/emailcommon/Api.java
ndroid/emailcommon/CalendarProviderStub.java
ndroid/emailcommon/Configuration.java
ndroid/emailcommon/Device.java
ndroid/emailcommon/Logging.java
ndroid/emailcommon/TempDirectory.java
ndroid/emailcommon/internet/BinaryTempFileBody.java
ndroid/emailcommon/internet/MimeBodyPart.java
ndroid/emailcommon/internet/MimeHeader.java
ndroid/emailcommon/internet/MimeMessage.java
ndroid/emailcommon/internet/MimeMultipart.java
ndroid/emailcommon/internet/MimeUtility.java
ndroid/emailcommon/internet/Rfc822Output.java
ndroid/emailcommon/internet/TextBody.java
ndroid/emailcommon/mail/Address.java
ndroid/emailcommon/mail/AuthenticationFailedException.java
ndroid/emailcommon/mail/Body.java
ndroid/emailcommon/mail/BodyPart.java
ndroid/emailcommon/mail/CertificateValidationException.java
ndroid/emailcommon/mail/FetchProfile.java
ndroid/emailcommon/mail/Fetchable.java
ndroid/emailcommon/mail/Flag.java
ndroid/emailcommon/mail/Folder.java
ndroid/emailcommon/mail/MeetingInfo.java
ndroid/emailcommon/mail/Message.java
ndroid/emailcommon/mail/MessageDateComparator.java
ndroid/emailcommon/mail/MessagingException.java
ndroid/emailcommon/mail/Multipart.java
ndroid/emailcommon/mail/PackedString.java
ndroid/emailcommon/mail/Part.java
ndroid/emailcommon/mail/Snippet.java
ndroid/emailcommon/provider/EmailContent.aidl
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/EmailServiceConstants.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/EmailServiceStatus.java
ndroid/emailcommon/service/IAccountService.aidl
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/IEmailServiceCallback.aidl
ndroid/emailcommon/service/IPolicyService.aidl
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/PolicySet.aidl
ndroid/emailcommon/service/PolicySet.java
ndroid/emailcommon/service/ServiceProxy.java
ndroid/emailcommon/service/SyncWindow.java
ndroid/emailcommon/utility/AccountReconciler.java
ndroid/emailcommon/utility/AttachmentUtilities.java
ndroid/emailcommon/utility/ConversionUtilities.java
ndroid/emailcommon/utility/LoggingInputStream.java
ndroid/emailcommon/utility/SSLUtils.java
ndroid/emailcommon/utility/Utility.java
7c87bfc33aaf94e50e4be9ff0b838e4b3a3812f4 01-Mar-2011 Todd Kennedy <toddke@google.com> Change "appendQuotedText" to "useSmartReply" in Rfc822Output

Slight API change to make it more clear what the method parameter is for.
Also add some additonal test conditions to the Rfc822Output tests.

Reapply changes in CL https://android-git.corp.google.com/g/#change,99090

Change-Id: I7a48c9544e48cbdf44b14f4b1f8d92fe01f7861e
ndroid/emailcommon/internet/Rfc822Output.java
c28bf353190eb576072a8fd2f98821424144876e 01-Mar-2011 Ying Wang <wangying@google.com> Split out emailcommon/Android.mk

Change-Id: I90653e8601ee3ee6a8719d87ffb93222a11a22c0
ndroid/emailcommon/AccountManagerTypes.java
ndroid/emailcommon/Api.java
ndroid/emailcommon/CalendarProviderStub.java
ndroid/emailcommon/Configuration.java
ndroid/emailcommon/Device.java
ndroid/emailcommon/Logging.java
ndroid/emailcommon/TempDirectory.java
ndroid/emailcommon/internet/BinaryTempFileBody.java
ndroid/emailcommon/internet/MimeBodyPart.java
ndroid/emailcommon/internet/MimeHeader.java
ndroid/emailcommon/internet/MimeMessage.java
ndroid/emailcommon/internet/MimeMultipart.java
ndroid/emailcommon/internet/MimeUtility.java
ndroid/emailcommon/internet/Rfc822Output.java
ndroid/emailcommon/internet/TextBody.java
ndroid/emailcommon/mail/Address.java
ndroid/emailcommon/mail/AuthenticationFailedException.java
ndroid/emailcommon/mail/Body.java
ndroid/emailcommon/mail/BodyPart.java
ndroid/emailcommon/mail/CertificateValidationException.java
ndroid/emailcommon/mail/FetchProfile.java
ndroid/emailcommon/mail/Fetchable.java
ndroid/emailcommon/mail/Flag.java
ndroid/emailcommon/mail/Folder.java
ndroid/emailcommon/mail/MeetingInfo.java
ndroid/emailcommon/mail/Message.java
ndroid/emailcommon/mail/MessageDateComparator.java
ndroid/emailcommon/mail/MessagingException.java
ndroid/emailcommon/mail/Multipart.java
ndroid/emailcommon/mail/PackedString.java
ndroid/emailcommon/mail/Part.java
ndroid/emailcommon/mail/Snippet.java
ndroid/emailcommon/provider/EmailContent.aidl
ndroid/emailcommon/provider/EmailContent.java
ndroid/emailcommon/service/AccountServiceProxy.java
ndroid/emailcommon/service/EmailServiceConstants.java
ndroid/emailcommon/service/EmailServiceProxy.java
ndroid/emailcommon/service/EmailServiceStatus.java
ndroid/emailcommon/service/IAccountService.aidl
ndroid/emailcommon/service/IEmailService.aidl
ndroid/emailcommon/service/IEmailServiceCallback.aidl
ndroid/emailcommon/service/IPolicyService.aidl
ndroid/emailcommon/service/PolicyServiceProxy.java
ndroid/emailcommon/service/PolicySet.aidl
ndroid/emailcommon/service/PolicySet.java
ndroid/emailcommon/service/ServiceProxy.java
ndroid/emailcommon/service/SyncWindow.java
ndroid/emailcommon/utility/AccountReconciler.java
ndroid/emailcommon/utility/AttachmentUtilities.java
ndroid/emailcommon/utility/ConversionUtilities.java
ndroid/emailcommon/utility/LoggingInputStream.java
ndroid/emailcommon/utility/SSLUtils.java
ndroid/emailcommon/utility/Utility.java