Commit Graph

5131 Commits

Author SHA1 Message Date
Todd Kennedy
bdf1a7eb6e Fix unit test build
Change-Id: I8fcb16d4b10214668daac73a7cb9e274b07c154c
2011-03-01 08:45:16 -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
bfb76aa224 Merge "Fix proguard.flags so that unit tests pass" 2011-02-28 19:46:56 -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
Marc Blank
de45958d8b Fix proguard.flags so that unit tests pass
Change-Id: I484819a77da6bf33703ddbc2e3f08d395186dea8
2011-02-28 17:52:37 -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
Andy Stadler
f912a7e827 am 067c874c: DO NOT MERGE: Backport fix for IMAP delete bug
* commit '067c874c316f36b80551dbda2280e1a4f964eafe':
  DO NOT MERGE: Backport fix for IMAP delete bug
2011-02-28 16:04:50 -08:00
Makoto Onuki
b02f7eb1e8 Merge "Fix auto-refresh of mailboxes." 2011-02-28 16:01:47 -08:00
Andy Stadler
067c874c31 DO NOT MERGE: Backport fix for IMAP delete bug
Original CL comment:
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
Original Change-Id: Iab10d2997404b3b0c10a60a64fb652540c0d2d1a

Change-Id: Idc290aa1b8ff4f17a0c8fd57333523becef0c8e5
2011-02-28 15:24:05 -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
Adam Cohen
5985826f8a Merge "Adding AppWidget xml flag to make widget resizable" 2011-02-28 14:29:20 -08:00
Adam Cohen
6055face4c Adding AppWidget xml flag to make widget resizable
Change-Id: I954fca3a109d8765e848eb135d21cec7e7ec2b96
2011-02-28 13:32:37 -08:00
Kristian Monsen
844e5eb80d Proper cleanstep for email
Change-Id: Ia27e7aad235467db93b938654e16f6be77f6088a
2011-02-28 15:18:10 +00: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
b7fa0f5baf Yet another cleanstep.
Change-Id: I831f0d99af79382719884320ce36004209b2e582
2011-02-25 17:08:44 -08:00
Makoto Onuki
849bba5f19 More cleanstep for Exchage apk.
Also added rm ...Email* again to make sure the email/exchange apks
will get a clean build.

Change-Id: I54d7d6fbe2d7990c68a44faadde6a3759f832d9f
2011-02-25 16:36:12 -08:00
Makoto Onuki
53018b852d Cleanstep for split.
Change-Id: Iab8f0d2f27bac4c0ccfc9dacf10eee0d996f3200
2011-02-25 15:37:22 -08:00
Makoto Onuki
f583bf66b2 Merge "Message view: Restore tab after screen rotation." 2011-02-25 14:37:25 -08:00
Eric Fischer
3d27ceb16a Merge "Import revised translations." 2011-02-25 11:48:41 -08:00
Eric Fischer
0a595d4bc0 Import revised translations.
Change-Id: I618ed921f8cc3bc88902ffd1eb374e77c7ed84b2
2011-02-25 11:35:06 -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
Eric Fischer
3f3beda06a am cb9cd95e: (-s ours) am 66d4a380: Import revised translations. DO NOT MERGE
* commit 'cb9cd95eb9a58920fa13bdbf823663b2d54f99ed':
  Import revised translations.  DO NOT MERGE
2011-02-24 20:33:55 -08:00
Eric Fischer
cb9cd95eb9 am 66d4a380: Import revised translations. DO NOT MERGE
* commit '66d4a38050759d3d100513c9bcfedd3113afb533':
  Import revised translations.  DO NOT MERGE
2011-02-24 17:17:13 -08:00
Eric Fischer
66d4a38050 Import revised translations. DO NOT MERGE
Change-Id: Ie6d2dab2566c24b648b4f2bd0b82a70b270a91b7
2011-02-24 15:37:29 -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