Commit Graph

2126 Commits

Author SHA1 Message Date
Marc Blank
fb3c389a14 Handle upsync of EAS contact "group" (category) rename/delete
Bug: 3211907
Change-Id: I7bec90dae7c223b4bd0d0f366d18cac37e53fbcc
2010-11-23 15:07:48 -08:00
Makoto Onuki
46e60b51e2 Merge "Fix & cleanup on EML viewer (MessageFileView)" 2010-11-23 12:18:28 -08:00
Andy Stadler
4091ffe94f Merge "Move application icon to mipmap-* directories" 2010-11-23 12:16:00 -08:00
Andy Stadler
5c4c0ab456 Move application icon to mipmap-* directories
Change-Id: Idc5df7046d0fa64ffbfce2869dffb4fe0fd144a0
2010-11-23 12:06:44 -08:00
Marc Blank
70188b71aa Merge "Fix deadlock in ContentCache" 2010-11-23 11:51:04 -08:00
Marc Blank
5835dceced Fix deadlock in ContentCache
* The situation is that putCursor() is called from a reading thread
  while invalidate() is called from a writing thread
* putCursor() must not hold the monitor lock on ContentCache while
  moving the underlying cursor to position 0

Bug: 3224203
Change-Id: I35b798dccf245c761dc79c39ced4fc8c0cfb9d78
2010-11-23 11:19:26 -08:00
Makoto Onuki
a6998d39fa Merge "Implement screen transition animation." 2010-11-23 10:18:25 -08:00
Makoto Onuki
d2dac0fd6c Implement screen transition animation.
Bug 3137919

Change-Id: I077768bffb1eb246fdaa7d2def30c7b132566d69
2010-11-23 10:17:54 -08:00
Andy Stadler
1f3e117951 Fix rotation problems in setup/settings
* Fix incomplete tracking of mLoaded flag
* Defer validation on automatic reload of fields (on rotation)
  until reconstruction completes and we're ready to do validation.
* (For Incoming only) Split loadSettings into configure and reload phases;
  We need to configure the UI every time we restart, but we don't want
  to reload & overwrite user-entered values on rotation.
* (For Exchange only) Properly show/hide trust certificates options on
  rotation, and show/hide divider too.

Bug: 3170922
Change-Id: If3de30ee2d4d5668b29698af73f545510692777e
2010-11-22 19:02:16 -08:00
Marc Blank
c0604d9648 Merge "Don't layout with 0 width if we've got a real width" 2010-11-22 18:05:34 -08:00
Marc Blank
d98b42e767 Merge "Remove unnecessary MessageObserver" 2010-11-22 17:45:45 -08:00
Marc Blank
4238524d6f Remove unnecessary MessageObserver
* We used this to ensure that messages placed in the Outbox would
  trigger a sync, but this is already handled by a call to
  startSync on the Outbox

Change-Id: I90e1b56dd437bbb9e3341bbe4b1ae8245aede891
2010-11-22 17:45:12 -08:00
Marc Blank
452b347729 Don't layout with 0 width if we've got a real width
Bug: 3221168
Change-Id: I85562cad4afe7ce494cdb4cd348cad23c6103936
2010-11-22 17:43:11 -08:00
Makoto Onuki
b715ea1d76 Fix & cleanup on EML viewer (MessageFileView)
- Fix the XL layout: Don't refer to "GONE" views in RelativeLayout.
- Don't always (re-)load message on onResume().
  This will make it lose all state (e.g. webview's zoom level) when coming
  back from other activities.
- Change the default visibility of some views so that it'll look okay
  while loading the message.
- Remove the use of obsolete fragment APIs.
- And some other minor cleanups...

Bug 3221066

Change-Id: I475bc229f4ea9e0e480f528389f5180e1d63fcd6
2010-11-22 17:02:48 -08:00
Makoto Onuki
c8e623b31e Merge "Fix NPE in MessageViewFragment" 2010-11-22 15:21:07 -08:00
Makoto Onuki
deda053f7c Fix NPE in MessageViewFragment
Call clearContent() in onDestroy(), instead of cancelAllTasks().
(This is what I thought I was doing.)

Calling clearContent() tells the BG thread that the activity has already
been destroyed, and prevents them from loading a message.

Also as a precaution, don't load a message if getActivity() returns null,
which means the activity has already been destroyed.

Bug 3134403

Change-Id: I0d591e0dd147f73e70b0c027dc8037482197f7b4
2010-11-22 14:29:29 -08:00
Marc Blank
51f5cd7c16 Merge "Use consumeContent() to ensure release of HttpClient resources" 2010-11-22 11:56:05 -08:00
Makoto Onuki
79c5d35c13 Merge "Correctly set intent to new message notification" 2010-11-22 11:46:01 -08:00
Marc Blank
7f35dd8da7 Use consumeContent() to ensure release of HttpClient resources
Bug: 3197531

Change-Id: I7376b438edb05411950249bbf34cffa3ad8cb5a7
2010-11-22 11:45:01 -08:00
Makoto Onuki
8d3ef1d01e Correctly set intent to new message notification
Bug 3219763

Change-Id: I7826e762713228ee4ca1ca1d57b4d7603df81a66
2010-11-22 11:36:17 -08:00
Marc Blank
7c90fa014d Merge "Implement password expiration for EAS" 2010-11-22 11:18:10 -08:00
Marc Blank
cf3fb71bc6 Implement password expiration for EAS
* Hoist wipe() method from AbstractSyncParser to AbstractSyncAdapter
* Add deleteAccountPIMData(accountId) to the EmailService API
* Implement deleteAccountPIMData for EAS

Change-Id: I1037cde25fc2b24419f399446cfa0906dc0174d1
2010-11-22 11:17:00 -08:00
Makoto Onuki
9cb0ad3cd6 Merge "Don't reset message view when becoming active again." 2010-11-22 10:42:18 -08:00
Joe Onorato
2e578032d0 Use new notification API to get the new features.
Change-Id: I47a6c46ebb7999663ec16f049c99c418f4333213
2010-11-21 16:26:33 -08:00
Makoto Onuki
4c9e1a3fde Don't reset message view when becoming active again.
- We used to (re-)load the content on every onStart(),
  which is called too when coming back from other actibities.
  So if you go home and come back with the task switcher,
  all state get reset, including webview zoom/pan and the current tab.

- Introduce a new flag, mLoadWhenResumed, to tell if we really need to
  load a message.

Also:
- Start loading a message in onResume() rather than onStart()
  to keep it consistent with other fragments.

Bug 3215269

Change-Id: I1cc6e12c3cc3c08065da3696603a3247f341469a
2010-11-19 15:12:54 -08:00
Makoto Onuki
00fb407689 Merge "Show current mailbox name and unread count on action bar." 2010-11-19 13:56:36 -08:00
Makoto Onuki
f108837c1d Show current mailbox name and unread count on action bar.
- Show them when the mailbox list is hidden
- Data flow:
  MailboxListFragment ->(Callback)-> MessageListXL ->
  MessageListXLFragmentManager, which controls the action bar.
  (I'm not too happy with this flow, but we can at least avoid
  issuing yet another query to get these data.)

Also related:
- On the combined view, show the unread count for account rows

Bug 3137891

Change-Id: I37fa1258d946329905bbbc0da905928bcf2f4cb1
2010-11-19 13:55:49 -08:00
Makoto Onuki
9f04fdc555 Make home icon on action bar clickable
- Make the home icon on action bar clickable, and show the back arrow with it.
- When clicked, it'll navigate you back to the main screen.

Bug 3138037

Change-Id: Ice783e6b594347bd73b94e71d29a61ad4f5ef972
2010-11-18 16:54:00 -08:00
Andy Stadler
6143d026c0 Re-enable activity progress indicator
Bug: 3137891
Change-Id: Iea65b69dd376fd0026cd53680b901805a07fa101
2010-11-17 23:19:36 -08:00
Makoto Onuki
4ca7580e5d New portrait look for 3-pane
- Removed opener/collapser
- Now the "fogged glass" is 100% transparent
- Move the landscape layout to layout-land

Bug 3137919

Change-Id: I4918f905aca698c78489e340dd330c7d4da8b106
2010-11-17 15:25:58 -08:00
Makoto Onuki
6ffdecfbbb Merge "Add XL layout for message view" 2010-11-17 15:21:06 -08:00
Makoto Onuki
8e8e371260 Add XL layout for message view
- Added the xl layout
- Cleaned up the existing one

Bug 3138021

Change-Id: Ic6ab5e38c10ac12ffeeb6b12319d1e192ac2a40c
2010-11-17 15:19:00 -08:00
Marc Blank
937ea4fc87 Initial rewrite of MessageListItem for XL
* Drawing all done by MessageListItem, based on view width
* Completely functional, layout tweaks required

TODO: Consider caching drawing values for performance

Bug: 3137994

Change-Id: Ie3de79357bfe976b2fcebdedb71dea011252b445
2010-11-17 12:23:03 -08:00
Marc Blank
349055aad4 Allow ProviderTests to work with ContentCache
Bug: 3204331
Change-Id: I5399345c2b759fb34d3dc7c694eb0eef8d7de493
2010-11-17 10:19:30 -08:00
Marc Blank
8afdca0bac Merge "Minor cleanups for ContentCache" 2010-11-17 09:16:47 -08:00
Andy Stadler
2199c7ddf5 Minor cleanups for ContentCache
* Change CounterMap to not extend HashMap
* Renamed remove() to subtract()
* Comment out a failing test
* Add a flag that prevents any objects from being cached

Change-Id: I74754133b505178e8b0166390f69509f006a3da2
2010-11-16 22:49:04 -08:00
Makoto Onuki
878a9da420 Merge "Three pane behavior changes" 2010-11-16 17:19:33 -08:00
Makoto Onuki
d2289c2f19 Three pane behavior changes
- Now pressing back on the message view on portrait expands the message
  list.  Pressing back again closes the message view and navigates
  to the mailbox list + message list view.
- Fixed the bug where the app icon on the action bar will lose the back arrow
  on screen rotation.
- Code clean up.

Bug 3137919
Bug 3198987

Change-Id: Ia452f90ebe5599a2a8de905f4dabec6bd3ceb4a2
2010-11-16 17:18:46 -08:00
Andy Stadler
e6c6587b04 Create XL layouts for incoming, outgoing, exchange
* Create XL fragments (will be shared w/settings)
* Create XL landscape activities
* Create XL portrait activities
* Placeholders left for integration with settings - remove in settings CL
* Quick fixes (non shipping) for phone UX
* Update existing portait next/prev buttons per new wireframes

Bug: 3188940
Change-Id: Ied6e7fd1e968fd6db57607a68dabf7e00ba78ee6
2010-11-16 16:40:34 -08:00
Makoto Onuki
15f46cc715 XL layout for message compose
The layout is not final, but it's closer to the wireframe.
- All dimensions and colors are not final.  I just made them up.
- The "+cc/bcc" and "add attachment" buttons are in the wrong position.

I'll wait for the pixel perfect before addressing them.

Bug 3138037

Change-Id: I72fc7557c28e72df08a3751c3c93acfb35749d68
2010-11-16 11:28:58 -08:00
Marc Blank
28214840dc Merge "EmailProvider content caching" 2010-11-16 11:18:00 -08:00
Marc Blank
fab77f147f EmailProvider content caching
* In this CL, we cache individual rows, based on the CONTENT_PROJECTION
  defined for the most common queries (Account, HostAuth, Mailbox, and
  Message)
* Queries on individual rows (most often Class.restoreClassById()) will
  look to the cache first, rather than querying the database
* Queries on smaller projections will build MatrixCursor's from cached
  data
* Write-through caching updates the cache with changed columns
* Experiments with live data indicate that > 95% of queries that are
  cacheable (single row, no selection) can be retrieved from the cache,
  thereby saving a great deal of disk access.
* Timing experiments show that cache hits are > 40x faster than cache
  misses
* Unit tests for the various classes exist, with more coming

TODO
----
* More unit tests

Change-Id: I386a948a2f4cc02b6548d07d9b2fefd1e018a262
2010-11-16 08:58:05 -08:00
Andy Stadler
7fd78d8d61 Create XL layouts for AccountSetupOptions
* Landscape and portrait layouts
* Quick fixes to phone UX (not shippable)
* Added some CHAR_LIMIT values

Bug: 3188940
Change-Id: I093d5a6dcde2da96c173b5878900114802aead3e
2010-11-15 18:37:56 -08:00
Marc Blank
01f8be9952 Merge "Accept complex characters policy regardless of password mode" 2010-11-15 15:01:13 -08:00
Andy Stadler
17adb23fb4 Preliminary XL version of Account Names screen
* Add new account names layouts for XL devices
* Placeholder UX for phones

Bug: 3188940
Change-Id: I8c9d0793b004af5f5b66070fd18ecb46fc6f1612
2010-11-15 12:08:37 -08:00
Makoto Onuki
65b1eef31b Message view code change
- Show sender email address
- Show BCC for sent messages
- Don't show the default quick contact badge frame.
  (change QuickContact to ImageView)

Bug 1501239
Bug 3138021

Change-Id: I0e8d91ad3a6a3a021c8aff0945a1ce11d13b2728
2010-11-15 12:03:36 -08:00
Makoto Onuki
17670b1194 Merge "Small code change on MessageCompose" 2010-11-15 11:03:21 -08:00
Andy Stadler
27c70e3322 Preliminary XL version of Account Type screen
* Add new account type layout for XL devices

Bug: 3188940
Change-Id: I12ebe60075971fa14c7c55be65dccc0b7602f566
2010-11-14 21:37:41 -08:00
Andy Stadler
7988164ddf First pass of XL account setup
* AccountSetupBasics now has an XL version
* This is from prelim wireframes
* Final colors, text size, and positioning all TBD
* Fixed a StrictMode violation (counting #accounts in onCreate)
* Lightweight (non-shippable) fixes for functional phone UX

Bug: 3188940
Change-Id: Idf6cb514208eba07eaa20b20abfd5fcc3dae1751
2010-11-14 21:16:49 -08:00
Marc Blank
ac05d5e179 Accept complex characters policy regardless of password mode
* We were rejecting complex characters policy if the mode was
  none or simple, but this case is already handled in the
  constructor for PolicySet

Bug: 3192973
Change-Id: I060b17401c58498d1597c9322be588020deca69c
2010-11-13 14:32:57 -08:00