History log of /packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
91fa034d624d8690905f30a13ae3ffb9601cf948 19-Aug-2014 Paul Westbrook <pwestbro@google.com> Pass Account object to attachment view intent builder

Pass the full account object to the inline attachment view intent builder

Bug: 16153528
Change-Id: I9c7d24d9b1d32f141190398cdee93a235a09d1f8
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
1353da4b3075af7d5bb8f6bcd0dcb5bb3f8afdab 15-Aug-2014 Paul Westbrook <pwestbro@google.com> Prevent NPE with no from address

In Gmail if you don't use a custom from, the from address is not set.
We shouldn't crash when this is the case

Bug: 17059793
Change-Id: Id7b7d9e036c469efe7de7d1f09612e97d1086e87
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7ee90b37599cb6717782d40a6d085849918c29df 14-Aug-2014 Jin Cao <jinyan@google.com> Keyboard polish

Some polish for our custom conversation view navigation,
e.g. pressing up when you are on the first header item
will auto focus the overlay, same thing for down and last
item.

Disable focus for conversation header since there isn't
much actionable items there (MAYBE star, can discuss later).

b/3304236

Change-Id: I06796adac09716bccdae2636c7a9da245896eb34
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
0b69338a45faa422ccba8faf64c9816c55d33e4a 11-Aug-2014 Jin Cao <jinyan@google.com> [KBNav] two-pane landscape navigation polish

The system default navigation doesn't work quite as well
in landscape mode (e.g. focus on conversation view's reply,
hitting up goes to the mini-drawer instead of the message
header). This is partly because our overlay views are not
in a real list, thus we can't take advantage of the framework's
navigation support for listviews.

I decided to roll my own navigation entirely for
conversation view and manually focus/scroll.

This CL also includes some polishes for interactions in landscape
mode between drawer, TL, and CV panes.

b/16636060

Change-Id: Id1de01439a118702756d52f6a8b3f02395a0f932
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
a7404589b03ac9dd0d07b3f7d0a1ec92ac9acb62 05-Aug-2014 Jin Cao <jinyan@google.com> [KBNav CV] basic support for CV keyboard nav

Support basic navigation via keyboard in CV.

b/16636060

Change-Id: I66dbcd8015d722244b57c4e24579d0d854d3ee74
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
afaab1752ab5b507cdaad7b3619ffc1c9728368f 08-Aug-2014 Andrew Sapperstein <asapperstein@google.com> Remove above attachment promo. b/16138036.

Change-Id: I611f0f7e6eeea0247956e0f1a9f2ec3ec51c9eef
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
735a22a197215ec4787ad9f3cbaf465cce54f4d0 11-Jul-2014 Andrew Sapperstein <asapperstein@google.com> Quantum CV - drafts. b/16138121

New assets, new red color for drafts.
Super-collapsed becomes red when there's a draft.
Conversation footer is hidden when last message is a draft.

Change-Id: I89a58971a19475be79f56cae53934f3c7b2ab894
Missing: properly re-sizing the footer.
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
605dcfcefab6b222db6178f9c64a9d7a1c464da9 03-Jul-2014 Andrew Sapperstein <asapperstein@google.com> super collapsed block b/15595931

Change-Id: I197cff27874feac2317603783c65388d12be8d48
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
e2a30e19a9fff0e4368c4ec36280a3fcd4ca03e2 03-Jul-2014 Andrew Sapperstein <asapperstein@google.com> conversation footer b/15595931

Change-Id: I9eda1060f4e49a0448a321f603aec0a254daf86a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
eb58a092961773a8da67c0e0dd5770346381d938 24-Jun-2014 Andrew Sapperstein <asapperstein@google.com> Updated conversation header for quantum CV.

b/15595931

Using a combination of breaking and non-breaking spaces
to ensure that labels start on a new line if they don't
all fit in the remaining space of the first line they can
be drawn on.

Starring works now.
Can click the labels to open change labels again.
Priority indicator is now baseline aligned.
Properly drawing the label chips.
Label chips moved up to the baseline
RTL support.
New star asset.

Change-Id: Ife32339f174bff7beafc979f9cc9761cefffed72
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
fa501472f11a7f9b34d081a34e4d75d2c673cc8b 23-Jun-2014 Andrew Sapperstein <asapperstein@google.com> Remove message level stars. b/15595931

Also don't expand starred messages in conversation view.

Change-Id: If6b499d12525bed00f7d8db0d2a8e80ba2afc226
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
59ccec3db4710f2aea6a4a9a30160ad19331367d 19-Jun-2014 Andrew Sapperstein <asapperstein@google.com> Remove borders/cards from conversation view.

b/15595931

Change-Id: I51b5ce1d9387d6354d421b0e399a2003c6e84c54
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
6a2df258316b267151296556dbbdba20200ecb1f 30-May-2014 Jin Cao <jinyan@google.com> Provider support for different sending states for messages

Add support at the provider layer to differentiate among different
sending states (not sending, sending, retrying, failed).

b/9805976

Change-Id: Icb47412ad6f961f36adb6223a6289b0c4dcd7a2c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
e2b2eb7ef18ab1ba0260eed4a22930cea195c240 13-May-2014 Andrew Sapperstein <asapperstein@google.com> DO NOT MERGE Don't convert to strings only to convert to int.

Fixes b/14812974. Instead of converting (now) floats
to strings for passing via javascript, just pass them directly
as ints. Then we don't have to do any parsing.

Change-Id: Iaab27e46b3c6875fee203de389119b835fd27261
(cherry picked from commit 73bac140429627ef9111438d2358958d5d58638b)
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
82d9f637491dcdfbb13dfc33c9cef6543d5a74d6 29-Apr-2014 Greg Bullock <gregbullock@google.com> Minor, single line indentation fix.

Change-Id: I9f6d0f7670594d7ed3d7db53c8d644d6b98b12ea
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
daab4397cbfb2145f2cc899e5fa2e81fa8cac7c4 24-Apr-2014 Andrew Sapperstein <asapperstein@google.com> am f78da980: Merge "Hide Save to drive in EML view. b/14277510." into ub-gmail-ur12-dev

* commit 'f78da98066e806450e84d6c16794eaff9392650f':
Hide Save to drive in EML view. b/14277510.
b1f7786d52e34485d6c9f1fe50c2aa6fc38ad90b 24-Apr-2014 James Lemieux <jplemieux@google.com> Merge "Gmail does not display inline attachments nor does it offer "Show pictures" within the EML viewer" into ub-mail-master
8e1ffbf042a23824a97a9f47cfc81cf6f14603be 23-Apr-2014 James Lemieux <jplemieux@google.com> Gmail does not display inline attachments nor does it offer "Show
pictures" within the EML viewer

b/13912473

The Eml viewer (and indeed all Secure Conversation Views) now
offers "Show Pictures" to display the inline images.

Those inline attachments are also displayed as tiles at the
bottom of the Secure Conversation View so that interaction with
them is possible.

Change-Id: Ida66820c98c88b222e459aa9d2559383a3b608a0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
833123d9c31b0b2dd23f7f74738c5bccf8a546d3 24-Apr-2014 Andrew Sapperstein <asapperstein@google.com> Hide Save to drive in EML view. b/14277510.

Change-Id: Ia75fb95536517df576ef3c39072a423e3e244b6a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7ec2a2a4aeb342fb40a6fd3a8eb5269412a1ec14 23-Apr-2014 Andrew Sapperstein <asapperstein@google.com> Fix b/14271599. App crashes when leaving ad view.

Change-Id: Ia37463146ce035388405ea06599273d36e1e1d51
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
381c322eb30c39f63a2bb82812d63262eb3c1c1c 20-Apr-2014 Andrew Sapperstein <asapperstein@google.com> Save to drive promo. b/7659807.

Provides a space above the attachment bars to show
some additional content. Default behavior does nothing.
Hooks have been added to allow resizing of the message
footer.

Change-Id: Ib950091d176311bdb06c7c7a466223beb997a7b5
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
72953f25e00ee8e7b5c7682148430dc82f00a77d 16-Apr-2014 Jin Cao <jinyan@google.com> Add Gmail timing to Analytics

Add support to record timing data to Analytics. In this diff
it is used to record the load time of conversation view from the
conversation list.

b/13628866

Change-Id: Ie607c02004b895bcdccaba822843542c6143a64c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2ef5f08719a9981d73f7954ce82a78ea6842f187 31-Mar-2014 Jin Cao <jinyan@google.com> Fixed draft data inconsistency

NOTE: THIS BUG APPLIES TO ALL DRAFT FIELDS (including subject,
to, cc, etc.), NOT JUST THE BODY.

The bug is caused by some kind of delayed server response where
the data inside the adapter is out of sync with the newest data.

We now force the adapter to update itself whenever any part of
the draft changes to force data consistency.

b/12587302

Change-Id: I01eea8f3aeafa14a03daad62f3462db65c3048ec
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
81c93a949e61524f9e59ad4f782bb6f2eef9917c 29-Mar-2014 Andrew Sapperstein <asapperstein@google.com> Merge "Fix some code style nits." into ub-mail-master
a7fa9bfc60682e376d7ee10701ed59fe66add1be 29-Mar-2014 Andrew Sapperstein <asapperstein@google.com> Fix some code style nits.

Change-Id: Ie12948b2d35d1184bc5c4e3d8bd3433ad0a8d2ab
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
3c6fd44f9ae0cf60248dc64ee74d46afed633c45 25-Mar-2014 Andy Huang <ath@google.com> streamline inline attachment view param passing

Put more logic in CVF (or its secure/eml equiv) and pass fewer objects
of lower specificity to the intent builder.

More concretely, the viewer intent builder now accepts a Message, which
can be quite useful.

Bug: 7659807
Change-Id: I6be3bf87c3e01367a20c062d1e59f4ca6e1dd85e
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f50aafa8f98545b1a0f88523c253bc2b94117783 22-Mar-2014 Greg Bullock <gregbullock@google.com> Refactor to introduce local variable - and make it final

Change-Id: I2728efb665595fcfbfae68757b6ebc322c720e70
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4e87a08e295e775f9a30b4f49f95f983410da784 14-Mar-2014 Andrew Sapperstein <asapperstein@google.com> Merge "View entire message UI." into ub-mail-master
f59d01c3116dc2adde97a5b52aa6094144c2d315 20-Feb-2014 Andrew Sapperstein <asapperstein@google.com> View entire message UI.

We need the per-message plid server support,
but we are forwarding the clipped bit to
the UI and showing a button based on that
bit. Clicking that bit will open the
plid viewer for gmail. Email should be
unaffected as it does not ever return clipped as true.

b/2887917.

Change-Id: Iddb54e37cf650ca16a75fcbe69f1861becdd81b9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
e6bf30d6e98eb6140b7a5f301efe631ff35c9f7b 14-Mar-2014 Andrew Sapperstein <asapperstein@google.com> RTL - Align conversation header with viewStart.

Fixes b/13432564.

Change-Id: I97954654b829579d481780ddd0c550d4caa58086
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
986776bbd046c9569a4abb67501819bee61e7194 20-Feb-2014 Andy Huang <ath@google.com> fix missing message text processing upon send (and as drafts mutate)

Fix message body processing when transitioning through the send flow.
Previously, the message text was largely unprocessed, but it wasn't
obvious like it is now with 980px viewports.

Also move 'table-cell' wrapping from inside the message template to Java
code so the in-place body replacement that happens during send can also
use it.

Bug: 13079016
Change-Id: I9a6a801c43b76c1714dfd2c8b41649fa6b9e90c8
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2160d53e6ae0bfb797569d616e735e46c21522ff 11-Feb-2014 Andy Huang <ath@google.com> fix text sizing inaccuracy from 980px switch

The side margin was in CSS px, but goalWidth was in dp. This caused the
goalWidth to be smaller than it should, which caused scrollWidth to be
smaller, which caused each message's zoom factor to be larger, which
caused text to be larger than it used to be.

Now. goalWidth and documentWidth both have body margins accounted for in
the proper units.

Bug: 12579959
Change-Id: Ice36b48f381cf3171b092ba27152aa56b64f4100
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4dc732387454eef3ee6d89f9fa393630eb6213f9 05-Feb-2014 Andy Huang <ath@google.com> Render conversations to 980px viewport

Expand all conversations to 980px width to allow double-tap to continue
to work on newer Chromium builds. See
https://codereview.chromium.org/18850005.

cool side effects
* much more usable double-tap zoom factor on KK+ (now "it just works")
* better text rendering fidelity in complex layouts (text no longer
escapes bounds as it tended to do before)
* fixes text sizing edge cases where text was unexpectedly large and/or
line heights messed with text rendering

Initially enable these changes on both JB- and KK+ WebViews. Disable
NARROW_COLUMNS layout on JB- to prevent very short columns.
pros on JB-: better rendering fidelity like on KK+, consistency with KK+
cons on JB-: some power users will miss pinch-then-double-tap-to-reflow
functionality

Possible future improvement: use device-width viewport when full convo
fits to inherit Chromium's new fast-click-handling behavior.

Bug: 12579959
Bug: 10695551
Change-Id: I13f85a6df909a966fcd0862e5bd292ec6ae77212
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2fd167d6131482da984768b5ee75cefa32ed3e32 28-Jan-2014 Andrew Sapperstein <asapperstein@google.com> RTL - conversation view fixes.

b/12681840 - Properly align attachment details.
b/12681242 - Message header expanded details are locale aligned.
b/12681528 - Message header title and snippet are locale aligned.
b/11989230 - Set each overlay view's layout direction.

The first three bugs were fixed by adding unicode wrapping
to a bunch of fields.

The final bug was slightly more complex. In some scenarios,
the overlay views's layout direction was not properly resolved.
But it should always be the same as its parent so we forcibly
do it now when adding new views.

Change-Id: I9e065e0deaf1958ee87d098231238f6d976e9e68
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7cad28070b4e903e4ce05e5fc610988f71630f97 10-Jan-2014 James Lemieux <jplemieux@google.com> Remove Print/Print All from conversation view in Email.

b/12245916 A secondary change in this defect is to dynamically show either Print or Print All in
GMail conversation menus depending on whether the conversation includes 1 or many messages.

Change-Id: If78dced66893c0ae619850f2272c007747e98e26
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
821e578a71c7015646522e729600618f0ec16fc0 07-Jan-2014 Tony Mantler <nicoya@google.com> Deduplicate Address class

Change-Id: I4f6df51f5641475ffaf96b0189ccc00748880cc0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
8ec43e877a9c1925514f066655984e21fbd255e8 18-Dec-2013 Andrew Sapperstein <asapperstein@google.com> View inline images in photo viewer. b/5555553.

Uses the existing javascript image src rewriting
step to build a mapping of urls to message ids.

This mapping is passed into the InlineAttachmentViewIntentBuilder
so that it can use this information along with the
conversation id and account name to build attachment
and attachment list uris so that a photo viewer open
intent can be created.

Additionally, SecureConversationViewController will need a different
mechanism for this UI to work in Email/the eml viewer.

Change-Id: If14800348fe2191d0633bf768b8cb4e9746f6578
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
25a8a76fab08f862d7ba78b66b841a3aec58cb8d 26-Nov-2013 Andrew Sapperstein <asapperstein@google.com> Delete dead code. b/11708307.

Change-Id: I82cca1daa5c3fae375e72f24c76b68e44517e0f5
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
eeb4a35d7c596192666152d7115ac3c842b901c4 21-Nov-2013 Andy Huang <ath@google.com> prevent monkey NPE, hide experimental prefs

Change-Id: Ifa8ea55798e1d6fb0cb969ff1a76b95b4e45a1e9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
e6c9fb6835247d98898e2af581ad9449ad7f3184 15-Nov-2013 Andy Huang <ath@google.com> misc analytics

* lots of new menu items
* log auto-advance setting
* log message header taps
* log photo-viewer menu items
* log conversation views (including enclosing label, synced state,
message count)
* log folder views (including bucketed total counts)
* log pager swipes (including folder type)

Bug: 11253673
Change-Id: Iffdcbf19b202fbb3b6b33e0f7f0e9e4c24fa948d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b08a9156561bb0e469ad64b70432ed916d81a07b 30-Oct-2013 Alice Yang <alice@google.com> Merge "Use server prefs for show images setting" into jb-ub-mail-ur11
3af481c20edd84419d0d4a8476994ac008c0b97a 30-Oct-2013 Andrew Sapperstein <asapperstein@google.com> Bidi format new msg sender names. Fixes b/9870243.

Change-Id: Ifeb990baebc5933195d1443112264b02eb35c837
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f323c046034b4658a80438575d8e9f01d92e57e6 30-Oct-2013 Alice Yang <alice@google.com> Use server prefs for show images setting

- Change setting from a checkbox to list pref (popup)
- Use synced preference "bx_eid" for whether to always show images setting,
in order for UnifiedEmail to read this pref, it's added to the account's
Setting field
- Dismissing the teaser now sets "bx_eidps" pref which gets synced to
the server (once server changes are in)

Bug 11158252

Change-Id: Ibd28690ccd95e0bdd399aaad9c9e205968a0ef39
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
234d35352eeaaa8d3928e31028be49112607bd29 29-Oct-2013 Andrew Sapperstein <asapperstein@google.com> Use activity instead of context for printing.

Fixes b/11432054.

Change-Id: I0a56b4498d8e4f1231436b9965c91246c730717e
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
85ea6188b3c62ede2eb0427379f050717f79562c 15-Oct-2013 Andrew Sapperstein <asapperstein@google.com> Abstracted out snap headers for ads UI refresh.

b/11132059
Rather than directly including the snap header
in conversation_view, we inflate it at runtime
via an override-able method in ConversationViewFragment.

Change-Id: Icaec39f6461313a894eef5506448b3f7513df044
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
562c5ba7235948cf1d20a9afa40e67cd62f43cf7 10-Oct-2013 Andrew Sapperstein <asapperstein@google.com> Print single message and offscreen webview.

b/10712542.
Also supports Eml printing and secure printing (though
that's email only and has some buggy rendering).
Also fixes the no subject crash. b/11136365

Change-Id: Ie5f6e7d7e1762c115df3169b6e62dc439545f08c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
e8221483ce5f013f02a4ef63d6682cc36313cda7 03-Oct-2013 Andrew Sapperstein <asapperstein@google.com> Show images by default. b/11044804.

Needs final UX on preference placement
and strings but otherwise, it works on Gmail.
It's off and the setting is hidden in Email.
Currently a checkbox preference.

Change-Id: I97ce4361e9093e5ce7b3300205cba8f58e27b3d6
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
0dfae6942a834f32f031c466017539d43d06e466 02-Oct-2013 Paul Westbrook <pwestbro@google.com> Prevent a null address from being added to the address map

Consolidate the implementations of getAddress

Also, removed unnecessary null checks from Utils#getAddress(), as if
cache was null, starting the synchronized block would have thrown an exception

Bug: 11009928
Change-Id: Ib7685b28224b14e4d881594cdca13096771d5185
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9b025f2b2811902d678e6467d89de9f07e5cc61a 28-Sep-2013 Andrew Sapperstein <asapperstein@google.com> Print list of attachments.

Doesn't print attachment thumbnails for
image attachments. b/10712542

Change-Id: I5202338f60ddeb35238fce9d79691ba3c7a29e89
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5c1692a5faeab220881a17a3427a8986ef874403 16-Sep-2013 Andrew Sapperstein <asapperstein@google.com> Initial printing support.

Needs mocks and redlines and such.
b/10712542

TODO:
Logos for Email and Gmail.
Attachment support.
Use offscreen webview.
Secure conversation view support.

Change-Id: Iec37a9a46e506ccf12fbbb775c1b47b08a0d9724
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f1566b1e77e9d7ac66ebb47897b5c652e2b18943 20-Sep-2013 Andrew Sapperstein <asapperstein@google.com> Fix crash when opening ad teaser.

Also improves debug dumping of html content
to allow overriding of file path.

Change-Id: If5b85da5e9f444c72fe2c0a78e52bc852dec6768
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
0b8c080491f6884c2cfb7fcc473d970a9f4b97b9 16-Sep-2013 Alice Yang <alice@google.com> More svelte changes

- Re-enable sender images, but change the cache size of loaded images
to 0 (instead of default of 300K)
- Disable preloading of conversations in CV (for navigation to previous
and next conversation)

Bug 9325758, 9325806

Change-Id: Ifd70e47e1e0f5d378e4cb8c91208516a26da1db0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
66d6911d57495b7010abeb5576a15f1521af443d 23-Aug-2013 Andrew Sapperstein <asapperstein@google.com> Fix b/10457328 by making "many" string a plural.

Change-Id: I4d7ae2931cf57e36d7bb5230fc16866000d560b4
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
99ee4565c0a2953fe95b2d5f8e80a84ae0f1b1a5 23-Aug-2013 Andrew Sapperstein <asapperstein@google.com> Speculative fix for b/10342942.

Change-Id: I292a9a81846e6d37751c8119b146f481e9530096
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
90eccf969d691abb34f9c6f3d854091adb0c18d1 22-Aug-2013 Andrew Sapperstein <asapperstein@google.com> Align web view content with sender image.

b/10264590

Change-Id: I2528b09d5308c9c2390abeb737f80130d9724b52
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
821fa87279d590e682effbdb652c8a92e805eec8 22-Aug-2013 Andrew Sapperstein <asapperstein@google.com> Revised new message button design.

b/10264590

Change-Id: I4121baf424eacfc2811087b5700b1a6f72fc801f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
68141df2d855af6520a19ff9127f69463d49c3de 20-Aug-2013 Andrew Sapperstein <asapperstein@google.com> New caret for tablet.

Not to be confused with a carrot, carat, or karat.

Change-Id: I3748d295a8599ffcb528bdfc1d376d3fc3b64396
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f0ea4849bf7a2c11f99ca0b42307ae8ba665b1dc 14-Aug-2013 Paul Westbrook <pwestbro@google.com> Add public no-args constructors for fragments

Bug: 10311630
Change-Id: Ic7ba4783be34a9c3d185f6cbad3001f49b310aad
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b1d184d164303d83d342c60e4bffc732aa10ac2c 09-Aug-2013 Andrew Sapperstein <asapperstein@google.com> Refactor ConvWebViewClient to allow overriding.

Change-Id: I029ca2936a6e59e7ee7527d9608564602ea0170d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
cee3c90574b48ccaa0f8b9f9341383c231ed41d2 31-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Conversation UI Visual Refresh: border fixes.

Borders now expand and collapsed based upon the state
of the messages above and below them. Also fixed a bug
where replying to a message added an additional border.

Change-Id: Ia90caf4ea595767a90213fe33b29e1bd75c0aca0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
606dbd7a44b8445e872c25c0fe080e3e12a47adf 31-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Remove ad code.

Moved to UnifiedGmail. Also refactored
HtmlConversationTemplates to use HtmlMessage,
a new interface instead of the Message class.

Change-Id: Ie14694b37800ed9eb9fc692d434508f66660d55b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
e539880d39620d7e26b31c8b5b381a7e9d1a722e 30-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Conversation View UI Refresh: Card Borders.

Also some tablet stuff. Top borders aren't
working. Need a new asset for them. But this'll
do for tonight.

Change-Id: I6501b39c1d89f025ff68aa3cf19b3c29365c3f92
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
1f082231c4a51eb3be37df6d2a0024634dfe4a9b 29-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Properly Update conv when new message added.

Previously we weren't adding the right items.
Need to not add a top border but add a border
at the end. Additionally needed to change the
javascript to also add the spacer for the bottom
border.

Change-Id: Ief82dca25c0c11b258cfe9a3d783d6c4f2e62974
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
12c03aa47574b6d0b5326f4c55fdd28f73e4d5be 26-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Message Ads: preference manager url and new asset.

Change-Id: Ic98f4244073a68c250bd81bf29360d62d402e978
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
a1ab97300a6d0639952a591cf5a54a06df96c0a1 26-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Merge "Conversation View UI Refresh: Cards." into jb-ub-mail-ur10
14f937408fe2451a91b44d3cd7d141347e716775 25-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Conversation View UI Refresh: Cards.

Lots of changes:
New show pictures asset.
Added border as a new view type in the conversation
view to vertically separate cards. Changing its size
is TBD.
Final UI for details header (both collapsed and
expanded).
Side borders are accomplished via a new overlay layer that
is positions a view to each side of the conversation view.
Lots of dimension changes, padding and margin changes, and
other pixelpushing.

Change-Id: I4029ae46896e27fe20b005c01b8df04bb2a46c2a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
006e13c4943d83ce3277d502f531236b903e94fd 25-Jul-2013 Paul Westbrook <pwestbro@google.com> Change log level

Change the log level for entries that can log the conversation url
to debug log level

Bug: 9283536
Change-Id: I61c12832ad53c0c7037d45b721b248d294ed4585
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9f957f3463fd149d33c209409e2bba500b539177 20-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Initial Ads work.

Created AdViewFragment and AdHeaderView.

Change-Id: I6c534579ed7fb5ca53e12ca57f9f8091717cbb9f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f7ac83f2fbf5192e2156b42d9e5e4110e1cb07b0 16-Jul-2013 Andy Huang <ath@google.com> disable onContentReady for non-primary conversations

The 'webkitAnimationStart' DOM event listener we use to signal page
readiness on JB+ seems to cause a JWebCoreJavaBridge timer pulse every
25ms for the non-primary non-visible conversations. This pulse also
persists beyond Activity.onPause (unlike GIF drawing).

To work around this, don't use onContentReady for the non-visible
conversations, even on JB+. Fall back to the onPageFinished listener
instead.

Hook up WebView.onPause/onResume listeners just in case. I was not able
to find any practical situation where these calls stopped timers, but it
probably doesn't hurt to put the calls in.

Bug: 3368262
Change-Id: Iaedc020c99c3127b77b8612b373ce21ce0a71a23
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
3b965d78774a42358ce6bbdcc43b4c8df130a60e 25-Jun-2013 Scott Kennedy <skennedy@google.com> Clean up a bunch of warnings

Bug: 9565838
Change-Id: Ie3a380581e81c63aaa0764875c55bfdccd5f2b13
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4ddda2f0a4ee5381a90779a6939b05b064ce5d11 10-Jun-2013 Andrew Sapperstein <asapperstein@google.com> Working implementation of eml viewer.

Everything works except attachments.
The implementation uses a controller that is used
by both SecureConversationViewFragment and the new
EmlMessageViewFragment to do the rendering work.

Change-Id: I4d8b9b56e6609c3a81b902b102a90f1e50c115cd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
376294bbb5ded471ad577fdb492875a837021d08 07-Jun-2013 Andrew Sapperstein <asapperstein@google.com> Refactoring of AbstractConversationViewFragment.

In order to support EML viewing, we need a bunch of
the overhead provided by AbstractConversationViewFragment
without actually inheriting from it. Additionally, most of
the code was inner classes that had no business being such.
These are now moved into their own classes.

Change-Id: I80769d2606b52c41dc116a6bdee17c00adc66a5a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
8812d3c50e35c4f2a02d29c35c76082c4ebec0cd 05-Jun-2013 Andrew Sapperstein <asapperstein@google.com> Refactor ConversationMessage out of MessageCursor.

Just moved the static final inner class to its own
file and fixed up the imports. Also moved the MimeMessage
parsing into Message instead of in ConversationMessage.

Change-Id: Ic35d4cf5e52b392d68898ff47efaeeee4d0865b0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
a8d623a3676f8abdda52b9516556e52e8490dbf7 29-May-2013 Andrew Sapperstein <asapperstein@google.com> Properly size text in Email.

Now matches the Gmail behavior where we
set the text size to 80% and then scale up.
Also refactored the scale up portion into
AbstractConversationViewFragment. Fixes b/9176401.

Change-Id: I902b399f96d4b6e8a7dd2450108e6c8bf5e24ab1
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7dc7fa00a6bea16b1142dc4e9ef8aabb73747fb7 09-May-2013 Andrew Sapperstein <asapperstein@google.com> Show all sender images in conversation list.

Previously, we were skipping sender images for
super-collapsed blocks. Now they are getting added
to the cache before we go get the sender images.

Change-Id: I201f79ba9869cc816de54c8d8e77cba4c53f7953
(cherry picked from commit 26f01270ebc3fd1e84d6b25c92729331b0246476)
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
c42ad5ea3a49e6045a79d1fde3d858033176e67b 10-May-2013 Paul Westbrook <pwestbro@google.com> Use an ObjectCursorLoader for Messages

Bug: 8763530
Change-Id: I0a70c92dd52eff5d10c067fdb78b371bfd8178ac
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
58192e5202d379ff62bf99995b08a0a7cf6646d1 09-May-2013 Scott Kennedy <skennedy@google.com> More logging

Bug: 8824046
Change-Id: Id9d0fb16c78ff8fce8d7cb551aed09921d634d2c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ae92e15b48a00613e06ea4c6b274bd73a4e6ec40 03-May-2013 Andrew Sapperstein <asapperstein@google.com> Speculative fix for b/8782526.

Can't reproduce it since it appears device-specific.
Hopefully when it reaches bazaar, we can get it confirmed
whether this change fixes it.

Additionally, we are also now catching all JS throwables
when onMessageTransform is called.

Change-Id: Ic9d61e01de7ffeb5359103c70c96a02352c54bcd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2fc673050f03ec632d1c84d9cc82098a8b99a1c0 30-Apr-2013 Andrew Sapperstein <asapperstein@google.com> Implement "Revert auto-sizing" menu option.

Turns on revert auto sizing as an option if the conversation
has been transformed. If it has, and it is pressed, the conversation
will be re-rendered in its original layout. This re-render will
stick through orientation changes as long as the fragment is alive.
Fixes b/8575997.

Change-Id: Ie05d539f8afcf4333cc9d0371e89aec8508213d7
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
543e709c976ce954a072020ba6f75d12f41b1fba 22-Apr-2013 Andy Huang <ath@google.com> Fix table-layout emails, blacklist transforms by sender domain

Fix Twitter emails by overriding any 'table-layout' style when
overriding table width to 'auto'.

Add infrastructure to blacklist transforms by sender domain.
Not actually used yet, because the Twitter email fix above is more
generally useful and doesn't need to be special-cased.

Bug: 8403536
Bug: 8685326
Change-Id: I9e72e8e6336c138674839724df57eef1f86a2d9b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
1b56a67396e40b65e15743bcf8ccce9a623b2f2c 19-Apr-2013 Paul Westbrook <pwestbro@google.com> Prevent NPE

If the ConversationViewFragment is torn down before the views were created,
make sure not to dereference a null webview

Bug: 8654812
Change-Id: I0d07efe541de4c3b07f68b0b0c2f309b3a062bf4
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
57f354c02dbf56ebc893a570564906e61c31e09e 12-Apr-2013 Andy Huang <ath@google.com> down with experiments

Bug: 8600277
Change-Id: I5b3aa7a897d3c2d780f07e1817e26128bf95a929
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ff8553f20964f4c31b0c503a9e1daff6ae08a9c7 06-Apr-2013 Scott Kennedy <skennedy@google.com> Cleanup

Change-Id: Iee8abf75639450d469632e43fe0e102b687558db
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
75b52a50a7b8382d9046d48ea8cda97b5471cbc8 15-Mar-2013 Andy Huang <ath@google.com> hide rendering reporting in Email2

Change-Id: I6fc750a0369a9396fc00f4e5fe4ffac61831d5b4
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ccf6780d9c80070beca4ade6e4084c3fb719af51 15-Mar-2013 Andy Huang <ath@google.com> define a default value for the auto-fit setting

Fixes an issue where migrating the pref to default=ON didn't take effect
until you visited general preferences.

Change-Id: Ie86713da8da5aed0382c1bb7fc33247fccef8b23
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
1ebc2db723ed29093d724eb5da906a496ee57224 15-Mar-2013 Alice Yang <alice@google.com> Add way to report good/bad emails.

Added option in overflow menu to report an email as good/bad.
Currently forwards to the mailing list and prepopulate the compose text
with debug info.

Change-Id: Ieb468d8a13dc929dff808a3020f3d52ae7f85b07
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
05c70c88e6b421bedce134799a0ea928dbf44cd5 14-Mar-2013 Andy Huang <ath@google.com> report transform results to the conversation fragment

Also print it out in the message body in tiny text when the transforms
succeeded.

Change-Id: I942f707b5f7251f7aa9043c48fc0aa794c753065
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
0180f27c0998623b702274048b49cd4bec536cf1 09-Mar-2013 Andy Huang <ath@google.com> add <img> transform for readability

Shrink any <img> elements with an effective width wider than the
document. Instead of setting the width outright to the document
width, use "100%" + max-width so it can be smaller if the layout
allows.

Genericize the actionLog to be a list of functions, contexts, and
parameters. I would normally use bind() but A) it may not be available
on older WebKit builds, and B) it introduces an unnecessary closure.

Bug: 7400516
Change-Id: I5ab7f81674f9e238e6dc5ea04669d282c0586066
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5ea5a8330532a75c83cbb30993a14ee9b821fa2a 08-Mar-2013 Andy Huang <ath@google.com> start munging wide <div> and <table> elements

Modify HTML content that is too wide if the experimental flag
is on.

Find <table> elements with a width wider than the body and
remove the widths in the hope that the table would otherwise
fit. Content authors often use this trick to prevent their
content from growing too wide in a very wide desktop browser
window.

Failing that, find all <div> elements where a width is
specified that is wider than the body, and turn the width into
a max-width.

Bug: 7400516
Change-Id: Ie4d3c2c4c50a191c30ee590dce71bc9bf6de8268
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4d6384e8c8d4bba45c2744b137cf90ebf5cc63a4 08-Mar-2013 Yu Ping Hu <yph@google.com> Don't set subject on action bar in ConversationViewFragment.

It's unnecessary since the subject is set elsewhere, and
it sometimes results in the wrong subject to show.

BUG: 8282128
Change-Id: I54b4390f3279330db7ff95e507c13cf2e25b87f9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
243c23618b066bcdcd0ab9e36d8c01f50db2cbd0 02-Mar-2013 Andy Huang <ath@google.com> simple instrumentation for conversation load times

Bug: 8284691
Change-Id: I5273649165709425d6ce1d9e29b56bae037a7604
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9e4ca7993213d296043d20fe9cf4e166b5d595e8 28-Feb-2013 Andy Huang <ath@google.com> better logging of conversations, folders, fragments

More info will be logged at DEBUG level.
Also fix crash when DEBUG logging enabled.

Change-Id: I15fbb944128d5fed18086a2eae33f080bff9117e
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
3c276bf4271db05c42f84e7554b4b0d592caa3d4 19-Feb-2013 Andy Huang <ath@google.com> disable CSS zoom

Change-Id: If2971fdf832832043a0b842d68373f685e36878a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
c1fb9a9c2730178105977fca629e80951bfc3cdc 11-Feb-2013 Andy Huang <ath@google.com> Single-message zoom using a floating WebView

Protected by an experimental pref for now
Restores scroll position
Preserves 'show pics' state
Speedy animation
Fade-in animation begins right after onNewPicture (ICS compatible!)
add UpOrBackController role for fragments to get a whack at back/up

And because this approach avoids using the CSS 'zoom' attribute
within single-message mode, double-tap works well and there are no
line-height issues.

Bug: 7400516
Change-Id: Idedfa6e35edc291c9169fbd9b1315b39b4253f60
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
d82a31f04f2a4cce27c8023d5330ff13aad198b0 06-Feb-2013 Vikram Aggarwal <viki@google.com> Suppress automatic update to mark read/viewed when marking unread

Every conversation shown in the CVF is marked read, because it has
been read by the user. When we mark messages unread, there is a race
between the marking unread, and this automatic marking read. In rare
cases, the cache can get the operations in reverse order:

1. User clicks on message
2. User marks unread (in a hurry)
3. Message is shown
4. CVF.onConversationSeen() is called, which
5.... marks message read and viewed.

The easiest fix is to suppress marking the message read when
markUnread() is called.

Bug: 7326925 Mark Unread Non-Functional When Viewing Message
Change-Id: If57f674f39b5dbf115a468fcd17656f9715394ed
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
51ad9041014920d78d9b7b3ab84ec04a7c41beae 17-Jan-2013 Vikram Aggarwal <viki@google.com> Don't update subject in onUserVisibleHintChanged

1. Changing the subject in onUserVisibleHintChanged is overkill. The
actionbar subject is changed by the controller, and the
conversation view subject should be changed as a result of
updates to the current conversation.

2. Only perform the operations in onUserVisibleHintChanged if the
fragment is visible to the user.

Bug: 8025544 Call to setSubject in
ConversationViewFragment.onLoadFinished

Change-Id: I71bd78641f20635709bc1dafb5c37942c249effe
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
69a6cdff8afde77ec9bcd75a5651ee212344019e 09-Jan-2013 Vikram Aggarwal <viki@google.com> Allow veiled address pattern to be updated through settings

Change-Id: Ibbd412308283fd2c0cae0abbec0a43be1db1b3ad
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
02f9d18a54072db8d86c524f9c09e508092ddd7c 29-Nov-2012 Andy Huang <ath@google.com> per-message zoom using JavaScript + CSS 3D transforms

When Auto-fit is off, disable built-in WebView zooming, which
is only capable of zooming an entire document (the entire
conversation).

Use ScaleGestureDetector to trigger a CSS 3D transform to zoom
in/out just a single message div.

During the gesture, the elements above and below the message
being scaled are untouched. This is ugly.
TODO: they should either move away (tricky) or at least fade
out.

When the gesture is complete, to avoid leaving overlapping
elements, we force-scale the height and reset the transform
origin to the top left.
TODO: auto-scroll to the correct place to counteract this
perceived jump.

Double-tap is not yet implemented. We'll have to do it
ourselves.

Bug: 7478834
Change-Id: I114e4977304c7060d499d116cc75bc0488967448
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
eb9a4bdc53269ee05fe11870b9ebf03f18196585 12-Nov-2012 Scott Kennedy <skennedy@google.com> Fix always show pictures for multi-message thread

The always allow pictures button only affects a single message in the
thread, so we need to propogate it to all other messages from the
same sender.

Bug: 7346217
Change-Id: I722ef284afd7b8853ddab622f54b86ebaaa5d463
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
fafcd17adae9b7ba5c270611d0f53608ced92e2e 02-Nov-2012 Scott Kennedy <skennedy@google.com> What's New Dialog

https://docs.google.com/a/google.com/file/d/0B9gZLUc5DY13VmlSaldIaFJ0UHM/edit

Show a "What's New" dialog to first time users, and after certain
upgrades, outlining new features.

Also link to it from the About screen, possibly showing slightly
different content in the dialog.

Also shows a dialog about auto-fit when you first enter a wide
message if auto-fit is disabled and you never explicitly set it.

Bug: 7397845
Change-Id: I2f2bf9668d3d105b8a7ccf9857eb6c76c32c6a74
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
289b45a2672e3837adf0c40ccf27f879f5aa28e6 08-Nov-2012 Scott Kennedy <skennedy@google.com> Merge "Store the "Show pictures" state on rotation" into jb-ub-mail
8960f0af431bc164003e09b3c8981aab808d9ec1 08-Nov-2012 Scott Kennedy <skennedy@google.com> Maintain to/cc/bcc state on rotation

The tokenized string was never updated after being initially set,
even if the backing values changed.

Additionally, the to/cc/bcc values were never updated once the
Message was initially created.

Bug: 7490394
Change-Id: Iae1c8ae88f9ab5b8e2e7fe10835587b61decf0c8
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
8f1877832b0f3bc55e6d63ccf70dfae7dd8328c9 07-Nov-2012 Andy Huang <ath@google.com> wire up snap headers pref

Have conversation view read the initial value upon view creation
and update the value in ConversationContainer via dataset
change, which is triggered by account change (which is triggered
by settings change!).

Bug: 7217360
Change-Id: I55ac947dea692af6ad32995d0970c69dbdf5c2ef
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
202738427ede23dd5863583aa3df17e4abfbf5e2 07-Nov-2012 Scott Kennedy <skennedy@google.com> Store the "Show pictures" state on rotation

Keep track of whether the user has selected "Show pictures" so that
we don't prompt them again if they rotate the device.

Bug: 7255132
Change-Id: I7109465e79a7a0d6c126dcf3cef614eae8cb81f8
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
6b3d0d9ab407c3d8b6bcb73bddbfd23f2513bb83 30-Oct-2012 Andy Huang <ath@google.com> update header sending status in-place (more so)

Previously, an in-place header update avoided a WebView
re-render, but did re-render all overlays. This is normally
imperceptible, but thumbnail views flicker as they are rendered.

Since only a couple of overlay views are truly affected by
sender updates, update those views in-place when they are
present. This is only supported on MessageHeaderViews for now.

Bug: 7434748
Change-Id: Ifdebea1410dadfceefae52d406891b5383e9ab15
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
91d782abc8015bd651fb5d0252b4d1ef369ec57b 25-Oct-2012 Andy Huang <ath@google.com> fix headers drawing mismatched with bodies upon send on tablet

Two-pane layout runs a stray layout pass upon send (related to
b/7409762). Prevent it from changing existing header positions
until the new body geometry is determined.

Fixing that exposed a separate issue, that conversations shorter
than one screen tall would not draw the new header, ever. Add
manual position refresh calls to newer JS calls that had
previously depended on ContentSizeChangeListener.

Bug: 7404104
Change-Id: I805fc9ab12878a95573316763986d84f89cfd2c0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9a8bc1ead816f0398bdbeac1e744ed458028b5c4 24-Oct-2012 Andy Huang <ath@google.com> don't run the loading animation during setup/teardown

s/Runnable/FragmentRunnable/g
That ensures any delayed work, especially animation, is ignored
after Fragment removal. It's okay to drop it because subsequent
creation will take it through all necessary states again.

When restoring the activity, fragments go through transient
visibility changes that may also try to run the dismiss
animation. Disable the animation and immediately jump to the
final state when fragment is not yet added.

Fix catching exceptions in deferred JS bridge methods.

Bug: 7403314
Change-Id: I43170efe598dfc686adb41a589c4814d68a4aa30
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2a1e8e30bdd02dc08bdf2f878201b279f60d5142 24-Oct-2012 Andy Huang <ath@google.com> show "Sending..." in an outgoing message header until sent

It mostly just wasn't wired up to Message.isSending.

CVF.processInPlaceUpdates() now looks for sending state changes
and causes affected overlays to re-render.

"Sending..." changes also apply to the snap header, so I
improved how data changes generally propagate to the snap
header. Instead of manually prodding the snap header upon a
change, fix it so dataset changes on the adapter also unbind
the snap header view (to stay consistent w/ non-snap views).
The positioning pass that immediately follows will re-render it.

Bug: 7229688
Change-Id: I72930bfa7ec20788c3e4de67f4b6856a7e6a0bf7
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
06c0362f59437f3ea2b5832272fb66158bb4b8c0 23-Oct-2012 Andy Huang <ath@google.com> optimize re-rendering a conversation for a single outgoing message

Rather than rendering the conversation from scratch, look for
the special case of a single new message from the user that is
the last message, and just append the message HTML at the end of
the existing conversation.

To avoid stacking the new header on top of the previously last
message, do not notify ConversationContainer of dataset change
in this process. (An adapter dataset change means the container
will toss out all overlay views and immediately render given
the current spacers and adapter items. Do not want.)

The overlays for the new message will be drawn later when JS
notifies of a geometry change.

Bug: 7378693
Change-Id: Ifd2d3da8c57f685bbeae18f3d42c60821a97368c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
30bcfe7b69f9d8e0cad2ee62dae9d3571cd0d88b 19-Oct-2012 Andy Huang <ath@google.com> clean up supplemental software drawing on ICS

* don't allocate big bitmaps for offscreen conversations on ICS
* reduce the bitmap size to the view size (vs. screen size)
* handle OOM gracefully
* ensure the 'doAfter' action happens even for offscreen convos

Bug: 7373250
Change-Id: I976dc826bed83d5872802e6d656eff2f72f9ed3d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9be59911221b236b10c7575e407ac587c9231bc7 19-Oct-2012 Andy Huang <ath@google.com> clean up debugging code from b/6946182

Change-Id: Ic6605e5e0fc7ba555801c7c11f5cdd2141047541
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
233d435cba55eda0df580d3549b8a4e3b8d789a8 18-Oct-2012 Andy Huang <ath@google.com> catch some cases of reading a closed MessageCursor

Bug: 7370839
Change-Id: Ia6ffa81b0c04566bbd3b42106d8e3cfd2c50ff62
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f8cf5468500677fceac3025727daba8155d319d6 18-Oct-2012 Andy Huang <ath@google.com> disable software rendering upon conversation load complete

Seeing the conversation should stop supplemental software
rendering of WebView.

Bug: 7369536
Change-Id: Ibe60469df4b8c07302d27903f15e984a4553a000
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7d4746ec15076f8982f2dc2a4bdb982b78848433 18-Oct-2012 Andy Huang <ath@google.com> improve conversation load speed and smoothness

* dismiss using an animation (instead of instantly) when the
conversation loads quickly
* Do not auto-mark-read and load side conversations until after
the main conversation signals onContentReady AND the fade-out
animation completes. Previously, onPageFinished signaled
these, and since onPageFinished is signaled pretty early, it
slowed down the main load in both time and framerate.

Bug: 7360692
Change-Id: I011909c10e8c614891ec762e0d08cc0705a6ad3d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
06def56be1f03acd2e5706ecf207ab147ce6f5c4 14-Oct-2012 Andy Huang <ath@google.com> wide viewport mode must only be enabled in overview mode

Bug: 7312540
Change-Id: I1c6457d531de4a592a79c698670b6c4fa5ab6866
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
adbf3e8cadb66666f307352b72537fbac57b916f 13-Oct-2012 Andy Huang <ath@google.com> toggle normalization & zoom on/off

and wire it all up to a pref that re-renders upon change.

separately, make a few improvements to whitespace management
when zoomed in with normalized mode:
* place attachment overlays at the top of their regions
* place overlays above the first expanded message at the top of
the conversation, instead of the usual position just above the
message.
* impose a max zoom factor to limit excessive spacer whitespace

Bug: 7312540
Change-Id: Iae3afff0ee81e4ba9367568e884a041780b24ebf
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
63b3c6725d60386f564ab53e3ba6495f0c158d9b 06-Oct-2012 Andy Huang <ath@google.com> coalesce image onload handling

Refine the image onload handling introduced in Idc1e1f21.
It turns out that resizing is pretty slow, and image onload
happens pretty often for threads or messages with lots of images
(pretty common). Rather than immediately handle onload events,
process affected Elements in a deferred handler to coalesce
consecutive onload events. This will also debounce situations
where a single message contains many images, as only one measure
and resize should happen.

Add timing logs to better diagnose conversation load issues.

Bug: 7278331
Change-Id: I252cee9c69955d993aea20379fcdc0beb973e372
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
e964eeec3a088b3f4c29b68d41f99e43a321ac52 03-Oct-2012 Andy Huang <ath@google.com> save/restore conversation view scroll position

Save scroll position as a fraction of total height to handle
scaled and width-change cases. Restore scroll position fraction
in JavaScript as soon as the document geometry is known.
(This was how it was done in Gmail1, and I can't find a better
non-JS way to detect this signal.)

Does not restore scale upon rotate/re-render.

Bug: 7246054
Bug: 7022509
Change-Id: Ibf811b31ba6d7d79d34c236f6ffe2229d626528f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ffc725fe4b4fa1024feb22b1d1f76c24febadcdb 01-Oct-2012 Andy Huang <ath@google.com> Better handling of wide content after initial render

Make several improvements that, together, prevent the
conversation WebView from zooming out when revealing
wide message content.

Disable WebView's overview mode. It wasn't doing anything
special due to our viewport meta tag. Leaving it enabled
caused newly revealed very-wide content (beyond the reach of
CSS zoom: see b/6053074) to zoom out the entire conversation.
Taking it out keeps the scale level at 100% unless the user
zooms.

Shrink newly revealed content. Message expansion,
"Show quoted text", and image onload can all reveal new wide
content. Revealing repeatedly will not repeatedly shrink.
Quoted text will only shrink the quoted portion, not the entire
message.

Finally, override default handling of <pre> blocks to match
desktop Gmail. This obviates the need to zoom out at all for
messages like build notifications and other programatically
generated mail.

Bug: 7215221
Change-Id: Idc1e1f211aa3463a68146bef2846583cd7d075d3
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
1b3cc47f54072105c161d6ed557550e0e149b8bb 27-Sep-2012 mindyp <mindyp@google.com> much better reaction to opening/ closing details for a message after zooming

when the user taps show / hide details, scroll the webview up (show) or down (hide)
enough to compensate for the difference in header height.
fixes b/6319197 After pinch zooming, expanding the message details causes the message headers to jump
Change-Id: I64ced1b9a1d411fa0fa34a179f2ae629fc993088
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
6766b6e5468d2f1935587b3bc1f8e65be94cd6fb 28-Sep-2012 Andy Huang <ath@google.com> fix conversation flicker when sending on a thread w/ attachments

Conversation state hash comparison was taking attachmentsJson
into account, but that's not safe to do because it's mutable.
(conversation render re-generates that JSON string, not
guaranteed to be identical)

However, we still need attachment state comparison to reload
conversation view enough upon saving a new draft w/ attachments.
So replace simple but unsafe JSON string compare with
order-agnostic attachment URI set comparison in
getAttachmentsStateHashCode().

Bug: 7183109
Change-Id: I99c2c6d5eca2d2d3858f2cc004e1dc63ff8255aa
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b8361c9f8938b74977316319885998aae09aab77 27-Sep-2012 Paul Westbrook <pwestbro@google.com> Move account cookie query into account object

Move account cookie quert into the account object. This will
prevent looking up the account cookie from blocking the conversation
list query

Bug: 7244921
Change-Id: I9761fe29bb05d9f29eb8cae640a749545362c770
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
1abfcaf0ee345acee28f0b4892314119082b28a2 27-Sep-2012 Mark Wei <markwei@google.com> Prevent possible NPE when initializing a ConversationViewAdapter.

Bug: 7245702
Change-Id: I56953211df536bc6aef616b93d8ccd321bda96bb
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9d3fd92ed6091dbd0d38799222a1cf841f1c3f29 27-Sep-2012 Andy Huang <ath@google.com> Wait for visible conversation to load before loading others

add conversation load observation APIs to CLC interface
save/restore CVF user-visible flag
move CVF state restore to ACVF's onCreate
start using FragmentRunnable to avoid doing work too early
(before ViewPager settles)
clean up unused onConversationLoadError codepath

fixes undefined conversation load order on rotate
improves conversation load speed a (tiny) bit

Bug: 6268986
Change-Id: I4670d0c04cb1a36d5aa2c5355e2a79de17d042dd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4071c2f73218ce75750345557bb31a9110737841 26-Sep-2012 Mark Wei <markwei@google.com> Delay rendering until layout has happened. This reverts the earlier hack where
attachment widths are precalculated.

Bug: 7226258
Change-Id: Ifec8dc2164c69ea10132714c48e48d854adc5615
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
41b9e8f7bea47bbcae71b9ae81c3608a00a90e70 25-Sep-2012 Vikram Aggarwal <viki@google.com> Fewer toasts when there are connection issues.

1. We don't show the toast on synced labels.
2. We don't show a toast when background syncs fail.

Still TODO:
1. Showing a toast when the user hits the refresh icon
2. Showing a toast when we enter the app for the first time & no connection exists.

Bug: 7202801 "No connection." error

Change-Id: I312a5670aeedfc2f8e3dda11e662f2905027993f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ab2d998506c83e82ddae25b6ba1419414e1e8122 25-Sep-2012 Mark Wei <markwei@google.com> Fixed conversation label header doesn't increase height when adding labels

Bug: 7154554
Change-Id: Iacdf4bb7466978c0da3e3985d14e42894dac2ff7
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
014ea4c15d147794789b9c5bf4e243fa08781ad9 25-Sep-2012 Andy Huang <ath@google.com> handle sender/body changes in-place

Sending a new message updates sender string (for custom froms
and such) and the body (for elided text), after the message is
sent and synced. Avoid conversation view flashing (re-render)
in those cases by applying the changes in-place.

Sender string changes will update all dependent adapter items,
and a dataset change on the adapter re-renders all overlay
views.

Body changes are handled by sending affected IDs to JS so it can
request individual message bodies. Quoted text collapsing is
then re-applied on each new body.

Bug: 7183109
Change-Id: I630187c276ffc63448e6b457c9cd02afd452c438
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ad0c30d0517e06c472c76b11795092f5e67d8f5a 25-Sep-2012 mindyp <mindyp@google.com> Dont use quantity strings for this

Fixes b/7229680 java.util.IllegalFormatConversionException: %d can't format java.lang.String arguments at java.util.Formatter.badArgumentType

Change-Id: I1d1e6df92919a3f87add20fa1f7fbe2559c997c2
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
afc9b365dc9199ee9b2a1e598b8f40b3c78b6d9f 25-Sep-2012 mindyp <mindyp@google.com> Add ics content ready signal.

Uses a software layer to show content asap.
Part of b/6268986 Perf regression (~5 seconds) in loading messages on orientation change in new gmail

Change-Id: I8ae2e86685187108aa704c8d6d19202b2a2a4d7e
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
32d911f491afad153983f7519267ddb764927355 25-Sep-2012 mindyp <mindyp@google.com> Fixup js page rendered signal

Shows content faster
Has the background white-screened out until we get the signal
part of fix for b/6268986 Perf regression (~5 seconds) in loading messages on orientation change in new gmail
Change-Id: I653c40c88f0cb5cd0e31655ad89762c6f07dff66
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5349ce14695dc98615108eb26f96806921b0abba 24-Sep-2012 Vikram Aggarwal <viki@google.com> JavaScript calls: Do not internationalize numbers

Numbers were getting internationalized because the system's printf
with the %d format tries to use the localized, unicode representation
of the number (setHeight=١٩٦px). Bad idea for all languages where the
numbers are written differently.

Bug: 7176003 Android MR1- Gmail App issues with Arabic
Change-Id: I95799b05d64c78127227cee8d351facbce4bcefa
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b2b98ba97983f225eec19dc9bc5333e6ef80ee15 24-Sep-2012 mindyp <mindyp@google.com> Make sure we update the conversation object the currentconversation is based on.

When there are updates to the current conversation, we must update it in the controller
as well.
Fixes b/7209123 After setting a label for a mail via the "change labels" icon, opening the "change labels" again doesn't show the label as ticked

Change-Id: I7f23232797e87db69bc9a9146baad262e228bfd6
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4d8cad5e37ade03903a23cca8ea3e782af21170f 21-Sep-2012 Paul Westbrook <pwestbro@google.com> Fix Messages not being marked as read

Bug: 7210456
Change-Id: Ic5fe0a2c16ee15660552d9331ba67ff097022045
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
56d83850db72592a16f4e6ee9e0d59b60ec0824a 19-Sep-2012 Mark Wei <markwei@google.com> Draw scrollbars above conversation view content.

Bug: 6319192
Change-Id: Id4ba584f1e90c80d9085b6b3d962ee2783975427
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
bc4142f40e3bce1b32bcf6e890d5040c214ac2e7 19-Sep-2012 mindyp <mindyp@google.com> Exit conversation view mode when there are no messages for a conversation.

Fixes b/7167086 fails to load a specific email

Change-Id: I5c8d9b44bae46e5f53b88f3963c65aa156e7ca98
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
26d4d2d9c43c499f458808f050ec73ea3c28dec4 19-Sep-2012 mindyp <mindyp@google.com> ATTACHMENTS

Also, the whole screen is now wrapped in a scroll view which
decomplicates a lot of things, including putting attachments
below the webview content.
I should probably go ahead and show attachments for imap and pop
Fixes b/7186329 Unable to view any attachments in Email (IMAP & POP)
Change-Id: Ia2abb90171b5d03e2dddcbc9d4f349a3e798254c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
542fec98d011c78782b63b33d29cf81044e96f75 18-Sep-2012 Paul Westbrook <pwestbro@google.com> Prefer to launch activity from apk

If the UI provider specifies a view intent proxy, prefer an activity
that is in the same package. If one is not found in the package,
use the default activity resolving logic

Fix links being clicked from the SecureConversation fragment

Bug: 7187766
Change-Id: Ic4f620f4eb1a42d2abc43b2114f8d99a0444b3d0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
77a4605e6fbc368b2b87b4888f2ffd6329620807 18-Sep-2012 mindyp <mindyp@google.com> Show message details in a popup window for secure conversaton view.

Fixes b/7056611 Alternative design to expand/collapse message details in Email2

Change-Id: I557b661798f78e957c7973dd3df593d3bd65e45a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
48c25b33e76f9f763f25852ee960acf21ce5bdd5 17-Sep-2012 mindyp <mindyp@google.com> Add pishable title bar to secure conversation view.

Change-Id: I6e50f04813f9521d0da541ac5046012ae6e7162b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ff282d0ef252dbdaf6e9f4e2a7fd640287c01e6b 17-Sep-2012 mindyp <mindyp@google.com> Share progress logic between secure and regular conversation view.

Fixes part of b/6383847 Implement secure/sanitized conversation view for unsanitized message content from IMAP and POP server

Change-Id: Ia2ba1185997c46952221f4ee7a57f3f198a749de
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f4fce1227d8b49f45e6569f1590565f2df9e8d6e 15-Sep-2012 mindyp <mindyp@google.com> Stripped down view for email that uses no javascript.

TODO: push message header off the top of the screen like browser url bar
TODO: use spinner in the secureconversationviewfragment while waiting for the page to load;
should be able to push logic to the AbstractConversationViewFragment
fixees b/6383847 Implement secure/sanitized conversation view for unsanitized message content from IMAP and POP servers
Change-Id: I03299a2d193ad1dc8fb5cc509eaf5d9f3dae6b0f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
974c966c14000d42f089e2021b098d5cf61f9245 14-Sep-2012 Mindy Pereira <mindyp@google.com> Use the @JavascriptInterface annotation

wait for mr1 sdk changes before submitting

Change-Id: I804a358bedce9d39de427bef610d00bf5c581a9c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4f3613b0db5752a9254161d5c027f535fd563017 14-Sep-2012 Mindy Pereira <mindyp@google.com> Revert "Use the @JavascriptInterface annotation"

This reverts commit e8ae28ed0bc5077717e63e24b025eecc4f9ce95e

I need to wait for the mr1 changes to go in first =P

Change-Id: I431d0eb2178acec48f4c729c6e3a35548a1f16bf
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
e8ae28ed0bc5077717e63e24b025eecc4f9ce95e 14-Sep-2012 Paul Westbrook <pwestbro@google.com> Use the @JavascriptInterface annotation

Since we need to build against the mr1 sdk, webview now requires that
all methods in the javascript bridge be annotated with the
@JavascriptInterface annotation

Bug: 7158741
Change-Id: I6d79186176fd3ffc16926280bd715f81c16f8d41
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
8081df46ef5a7794374e41cd1836e778a2da9b31 11-Sep-2012 Paul Westbrook <pwestbro@google.com> Restore download progress dialog

Now the attachment download progress is using an DialogFragment
so the dialog correctly gets restored on orientation change

Bug: 7137689
Change-Id: I90a225f423bf75fd4dbeb464051374919a3cff62
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2b24e995cfcdb6ab0579b2fbcccb399a53632395 11-Sep-2012 Mark Wei <markwei@google.com> Fix rounding errors that caused conversation subject displays higher than
expected and slightly cut off for threads with many messages.

Bug: 6406245
Change-Id: Iee5114cd479cfdac001c2a9d5c9f15a79482c427
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4088bef197011f528b782ed2f7c7061955e9eeff 11-Sep-2012 mindyp <mindyp@google.com> Eliminate some of the jank.

Make sure we don't do a show/show/hide or anything like that.

This + using on pageload eliminates the janky loading

Fixes b/7139407 Gmail zankiness when opening messages

Center default thumbnail correctly for attachment previews
Change-Id: I852a7a5a0cb42cd3208d2b0b0aa085abde834261
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b941fdb95f61cdde4e1775ac9034343951e8b075 11-Sep-2012 mindyp <mindyp@google.com> Use on page loaded

The webkit signal does not seem to be all that reliable

Change-Id: I770131dc57f47511de95e1f0478a9e82a0813bbc
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
dde3f9ff76c1a7f9a6e9fa959a6422a8a8d82e81 11-Sep-2012 mindyp <mindyp@google.com> Addresses issue where sometimes we don't get onContentReady call

I believe this fixes the issue you were seeing
We were getting a javascript exception since the method measurePositions was not
necessarily defined yet when the resize came in (I saw a few cases of this)

Change-Id: I35980e9449fb18c1da018c537af2b6d56f392818
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
c20abf67035bf86603d7c08d08d1d9053294e9bb 10-Sep-2012 mindyp <mindyp@google.com> Replace null snippet/ subject with ""

We format a string to display sender/snippet, which will turn null into "null"

Change-Id: Id92aaed2dad5e44b8df3207153b1915b0b29e407
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
089f2628927ed7630187f29165e6e6d9f6615891 10-Sep-2012 Paul Westbrook <pwestbro@google.com> Only start loader if fragment is added to activity

If the webview callback happens for a fragment that has been removed
from the activity, don't start the sender info loader

Bug: 7104847
Change-Id: Id2e03c88bedd73675626e0c9e2ef825eb39cb4b5
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9e0b236be55cf9dab8f1670a9d91ed16e055a9d0 10-Sep-2012 mindyp <mindyp@google.com> Wait at least XXX ms before showing the loading content screen

Otherwise, the user just thinks the conversation is delayed for no
good reason.
May want to tweak number a bit, but its def better
hopefully, we can make this a bit smoother, too
gets janky when some parts of the webview/ header load before the conversation loads
May be able to add a scrim to block the visible jank, but the 3 layers in the conversation
view are making this a bit tricky
Fixes b/7133753 don't show loading progress view for conversation until XXX ms have passed

Change-Id: If141ff4c07de92ad3dadd15ff003d64d557a5ea4
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
36280f3c2939bb2dacb4077bd528900346ff4bb9 10-Sep-2012 mindyp <mindyp@google.com> Update conversation folders when they change.

fixes b/6305908 After applying label in the message view, the label is not displayed
make priority indicator update as well
Change-Id: I4ea59f1eaa0bf97545d44b1ef897d5f5c98f060a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
3bcf180f8104bc27319086a9a6ece5a3c2917c37 09-Sep-2012 mindyp <mindyp@google.com> Add loading animations to conversation view

fixes b/6272925 jank - conversation loading isn't animated
fixes b/7131797 Blank scren shown for live conversation, when in airplane mode
Note: need to do a next cl that puts off showing the spinner
until at least XXX ms have passed
Also, we cant use the software layer for rendering like we did
in gmail1
it looks like there is a skia crash that triggers when we try
to use software / switch to hardware rendering for the browser
need to investigate that more

Change-Id: I96a30b700c3e88d52e603fe2f11b44d113e013d2
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9982fdb413d09b8e391dbc96a114987b1b87bb62 31-Aug-2012 Mark Wei <markwei@google.com> Add supplementary account info to outbound google.com links

Bug: 6661601
Change-Id: I130d1d2481e4c4c693ac70bbb8ec107b4d8a61fb
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7d64612104fd861474a09994f13768360f92041d 06-Sep-2012 Andy Huang <ath@google.com> avoid doing fragment work during pager swipe

Pager swipe was triggering immediate fragment transactions via
mark-read, so just don't call onConversationSeen so early.

All that really needs to happen immediately when swiping is:
a) subject-in-actionbar should be updated, and b) conversation
list highlight should change. Do both of those now in
AAC.setCurrentConversation, and do only that.

Bug: 6976876
Change-Id: I1f679627b36d25faabc27eb7dc9dac191aab1d7b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
3825f3d2284b2b57fadcfe6a4ebd9992f3c5c7bb 30-Aug-2012 Andy Huang <ath@google.com> fix spurious stopListening on the pager when loading from widget

When loading from a VIEW intent, the pager was sometimes
disconnected from its data source before the data was loaded,
which caused it to stay in singleton mode forever.

The original code to disconnect the pager was intended to
disable pager updates when jumping back from conversation mode
in 2-pane (via account spinner), so move that call to the
beginning of 2-pane's mode change animation.

Also do a bit of misc API cleanup.

Bug: 7076780
Change-Id: I508b59816f4f537276aa103b9dcae51972389eb0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
1ee96b2b100546b5b69ad42c5bc3755a4293d1a3 25-Aug-2012 Andy Huang <ath@google.com> handle missing messages every which way

Entire conversations can disappear upon sync (should pop back)
Or just single messages can disappear (should keep conv in view)

Handle these specially in conversation view. Stay on the current
conversation when possible, except if no messages remain, we
should pop back to list view.

When single messages disappear, make sure we don't treat all
the rest as super-collapsed, or else the conv will render empty.

When popping back to list view, we can't call popBackStack()
from onLoadFinished(). Since we only need to do this in 1-pane,
add logic to 1-pane's showConversation() to handle cases where
the caller is in onLoadFinished. In that case, we need to defer
the work slightly, but still be aware of other FragmentManager
constraints when later handling the deferred job.

Bug: 6889742
Bug: 7005366
Change-Id: Id37f878e82523837b7f105d49fb736f774bad224
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ef3625472596326b910a4445307d1a8eb8c9cc3f 27-Aug-2012 Paul Westbrook <pwestbro@google.com> Added ability to discard drafts

Now the UI can tell the UI provider to discard the drafts for a conversation
(if the provider supports this capability)

Bug: 6315721
Change-Id: If786d13448fdce9a45a54a8762ee1b15e3f29bcd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
db620fe42dcf1909468822b61238a23103d15376 25-Aug-2012 Andy Huang <ath@google.com> fix excessive measure/layout of overlays when re-rendering

When CL #I70f98f began to react to conversation overlay adapter
changes by immediately doing measure/layout, a conversation
re-render would do this O(n^2) times as it walked through the
message list cursor.

Fix this by short-circuiting measure/layout on re-render.

Change-Id: Icb9ba380555a05d87c523609af829c9a26760f74
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
256b35c0a8287f48c28e0d1ba3fae65790063295 23-Aug-2012 Andy Huang <ath@google.com> add margins to conversation view

Also fix some left/right balance problems on wide messages.

Bug: 6336075
Bug: 6375007
Change-Id: I8fd4a3099d0670f68295bf8f28d2ba55e7177bdc
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
28b7aee7fa1f7d096d33fc823a88a64f7a3fa79d 21-Aug-2012 Andy Huang <ath@google.com> update conversation view on reply-all setting change

Use existing adapter's dataset change signal-- dump overlays
and re-render.
Begin to assume that Settings always hangs off Account.

Bug: 6245217
Change-Id: I70f98f641eee6d193f9842a578a889197f650941
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
a6e965ef4a7ac2266f0a5509be25ac1e8d272595 21-Aug-2012 Andy Huang <ath@google.com> refine workaround for b/6946182

and expand it to apply to ConversationViewFragment.

Bug: 6946182
Bug: 7024591
Change-Id: I39c443692ad9294ca431c846fcabe86718800a72
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
423bea25992492efea7d414819729f9eae7ce72e 21-Aug-2012 Andy Huang <ath@google.com> fix conversation read/unread edge cases

A re-render should mark new messages read, if there are any.
* on rotate, all messages will stay read, so nothing will
happen in that case

A re-render should not clear 'unread' state as far as
"mark unread", i.e. "New message from X" -> tap -> re-render
-> mark unread -> should mark ALL unread messages unread, not
just new ones.

Bug: 7026808
Change-Id: I4693481a0a3e6d89380f9d16fd8591ba179896b2
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
eccde435716f4771af124912e83db816a18f3410 20-Aug-2012 mindyp <mindyp@google.com> Use delete capability to determine whether to show delete for a folder.

Fixes b/7006885 add flag for "supports delete" / verify that trash not sending supports archive

Change-Id: Iea2597e120b15c0ab9452461d12af3179e325298
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b68e4aeb1997541eccbba115a9e848de1d70bf1c 17-Aug-2012 Mindy Pereira <mindyp@google.com> Delete and archive are not supported in the trash folder.

Fixes b/7004458 Undoing a deleted/Trashed mail doesn't bring back the mail to inbox ( Device in Portrait mode)

Verify the behavior on ICS; if trash is supported, then its trash FOREVER and there is def no undo

Change-Id: I1f36bb42b1f27b2d98047ffa0d24cc9cf492c1ed
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5460ce477cb1dcc439dd4e5c9e8393470f00f618 17-Aug-2012 Andy Huang <ath@google.com> update actionbar subject earlier

Swiping through a live label now always shows actionbar
subjects. And a slow conversation load will not affect
subject-in-actionbar.

Bug: 6925876
Change-Id: Ifd9a7f07139fefd20c86dd695ab8b30f4ada1691
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
1617481de7c1f9b8dfcd25ba9828e933cf9d5490 17-Aug-2012 Andy Huang <ath@google.com> don't show new message bar for messages from self

Bug: 6963798
Change-Id: I33f5a3dc54eb8f664302830a71db54e5ae8cf084
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
59e0b18db1bd06cfb74693d7dbb0cb48112a69b1 14-Aug-2012 Andy Huang <ath@google.com> snap headers

Low-speed obscuring of snap header not yet implemented.

Change-Id: I23bcf61a8de6d9d719d40a6b65009c7711ef0e19
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7c401b7896910c00e6234e8774aab0be45740d32 14-Aug-2012 Vikram Aggarwal <viki@google.com> Get the Account through a listener

Every object that needs an account gets it from the ActivityController
by registering for future updates. This should reduce some of the
headaches with account objects going out of sync.

Fix b/6969950

Change-Id: I0449b482ecd84bdb947304db5f0504c77dd1dc7a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7bf339a7966061e995982c0d288411448b8d7a6c 14-Aug-2012 Andy Huang <ath@google.com> use Fragment.getString directly for 'remove folder' item

also fixes tooltip being "Remove from %1$s" for non-inbox
conversations.

Change-Id: I4519a8b6e2bef6b5e1f0c8d02b4eba08a7806cca
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
50cfeda191d0744d61d278890763c8d261389e03 14-Aug-2012 Mindy Pereira <mindyp@google.com> Fixup menus for tablet.

Fixes other part of b/6497472 update menus in mail to match jb specs

Change-Id: Ic114397b621d97ceb5299e40431a6b6939c30f9f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9ba4251297f1645af2490fcc2dc43f5063e12a29 14-Aug-2012 Mindy Pereira <mindyp@google.com> Make sure phone menus match spec.

Part of b/6497472 update menus in mail to match jb specs
specifically to match phone specs
Change-Id: I0c41f137107f69d2e241787ed500d63aa5da2de2
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
991f453c8905ec683458f8b4ea0e2737832425d9 14-Aug-2012 Andy Huang <ath@google.com> minor reformatting cleanup

Change-Id: Ifcf30fae6633f6b416035a3a15fb6687460883d9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
01f30509c4c8ad0d13b7635447b7f023c7a0cab7 14-Aug-2012 Mindy Pereira <mindyp@google.com> Show remove folder option in user created labels.

Fixes b/6977686 User created labels don't have Remove label (archive) icon

Change-Id: Icecada98ac11e66f622fbac80991a481873eed18
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
cd5c5eeae167885ffa2959c200233fea2f39c5f7 13-Aug-2012 Andy Huang <ath@google.com> refine message cursor update accept/reject logic

Conversation view should ignore no-op or irrelevant
MessageCursor changes, but certain other changes should refresh
the view. Use hash codes for each message and for the entire
cursor to distinguish.

Updates from the server confirming a client-side read/star
change no longer cause the conversation view to reload.
Other cases that do cause a reload:
* edit draft locally or on the server
* read/star change on the server
* discard draft locally or on the server

Now that mCursor is changing all the time, and not always
reloading the view, we have to be extra careful to not keep
stale references to the old mCursor after a change (because
CursorLoader will close the old cursor after onLoadFinished).
This meant mPendingCursor wasn't needed.
This also meant ConversationMessage needed an intermediary to
get the current cursor.

Bug: 6951782
Bug: 6437156
Change-Id: Ibd94eb9dc0e72fae371e47db08dff0d7c09ee145
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
08098ec4c894d9a15dfe800ad2397494e7e0a79a 13-Aug-2012 Paul Westbrook <pwestbro@google.com> Fix collapsing conversation messages

We weren't saving the expanded state of message when a conversation
was first rendered. This was causing subsequent updates to the
conversation to collapse all but the last message (or starred messages)

Bug: 6951782
Change-Id: Ieb26cc1a817121a45c93b08b2d386c7e0d2ec0fa
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
cebcc64fbd69618ff89f9fac0bfe9b9e7d7ce104 08-Aug-2012 Paul Westbrook <pwestbro@google.com> inline attachment handling

Allow the provider to specify the real base url that should
be used for relative urls.

Also allow the provider to specify a cookie that should be used.

Bug: 6951268

Change-Id: I6f5ecf69b262b6c877eecbd1944aa03c46c85382
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f98bc898cbc7014a203c35a13427d3f949bce705 08-Aug-2012 Andy Huang <ath@google.com> add "isRemote" for live conversations

Change-Id: Ifaf4d661acf47a4f9856ed607a792bdbedc6246b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
41dca185f7683b36bdafd9520c0648c897a95834 07-Aug-2012 Paul Westbrook <pwestbro@google.com> Support for content provider inline attachments

Change-Id: I1c356487bb38f7feae6437de21c52e35fcaa53fa
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
47aa9c991b33c722a6ba1946fc02e0aba17bc1c9 01-Aug-2012 Andy Huang <ath@google.com> "new message from" in conversation view on update

* put the New Message bar in a new floaty layer in
ConversationContainer. snap header can also live here.
* add left/right margin support to ConversationContainer

Send/save of a new message also generates the 'new message'
notification for now.

Bug: 6384217
Change-Id: I10a40bbf87423194214e5ded08539abaaf7fd25c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
66bc2aaf76bb0dfa4fc38f8fcbaaf9e413e321dd 02-Aug-2012 Vikram Aggarwal <viki@google.com> Update when a conversation is viewed.

Change-Id: I1c424a89fef2dcbcb882e8741eda0d6470b68b87
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
0972e0793cc321670391d063348aecb5031b2677 02-Aug-2012 Mindy Pereira <mindyp@google.com> Don't bother with nummessages/numdrafts if we have conversation info.

Cutting out more work we don't have to do.
it is essential to get making a Conversation as fast as possible

Change-Id: Icb80cd8c68de3685f5dbdaafce8f6d44a24105cd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f76bf4cf779b6eadb1cc6208a63e4558a3c0abee 01-Aug-2012 Vikram Aggarwal <viki@google.com> Priority arrow setting in conversation view

Change-Id: I33a668509e20dafd9d8de022772e21d4c522d278
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4a878b606961825fb4fd412b460df75779f09ad2 01-Aug-2012 Vikram Aggarwal <viki@google.com> Simpler version of unread in conv view.

Change-Id: Id9ae26c9698797ed3fb7ab9a98e6305677648ca6
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
3b6abe57473e9565e502c6a2013fdbaad803bad0 31-Jul-2012 Vikram Aggarwal <viki@google.com> AutoAdvance.LIST when mark unread in Conv view

Change-Id: I964754c29cd2a2d20449d02a1088e18228182bfe
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
de56e970299fb413e4136dc12a7b08c5cc89e1c1 27-Jul-2012 Andy Huang <ath@google.com> appease monkeys + onPageFinished

Bug: 6884976
Change-Id: I1347249c5036cfd1237135cfb461a456d3791f1d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
28e31e2417d775b343919cf6018f85871e40a294 27-Jul-2012 Andy Huang <ath@google.com> fix mark unread in Email

only perform granular mark unread for partially unread
multi-message conversations

Change-Id: I84a5b8ed1ac0b65eeb7abadbb6280843a5cbe67c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
0b7ed6fae6e36f2abc4ca916764177d1879731b4 26-Jul-2012 Andy Huang <ath@google.com> hook up webview context menu

I don't think we need the custom title for regular links
anymore. The default title style LGTM on ICS and JB. The
default even goes to a max of 2 lines like we want.

Bug: 6273456
Change-Id: I528bcf08c9c43bee6cadc64da9d93d20bbf8596c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
c11011d29d87f76d902438b2f79c75d1ebc45fda 25-Jul-2012 Andy Huang <ath@google.com> handle cases where conversation load finishes before cursor load

It's possible that launching from a notification will render the
conversation before the conversation cursor is loaded, and it's
unsafe to mark read at that point. So watch for cursor changes
in this case and do the 'mark read' operation when ready.

Bug: 6874124
Change-Id: I7cf21c88196e5f674e90d8518ad39523d2445ff9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7e854f52f0890b9621846ac7fe201a5681e65666 24-Jul-2012 Andy Huang <ath@google.com> ensure ConversationInfo is populated from notification

Bug: 6867243
Change-Id: I5e22978bdbd15506d8e9d5a0a671402756a41671
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
839ada22ea84251dde3305003d2f8fc5bf14914e 21-Jul-2012 Andy Huang <ath@google.com> save/load conversation state, add granular mark unread

Centralize mark read/unread logic in AAC.
Restore some conversation view state upon rotation.
Clean up code for star/unstar from conversation view. Move most
of that logic to AAC.
Move transient conversation state from Message into
ConversationMessage subclass.
Add new AsyncTask for content provider single or batch requests.
We should move to using this instead of AsyncQueryHandler or a
raw thread.

Bug: 6293711
Change-Id: I907a687ef7ff287fece8c90725dbd204a02485e9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b95da853ffbff343c8ca11470de2f0047e0807a6 18-Jul-2012 Andy Huang <ath@google.com> ignore stale callbacks in conversation view

Bug: 6841015
Change-Id: I8f9669d69ecf9734a41c8ca1e99d4f9f357b3f37
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b8331b4565566ca733997398e8c07a26cd2bee98 17-Jul-2012 Andy Huang <ath@google.com> wire up Quick Contacts

Also generalized telling header items whether or not a bind is
only for the sake of height measurement.

Bug: 6373134
Change-Id: I759e4fd95dca874b29a7e3b392ee83f7e7e6f760
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
76b2062b8c6d18a7b3a05292c385b47b0fcbd09f 12-Jul-2012 Paul Westbrook <pwestbro@google.com> Support for report phishing

Bug: 4161858
Change-Id: I8b12cfde7e19e388ece83c4df3069f1f65445945
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
23014705ca9872cd5004a1aa76e83ae260165eca 09-Jul-2012 Andy Huang <ath@google.com> better handling of wide message content

Don't hide horizontal overflow, so content in extra-wide
messages is scrollable. (Downside is that an initial swipe on
such conversations will scroll the content rather than going to
ViewPager.)

Use default WebView text layout algorithm (NARROW_COLUMNS). It
doesn't kick in by default, possibly because of the method we
use to shrink wide messages, but at least double-tap after a
manual zoom-in will trigger line re-wrapping.

NARROW_COLUMNS reflow can change the HTML height, so we need to
remeasure and reposition headers when that happens. Added code
to listen for WebView mContentHeight changes. This is done
circuitously (via invalidate()) because I don't know of a more
natural way to to know when this happens. Although invalidate()
happens all the time, this should be pretty cheap because no
work is done unless the DOM height changes.

Clean up screen-pixel -> HTML-pixel conversion code. This will
be handy when trying to make the page initially wide to further
improve line wrapping behavior and reduce the frequency of
the extra-wide case. Initial-wide-mode presents a host of
side effects to be addressed in a future CL.

Bug: 6389819
Bug: 6318848

Change-Id: I3ad2bd1ca6c1f6c0859af1a10056578ea4faf073
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
77eee625cd8c317c605acfd06cd3a7e22120a0fd 10-Jul-2012 Paul Westbrook <pwestbro@google.com> Support for "unspam"

Also added start of phishing support
Change-Id: If8eb389c2dcc8c285a582504b8213ef676848a30
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
ba283732e7cbcc55a3dbc8ab78950cc38cd078fb 26-Jun-2012 Andy Huang <ath@google.com> new font sizing strategy

Mostly go back to the previous approach of setting a default
font-size style that only affects unstyled text. On phone,
shrinking everything by 13% worked poorly for mail that was
pre-shrunk.

The slightly modified new approach more closely aligns with
gmail.com's behavior on desktop. Shrink unstyled text to
80%, and then upsize all text slightly such that regular text
ends up as 14px on phone and 16px on tablet.

Bug: 6684890
Change-Id: I7ae15cd4bf8d8f2cb0d9137c558bbfe13d0d6570
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b334c9035e9b7a38766bb66c29da2208525d1e11 25-Jun-2012 Paul Westbrook <pwestbro@google.com> Changes to support different Log tags

Change-Id: I7121fbf7132444fc0f5c0c130373e3f2d1a3cf7a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5895f7b0e5fa921f6d46bbaf6d8c7b1a8ebc7804 02-Jun-2012 Andy Huang <ath@google.com> subject in actionbar

Mostly a port of Gmail1 code. New and noteworthy:
* when switching between ActionBar list nav vs. custom display,
toggle ActionBar.DISPLAY_SHOW_CUSTOM rather than messing with
custom view visibility
* This exposes something of a framework bug where collapsing
an action view will leave views for all inactive navigation
modes GONE, which I work around for now (b/6664203).
* ActionBar views were being inflated with system default Holo
theme due to application vs. ActionBar context (wrong theme on
the application context). Fixed that and un-inverted some
existing styles.
* SnippetTextView: save off the last measurespec rather than
inventing one as before.
* bring back an existing excellent behavior: since
PagerAdapter.setPrimaryItem reacts too slowly to nicely
change the action bar subject when paging, listen for
OnPageChangeListener.onPageSelected in addition.

Bug: 6384157
Change-Id: I45d995a472d4b3c71f1371dc7b993923423b7cf7
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
bd544e3c9c703042b68e6ad611104850ab8e0094 30-May-2012 Andy Huang <ath@google.com> add debugging code to dump a conversation HTML

Change-Id: If330f600d5527503eed9745281076f895a275cd0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
c30fe4172676a5ea3fdc0da8a0fbb917d9cf878e 18-May-2012 Vikram Aggarwal <viki@google.com> Call it archive rather than y_button.

Fix b/6482584

Change-Id: I7cfc511eb582a0379e92a15d4e2740777b932d4f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
d503df4f0c31bbf842c6a1d3cba18df8c074bf67 11-May-2012 Vikram Aggarwal <viki@google.com> ActivityController commits folders, nobody else

Change-Id: I3ff870f275821ebc3cd08cfad0875eb229094f2e
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
c319b551bebe40b9607acf0ee1d26a880fde9212 26-Apr-2012 Andy Huang <ath@google.com> refine message font sizing

Match default font size to Gmail1 default (14dp on phone, 16dp
on tablet) using newer API v14 call that scales ALL text, not
just unstyled text.

Take system font scale into account when determining a font
size, which might make an app setting unnecessary.

Bug: 5287963
Change-Id: I446ac7bad454cd52efa4fce338da66b58197521b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
bf232c3735f65b1a4746943e4a134e59e36f0bde 18-Apr-2012 Paul Westbrook <pwestbro@google.com> Major refactor of ConversationCursor

* ConversationCursors are now associated with a particular loader;
there are no static methods or static state fields
* ConversationCursorLoader maintains a list of current loaders
(for tracking/debugging)
* AbstractActivityController acts as a router of conversation
changes to/from fragments (currently message view -> conversation
list)
* Comment out some ConversationCursor tests for now

Change-Id: I9b8425a19c77501796b6681142e1bc0ad20b3693
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
cf164d64bcb1da92b427bda99b97f7ec310ef704 20-Apr-2012 Marc Blank <mblank@google.com> Revert "Major refactor of ConversationCursor"

This reverts commit 5150f03723af8019169aeed8e406784da9c5f8f1.
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5150f03723af8019169aeed8e406784da9c5f8f1 18-Apr-2012 Paul Westbrook <pwestbro@google.com> Major refactor of ConversationCursor

* ConversationCursors are now associated with a particular loader;
there are no static methods or static state fields
* ConversationCursorLoader maintains a list of current loaders
(for tracking/debugging)
* AbstractActivityController acts as a router of conversation
changes to/from fragments (currently message view -> conversation
list)

Change-Id: I0eb554615b4bf93b3547ff28e2bd5913e8703a97
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
632721e6b3a9ba8c476456f2e0fb1b564561e0b5 12-Apr-2012 Andy Huang <ath@google.com> conversation paging

This CL takes the approach of using a permanent ViewPager that
pages through conversation fragments. Its adapter is only
set and populated when the conversation view is shown. In all
other cases, it is an inert empty layer.

One risk with this approach is that it breaks with the typical
fragment transitions that all other content panes use.

On the other hand: conversation fragments are full-on fragments
and benefit from loader separation, and the FragmentManager
takes care of save/restore of state.

Change-Id: Ic17d1ae3f35a0cb1119967f2d34433ad27fa307c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
46dfba6160b55a582b344328067e3dafeb881dd9 19-Apr-2012 Andy Huang <ath@google.com> super-collapsed blocks

Expanding a block inserts HTML for all bodies in that block, as
was done in ICS. This could be improved to be more lazy.

The block's layout has a mostly useless wrapper for the 1px
bottom white padding, because ConversationContainer does not yet
support margins on child overlays.

The overlay container now listens to adapter changes, which
was necessary to update on super-collapsed expansion. This
should also fix crashes and strange layouts on draft deletion.

Also fixed monkey NPE on url click while I was in there.

Bug: 6325429
Bug: 6260673
Bug: 6258859

Change-Id: I77347b58bbec49b4b5b58a2b3de7e5e9f291ca9c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7d81600cbce3cfd366cbff9ecd1b7317ff957221 18-Apr-2012 Vikram Aggarwal <viki@google.com> Update consumers on changes to Settings

Change-Id: I96ed21a16c0dfb290198d2236fee8d21e299ec31
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
6902dcf8688d7d0691639f49365a78a3a78fe9e3 11-Apr-2012 Vikram Aggarwal <viki@google.com> Controller gets fragments from FragmentManager

Change-Id: I1d9906ba5d70ed5580e35a53b34797cd5f1e0ad7
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
0963ef8394e1f0bca3f931f930b127b00790361a 10-Apr-2012 Mindy Pereira <mindyp@google.com> Move undo up to the controller level.

Change-Id: I1fa2d921132c0d66c677b428f570c60672471ad9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
65fe28fa88daad08f3be4c084ca5b4eaa366d1a7 07-Apr-2012 Andy Huang <ath@google.com> optimize low-hanging fruit found using traceview

* View.getTag/setTag is a slow way of finding an overlay view;
switch to a SparseArray
* this also obsoletes mChildrenToRemove since we can immediately
remove overlays from the SparseArray
* bring back the Email Address cache to avoid repeated parsing
* avoid repeatedly calling findViewById for each header
* cache expensive timestamps and recipient summary strings

Change-Id: Ic76265848e4956a28a44c4a2e3e726ec9ef6bfaf
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9875bb4fc00347fc76f432a6e9ec5e6987679ca9 05-Apr-2012 Andy Huang <ath@google.com> remeasure when overlay views change size

The initial measure() (for sending to WebView) is done too soon,
so after a height change, ensure that the container re-measures.
The container will only measure newly bound views, or views with
newly changed heights, so most scrolling continues to not
trigger measure().

It would be more correct to mark the overlay *view* itself
valid or invalid, not the item, but apps don't have access to
the measurement flags on View.

Also do lots of cleanup in the area of measure/layout of the
Container. Prevent children of the container from requesting
layout because they don't push on each other in the normal way.
(a followup onGeometryChange is needed to re-position properly)
But a layout triggered from elsewhere should re-measure and
re-position the container's overlays.

Bug: 6297423

Change-Id: Id9196322774e732417e926ac87ce2ec524bf425e
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
c7543579c6a97c0ae3341578332f56d4d226f34c 04-Apr-2012 Andy Huang <ath@google.com> support message header collapsing

* toggle header collapse/expand
* initially render read messages collapsed
* collapse removes attachments footer and stops loader
* expand creates/reuses attachments footer, but ONLY if visible
* can (mostly) expand/collapse details
* can expand/collapse quoted text
* add lots of logging (disabled during scrolling!) to catch
strange layouts

Change-Id: I73f533c91d24ef1c05919d0a3b396f276898107a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
a543c3ecd4e4b9e5e7faa36c5184a777bdd9d924 04-Apr-2012 Mindy Pereira <mindyp@google.com> Make sure we load settings even when searching.

Fixes b/6288564 NPE in opening the message from Search results

Change-Id: Idef014dde9c033028d2ffe28736bde630e9ba120
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b949f27d7815b10450c47ee8c00e078c45cf49aa 04-Apr-2012 Mindy Pereira <mindyp@google.com> We don't seem to have settings in search.

Fix that later;
for now, fix the crash

Fixes b/6288564 NPE in opening the message from Search results

Change-Id: Ia16c693098e0a1d3a93ea1a786d702544a074b7b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
4c232e18b5d667931d8aaeb29f19394016c17d02 03-Apr-2012 Mindy Pereira <mindyp@google.com> Respect default replyall setting.

Change-Id: I3465b6bbbf9edcad15b682265eedf066acb39839
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f0e95c3e49c8a12009dd138d3985f5e9fb8f2754 03-Apr-2012 Andy Huang <ath@google.com> bottom-aligned attachments

Refactor attachment view logic out of MessageHeaderView into
its own view class, paired with MessageFooterItem.

Change-Id: Ic6539f52d53be0e2d23144abec1baffb9368f8cd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7bdc3750454efe59617b7df945eadd7e59bee954 26-Mar-2012 Andy Huang <ath@google.com> building blocks for bottom-aligned attachments

Attachment overlays now warrant their own adapter entries,
because they are no longer attached to each message header.

So since cursor items no longer map 1:1 to adapter items, add a
new specialized adapter to house different kinds of scrolling
overlay views. This support is also needed for super-collapsed
blocks.

The adapter is also an ideal place to store transient render
state like 'expanded' and 'show pics', as each ConversationItem
can manage its own state instead of having the fragment do it.
And view recycling requires that the adapter remember item
state as you scroll around anyway.

Next CL will actually separate attachment views and logic out
of MessageHeaderView.

Change-Id: Ibc589915f01ada0d9a41d8968a0ee63be6030449
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
3852f872b2fceb60259737826abe47c517f94600 28-Mar-2012 Andy Huang <ath@google.com> load live conversations properly

Gmail's provider generates a loadFinished for live conversations
once with zero messages, and then again once all messages are
fetched. Ignore zero-sized cursor updates, but only during
initial load. A previously rendered conversation that becomes
zero-sized is a signal that the conversation is no longer valid.

Bug: 6219354
Change-Id: I98c90da9c8f4e7d7249b779076f445315252ad5d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2405528bb15245f594277fe7b6efacd6a18ce69e 28-Mar-2012 Andy Huang <ath@google.com> measure header heights when generating HTML

Size the header spacers properly depending on the message.
Messages with attachments have taller headers.

Bug: 6237871
Change-Id: I502bb870ebfe4d2d776819a5fe83e34f05e3cdf5
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5a9290731bf565538a9cf91892346c7a6f4da0ec 24-Mar-2012 Andy Huang <ath@google.com> Add bits of Attachment info to message cursor results

Ultimately, message view needs more information about how many
attachments a message has and what sort of files they are to
render UI upfront and allocate space in the HTML for them.

I'm adding a new field in Message cursors to contain this basic
attachment info as a JSON array. Soon we can expand the format
to be useful to compose, and can deprecate
'joinedAttachmentInfos'.

Change-Id: I9c264a6f09b376f5ee9b9f56e11fa80dc5faec56
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
bec5115726f24733a0a1577caaf05fb6e9ef9c6f 23-Mar-2012 Marc Blank <mblank@google.com> ConversationView -> ConversationList starring

* Star/unstar in the conversation view is now reflected instantly
in the conversation list

Change-Id: I0dade26726bec96610b4c30dded19d36c9dbe439
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
863e44160d9175023d30e7e225ecb69ad3892eec 23-Mar-2012 Mindy Pereira <mindyp@google.com> Update everything to read mute/ spam.

Conversation menu items now reflect if mute/ spam should be shown.

Change-Id: Ic4694c3feb3261c02d546e8befd9d999fdfefc85
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
c9d59184da271d5a6974edb709e3b39a5a970fa7 23-Mar-2012 Mindy Pereira <mindyp@google.com> Fix up conversation menu items.

Make sure the correct conversation items are shown/hidden
Fix mark unread.
Fix mark important.
Change-Id: I7e5fa60d9501bb123cdd2276afd68c26e300dc3d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
3233bff8ae08a56543c9f5abf1bc6ab38f0574ce 21-Mar-2012 Andy Huang <ath@google.com> hook up 'show pictures' button

Add 'show pictures' button for messages where the provider
claims it embeds external resources. In Gmail, this is true when
a message contains external image hotlinks. Inline image
attachments are not yet handled.

'always show' tells the provider to whitelist the message sender
to allow images in the future (works with Gmail provider).

Change-Id: I1b174d8fad9da481ec305caff06d109f9d215093
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
af5d4e0e2a5ce3300fffa0c484431d83adb89ee8 20-Mar-2012 Andy Huang <ath@google.com> send URL clicks in conversation view to a browser

Change-Id: If0ce9f5e1ec5e3d209c9d6a10ebe27e076065f0a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5ff63747a1b5c6e2197528972cbc3ba808b09d8d 17-Mar-2012 Andy Huang <ath@google.com> show subject and labels in conversation view

Show labels only for accounts that support multi-folder
conversations.
Move some classes into smaller 'browse' package.
Special-case subject/labels overlay for now. Full adapterization
is coming soon when super-collapsed blocks are in.

Change-Id: I458009776eb2e3840dd9e441de9e4ead3cc94d0b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2e9acfe527426c00b5df2ca66189262dc40c8575 16-Mar-2012 Andy Huang <ath@google.com> improve conversation appearance

Remove debugging gray regions and round corners-- I'm now
satisfied that dpi-conversion drift is not a concern.
Hack in better hardcoded header spacer heights on tablet.

Change-Id: If552c2199bdf6aa8765558a553a633411df4e2cd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
397621b93f83f8933f7a29a9b6d7fe2b88ec4008 15-Mar-2012 Andy Huang <ath@google.com> Get 'mark read' from conversation view->list working (barely)

Conversation view updates a bit on its conversation model.
The model goes through the ConversationProvider caching proxy
to do the write.
After caching the write, ConversationProvider optionally
notifies anyone observing on the global ConversationCursor. This
part is weird and should be replaced by the Controller notifying
on its held reference to a ConversationCursor.
The conversation list adapter is registered for data set changes
to its ConversationCursor (thanks to
FLAG_REGISTER_CONTENT_OBSERVER).
The ListView is registered for data set changes to its adapter.
And the list redraws upon 'mark read'!

Change-Id: Ia465b90733f1cd19dc890a82ca4506178d840f04
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2d82d61d85cd5ed9e9e23c0968b492f11f3ee9bd 07-Mar-2012 Paul Westbrook <pwestbro@google.com> Add richer parameters for conversation/message list

Now the conversation view requests that the network is not
hit after the initial load of the conversation. It is up to
the implemeting UI provider to do the appropriate thing with that
information

Change-Id: I3eb517cc6a63b7f3a397a3ea650e129ef9624bca
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
7f375ff8e57165bf7ad7a50131eabeaf602f09bf 14-Mar-2012 Andy Huang <ath@google.com> fix attachment loader+gmail

Use attachment URI as a key for the model cache.

Change-Id: I0849f4aa449acef8c3fc0953c15944b46f2a7cc0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
51067133f35911bf4b43f97be52b00e5bd9f07ab 13-Mar-2012 Andy Huang <ath@google.com> fix looping with Gmail provider and auto mark-read. cleanup.

* only mark initially unread conversations read
* disable re-render on loader update for now. will re-enable
later for specific cases like new message or updated draft,
or when UI changes no longer trigger provider notifications

* properly invalidate cursor on loader reset
* pick a better loader ID for attachment list query
* disable scroll tracking before geometry is known
* ignore JS callbacks after views are destroyed

Change-Id: I6cec7186dab301d57995a73df0c3506549a7932d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
17a9cde3b0e28fc98fdeda19de81e18056eb09db 10-Mar-2012 Andy Huang <ath@google.com> mark conversation as read upon open

Conversation list does not yet reflect the state change, but if
you force it to reload (e.g. switch accounts), you'll see that
the state did change.

Change-Id: I88117226e3579d2739497b03354dda2bb96a5984
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
b5078b287b1cec38817e342ff054ea901d199329 06-Mar-2012 Andy Huang <ath@google.com> Implement header view recycling in conversation view

Improve load time and memory footprint by adapting the view
recycling logic in ListView for our custom view container.
As header views are scrolled off, they are detached and put into
a recycler list, and newly scrolled-in views will reuse scrap
views when available.

Also augment the offset data that WebView sends so headers can
be placed properly during detail expand/collapse.

Change-Id: I6c13af98a2bd8e714c411d70a8061a601e16b929
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
88fc42e48ee4e927eb77e5cab23f2f5151cac649 09-Mar-2012 Andy Huang <ath@google.com> attachment UI in conversation view

Load from a message's attachment list URI to render initial
attachment views. Each attachment view then monitors its own
URI for changes when it expects them (this is quite likely
too granular!).

Change-Id: Ie559672e63910034e4dbf7766101a2b5768129aa
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
30fd47bf1947da5ad813cb957b6cbe569dce563a 09-Mar-2012 Mindy Pereira <mindyp@google.com> Remove all label refrences from unified; change to folder

Remove labels text views from unified mail conversation list items.
Gmail will override with a new xml file that will provide a "folders" area
Change-Id: I443b8d73f253f046dfa8a8a68afa19e89bf7a85a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f381651f75b320902576e211a91ff734e0ea05d1 02-Mar-2012 Andy Huang <ath@google.com> Fix reply/forward to start the compose activity

The header views that started the compose activity were using
the application context, but they need the activity context to
push new activities onto that activity's back stack.

Change-Id: I55b3a19c32afb7215c162529f4d74f09ae25fc29
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
5fbda023f1b0570e192e03a33834244a05edf200 29-Feb-2012 Andy Huang <ath@google.com> Avoid re-creating Message model objects in cases like rotate

Do the data model wrapping in CursorLoader.loadInBackground
instead of LoaderCallbacks.onLoadFinished, so the wrapped
cursor is re-used in onStartLoading if already present.

Change-Id: I9310819498368b7bc34e38024701749afddba608
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
6c51158ad3269f157424e6c7bd488425c98da08f 27-Feb-2012 Vikram Aggarwal <viki@google.com> Make constructor public to handle resume/rotate

Change-Id: I4953ae6ed753792eb8a7aced99474fe09976f140
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
cfb7f33ff8ef9dc60b9143af32de64c7a3d71f36 28-Feb-2012 Mindy Pereira <mindyp@google.com> Store URI's in Uri instead of String.

Change-Id: I5492a61b80442afc7cebc5b3d560688aebae8820
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
2ffaeab36408ccfbd6a375d5d31dc2a15d31a004 28-Feb-2012 Andy Huang <ath@google.com> align headers to top of message bodies

Trying this out per UX suggestion. It seems to work well when
zooming into all messages except the first. It's a little
strange that there's now a bunch of new whitespace above the
first header.

Change-Id: I6d5b4541ce7322ded9ebbfd21df53d9b2ef6153b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
bb56a1512559a5f024ba213c4bdcfe3d9d9387de 25-Feb-2012 Andy Huang <ath@google.com> Conversation view touch event shenanigans

* Fix scrolling when the touch begins on an overlay view. Drags
do not engage scrolling until the system touch-slop distance
is exceeded. Logic copied from ScrollView.
* Fix pinch zoom when the first touch begins on the WebView by
disabling motion event splitting.
* Fix pinch zoom when one or more touches begin on an overlay
view by intercepting upon ACTION_POINTER_DOWN events.

Change-Id: I6f23eb75f9df32ac9c9b0c1be8a304e2c16c6fe0
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
f70fc4052b72a850bbb9be585d0f5a4877ee9448 18-Feb-2012 Andy Huang <ath@google.com> conversation view zooming

Zoom is enabled on the entire conversation using the built-in
WebView mechanism.

Wide messages are individually best-effort shrunken to
fit-width.

Start a custom ViewGroup to hold both message headers and the
single WebView. A common view parent makes input handling easy:
the WebView drives scroll position, and position is relayed
to the custom ViewGroup to cheaply shift around headers without
a full relayout. For now, all headers are inflated at once, but
soon they can be recycled depending on the virtual scroll
viewport.

Change-Id: I92555f9b79e10630457b17ca970ab9a2e9028e80
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
49656dcf7abf09141d6ac59fc1fccef8012238dc 23-Feb-2012 Vikram Aggarwal <viki@google.com> Show conversations in two-pane

A few things are still missing from conversation handling:

1. The conversation blinks in certain cases. This needs to be chased
down.

2. Back is not working correctly when viewing conversations. Back is
the same as up. Instead, it should display the conversation list and
label list.

Change-Id: I6fd91bfe5add862998bd7cbdbf5515db2325b950
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
674afa42682908640167fc6109b76f6f843e6fbe 17-Feb-2012 Mindy Pereira <mindyp@google.com> clear undo when tap outside of it in any screen.

Some funny business with relative layouts and z-order
and the undo bar. will fix that in a second cl so i can
animate in/out undo bar.
Change-Id: Ia4d3684ff26563e56b09cafb9ee25980162d1168
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
465d03d2318a4d764044c257f8f77d21e04531f0 17-Feb-2012 Mindy Pereira <mindyp@google.com> Show a special collapsed asset icon when a folder has children; use CursorLoader

Remove unneeded UIProviderCursorLoader
Change-Id: Id0671479de98c23242018ef1e576dd803e16395c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
8e915724b6e4374da9b70161ee0a55f0c763e563 16-Feb-2012 Mindy Pereira <mindyp@google.com> Take loading of messages associated with a conv off the ui thread.

Also, removed unused activities.
Change-Id: Ib80e71dce03a3821a0e27e9e2d638280dad0ce83
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java
9b87568c9e9f1c32a9672b315229866a58a1e757 16-Feb-2012 Mindy Pereira <mindyp@google.com> Add conversation view fragment.

This pulls over the logic that had been in ConversationViewActivity.

Change-Id: Ib617d3c1cb43265a559a18e05842ca186188b3d3
/packages/apps/UnifiedEmail/src/com/android/mail/ui/ConversationViewFragment.java