* Meeting invitations in EAS include a globalObjId. It turns out
that this id is EITHER the actual uid (if Exchange created it)
or a wrapper for the actual uid (if some other client created it)
* To find out which case we're dealing with, we have to look at
the base64 decoded string for the magic "vCal-Uid" substring
* If it's there, we pull the real uid out of the decoded string
* Otherwise, we build a hex strong from the decoded bytes
* Write unit test for this process
Bug: 2598201
Change-Id: I1cc40af6d1e45be44c19465eb8a4c31851ec8157
Merge commit '1bf66bb8fcb4fcb74706d8e0917b7ac9f62d6710' into kraken
* commit '1bf66bb8fcb4fcb74706d8e0917b7ac9f62d6710':
Cleanup probable causes of close cursor access
Merge commit '186aa619dca002790c38b4dd8649bfe2b3a96f6e' into froyo-plus-aosp
* commit '186aa619dca002790c38b4dd8649bfe2b3a96f6e':
Cleanup probable causes of close cursor access
* Monkey is hitting this fairly often
* Multiple fixes that are all good
* We were launching LoadAccountsTask twice
* Don't use a managed cursor for the inner accounts cursor - always
close it manually by calling changeCursor(null) and letting the
MergeCursor handle its sub-cursors.
* Add isCancelled() check
* When replacing adapter, be sure to close cursor
Bug: 2524465
Change-Id: I2309e033d65430810f2856285c1fa9bf2f8fb5e3
Merge commit 'a55d27bae112429348090be7fa262d7acc1b69e8' into kraken
* commit 'a55d27bae112429348090be7fa262d7acc1b69e8':
Run the account reconciler every time we start SyncManager
Merge commit '3b3b5b0f2b65bf7efb9474ece2d8d2821beeadc2' into froyo-plus-aosp
* commit '3b3b5b0f2b65bf7efb9474ece2d8d2821beeadc2':
Run the account reconciler every time we start SyncManager
Merge commit 'ad383ff1231319c6ded4077b0d1415bf77bec70b' into kraken
* commit 'ad383ff1231319c6ded4077b0d1415bf77bec70b':
Use consistent device-id even the device is wiped.
Merge commit 'd2a0d23380a2751d82f9d1f955a812f94a301e2a' into froyo-plus-aosp
* commit 'd2a0d23380a2751d82f9d1f955a812f94a301e2a':
Use consistent device-id even the device is wiped.
* This takes care of *some* of the race conditions where the
account DB is blown away but the Email app is not running, so we
don't get any notification of a change; We have to try and
sort this out early.
* SyncManager is started by Welcome, so this catches many cases of
entering the email app.
Bug: 2567986
Change-Id: I76bea5b636802ba5c1677d8b1825fb3c61f7b2d9
* When account disappears (e.g. delete from Accounts & Sync) the Welcome
activity should launch with FLAG_ACTIVITY_CLEAR_TOP to remove any
stacked activities as well.
* When account disappears entering AccountSetupNames, don't fall out
of Eas Flow Mode.
* Followup to 5e354cd1db
Bug: 2563998
Change-Id: Ifbe086e26205bb28c2514f84cb28e839888b1eb0
The error handling for (mAccount == null) would crash. Use a simpler
path here and just abandon the setup process.
The root cause of this (the account being null) is probably solved
by 3ae84b247d, but still a good idea to
clean this up.
Bug: 2558344
Change-Id: I3167234f99e9d39844f2b56a4d94f25465c7c269
Merge commit '8dffa087db44e27e5f0e5672b19fdb6975e614a7' into kraken
* commit '8dffa087db44e27e5f0e5672b19fdb6975e614a7':
Change account colors to what aren't used in Calendar.
Merge commit '162b017140464aea05a47e7540a666b10825a8dc' into froyo-plus-aosp
* commit '162b017140464aea05a47e7540a666b10825a8dc':
Change account colors to what aren't used in Calendar.
Merge commit 'dc283b1b399da1543d57b8eae8ffcbc72f1deca0' into kraken
* commit 'dc283b1b399da1543d57b8eae8ffcbc72f1deca0':
Exit most activities when accounts are deleted
Merge commit 'f9890942bc4a61d14d65f38a16a8bb53bc979880' into kraken
* commit 'f9890942bc4a61d14d65f38a16a8bb53bc979880':
Final cleanup for account provisioning failures
Merge commit '595ebcebfaf937434dd797f0423819dae147b0d6' into kraken
* commit '595ebcebfaf937434dd797f0423819dae147b0d6':
Only set ORIGINAL_INSTANCE_TIME in exceptions
Merge commit '5e354cd1db1baabad061032af5a0632cd0f58d1a' into froyo-plus-aosp
* commit '5e354cd1db1baabad061032af5a0632cd0f58d1a':
Exit most activities when accounts are deleted
Merge commit '383b7dd29d9380442a0a560d8bdba7e23573b22d' into froyo-plus-aosp
* commit '383b7dd29d9380442a0a560d8bdba7e23573b22d':
Final cleanup for account provisioning failures
Merge commit '3fdaa329692b29c0083008bcbb5c5aa62ae7b9fd' into froyo-plus-aosp
* commit '3fdaa329692b29c0083008bcbb5c5aa62ae7b9fd':
Only set ORIGINAL_INSTANCE_TIME in exceptions
This resolves cases like this: You are in the inbox of an Exchange
account. You click home, settings, accounts & sync, and you delete
the account. Now re-enter the Email app. You'll be left in a strangely
empty inbox, for an account that no longer exists.
* Set a flag any time the reconciler deletes an account
* Check that flag in onResume of any activity that depends on the account
list and could be left in an "empty" state if account(s) are deleted.
* The Activities in which we check it are:
* AccountFolderList
* AccountSettings
* MailboxList
* MessageCompose
* MessageList
* MessageView
* Clear the flag any time we come in through Welcome, which will dispatch
to other activities properly based on the number of accounts found.
Bug: 2563998
Change-Id: I00fc542581c2bed92d744a4c2e48a88f83737f11
* We were setting this for all events, but apparently CalendarProvider
does not approve, and generates warnings
* Only set this for exceptions
Bug: 2550631
Change-Id: I8a7152eb0d4233432b1a5b5664da964d5433fbae
* Now that we get proper callbacks on updateMailboxListCallback(),
show the error banner if there's a problem
* Follow-on to 63186a5442
Bug: 2585159
Change-Id: I2b4f365d02b639bc3ceff9f8938333185d5ba693
Merge commit '58f7daac64a105f0607bf0cf64dba9d2ad523b31' into kraken
* commit '58f7daac64a105f0607bf0cf64dba9d2ad523b31':
Try a longer timeout for initial sync
* It turns out that this bug is due to a bad rebase/merge for a previous CL
in which the changed code appears in its new form AND old form
* Fixes change SHA c3aa318200 (CL 48406)
* Don't say it.
Bug: 2587775
Change-Id: I3f70a97e498db30345452b942909448049680fdf
Merge commit 'c07cd159d4151c8e75fc32972e2bed3e9aab2d01' into froyo-plus-aosp
* commit 'c07cd159d4151c8e75fc32972e2bed3e9aab2d01':
Try a longer timeout for initial sync
* We are still seeing an issue with at least one user on initial
calendar sync.
* Increase the read timeout a great deal for initial sync, as it
can a very long time for the server to respond
Bug: 2569162
Change-Id: I495c38dc58d9a80c5a21e40b6fc5d165d10a3c1a
Merge commit '772758177e3dd4fcb1c9d534afec3007b59c8bf7' into kraken
* commit '772758177e3dd4fcb1c9d534afec3007b59c8bf7':
Show device id on the exchange setting screen.
Merge commit '0f3d36010df682602260bef1e7a59191c90e805e' into froyo-plus-aosp
* commit '0f3d36010df682602260bef1e7a59191c90e805e':
Show device id on the exchange setting screen.
I've attached a screenshot on the referenced bug.
Also fixed a bug in SyncManager.getDeviceId() where sDeviceId cache wasn't
working.
Bug 2591124
Change-Id: I4b58517c095a96d47fb57179d70091b2c7af5249