Commit Graph

2811 Commits

Author SHA1 Message Date
Marc Blank
25ab2df296 Fix typo and comment
Change-Id: Iffc69baf98c05a09693ba9a053c91d921fc1b423
2011-03-02 09:37:00 -08:00
Andy Stadler
2d6a98aedf Prevent NPE when account sender name is null
Bug: 3500373
Change-Id: Id07270f34d9cc0523c46104b3167711b71798623
2011-03-01 22:19:53 -08:00
Ying Wang
37f3385803 Split out emailcommon/Android.mk
Change-Id: I846ee2a4b541f4709e647aa537c61549db2bec2e
2011-03-01 15:56:27 -08:00
Andy Stadler
5297b452a2 Repair build break caused by gerrit non-rebase bug
* Undo the combination of I90653e86 & Ia07f2ae0
* By re-inserting the changes from I79d48bef

Change-Id: I70ac46c91f1ab5c90b74b0d43f293fb9741206cd
2011-03-01 15:29:45 -08:00
Ying Wang
a07f2ae0b1 Revert "Split out emailcommon/Android.mk"
This reverts commit c28bf35319.
2011-03-01 14:52:05 -08:00
Ying Wang
39919cb5e0 Merge "Split out emailcommon/Android.mk" 2011-03-01 14:28:14 -08:00
Todd Kennedy
9ad3799fe4 Merge "Change "appendQuotedText" to "useSmartReply" in Rfc822Output" 2011-03-01 13:58:36 -08:00
Marc Blank
81273dfcee Fix deadlock issue in AttachmentDownloadService
* When a connectivity wait was added to processQueue, I neglected
  to consider that a lock was held during this time
* The fix is to move the check for connectivity out of processQueue

Bug: 3500702

Change-Id: I646cf899ff895d9838612e89b15b66f1084840b1
2011-03-01 13:43:44 -08:00
Todd Kennedy
0d49ef78eb 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.

Change-Id: I8888d6201e79136fa3420aa9d5f921772f374e56
2011-03-01 13:30:21 -08:00
Ying Wang
c28bf35319 Split out emailcommon/Android.mk
Change-Id: I90653e8601ee3ee6a8719d87ffb93222a11a22c0
2011-03-01 12:29:05 -08:00
Makoto Onuki
23d6be4d21 Merge "Update screen properly when # of accounts becomes 1 from 2" 2011-03-01 11:20:31 -08:00
Andy Stadler
30793aa791 Merge "Add parent key to Mailbox schema" 2011-03-01 10:46:56 -08:00
Andy Stadler
3a58509b2a Add parent key to Mailbox schema
Bug: 2028418
Change-Id: I79d48befe7754692a3cab6c8851105bb399431f5
2011-03-01 10:45:50 -08:00
Todd Kennedy
da8326dfe7 Disable zoom icons if device supports multitouch
On multitouch devices, the zoom icons are not needed (the user can pinch to
zoom in/out). So, we should disable the display of these icons on multitouch
devices.

bug 3405875

Change-Id: I45484cfc622f11c25d3ea7f4c378c3133d7f7de0
2011-03-01 07:52:27 -08:00
Todd Kennedy
fe68c0e7c2 Use HostAuth to determine settings changes
There were two TODO's from a prior CL where deprecated HostAuth methods
were removed.

1. Do not use a generated URI to determine if account settings have changed.
   Instead, use the HostAuth structure for this purpose.
2. The account key in the HostAuth structure has been deprecated. Remove as
   much of it as possible (until the schema of the host auth database changes,
   we must still refer to it when adding rows).

In the process, HostAuth tests were broken out into a separate unit test
file.

Change-Id: I4075da09af168f734db7b20a9ef63d4178ac2064
2011-03-01 07:49:54 -08:00
Marc Blank
e4481d4110 AccountServiceProxy.restoreAccountsIfNeeded should be synchronous
* In the case where there are no Exchange accounts, we can stop ExchangeService
  while restoreAccountsIfNeeded is still running, which can cause us to leak
  the connection
* Change the call to be synchronous.

Bug: 3495601
Change-Id: I4a396e8b1650bd15fabd2802d2ec8d4276c6e43a
2011-02-28 18:00:08 -08:00
Makoto Onuki
fc156033d9 Update screen properly when # of accounts becomes 1 from 2
This happens when
- two accounts are configured
- select account 1
- remove account 1, and account 2 becomes active

In this case we failed to select account 2, and the fragments would keep
thinking account 1 was active.  (So no mailboxes would be shown--beacuse there
was of course no mailboxes for account 1!)

When the account list changes, the account loader (created in loadAccounts())
automatically reloads the account list, and calls updateAccountList().  If
there're still more than 1 account at this point, updateAccountList() updates
the account spinner on the action bar.  This will result in
ActionBarNavigationCallback getting called, which then updates the current
account as expected.

However, if there's only one account left, we hide the spinner and just
set the account name to the action bar title, so
ActionBarNavigationCallback won't get called and the current account
never changes.

In this case we shouldn't rely on ActionBarNavigationCallback but have to
explicitly update the current account.

Bug 3491567

Change-Id: Ia9ba3e1c11248ad5a1ba7e055717c5519d6e4884
2011-02-28 17:44:11 -08:00
Makoto Onuki
4d4bb9a849 Fix auto-refresh of mailboxes.
Removed the ugly doAutoRefresh() and byExplicitUserAction.

The intention for these was to supress auto-refresh when the message list
opens without any explicit user action, e.g. due to screen rotation.

However, now that we have the RefreshManager.isMailboxStale check with 5
minutes duration, this check is not really necessary.  Let's just always
refresh mailbox if it's stale.

Bug 3493134

Change-Id: I6d0365ed7f8092304117d5f619d570b828edf76f
2011-02-28 15:08:08 -08:00
Marc Blank
51a7151cfc Merge "Send logging information to Exchange when deviceId is retrieved" 2011-02-27 22:34:10 -08:00
Marc Blank
fdec974c93 Send logging information to Exchange when deviceId is retrieved
* Clean up logging to indicate the actual Service being used

Change-Id: I55f87487389accb1aad9b0cc03eff945ea0b1f3e
2011-02-27 12:08:36 -08:00
Jesse Wilson
5d29dac806 React to LruCache.entryEvicted renamed to LruCache.entryRemoved
Change-Id: Iab20ce0386ee4dabc8490dbde5cd2208626c293c
http://b/3461302
2011-02-25 17:25:28 -08:00
Makoto Onuki
f583bf66b2 Merge "Message view: Restore tab after screen rotation." 2011-02-25 14:37:25 -08:00
Marc Blank
dc78a769fc Email split, part dix
* The coup de grâce for Exchange in Email
* Remove Exchange bits from AndroidManifest
* Update Android.mk to create static jar for emailcommon
* Delete all com.android.exchange files
* Delete all exchange-only strings
* Change loadAttachment service method to take only attachment id and
  background flag
* Add code to AttachmentProvider.openFile() that opens an output file
  for attachment writes
* Make sure deviceId is determined in Email app (not Exchange)

Bug: 3442973
Change-Id: I775600252fd121f474d51cb26fefbfcc50e387af
2011-02-25 10:46:16 -08:00
Makoto Onuki
a553559f37 Message view: Restore tab after screen rotation.
Restore current tab and "show pictures" state.

Bug 3384629

Change-Id: Ia7dca5f53b313f3f54781f6a061767d982773a9b
2011-02-24 14:39:52 -08:00
Todd Kennedy
5920989bde Fix NPE when restoring setup activity
If the setup activity ever needs to restore itself after being killed, we were
restoring the Activity object's state (i.e. rebuilding the UI) before we
restored the state of our class. Since the Activity necessarily depends upon
our object's state, Bad Things can [and will] happen.

The solution is simple -- save our object's state last, but, restore our state
first.

bug 3476039

Change-Id: I623f1938c2e0f50d660708a7a7ac3eeb4a8f9090
2011-02-24 12:44:07 -08:00
Makoto Onuki
3d2f22c7a6 Merge "Widget: Use unread count for inbox views." 2011-02-24 11:22:00 -08:00
Makoto Onuki
fc4006b276 Widget: Use unread count for inbox views.
Bug 3431240

Change-Id: I61a91462cdd864604f5ddc06ff93c0ecf3001e20
2011-02-23 17:25:07 -08:00
Makoto Onuki
6842c5768f Merge "Remove com.android.email.widget.ViewType" 2011-02-23 17:10:40 -08:00
Todd Kennedy
2428ea767e Merge "Properly clear "next" button de-bounce flags" 2011-02-23 17:07:15 -08:00
Todd Kennedy
64c7a437ac Properly clear "next" button de-bounce flags
In some cases, the de-bounce flags were not being properly cleared. Namely, on
the outgoing settings screen. We now consistently clear the flags to ensure the
"next" button is always actionalble when it should be.

bug 3425395

Change-Id: Ib8085fb96522158198d9f33a12effef8f65c0d19
2011-02-23 16:41:36 -08:00
Makoto Onuki
64c914a6a1 Remove com.android.email.widget.ViewType
WidgetView has took over this, but I forgot to remove it.

Change-Id: I6a5012263f81223904907eb78ff22472ff5d8f85
2011-02-23 16:27:17 -08:00
Makoto Onuki
a08fa43b85 Merge "Fix the attachement view layout." 2011-02-23 15:30:20 -08:00
Makoto Onuki
88c8044586 Fix the attachement view layout.
The progress bar is not meant to be GONE.  Encapsulated the progress view
in MessageViewAttachmentInfo to make sure that won't happen.

Bug 3417034

Change-Id: I1efee089cc7921f4428a38fcbcdc2e8aa3cec9fd
2011-02-23 15:16:29 -08:00
Makoto Onuki
47bdd174dc Merge "SizeBoundingFrameLayout: framelayout with max width/height" 2011-02-23 15:12:41 -08:00
Makoto Onuki
fc8a65aecf Merge "Refactoring widget part 2" 2011-02-23 15:12:22 -08:00
Makoto Onuki
9299d6082c Merge "Pixel pefect: account spinner." 2011-02-23 15:12:08 -08:00
Todd Kennedy
ffe6ef342a fix UnsupportedOperationException in tests
We're using the mock context to prevent modifying the real databases. However,
we need the real context to create intents. Use the real context in the few
places we must use it.

Change-Id: Icb8d289239218921c0b4b5c93ac7983830d90394
2011-02-23 14:51:45 -08:00
Makoto Onuki
897a0ea81c Refactoring widget part 2
- Extracted the loader
- Extracted ViewType and introduced WidgetView.
  WidgetView is ViewType + mutable fields, such as account id.
  WidgetView now owns the method to switch views.

These two are basically in preparation to address the message count bug.
(we're showing total message count where it should be the unread count,
which is a bit tricky because it'll require two different queries.)

- Also simplified the threading model in EmailWidget to fix potential
  theading issues. (now (almost) everything works on the UI thread)

Bug 3431240

Change-Id: I9f8a268210995f1135baabe88b49b274272708d4
2011-02-23 14:20:00 -08:00
Makoto Onuki
b3c3f1afc6 Pixel pefect: account spinner.
The expanded account spinner is completed, but the collapsed view
needs some more work.  (That'll probably be a rather large CL, so I'll
finish it in a separate CL.)

Bug 3434135

Change-Id: Ia732e6b57b8c0d3e1609c3134b26411539ab6a18
2011-02-23 13:59:11 -08:00
Makoto Onuki
de9e706ed9 SizeBoundingFrameLayout: framelayout with max width/height
This will be used to set the max width to the account name spinner.

I gave up on writing tests for onMeasure.  It wasn't easy without adding
a dummy activity and layout.

It'll be used for a fix to bug 3439694.

Change-Id: Ie7569b0661eb732e270e4521fa0d3306f1bdd12c
2011-02-23 13:32:36 -08:00
Todd Kennedy
8c89674b64 Always set a delete policy for legacy accounts
The delete policy can only be set for POP3 accounts. However, the delete policy
is used for all legacy accounts (that includes IMAP). As such, we need to make
sure IMAP accounts also have their policy set; even though the setting is not
configurable by the user.

The delete policy does not mean anything for Exchange accounts, so, we do not
need to modify the account setup code for them.

bug 3074164

Change-Id: Iab10d2997404b3b0c10a60a64fb652540c0d2d1a
2011-02-23 11:00:19 -08:00
Makoto Onuki
dd123f927a Reset fragment state when opening a new account/mailbox
Without this, there's a small window where a fragment is in a valid
state after openXxx() before the list is loaded.

Bug 3420361

Change-Id: I7f84a94dec1419762aa6b24188c023abe974d2bf
2011-02-22 15:24:53 -08:00
Todd Kennedy
3f60e9312b Add "info" button to the attachment view
Whenever we remove the "load" and "view" buttons, we should add an "info"
button; where we will inform the user as to why we are preventing her from
seeing the attachment.

bug 3338997

Change-Id: Ic243f1542dec55f5b256eeb67ade50aa90e42009
2011-02-22 08:20:54 -08:00
Todd Kennedy
9b1906337a Only show chip if we have >1 account
bug 3435487

Change-Id: I42668fc9d6f118a83943fbe00edf5eb28b7749d6
2011-02-22 08:06:08 -08:00
Andy Stadler
d096f70ab3 Merge "Add contextual dialogs after notifications" 2011-02-19 21:39:58 -08:00
Andy Stadler
f489413142 Add contextual dialogs after notifications
* When security settings notification is clicked, inform user that
  they need to change settings (before dumping them in security
  settings.)
* On an authentication failure, present a dialog to the user explaining
  that the username or password may be incorrect.
* When the device pin/password is expiring or expired, present a dialog
  to the user explaining that it needs to be updated.

Bug: 3238657
Change-Id: I8fca446fa3c1bf87a95938553dbdc362c3df220e
2011-02-18 18:23:18 -08:00
Todd Kennedy
34704851e9 Update account list if account description changes
Editing the account description occurs in a different fragment. As such, we
need to notify the fragment in charge of the account list whenever the
description is updated.

We already have a callback mechanism, so, expand that to send notifications
of any property change.

bug 3388586

Change-Id: I02475233f7f333db57c49ceaf908dbfa69c86ca6
2011-02-18 16:45:17 -08:00
Todd Kennedy
3a4a1ac834 Send attachments through the download manager
bug 3339015

Change-Id: Ic16033a73d0e32608a14a2737f6ff28556dbe782
2011-02-18 16:07:41 -08:00
Todd Kennedy
a819783491 Fix NPE when creating an account from template
if you create an account using one of the pre-defined templates (such as
Yahoo!), the user name and password were not being set in the HostAuth
structure. This was causing an NPE when we tried to generate an IMAP ID.

Change-Id: I9619cddc0ab758c187cf4b9c7c84485ac1f4bfdd
2011-02-17 14:43:50 -08:00
Todd Kennedy
040ddf60cf Resolve build warnings; part 5
Remove dependence upon URIs for creating the host auth structure

Change-Id: I92dee36fa329a8976b76bbd4991ed3469c6475f2
2011-02-16 17:38:31 -08:00
Andy Stadler
c6d344ad2a Refresh email notifications (part I)
* Use strings that fit properly in new notifications
* General cleanups & rewrites from Roy
* Remove showWarningNotification() and use postAccountNotification()

This is part I.  Part II will add dialogs triggered by some of these
notifications, to provide more explanation to the user of what's wrong
and how to fix it.

Bug: 3238657
Change-Id: Ib51bcb4412f8a09a6f97653f0b5f8642efe2ac1e
2011-02-16 16:38:18 -08:00
Jesse Wilson
d75968acfb Merge "Adopt LruCache in Email's ContentCache." 2011-02-16 09:38:39 -08:00
Marc Blank
3a5c1fb274 Email split, part neuf: Setup, logging, attachment glue
* Make "Exchange" option in account setup depend upon availability of the
  Exchange EmailService
* Make presence of Exchange logging depend upon availability of the
  Exchange EmailService
* Make AttachmentDownloadService use service rather than ExchangeService
  class
* Move SSLUtils to emailcommon/utility
* Move account manager type defs to emailcommon/AccountManagerTypes
* Update proguard.flags
* This is the penultimate CL for the Email package itself; the next CL
  creates a clean, SDK-compatible Email application

Bug: 3442973
Change-Id: I9162cf5fa6b5a043ded0fdd1e25fd3ce5948ad8f
2011-02-14 16:08:55 -08:00
Marc Blank
31d9acbf06 Email split, part huit: Refactor constants, clean emailcommon
* There are three pieces to this CL (sorry):
  1) Move and/or rename some constants into emailcommon
  2) Move Utility to emailcommon, moving the few UI
     related utilities back into Email (FolderProperties
     and UiUtilities)
  3) Remove all references to resources from emailcommon
* The three pieces relate in that, between them, they allow
  the emailcommon static library to compile cleanly

Bug: 3442973

Change-Id: Ic5e3abaa2a1b36999e0b6653c6c2134ea1bd544f
2011-02-14 12:18:10 -08:00
Marc Blank
37500777f1 Email split, part sept: Configuration
* Add getConfigurationData api to AccountService; this allows clients
  to get configuration-related data from the Email app
* We use this so that Exchange can determine whether alternative strings
  should be used

Bug: 3442963
Change-Id: Ieea56e3416458dc57699b00c2fc062dfcf7abca9
2011-02-14 11:24:28 -08:00
Todd Kennedy
32311cce01 Implement IMAP prefix support
We support two different ways for an IMAP prefix to be specified:
  1. A text field on the IMAP configuration page. This is the most obvious to
     the end user. It is also an explicit, manual configuration.
  2. RFC2342 defines a NAMESPACE IMAP command to be able to query the prefix
     from the IMAP server. This is an automatic configuration without any
     user involvement (i.e. the UI will NOT change if a prefix is loaded in
     this way)

If the user goes to the trouble of specifying a prefix, we will always honour
it instead of the namespace returned by the IMAP server -- even if the user's
configuration is wrong.

bug 1592696

Change-Id: I6b94c7aaac538f6cd9dc4694b0f1634e8c956bc1
2011-02-11 14:17:48 -08:00
Jesse Wilson
92ab6db38d Adopt LruCache in Email's ContentCache.
LruCache simply wraps LinkedHashMap for a better API.
Performance/hit rate should not be impacted.

Tracking bug: http://b/3184897

Change-Id: Icbac38d3cea5f8c522df7a883d8e74a8f3786b92
2011-02-11 14:02:28 -08:00
Marc Blank
a7bc0319a7 Email split, part six: EmailContent
* Moved EmailContent to emailcommon

Change-Id: Ib3db1bfcfe74554c0e5afd3cfce6d72f26e9aeb9
2011-02-10 19:44:29 -08:00
Marc Blank
2193962ca2 Email split, part quatre: Move along, nothing to see here
* No code was harmed, er, changed in the making of this CL
* All that's happened is that code that is needed by both Email and
  Exchange have been moved into emailcommon
* This required import changes to many files, which explains the
  length of the CL

Change-Id: I4e12455ba057a4a8054fdbd0b578c73afa411c8a
2011-02-10 16:28:37 -08:00
Marc Blank
8a57469460 Email split, part trois: AccountService
* Create AccountService.aidl and AccountServiceProxy in emailcommon
* Implement AccountService in email
* Use AccountServiceProxy in Exchange for account reconciliation,
  notifications, etc.
* Move sync window constants into emailcommon
* Split attachment provider utilities and constants into emailcommon

Bug: 3442973
Change-Id: I89dce28b799b193243c07774dab65d830ae62775
2011-02-10 14:32:01 -08:00
Marc Blank
9ba506c4dd Email split, part deux: PolicyService
* Split PolicySet from SecurityPolicy and move to emailcommon
* Define PolicyService that sync adapter services can use to
  interact with the Email DPM administrator
* Implement PolicyServiceProxy for exchange
* Implement PolicyService in email
* Modify imports, references, etc. as required

Bug: 3442973

Change-Id: I92015e21f780a68754b318da89fbb33570f334a2
2011-02-10 13:53:37 -08:00
Marc Blank
0d4fc55861 Email split, part one: EmailService
* Create emailcommon package
* Move EmailService classes to emailcommon package
* Change references to aidl's to emailcommon package
* Add getApiLevel() command to EmailService

Bug: 3442973

Change-Id: Ic7d2115363cdff6ebb86c46650b0a5b2109b1c72
2011-02-10 13:10:38 -08:00
Todd Kennedy
8cc2fc5101 Merge "Fix attachment mime type unit tests" 2011-02-08 14:32:22 -08:00
Makoto Onuki
314a51cb1d Refactoring widget
- Moved to com.android.email.widget
- Extracted nested classes to top-level classes
- Some small clean-ups.
- WidgetProvider and WidgetProvider$WidgetService are left in the original
  package to keep compatibility with honeycomb (3.0) release.

This CL is supposed to be pure-refactoring.  There should be no
functionality changes.

Change-Id: I37acaa24b6b488724750c0f33374b31fcc433f11
2011-02-08 13:10:42 -08:00
Todd Kennedy
8586532f3e Fix attachment mime type unit tests
Attachments with no extension and mime type of text/plain need to return the
mime type of "text/plain" instead of "application/octet-stream"

bug 3428076

Change-Id: I00452c908ac0672879d42f4ed9ee574e376eac9f
2011-02-08 09:51:16 -08:00
Andy Stadler
d4cad2dae8 Merge "Remove all compatibility with pre-2.0 data" 2011-02-07 11:12:25 -08:00
Marc Blank
433d500cb9 Merge "Show smart forward attachments in MessageCompose" 2011-02-07 10:11:36 -08:00
Andy Stadler
7d51b7a05b Remove all compatibility with pre-2.0 data
* Remove LocalStore (pre-2.0 mail database) and its unit test
* Remove UpgradeAccounts (converted pre-2.0 accounts to Provider)
* Remove FolderMessageList (receiver for pre-1.6 desktop shortcuts)
* Remove "upgrading" paths through LegacyConversions
* Clip out dangling references to everything above

Bug: 3292310
Change-Id: I5654d55a0879b00b05b63055b94651855a8ee3ef
2011-02-06 00:54:39 -08:00
Todd Kennedy
5e39f90e9d Resolve build warnings; part 4
Fix unchecked warnings

Change-Id: I872740fca4e5050e6ed2922eabc7e46e5e97ff3c
2011-02-03 12:44:24 -08:00
Todd Kennedy
8d8537cd2e Resolve build warnings; part 3
Fixes deprecation warnings

NOTE: This does not resolve hostauth deprecation; that will be fixed
in a separate CL.

Change-Id: I47115516da34effbf885615cb439c9d3e6f95b84
2011-02-03 12:43:12 -08:00
Todd Kennedy
8546e21e1e Resolve build warnings; part 2
Change-Id: I76c1a5a4f759071f92eef0574abb20a99bfb32b7
2011-02-03 11:46:40 -08:00
Todd Kennedy
44de127691 Resolve build warnings; part 1
Change-Id: I80ca98ef80a427229ab5feb41568e34b257f32ce
2011-02-03 11:44:39 -08:00
Jesse Wilson
3aee641aab Use a field rather than a superclass for ContentCache's cache.
This makes it easier for cache experiments to swap out the
LinkedHashMap for another cache.

http://b/3184897
Change-Id: Iacdb266e41f5a98efd9bb30bc09ff8fff5a0a5a9
2011-02-02 12:11:17 -08:00
Makoto Onuki
9d8438e7e3 am 1cedfc8e: am 6c15d943: Merge "Don\'t mix up loader managers" into honeycomb
* commit '1cedfc8e5c16c6331f4689f2fb5c81117958c987':
  Don't mix up loader managers
2011-02-01 16:06:36 -08:00
Makoto Onuki
1cedfc8e5c am 6c15d943: Merge "Don\'t mix up loader managers" into honeycomb
* commit '6c15d943c2a5b4bfb4178d85acf0f415cb2fd6af':
  Don't mix up loader managers
2011-02-01 16:04:42 -08:00
Makoto Onuki
6c15d943c2 Merge "Don't mix up loader managers" into honeycomb 2011-02-01 16:03:26 -08:00
Makoto Onuki
d4df1cf65a Don't mix up loader managers
- Don't use activity's LoaderManager in fragments.  Fragments have their own
  loader managers, and using the wrong one causes loaders won't get reset()
  when the owner fragment gets destroyed().

- Don't destroy loaders by ourselves.

The combination of these two issues caused the problem where the loader
callbacks wouldn't get the reset event, which resulted in the adapter
holding a closed cursor.

Bug 3412079

Change-Id: Ib7441565ea69adb08eb74845b0996c7b8ae6f53b
2011-02-01 15:45:52 -08:00
Marc Blank
d26c138cb2 am 4c0ae95f: am 73ba7150: Merge "Delete calendar properly on commanded wipe" into honeycomb
* commit '4c0ae95fbea959f15aef958814311f1f063134d2':
  Delete calendar properly on commanded wipe
2011-02-01 13:26:18 -08:00
Marc Blank
4c0ae95fbe am 73ba7150: Merge "Delete calendar properly on commanded wipe" into honeycomb
* commit '73ba71506a542ac6fd6463f2cf1efea1569bbcc4':
  Delete calendar properly on commanded wipe
2011-02-01 06:52:28 -08:00
Marc Blank
73ba71506a Merge "Delete calendar properly on commanded wipe" into honeycomb 2011-02-01 06:50:08 -08:00
Marc Blank
81d68b842e Delete calendar properly on commanded wipe
* CalendarProvider2 has unusual semantics for its delete operation on
  Calendars; this caused the user's calendar NOT to be deleted when
  the server commanded a wipe of calendar data.  The result was
  duplication of events after the subsequent resync

Bug: 3361000
Change-Id: I672034a7a444eb7ebdea60cd6dc66a31087cc6f7
2011-01-31 21:07:18 -08:00
Todd Kennedy
f1b510462f Fix ConcurrentAccessException in unit tests
The ContentCache is now an LRU cache. This means we must NOT access the cache
while using any iterator over the cache. In this case, we were calling get()
using an iterator of cache keys.

Change-Id: I2d1feabff7474b6f2a230b98f97df067ab7ccd9c
2011-01-31 17:39:44 -08:00
Makoto Onuki
f33420e68f Message details: Show only one address per line
Also removed unused field from MessageViewMessageDetailsDialog

Bug 3372971

Change-Id: I8a6d87d006793c0099b380634217624bf9002ead
2011-01-31 16:12:53 -08:00
Andy Stadler
2d6241e123 am 11070a53: am 275b89d9: am 927dbc7c: Don\'t send IMAP ID unless server supports it
* commit '11070a53970116a8216b8d83694041fe09560b91':
  Don't send IMAP ID unless server supports it
2011-01-31 15:46:36 -08:00
Andy Stadler
11070a5397 am 275b89d9: am 927dbc7c: Don\'t send IMAP ID unless server supports it
* commit '275b89d96949de6544c7bca999e241f659cf18b3':
  Don't send IMAP ID unless server supports it
2011-01-31 15:20:01 -08:00
Andy Stadler
927dbc7c20 Don't send IMAP ID unless server supports it
Only send IMAP ID to servers that include ID in the CAPABILITY response.
Always sending IMAP ID was found to cause problems with some servers.

Better compliance with RFC 2971.
Thanks to Samsung for debugging & reporting this.

Change-Id: I495f80949f9f811470853a1f2f8e506d8236d8cf
2011-01-31 15:10:49 -08:00
Makoto Onuki
295297581c Supress log from RefreshManager
Bug 3404747

Change-Id: I3c0d4d513c7ebb640630a21b626c1515520c0bed
2011-01-31 15:05:27 -08:00
Todd Kennedy
db0a601714 DO NOT MERGE Ensure foreground colour is set during drag
At any time, it's possible for the framework to recycle views. Normally it's
not an issue, however, during drag-n-drop a view with "unavailable drop
target" foreground colour may be reused. We need to ensure that the foreground
color is always set.

bug 3398330

Change-Id: I7be9bf8487e0062cf2335476fd971592f33baa09
2011-01-31 10:53:33 -08:00
Paul Eastham
5c7ffc91a5 am c34e4eec: am 04d3f014: Merge "Remove STOPSHIP" into honeycomb
* commit 'c34e4eecf1450b20e804297741507d1edc044d0f':
  Remove STOPSHIP
2011-01-30 22:22:28 -08:00
Paul Eastham
04d3f01447 Merge "Remove STOPSHIP" into honeycomb 2011-01-30 22:16:55 -08:00
Justin Ho
c22d2a2828 am 92c41d58: am a5ba0daa: Merge "New Email launcher icon, deprecating old asset Bug: 3362749" into honeycomb
* commit '92c41d587a840672722ac693e79d8c52e6f4497c':
  New Email launcher icon, deprecating old asset Bug: 3362749
2011-01-30 17:33:21 -08:00
Andy Stadler
5f10938fd4 Remove STOPSHIP
Bug: 3396875
Change-Id: I0d57922def86dc48abb2a8a47c9358115dddb9fd
2011-01-30 17:17:42 -08:00
Justin Ho
a5ba0daac3 Merge "New Email launcher icon, deprecating old asset Bug: 3362749" into honeycomb 2011-01-30 17:12:13 -08:00
Andy Stadler
34512ba630 am 809cd769: am 0e3a0331: Widget: Max out message count at 999+
* commit '809cd769390aa503ad90e5b8bce1594f92a2479f':
  Widget: Max out message count at 999+
2011-01-30 12:53:16 -08:00
Andy Stadler
0e3a03317b Widget: Max out message count at 999+
Bug 3403158

Change-Id: I1daf0c62684bad83a69e19c39ffe1b8df899d077
2011-01-30 11:45:33 -08:00
Justin Ho
b5b8e568e2 New Email launcher icon, deprecating old asset
Bug: 3362749

Change-Id: Idb876f38588a9c5d2b4b3c04dbf4dbca082c1618
2011-01-29 14:20:01 -08:00
Marc Blank
a86265e8e5 am 9a09129d: am 1122e0f6: Merge "Remove cache statistics logging" into honeycomb
* commit '9a09129d0928712ad84a11027812ff0a63afed4a':
  Remove cache statistics logging
2011-01-28 16:22:14 -08:00
Marc Blank
1122e0f644 Merge "Remove cache statistics logging" into honeycomb 2011-01-28 16:16:26 -08:00
Marc Blank
f40294e1aa Remove cache statistics logging
* Use static final flag to control this
* Set flag to false for all commits

Bug: 3403725
Change-Id: I70c89aaf2f0b226206e505a14e9a8f1ed2ebb51a
2011-01-28 14:54:52 -08:00
Makoto Onuki
943e02c97d Merge "Add debug setting for one-minute refresh" 2011-01-28 14:30:55 -08:00
Makoto Onuki
5907d39d2b Add debug setting for one-minute refresh
Bug 3377054

Change-Id: I7843fe82d66ab7896b8293b2fa16ca73f6711595
2011-01-28 14:16:56 -08:00
Marc Blank
d07a2312b7 Merge "Make ContentCache LRU, rather than LRI" 2011-01-28 12:56:46 -08:00
Marc Blank
50c7d755a7 Make ContentCache LRU, rather than LRI
Bug: 3403111
Change-Id: I12993a8185db1bebe760f8bd1a8d22683bcdddc3
2011-01-28 12:37:09 -08:00
Andy Stadler
3592da67cd am 57fa4995: am c8f1c814: Merge "Prevent NPE in account deletion race condition" into honeycomb
* commit '57fa4995c27ef9b186b61866b6a1c65f162a93e0':
  Prevent NPE in account deletion race condition
2011-01-28 11:38:36 -08:00
Dmitri Plotnikov
188ad2d5ba am 188a07a0: am fc902559: Merge "Transferring display name logic to GAL provider" into honeycomb
* commit '188a07a0335a81087729b99a1234d0ccd9e3031a':
  Transferring display name logic to GAL provider
2011-01-28 11:38:34 -08:00
Andy Stadler
c8f1c814cd Merge "Prevent NPE in account deletion race condition" into honeycomb 2011-01-28 11:33:34 -08:00
Makoto Onuki
9c44430690 Fix AttachmentDownloadService for remove-exchange script
Now the source at least compiles fine.

Change-Id: I329ad08f81fd6ab23f28dd30023fe3e781ccc4fc
2011-01-28 11:22:51 -08:00
Andy Stadler
04c4ae864f Prevent NPE in account deletion race condition
Bug: 3399372
Change-Id: Ic41fb1292f8cc2e5ceb120e7233229dc4e47f1eb
2011-01-27 16:20:51 -08:00
Todd Kennedy
eb73f28d1a Ensure foreground colour is set during drag
At any time, it's possible for the framework to recycle views. Normally it's
not an issue, however, during drag-n-drop a view with "unavailable drop
target" foreground colour may be reused. We need to ensure that the foreground
color is always set.

bug 3398330

Change-Id: I21acd04584a122c19219f3abb6690bb231bad3a6
2011-01-27 11:52:33 -08:00
Dmitri Plotnikov
fc902559c4 Merge "Transferring display name logic to GAL provider" into honeycomb 2011-01-27 10:47:10 -08:00
Dmitri Plotnikov
1a8feddd22 Transferring display name logic to GAL provider
Bug: 3396886
Change-Id: Ice4da9fd4189387a31d3a5d44ec4dc49bff938da
2011-01-27 10:24:03 -08:00
Marc Blank
fe9db17831 Show smart forward attachments in MessageCompose
Bug: 3367188
Change-Id: I59dae9781be59eebe3a68769138e8253a24455e6
2011-01-27 10:13:25 -08:00
Andy Stadler
09aae75f4e Fix account list after deleting accounts
* After deleting an account, we need to actually update
  the list of known accounts - it's not sufficient to simply
  rebuild the headers with one account marked deleted.
* Also remove a couple of obsolete TODO's

Bug: 3382965
Change-Id: I1aa6d88f869f0192b564b538817381efdc5fffe0
2011-01-27 00:02:44 -08:00
Andy Stadler
999199d49a Merge "Remove STOPSHIPs and a bit of debug logging" into honeycomb 2011-01-26 22:58:22 -08:00
Andy Stadler
1fc9b6b5c3 Merge "Add "tap to configure" text to widget" into honeycomb 2011-01-26 22:57:09 -08:00
Andy Stadler
c540b57263 Remove STOPSHIPs and a bit of debug logging
Bug: 3396875
Change-Id: I3e874e28c3412aadd9851000a83d69fc8c06aeb9
2011-01-26 22:53:08 -08:00
Marc Blank
610bbaee42 Merge "Fix NPE in SecurityPolicy.policiesRequired" into honeycomb 2011-01-26 21:39:47 -08:00
Marc Blank
844b14f851 Fix NPE in SecurityPolicy.policiesRequired
* Add check for null Account, as this method can be called from a
  background thread, and the Account might have been deleted by the
  time we're called

Bug: 3396365
Change-Id: Ie125ed714c73d51beaedc818b6b731cea941666f
2011-01-26 18:18:45 -08:00
Todd Kennedy
6c5ee59c4f Add "tap to configure" text to widget
If there are no email accounts defined, the widget should show a single string
that allows the user to create a new account. Whenever there are changes to
the defined accounts, the widget(s) will update their headers to ensure they
are only displaying valid information.

bug 3296594

Change-Id: I156c20cfc90692174297a2aededd85775e0ea196
2011-01-26 17:58:51 -08:00
Todd Kennedy
a7f49a7c0b Update icons with latest drop from UI
Change-Id: Ic23f1bee28c8aef1974225f9c03edc92c845f8c7
2011-01-26 17:43:03 -08:00
Makoto Onuki
199a0601ae Merge "Fix bug where mailbox list won't update in combined view" into honeycomb 2011-01-26 17:31:51 -08:00
Andy Stadler
382478547e Merge "Protect against threading issues in AttachmentDownloadService" into honeycomb 2011-01-26 16:06:54 -08:00
Marc Blank
ed9938cd9c Protect against threading issues in AttachmentDownloadService
Bug: 3391148
Change-Id: I513b5678815db262ea5660661336432f1e203c9e
2011-01-26 16:04:28 -08:00
Makoto Onuki
3735cd4256 Merge "Make account name on action bar narrower" into honeycomb 2011-01-26 15:01:10 -08:00
Makoto Onuki
d0ee1e404d Fix bug where mailbox list won't update in combined view
The problem was that CombinedMailboxesLoader used the cursor returned by
super.loadInBackground() (which contains accounts), to build a matrix
cursor (which contains special mailboxes and accounts and will be returned),
and *it closed the first cursor* after building the matrix cursor.

However, because this first cursor is the one that CursorLoader sets an
observer, it shouldn't be closed until the returned matix cursor closes.
In other words the two cursors should have the same lifecycle.

Fixed it by using ClosingMatrixCursor that used by AccountsLoader, which
is doing a similar thing, but properly.

Bug 3387730

Change-Id: I554ade001dc25afa869eefb4dcf9887495e6753e
2011-01-26 13:40:53 -08:00
Makoto Onuki
3af94be477 Make account name on action bar narrower
... to give the mailbox name more space.  Otherwise it can be too
small in portrait.

Bug 3387730

Change-Id: I0301fd696dc2c4dfa3654a235b9e95aa7db4b885
2011-01-26 13:26:14 -08:00
Andy Stadler
f020910461 Fix Account Manager integration
* Rework the interaction with the Account Manager
* Remove unneeded call to response.onRequestContinued()
* Store response in SetupData so it can survive the entire account
  setup flow.
* Explicitly report exit status to acct mgr at known exit points:
  * AccountSetupBasics.finish() (fail/cancel)
  * AccountSetupOptions.finish() (fail/cancel)
  * AccountSetupOptions.optionsComplete() (success)

Bug: 3335128
Change-Id: Ia55724eb1e938f2633c5ff7afb719a879be16a1b
2011-01-26 11:16:56 -08:00
Andy Stadler
a97faa25ac Discard result of Dupe Account check if paused
Fixes a potential race condition with a slow DB lookup and a
fast user (or monkey).

Bug: 3384992
Change-Id: I0602820e1d9f49eb01b09c9d78db3d0fc47ccfb1
2011-01-25 23:18:45 -08:00
Makoto Onuki
da75871620 Merge "Make the refresh button animate in-place." into honeycomb 2011-01-25 21:41:58 -08:00
Marc Blank
51c8228093 Merge "Ensure that EAS reconciler uses current account list" into honeycomb 2011-01-25 19:45:58 -08:00
Makoto Onuki
484d220b6e Make the refresh button animate in-place.
Turn the refresh button into an indeterminate progress icon
while refreshing.

Bug 3388138

Change-Id: Ic0406ff5b857243c3e1e475ddb8b305441eddbb0
2011-01-25 19:09:32 -08:00
Makoto Onuki
2d0e44f201 Fix NPE in AttachmentDownloadService
Initialize mConnectivityManager before starting the thread.

Bug 3389701

Change-Id: If616721ad3b3bec81c5d6920f4a5d91b06f937fb
2011-01-25 15:30:15 -08:00
Marc Blank
da0225cfd9 Ensure that EAS reconciler uses current account list
Bug: 3369380
Change-Id: I00f18f0848232ea90149fb6e243f147d0e6f5c0f
2011-01-25 15:26:28 -08:00
Makoto Onuki
61e63111ba Show account name on error banner
For now just show the account name in parens.   I'll ask the design
team for a better layout.
(I don't want to change code too much at this point, so didn't add a
new view for the account name.)

Bug 3366546

Change-Id: I3a5314be4bdfacc2720093511eb03571e91fa963
2011-01-25 13:21:04 -08:00
Todd Kennedy
adbd22c9be Merge "Infer attachment's mime type if it's text/plain" into honeycomb 2011-01-25 10:36:36 -08:00
Todd Kennedy
b3740d227e Merge "Only show loaded messages in widget" into honeycomb 2011-01-25 10:06:51 -08:00
Todd Kennedy
34212cc7df Infer attachment's mime type if it's text/plain
If the server reports an attachment's mime type as either text/plain or
application/octet-stream, we will try to infer the real mime type using
the attachment's extension. If one cannot be found, we either synthesize
it (if original mime type is application-octet-stream), or, we use the
server specified mime type (if the original is text/plain).

bug 3379416

Change-Id: I331e767ed36e4e17756025cc816bdb7b5a8f0868
2011-01-25 09:55:15 -08:00
Todd Kennedy
543953ad87 Only show loaded messages in widget
The various selection strings were missing a test to only show messages that
have been loaded. This is only important for POP3 accounts.

bug 3377041

Change-Id: I3efe366d09dd547878dc0bf57dff58f76de5cca9
2011-01-25 09:42:04 -08:00
Andy Stadler
9128217da1 Merge forward small bug found in password storage
While fixing bug 2981433 in Gingerbread, I discovered one additional
place where passwords were being trimmed.  This brings the fix forward
into honeycomb, as well as a new unit test for the fix.

Bug: 2981433
Change-Id: I566f5c0c6693ca7c0069bca9e74f320fca48e600
2011-01-24 20:13:11 -08:00
Andy Stadler
24a81185d1 Merge "Catch base64 errors and handle in-place" into honeycomb 2011-01-24 19:33:18 -08:00
Marc Blank
3ef8f54bae Prefetch respects "background data" setting and waits for connectivity
Bug: 3384997
Bug: 3384994
Change-Id: Id8338650b69666f2996837324e27c2e98c9261fe
2011-01-24 18:39:50 -08:00
Andy Stadler
980c2256f1 Catch base64 errors and handle in-place
Bug: 3362752
Change-Id: I63adb8663c90a7710176cc1c481bbfa5b4b859c4
2011-01-24 18:06:53 -08:00
Todd Kennedy
751e4b2d95 Prevent auto-download of attachments not in an inbox
When creating the list of attachments to be automatically downloaded in the
background, exclude any attachments that are not in an inbox. Also added unit
tests to ensure the query URIs behave as expected.

NOTE: This is a partial fix for general background attachment downloading issues

bug 3373982

Change-Id: I13ef56cd280c028fa966ab9e655acce28b0b9b91
2011-01-24 13:43:14 -08:00
Andy Stadler
4fd1ebdcc3 Fix multiline mode in signature
* Add multiline flag to preference xml
* Also, remove display of actual signature in summary, as it
  does not properly handle long or multiline signatures.

Bug: 3379235
Change-Id: I84894dbdccee2cd8a8ece05d0b8f7fdcf7b92406
2011-01-24 12:01:43 -08:00
Andy Stadler
3dc2fcaac3 Merge "Rework account security bootstrap procedure" into honeycomb 2011-01-24 11:18:12 -08:00
Andy Stadler
45bfac00e5 Rework account security bootstrap procedure
* Bug to fix was that it was looping if the user canceled
  password or encryption setup (instead of simply re-notifying.)
* Solution was to refactor all code into a single sequence of checks,
  rerun the sequence each time, and set markers to prevent looping.
* Rework needed after the changes in I54f39bc9 which added
  encryption support but introduced the looping behavior.
* Removed a UI-thread DB access

Bug: 3346641
Change-Id: I0791d7a16287efecc7121b5ffa0db26ca2b05151
2011-01-24 11:08:31 -08:00
Todd Kennedy
819db01ead Limit attachment background download attempts
Do not retry downloading attachments infinitely. After some number of failures,
black list the attachment and move on. The black list is not persisted, so,
restarting the app will again try to fetch the attachments. In this way, any
transient network failures will not permanently affect the ability to download
attachments in the background

NOTE: This is a partial fix for general background attachment downloading issues

bug 3373982

Change-Id: I7f3ad9667ebebb95fbba95278b62bf40c5fce67c
2011-01-24 10:19:46 -08:00
Marc Blank
5150d0e818 Merge "Don't require sSyncLock for sync error map" into honeycomb 2011-01-23 15:04:30 -08:00
Marc Blank
d6fbab1e7a Merge "Prevent logging about "attachment with null contentUri"" into honeycomb 2011-01-23 15:03:10 -08:00
Dianne Hackborn
2b59ecaebc Remove use of old theme name.
Change-Id: I0a08171b3068abeb57c973074b37aaf3c87ff001
2011-01-23 13:06:41 -08:00
Makoto Onuki
04cf5e4bdf Merge "AttachmentProvider: Always return mime-types in lowercase" into honeycomb 2011-01-23 11:32:28 -08:00
Marc Blank
1264651c69 Prevent logging about "attachment with null contentUri"
Bug: 3373982
Change-Id: I41b655041d5c244484435fe5bab7649d9ca569eb
2011-01-22 13:55:14 -08:00
Marc Blank
2fabab32b9 Don't require sSyncLock for sync error map
* Use ConcurrentHashMap; check that this provides enough protection
  for all uses
* This resolves known deadlock issues in ExchangeService

Bug: 3371039

Change-Id: Ie4ccbe7cdfe8c3d4ec7a0f789409126c8c09f8c4
2011-01-21 18:14:04 -08:00
Todd Kennedy
f92dd2bf3e Don't display toast for background download failures
When downloading attachments in the background, do not display any errors
on the display.

NOTE: This is a partial fix for general background attachment downloading issues

bug 3373982

Change-Id: I874ed902bde293303e10308f38b992b2bb15b6aa
2011-01-21 15:17:29 -08:00
Makoto Onuki
6833fd5ab6 AttachmentProvider: Always return mime-types in lowercase
Intent-filter's mime-type matching is case-sensitive.  We should always use
lowercase letters.

Bug 3375709

Change-Id: Idd4abb41f94c816a5b9150aef5859dd75487a042
2011-01-21 14:56:01 -08:00
Makoto Onuki
d5c6717eeb Merge "Compose: Make sure to unhide CC if not empty for reply-all" into honeycomb 2011-01-21 13:50:00 -08:00
Marc Blank
0a7d214b27 Merge "Delete attachment if there's no corresponding message" into honeycomb 2011-01-21 11:10:09 -08:00
Makoto Onuki
3784b28aa6 Compose: Make sure to unhide CC if not empty for reply-all
Bug 3376821

Change-Id: Ieec04881843717fea55cec8efbf35757042c8d2a
2011-01-21 10:26:07 -08:00
Marc Blank
2ac1833943 Delete attachment if there's no corresponding message
Bug: 3372440
Change-Id: I5c3653c5f27e0aa7bab52ca0d979e14bb6bafc34
2011-01-20 20:32:56 -08:00
Makoto Onuki
7093746dd5 Don't modify content URI to non-email providers
The "?limit=" param is only supported by EmailProvider, so don't add
it to other URIs.

Doing so causes a permission error when opening an EML attachment on gmail,
because we're granted the permission only to the passed URI, but not to
the URI with the "?limit=" param.

Bug 3371630

Change-Id: I88fff88a7e48e5bc958124eedec3e592978a40c7
2011-01-20 16:28:36 -08:00
Marc Blank
554ad34475 Merge "Respect email sync setting" into honeycomb 2011-01-20 14:38:48 -08:00
Marc Blank
6c9911e3fb Merge "Strip content of the "head" tag" into honeycomb 2011-01-20 14:38:26 -08:00
Marc Blank
9dc8ba5cad Strip content of the "head" tag
Bug: 3285281
Change-Id: I1183697ad09fbf8740e3529fecfa59cf6650b2f9
2011-01-20 14:31:09 -08:00
Todd Kennedy
02ba344cf2 Only show messages from inbox for account & unread views
Use a sub-selection to limit the messages from the inbox. Also add a unit
test to ensure the selections are working correctly.

bug 3368613

Change-Id: Ia24ef6028ded27c69f982ecbc6b67f35f84d1b6d
2011-01-20 13:20:12 -08:00
Marc Blank
f24b1a6f3f Respect email sync setting
Bug: 3362586
Change-Id: I585abcec95a668d04d37886b98a6a0b66a0fae4e
2011-01-20 11:59:12 -08:00
Andy Stadler
75e508a794 Merge "Cleanup account name, user name, and summary" into honeycomb 2011-01-20 11:38:21 -08:00
Andy Stadler
373ccb1037 Cleanup account name, user name, and summary
* In AccountSetupNames:
  * Add "Field required" error tag to Names display
* In AccountSettings:
  * Improve IME behavior in text fields - auto-capitalization
  * Prevent empty username
  * Reset empty nickname back to default (email address)
  * Fix broken hint for signature
* Proper trimming in all fields

Bug: 3338435
Change-Id: I2720c4524303ada6dd228866756fc9c3aac173f3
2011-01-20 11:37:39 -08:00
Andy Stadler
ecffd551cc DO NOT MERGE Remove all password trim() calls
* Initial account setup screen, password entry field
* When passing the entered password from incoming->outgoing
* When restoring store URI's from HostAuth

This will satisfy the users who insist on leading/trailing spaces
in their IMAP or EAS password.  Not supported by POP3 (no quoting).

Bug: 2981433
Change-Id: I16c00bf96382899abb54cb75fcd44cf0f140a660
2011-01-20 11:30:20 -08:00
Makoto Onuki
41e1c81b81 Merge "App icon on app drawer shouldn't restart the app" into honeycomb 2011-01-20 10:08:08 -08:00
Todd Kennedy
6bbc689efc Implement final drag & drop spec
Current specification calls for the following:
* Droppable targets: do nothing
* Not droppable targets: grey text (hex #999999)
* Hover over droppable: use label/folder list pressed state
* Hover over not droppable: do nothing
* Destructive targets: background (hex #f10000)

We need to copy the resource from the framework as there is no supported way to
fetch the pressed state drawable during runtime. Adam filed bug 3370043 so we
can specify a drag target state directly in the selector.

bug 3154986

Change-Id: Ifd5c24a3dc46b5a1c64a149904657dda297ed047
2011-01-20 08:41:24 -08:00
Marc Blank
c0a8b2cfb0 Merge "Implement checks before performing background attachment download" into honeycomb 2011-01-19 22:40:35 -08:00
Marc Blank
475c20d3a8 Implement checks before performing background attachment download
Bug: 3339007
Change-Id: I36a8359f3478c37b2ccd6a0cf0381569c592061a
2011-01-19 19:20:38 -08:00
Andy Stadler
b3412d7f5e Merge "Handle leading/trailing space in passwords" into honeycomb 2011-01-19 16:43:22 -08:00
Andy Stadler
858c282277 Handle leading/trailing space in passwords
* Allow, but provide warnings via EditText.setError()
* Remove one last instance of password trim()

Bug: 2981433
Change-Id: I406a4f8b8f27cc5ce90424a8cafe88a677e72f45
Signed-off-by: Andy Stadler <stadler@google.com>
2011-01-19 16:40:15 -08:00
Makoto Onuki
0c75f83f03 App icon on app drawer shouldn't restart the app
When launching Welcome and MessageListXL, make sure they start
as a "main" activity.  This fixes the reported bug.

Bug 3366537

Change-Id: I68facd739bd1dad8eeec52015b0720299d632e11
2011-01-19 16:37:19 -08:00
Todd Kennedy
a33c0c74cc Revert string name change
to prevent churn for the translators, revert the string name change

Change-Id: I22710d810a5f3602ccd53a9cb4d2f31edca572f1
2011-01-19 16:23:42 -08:00
Marc Blank
238b9f2826 Merge "Split out AttachmentInfo into its own top-level class" into honeycomb 2011-01-19 16:19:23 -08:00
Marc Blank
3a761c8038 Split out AttachmentInfo into its own top-level class
* Determine load state and allowability of view/save in constructor
* Extend AttachmentInfo in MessageViewFragmentBase to include views,
  buttons, etc. and to add extra requirements for view/save as
  needed (e.g. availabilty of external storage)

Change-Id: I2ce2b4e71fd784ef0329e391cc0e2d1639f8273c
2011-01-19 16:15:28 -08:00
Makoto Onuki
e539a1973e Merge "Dump widget state to bugreport" into honeycomb 2011-01-19 14:34:39 -08:00
Makoto Onuki
dc200a44a9 Dump widget state to bugreport
This might be helpful someday...

Change-Id: I5a9e0a2948c7ea9fa5c9a7da61d143c10dda7d9a
2011-01-19 14:22:01 -08:00
Makoto Onuki
4911af8879 Merge "Compose: Make the EditTexts easy to focus on" into honeycomb 2011-01-19 13:44:03 -08:00
Makoto Onuki
8ac207f298 Compose: Make the EditTexts easy to focus on
- Now tapping these To/Cc/Bcc/Subject labels moves the focus to
  the corresponding edittext.
- Tapping the bottom part of the screen moves the focus to the
  main EditText.
- Also use paddings instead of margins for the main EditText, to
  expand the hitarea.

Bug 3366831
Bug 3367100

Change-Id: I9b5d18dcc9d7802bfcbd0160befcb008c784d9f7
2011-01-19 13:36:21 -08:00
Andy Stadler
be6910e7a4 Merge "Properly handle unsupported encryption policy" into honeycomb 2011-01-19 12:01:56 -08:00
Andy Stadler
a0d080558f Properly handle unsupported encryption policy
* This fixes the case of:
  * a device that does *not* support device encryption
  * connecting to an account that *does* require device encryption
  * but also supports "non-provisioned devices" (making the encryption
    requirement optional.)
* Added unit test

Bug: 3367191
Change-Id: I894e68c4119a102dad02d2e0815fccdae1e87189
2011-01-19 11:40:48 -08:00
Todd Kennedy
3db3e4b795 widget combined inbox view only shows messages in inbox
instead of showing all messages (e.g. messages in drafts, etc...) the "combined
inbox" view now only messages in the inbox folder. This is now identical to
the "combined inbox" view available in the full email UI.

bug 3368613

Change-Id: I0080b56cd2718a3dce82b279277c63c4f43e86dc
2011-01-19 11:27:41 -08:00
Todd Kennedy
a5de96be71 Merge "Update widget colours / assets according to spec" into honeycomb 2011-01-19 11:03:18 -08:00
Marc Blank
0324017aa0 Fix another case of HTML leakage in snippets
* Add test for this case

Bug: 3285281
Change-Id: If45d33624ac5dbd16d28b45428be29e5a8c51046
2011-01-19 10:59:29 -08:00
Todd Kennedy
290fb65595 Update widget colours / assets according to spec
* Modified font colours for read/un-read emails
* Add chip colours when viewing mail from multiple accounts
* Add calendar icon if message has an invite attachment
* Update background of read/un-read emails

bug 3351761

Change-Id: Id59573d25a6988e9e869335f95778aad28b43912
2011-01-19 09:23:58 -08:00
Marc Blank
985155fddd Merge "Fix regression re: bad folder sync key" into honeycomb 2011-01-19 08:33:40 -08:00
Marc Blank
212a054804 Fix regression re: bad folder sync key
Bug: 3368400
Change-Id: I8bbba33ea0149b6c19a333dcd739208cec6c0475
2011-01-19 08:23:11 -08:00
Adam Cohen
1911a78271 Merge "Updating widget due to API changes." into honeycomb 2011-01-18 23:07:47 -08:00
Marc Blank
7a69ac781b Merge "Don't report connection error when account isn't initialized" into honeycomb 2011-01-18 16:22:04 -08:00
Winson Chung
cb8a5544bf Updating widget due to API changes.
Change-Id: I8623c48e912330145cfd325c962574d322ccc6f0
2011-01-18 15:31:17 -08:00
Marc Blank
aeea97275d Don't report connection error when account isn't initialized
* We report uninitialized for updateFolderList when no mailboxes
  have been created

Bug: 3235788
Change-Id: I337cfeac83bf320e8078e5a837976414fdd93e0f
2011-01-18 14:19:19 -08:00
Makoto Onuki
f72f812f5b Merge "Use proper alert icons on dialogs" into honeycomb 2011-01-18 11:08:56 -08:00
Makoto Onuki
6b21662ba8 Merge "Remove STOPSHIPs regarding CloseTraceCursorWrapper" into honeycomb 2011-01-18 11:08:51 -08:00
Andy Stadler
946239e8a0 Add per-account preference for bkgnd attachments
* Add flag to Account record
* Add checkbox to Account Settings (IMAP & EAS)
* Add checkbox to Account Setup (IMAP & EAS)
* Add flag to backup/restore logic
* Update Account & AccountSetupOptions unit tests

Bug: 3360873
Change-Id: I0c407776ede4110f33716644f6f027938f21130a
2011-01-18 10:53:37 -08:00
Makoto Onuki
49518bb360 Use proper alert icons on dialogs
Bug 3364447
Bug 3241281

Change-Id: Ie791d8d5eae26a848de08658a14d6a09d06d0846
2011-01-18 10:17:23 -08:00
Makoto Onuki
80a2e9109d Remove STOPSHIPs regarding CloseTraceCursorWrapper
The loader crash seems to have been gone.

Bug 3335072
Bug 3335067

Change-Id: Iefc5367e6e394840687b0c2c4f6b75f8e9661d26
2011-01-18 10:04:14 -08:00
Todd Kennedy
2b6d0072df Do not automatically open attached files after saving
After saving an attachment, we no longer automatically start the activity
associated with the attachment mime type. However, we still run the media
scanner to add supported media (e.g. music, pictures, etc...) to the media
content provider.

bug 3266378

Change-Id: I96985438316a33322437ff009fe7e9c597b1c70a
2011-01-18 08:46:53 -08:00
Dianne Hackborn
31e2576791 Follow API changes.
Change-Id: I1ca0fe365b953fa98a462912309a1c9647277ba7
2011-01-17 16:24:00 -08:00
Marc Blank
648e45176b Merge "Read truncated data (even if it doesn't get parsed)" into honeycomb 2011-01-17 15:24:49 -08:00
Marc Blank
a38f61bad7 Read truncated data (even if it doesn't get parsed)
Bug: 3362434
Change-Id: Ifaf992987a1ef0b866506834f8e87047ebb2f62b
2011-01-17 15:14:46 -08:00
Marc Blank
5b2b248466 Default status of added email to 1 (success)
Change-Id: I3825916001e5659fa5465156dbe2d796f0b25444
2011-01-17 13:40:11 -08:00
Andy Stadler
f32bb6e570 Merge "Updates to follow DPM api changes" into honeycomb 2011-01-17 12:55:22 -08:00
Andy Stadler
c2e638351c Updates to follow DPM api changes
* Use getStorageEncryptionStatus() to check device status
* Also, check granted policy on USES_ENCRYPTED_STORAGE

Bug: 3346641

Change-Id: I9e9a45a6d1d3cf4714e27b69cdb5952c841c640d
2011-01-17 12:54:40 -08:00
Marc Blank
755fa67d17 Delete message when Sync/Fetch fails with "object not found"
Bug: 3361222
Change-Id: I885b18612e8b5b4e7b7f50bc73f2b6a76c2242ad
2011-01-17 12:49:22 -08:00
Marc Blank
3dda4c4fdd Merge "Delete PIM data during folder sync/reset" into honeycomb 2011-01-17 12:47:32 -08:00
Marc Blank
03d4363b51 Merge "Mark Fetch'ed messages fully loaded, even if there's no text" into honeycomb 2011-01-17 12:43:49 -08:00
Marc Blank
67d7a741cf Delete PIM data during folder sync/reset
Bug: 3361000
Change-Id: I95305467c17c5c4b75b96dfb06c3c3511eb3f15a
2011-01-17 11:58:30 -08:00
Makoto Onuki
c50b6f685b Use broadcast to detect system account update.
Instead of AccountsUpdatedListener.

Bug 3211657

Change-Id: I1e60092fc06fe80b9914ff7264c24fcbfa950745
2011-01-17 11:03:57 -08:00
Makoto Onuki
f944b6f0aa Merge "Hide the entire tab section if no tabs are visible." into honeycomb 2011-01-17 10:38:09 -08:00
Todd Kennedy
91a1cf1db0 Remove "view" button for .apk attachments
We don't need to allow users to install applications directly from the email
client. Instead, application installation is a two step process; the user
must first save the APK and then find it on the filesystem.

If the user does not want to allow installation of applications from unknown
sources, we don't provide the ability to save.

NOTE: After saving, we still try to open the APK which generates an error
toast. We will be removing the auto-open-after-save feature in a separate CL.

bug 3351137

Change-Id: I0eb1bc8224a154792fe852757e4b23a3059f4392
2011-01-17 10:03:44 -08:00
Marc Blank
7ca950bd2e Mark Fetch'ed messages fully loaded, even if there's no text
Bug: 3361171
Change-Id: I5994d2bd33845140b419ed95e194bcac92a8834f
2011-01-16 18:29:16 -08:00
Marc Blank
d0e795af73 Merge "When syncing folders, read all data first, then process" into honeycomb 2011-01-16 14:16:03 -08:00
Marc Blank
de196ca3da When syncing folders, read all data first, then process
Bug: 3353035

Change-Id: I80212b225eae48d0351f47f0d601f77578d2fc96
2011-01-14 17:58:15 -08:00
Todd Kennedy
c890a4e4a2 Display dialog if unsaved settings would be lost
When navigating away from a preferences screen and unsaved settings would be
lost, display a confirmation dialog. The user can either accept or cancel the
action. If canceling, the user is returned to the settings screen they were
currently on. Otherwise, they are taken to a new fragment (the exact
destination depends upon whether the user navigated "back" or selected another
header)

There is one additional change that needs to be made. In the case of navigating
to another header, we are notified _after_ the new header is selected. In this
scenario, the action is not cancelable and the user will lose any changes. We
must display an appropriate message when this happens. [note: this is the same
behaviour as when the user selects a breadcrumb]

bug 3327737

Change-Id: I4bd3b393a6323f3e63510e3ed08e4e1e745b04c4
2011-01-14 16:09:09 -08:00
Makoto Onuki
9d91b7ca04 Hide the entire tab section if no tabs are visible.
Bug 3342441

Change-Id: I116baffdaa6bc18f00311aef2a0ee726288b19f0
2011-01-14 14:53:03 -08:00
Makoto Onuki
36cc9c18ed Fix NPE in AttachmentDownloadServiceTests.testDownloadSet
Bug 3353834

Change-Id: I5cf475ff174bffce80a435c80b1fd85c0be146e9
2011-01-14 11:47:26 -08:00
Marc Blank
96497dc60e Merge "Support encryption in EAS provisioning" into honeycomb 2011-01-13 16:51:51 -08:00
Marc Blank
4fa12e52fc Support encryption in EAS provisioning
* Confirmed that policies enforcing encryption are rejected as
  unsupported (since full encryption plumbing is not in place)

Bug: 334652

Change-Id: I82340cfbd68a9663714a98824a5d8395f2c0da74
2011-01-13 16:26:53 -08:00
Makoto Onuki
1daf876693 Fix NPE in Controller.deleteMessageSync
Bug 3351148

Change-Id: I0015c84e5758504a66a4373668afea063f5b2e15
2011-01-13 16:09:21 -08:00
Makoto Onuki
d072f9905d Don't show trashed messages in Starred mailbox
Also show the *total* starred message count (excluding trashed starred)
in the mailbox list, not *per-account* starred count.

Bug 3346872
Bug 2149412

Change-Id: I2274f215f994b62280ac6138982b927cec22c677
2011-01-13 15:41:22 -08:00
Makoto Onuki
1ec737ce28 Merge "Fix NPE in MessageViewFragmentBase" into honeycomb 2011-01-13 13:52:04 -08:00
Makoto Onuki
9799b8fe4b Fix NPE in MessageViewFragmentBase
Add null check for all mMessageContentView accesses.

Also, addressed Andy's comment on I1374b81f; moved the zoom scale array out
of Preferences.

Bug 3350164

Change-Id: I689bd4146ecfffdbb98dccd433ba0c396996df4c
2011-01-13 13:44:44 -08:00
Andy Stadler
4f721a1625 Merge "Add encryption to SecurityPolicy" into honeycomb 2011-01-13 13:26:13 -08:00
Andy Stadler
469f2987dc Add encryption to SecurityPolicy
* Add encrypted-storage to uses-policies
* Add new field to PolicySet
* Add "false" to all constructor callers
* Add unit tests (including fixing some existing unit tests)
* Add new logic to AccountSecurity activity t0 dispatch both password
  and encryption requests.

Bug: 3346641
Change-Id: I54f39bc9b6fbe21c033a05b36b83081e5c78a296
2011-01-13 13:12:55 -08:00
Marc Blank
24c068b912 Make message view text sizes consistent w/ Gmail
It's exactly the same as Marc's I1240f263, except how it sets the zoom scale.
Seems like WebView.setInitialScale() works...

Bug: 3215606
Change-Id: I1374b81fd7799faa261ba6a06df18f6a8ef9d122
2011-01-13 11:21:26 -08:00
Makoto Onuki
ffdb8a7ea9 Merge "Fix "load more messages"" into honeycomb 2011-01-13 10:43:03 -08:00
Andy Stadler
3903bd3a64 Merge "Make breadcrumbs work in server settings fragments" into honeycomb 2011-01-13 10:16:37 -08:00
Marc Blank
81b6edc311 Merge "Properly clean up after an EAS email wipe" into honeycomb 2011-01-13 09:48:42 -08:00
Andy Stadler
983e1ad53b Make breadcrumbs work in server settings fragments
* Switch to newer startPreferenceActivity API
* Newer API lets us pass a string for the breadcrumb
* Get rid of newInstance() calls in all three server settings fragments

Bug: 3188951
Change-Id: I86ae91d63ff7bd32fa0eab96ac18686bb5e3e313
2011-01-13 00:07:09 -08:00
Marc Blank
ee5780f79a Merge "Properly handle style (and similar) tags in HTML snippets" into honeycomb 2011-01-12 18:43:58 -08:00
Makoto Onuki
a796fbab02 Fix "load more messages"
Was simply broken.

Bug 3347062

Change-Id: Ic8d16be377ee5a9871f0019a0b008a4de2390f15
2011-01-12 17:47:26 -08:00
Marc Blank
48eee23376 Properly clean up after an EAS email wipe
* Clear the fetch request list
* Also, make sure we don't try to send local changes during an
  initial sync

Bug: 3347078
Change-Id: Idba7bceb5919bea81bf5b48a69cd4331946505fe
2011-01-12 17:22:40 -08:00
Marc Blank
609e47cc8e Merge "Cleanup WidgetProvider" into honeycomb 2011-01-12 16:22:46 -08:00
Marc Blank
5a8be8e7ed Properly handle style (and similar) tags in HTML snippets
Bug: 3285281
Change-Id: Ia45dbe39b47f1bcb647efbf1860ed4b933976df8
2011-01-12 16:21:01 -08:00
Marc Blank
055dd6be86 Cleanup WidgetProvider
* Remove STOPSHIPs
* Don't use startService calls

Bug: 3341494
Bug: 3342662
Change-Id: I46fd60db40cf3476255f1af795da0b2a4bc34a7e
2011-01-12 16:12:07 -08:00
Todd Kennedy
4c06c82b37 Hide view/save buttons if attachment is unviewable
If none of the installed activities can handle the attachment type, don't let
the user view or save the attachment to the device.

bug 3338984

Change-Id: I6c158b7dd11ec48eec81f9a96289dd2c914f6a2c
2011-01-12 14:55:31 -08:00
Makoto Onuki
1316ccdc2a Merge "Show the UP arrow on account settings" into honeycomb 2011-01-12 13:46:24 -08:00
Makoto Onuki
82dd234f13 Improve "message details"
- Show subject/sender info
- Now all text fields are copyable

Bug 3342310

Change-Id: Ib9c4486aec36f192625c21602ea7406508ca0a49
2011-01-12 12:29:59 -08:00
Makoto Onuki
38089f6c42 Show the UP arrow on account settings
Show the UP arrow on the action bar.  Tapping it works as a back press for now.

Bug 3341634

Change-Id: I9fade234fd9878f701a601f4d016778fa032383b
2011-01-12 11:03:02 -08:00
Makoto Onuki
e5d9691ec5 Merge "Don't show starred mailbox, if account has no starred" into honeycomb 2011-01-12 10:01:14 -08:00
Marc Blank
0bf1add594 Merge "Fix broken widget display (typo)" into honeycomb 2011-01-11 22:23:10 -08:00
Marc Blank
1268bef712 Fix broken widget display (typo)
Bug: 3329906
Bug: 3342305
Change-Id: I1c1f2ae78ba86b28923d4fd9c7c390425de83af1
2011-01-11 18:44:39 -08:00
Christopher Tate
ae7119524b API CHANGE: startDrag() now takes "int flags" instead of "boolean localOnly"
startDrag() that crosses application boundaries will remain @hide until we get
more of the surrounding behaviors nailed down.

Change-Id: I2db8206b26d606d5592f185702380b889c029b19
2011-01-11 17:53:57 -08:00
Makoto Onuki
0a73e8cd45 Fix NPE in MessageListItem
Not sure in what condition Message.displayName can be null, but addign this
check won't harm...

Bug 3339309

Change-Id: Ic2261fc33cf2be759411b998707a96eedd4e4fdb
2011-01-11 17:20:45 -08:00
Makoto Onuki
9c0da8b84f Don't show starred mailbox, if account has no starred
Bug 3334963

Change-Id: I751e56731b990a6e94b8547a577a84c1a848cbc7
2011-01-11 16:45:05 -08:00
Makoto Onuki
f7b8bc1ed7 Show newer/older in landscape as well, below message list
Now the button area is owned by the 3-pane layout, rather than the message view
fragment.

Bug 3327153

Change-Id: I9c262086c5a001cfe6e81b788c27d05d490c9830
2011-01-11 16:02:19 -08:00
Andy Stadler
071274f078 Merge "Update file type acceptance rules" into honeycomb 2011-01-11 14:45:54 -08:00