Commit Graph

893 Commits

Author SHA1 Message Date
Marc Blank
0bbe34bce5 Fix #2420732 (crash in Google Services Framework)
* Exchange calendar sync created Event records for exceptions
  that didn't have a _sync_id
* This caused google calendar sync to try to upload these
  Events as new, which caused an Exception to be thrown
* Fixed EAS calendar sync adapter to generate a _sync_id for
  exceptions in the form <parentId>_<exception start time>

Bug: 2420732
Change-Id: I46769175ca89ffa4cec4fe8b0c35ef2242536185
2010-02-04 15:23:09 -08:00
Marc Blank
8f8179f07e Merge "Add calendar sync checkbox to account settings screen" 2010-02-04 12:24:52 -08:00
Marc Blank
0692ec4836 Fix #2414056 (NPE after delete account)
* Add check for deleted mailbox

Bug: 2414056
Change-Id: I20aea69b0ad2c2ad2eacb76febcafb881f9eecc3
2010-02-04 10:38:18 -08:00
Marc Blank
a1c997a2b6 Add calendar sync checkbox to account settings screen
Bug: 2414157
Change-Id: I60ead139552f3e7c86b113f8b8b10ef3cf57abbf
2010-02-04 10:28:37 -08:00
satok
d9080ed32e Add UI for Signature in Email Application
Bug: 1323618

- changed summary of signature to show hint if signature is not set
2010-02-04 10:28:55 +09:00
Marc Blank
7c6c1fd519 Merge "Build proper TimeZoneInformation strings for upsync; fix bugs" 2010-02-03 14:42:23 -08:00
Marc Blank
6f3013b787 Build proper TimeZoneInformation strings for upsync; fix bugs
* Create full TZI strings for upload of events (previously, we
  omitted DST information)
* Add documentation to some unit tests
* Put in correct logic for determining if upload needed
* Fix problem w/ parsing empty tags

Change-Id: I268ce8a2db30b3cfdf0e44f6a78befd6bd933243
2010-02-03 14:41:45 -08:00
Makoto Onuki
91237e9dcb Adding script for building Email app without exchange.
remove-exchange-support.sh makes it possible to build the email app without
exchange support.

This script:
- removes all packages under com.android.exchange.
- removes all lines surrounded by EXCHANGE-REMOVE-SECTION-START and
  EXCHANGE-REMOVE-SECTION-END

And the resulting source should still build and run fine.

Bug: 2369784
2010-02-03 11:39:46 -08:00
Andrew Stadler
8bb0ee3b92 Fix auto-discover / account verification logic
New behavior:
 * There are two primary paths through this activity:
 *   Edit existing:
 *     Load existing values from account into fields
 *     When user clicks 'next':
 *       Confirm not a duplicate account
 *       Try new values (check settings)
 *       If new values are OK:
 *         Write new values (save to provider)
 *         finish() (pop to previous)
 *
 *   Creating New:
 *     Try Auto-discover to get details from server
 *     If Auto-discover reports an authentication failure:
 *       finish() (pop to previous, to re-enter username & password)
 *     If Auto-discover succeeds:
 *       write server's account details into account
 *     Load values from account into fields
 *     Confirm not a duplicate account
 *     Try new values (check settings)
 *     If new values are OK:
 *       Write new values (save to provider)
 *       Proceed to options screen
 *       finish() (removes self from back stack)
* Added unit test for new loadFields method

Bug: 2412300
2010-02-03 10:38:27 -08:00
Makoto Onuki
b854d05a89 Change EAS authenticator's label according to the vendor policy.
Our original plan was to disable both authenticators by default, and enable
one of then on boot.  However, it turned out existing exchange accounts will
be removed if there's no enabled authenticators for the account type.
So, instead, in this patch we initially enable only the default one, and switch
to the other one on boot if the vendor policy indicates so.

(If a device has a vendor policy apk, it should also have the email app
preloaded, so changing the label at boot time isn't too late.)

Bug: 2382710
2010-02-02 16:25:29 -08:00
Makoto Onuki
130988e49d Merge "Gather common exchange related methods into one place" 2010-02-02 13:48:04 -08:00
Andy Stadler
561e10d4c0 Merge "Clean up exception handling in VendorPolicyLoader" 2010-02-02 13:39:30 -08:00
Makoto Onuki
9fe51f6329 Gather common exchange related methods into one place
So that it'll be easier to remove exchange dependency.
2010-02-02 13:36:45 -08:00
Makoto Onuki
049509d10e Merge "Move Eas.ACCOUNT_MANAGER_TYPE out of the package." 2010-02-02 13:34:04 -08:00
Andrew Stadler
a6e6dd096c Clean up exception handling in VendorPolicyLoader
Per code review suggestions, clean up exception handling, and add
commentary to make intended behavior more explicit.

Followup to: 0434fef1f6
Bug: 2413388
2010-02-02 12:19:49 -08:00
Andrew Stadler
0434fef1f6 Fix crash in VendorPolicyLoader
* Create unit test to reproduce crash
* Fix handling of empty bundle (the default return value)
* Clean up some exception handling in the policy module loader, which
  reduces some unneeded logging.

Bug: 2413388
2010-02-02 10:41:56 -08:00
Marc Blank
cfbbb99c67 Merge "Handle upsync of multiple BYDAY values; add some unit tests" 2010-02-01 17:00:35 -08:00
Andrew Stadler
d62860821c Additional SecurityPolicy functionality
* Begin wiring into system DevicePolicyManager requirements
* Semi-real implementations of isSupported() & isActive()
* Added new API (placeholder) updatePolicies()
* Updated existing unit tests as needed

Bug: 2387961
2010-02-01 16:48:16 -08:00
Marc Blank
a825939459 Handle upsync of multiple BYDAY values; add some unit tests
Change-Id: If3be28df41ed88cb83edca2f6ea6ca1f734f506f
2010-02-01 16:44:16 -08:00
Andrew Stadler
ecb1af8041 Finish up IMAP ID implementation
* scrub all external strings to keep them compliant for IMAP protocol
* move Build.MODEL to x-android-device-model
* send x-android-mobile-net-operator
* send AGUID
* unit tests for above
* retrieve providers from VendorPolicyLoader

Bug: 2332183
2010-02-01 15:53:46 -08:00
Makoto Onuki
faed6178b1 Move Eas.ACCOUNT_MANAGER_TYPE out of the package.
Moved Eas.ACCOUNT_MANAGER_TYPE to Email.EXCHANGE_ACCOUNT_MANAGER_TYPE.

This constant is not related to the exchange protocol, and referred in
a lot of different places.  Moving it out of the package will make it a lot
simpler when removing exchange dependency.
2010-02-01 15:38:15 -08:00
Makoto Onuki
b89bc81f54 Merge "Fix confusing setup screen title." 2010-02-01 14:25:54 -08:00
Makoto Onuki
e5c3c98e9a Fix confusing setup screen title.
Change the title of the screen for adding an exchange account from "Set up email" to "Add an Exchange account".

Bug: 2159019
2010-02-01 14:24:38 -08:00
Marc Blank
31ac14aa51 Remove default EAS Calendar parser logging
Change-Id: Id05d9721b1f40242cb9f77ae21575bfef2d1b671
2010-02-01 14:12:59 -08:00
Marc Blank
7a2776a5b4 Further work on Exchange calendar sync; exception upsync
* Add code to upsync exceptions; debug same
* Use AccountManager to handle sync keys (as w/ Contacts)
* Add unit tests in next CL

Change-Id: Ib8526d70de33ed7e551b9713a3bbf1ad80612948
2010-02-01 13:10:41 -08:00
Marc Blank
0088918e4e Merge "Additional work on new Event upload to EAS server" 2010-01-31 09:18:27 -08:00
Marc Blank
dc6930c0b3 Additional work on new Event upload to EAS server
* Added support for reminders and recurrences
* Note that Duration class is copied from CalendarProvider with only
  formatting changes

Change-Id: Icf399df422f813ba8e7880646bfbc96a2156a204
2010-01-31 09:17:50 -08:00
Makoto Onuki
e853286713 Merge "Move non-exchange specific classes to com.android.email.service." 2010-01-29 16:22:23 -08:00
Makoto Onuki
8ee17c7012 Unifying dupe code in Debug.java and Email.java. 2010-01-29 15:44:56 -08:00
Makoto Onuki
bb9b5163c1 Move non-exchange specific classes to com.android.email.service. 2010-01-29 10:37:39 -08:00
Marc Blank
d99dbf01fb Fix problem with Event creation by EAS calendar sync
* Turns out that DURATION is required by CalendarProvider, and
  DTEND has a different meaning than it does to EAS
* Fix downsync to create proper recurring events

Change-Id: Ibf85422de73579a93de89b2c27c13f96994bedc8
2010-01-28 12:31:36 -08:00
Marc Blank
f3fcb8929e Implement Exchange calendar sync support
What should be working:
* Events sync down from server and appear in calendar
* Recurrences and exceptions appear in calendar
* Changed events on server should be reflected in calendar
* Deletions on server should be reflected in calendar
* Push of new/changed/deleted events should work
* Changes on device are NOT synced back to server
* New, single events on device are synced back to server
  (no time zone, attendee, or recurrence support)
* Checkbox for syncing calendar added to setup flow
* System sync glue in manifest, etc.
* Bugs are to be expected
* A few unit tests; needs more

Change-Id: I7ca262eaba562ccb9d1af5b0cd948c6bac30e5dd
2010-01-28 09:18:48 -08:00
Mihai Preda
b4e7a85eaa Merge "MessageCompose: properly remove quoted text from saved draft." 2010-01-28 03:48:20 -08:00
Makoto Onuki
f98ffb6f44 Merge "Add "vendor policy" loader, and alternate exchange descriptive text." 2010-01-27 18:09:05 -08:00
Makoto Onuki
f613489663 Add "vendor policy" loader, and alternate exchange descriptive text.
- Dynamically switch to the alternate exchange strings to substitute overlays.
- Added the mechanism to load the "vendor policy", which tells you when the
  alternate strings should be used.

Bug: 2382710
2010-01-27 17:40:56 -08:00
The Android Open Source Project
d423fb996f am 08d92ebf: merge from open-source master
Merge commit '08d92ebf4722e45216ee225775a3b86f9ceecc0d'

* commit '08d92ebf4722e45216ee225775a3b86f9ceecc0d':
  Trim the mime type portion of Content-Type.
2010-01-27 16:29:17 -08:00
Marc Blank
46199c65a3 Fix #2382368 (NPE in AccountSetupExchangeTests)
* AccountSetupExchange defaultly tries using EAS AutoDiscover, which isn't
  appropriate in the unit test setting
* Add an Intent extra to disable AutoDiscover and use it in unit tests

Bug: 2382368
Change-Id: I3d4e8d7194b02da44ad583da0cf2fe60ffb19311
2010-01-27 13:57:20 -08:00
Andrew Stadler
345fb8b737 Add utilities for processing account security policies
* Add security sync key & signature columns
* Add utilities for easy read/write of security columns
* Write aggregator for multiple accounts
* Simple API's for exchange security (very preliminary)
* Unit tests of above

Bug: 2387961
2010-01-26 17:24:15 -08:00
Marc Blank
3ef6b0493e Merge "Handle Exchange meeting invitation responses" 2010-01-26 09:29:05 -08:00
Marc Blank
5de54008e5 Handle Exchange meeting invitation responses
* Includes some refactoring of internal "request" code in SyncManager
* Adds Message flags to tag meeting invites and cancellations
* Adds meetingResponse method in EmailService
* Hooks into Controller and MessageView UI included

Change-Id: I4c5e10bccc4b41956b94d9dfa55925e5af030939
2010-01-26 09:08:52 -08:00
Mihai Preda
e3e65ed919 MessageCompose: properly remove quoted text from saved draft.
Bug 2363249.
2010-01-26 17:19:49 +01:00
Andrew Stadler
468371917e IMAP ID
* Add IMAP ID command to all login sequences
* Send generic information for now
* Explicitly catch & discard parsing errors, since we really don't
  care if the command succeeds or not.
* Unit tests

Bug: 2332183
2010-01-25 18:40:45 -08:00
Mihai Preda
def85b1ce4 Merge "MessageCompose: show account name in title." 2010-01-22 03:45:01 -08:00
The Android Open Source Project
08d92ebf47 merge from open-source master 2010-01-21 13:19:17 -08:00
Andrew Stadler
fc8d943a82 Add security column to Account
* Upgrade accounts table to add security column
* Read/Write new column
* Backup/Restore new column
* Unit tests for all of the above
* First cut at defining bitfields (non-binding, just putting down ideas)

Bug: 2387961
2010-01-21 11:48:02 -08:00
Patrick Horn
2517a3dfd1 Trim the mime type portion of Content-Type.
Fixes parsing of Content-Type headers like "text/plain ; charset=iso-8859-1"
Added unit tests for whitespace and the charset parameter
2010-01-21 11:46:20 -08:00
Mike Lockwood
87a520d7b9 Use default values rather than hard coding green for LED notification color.
Change-Id: Id192ea4d34725abf9ce892bc24e5c8562215f3e3
BUG: 2329568

Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-01-21 11:20:23 -05:00
Mihai Preda
f9623b9e78 MessageCompose: show account name in title.
Bug 2338152.
2010-01-21 14:47:18 +01:00
Andrew Stadler
6605152908 am 346a0cc1: Backup/Restore accounts - bugfix - DO NOT MERGE
Merge commit '346a0cc1e00fcfde05df66eb37433172c96b1c36' into eclair-plus-aosp

* commit '346a0cc1e00fcfde05df66eb37433172c96b1c36':
  Backup/Restore accounts - bugfix - DO NOT MERGE
2010-01-20 18:29:43 -08:00
Andrew Stadler
346a0cc1e0 Backup/Restore accounts - bugfix - DO NOT MERGE
* Followup to 85d765f4
* Workaround for (HTC bug: 2275383) & (Moto bug: 2226582)
* Restores mSyncKey as null instead of empty string, which is how
  a new account is initialized.  Bug: 2385980
* Cleanup synchronized logic in backup & restore
* Minor cleanups & improved comments

Cherry-picked from master d612717340
2010-01-20 17:24:33 -08:00