History log of /packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
79b1156803585952a4851221dc9fa9974e606433 10-Oct-2013 Tony Mantler <nicoya@google.com> Clean up use of Account.name where an email address is expected

b/11066314

Change-Id: I65d3c92d6a50ed918a7039fba10ed4dff6a422f7
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
761522c1ac7a8fa05acde714f0e26fde47f3415f 08-Aug-2013 Andy Huang <ath@google.com> basic analytics support

Bug: 9861033
Change-Id: I940e25dc12a7cbfe91b1d5ec457c7fc1045171df
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
6c570db71b8adc43d7dc2f31e6fa63cf50c1426e 07-Aug-2013 Andrew Sapperstein <asapperstein@google.com> Add new ViewMode.

Works in OnePaneController.
Need to wire up the buttons.

Change-Id: Ia9aa5e696cbba1d170038e47d4941cc6fcf0a967
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
2b9d80eb16156173f11a02eae4f770d8c975927c 31-Jul-2013 Scott Kennedy <skennedy@google.com> Change all resid switches to if-elseif-else

I really want to get this building in an IDE.

As per http://tools.android.com/tips/non-constant-fields, library
projects (like UnifiedEmail will be) have non-final R constants. They
are not final until packaged into the main application project's
(Gmail/Email)'s R.java.

As such, they cannot be used in switch case statements, and we must
use if-elseif-elseif-elseif-...-else instead.

"This is typically in UI code and the performance impact is
negligible."

Change-Id: Ie699c13e1becd51c59c1b2ea81bc902d4f2e28d9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
41ac08a67f054a5efe1053ee4f6d82a0e70a549a 01-Jul-2013 Andrew Sapperstein <asapperstein@google.com> Hash account when building base uri in conv view.

Fixes b/9170480. Previously we just used account
name to build the base uri for viewing the
conversation in web view. That breaks when the
account name has an apostrophe. So instead just hash
the name and use that instead.

Change-Id: I84f6dd4f67371795bc46c6f97573230e3981a4cc
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
b622d2b6750423c185a2a2463277e5e2b853fada 12-Jun-2013 Andy Huang <ath@google.com> fix crash on link open

Bug: 9396858
Change-Id: I409d0d648120d0f61b97da1c1fcfdc91ced1c0f8
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
b184bfe96fa3512af88260fce4f3cee3066fb28d 26-May-2013 Scott Kennedy <skennedy@google.com> Unify LogTag

There is now only one LogTag class. The static initializer of
GmailApplication (existing) and EmailApplication (new) will now set
the log tag to "Gmail" and "Email", respectively. Up until that code
is run, it will be "UnifiedEmail".

"setprop log.tag.Gmail VERBOSE" (or .Email) will trigger all logs to
be printed as long as they go through LogUtils, regardless of what tag
is used by that individual log. This lets us still turn on logging
everywhere in one command, but also lets us use more descriptive tags
(like the class name).

And since we no longer have three com.android.mail.utils.LogTag
classes, builds will be much easier.

Also, we now use LogUtils everywhere.

Change-Id: Iec53e87cad0a46b73d2afbbd8d44aca097a5087a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
7729a9aaa1873505191303a35c480b6dcf1c7382 24-May-2013 Alice Yang <alice@google.com> Prevent an NPE

Bug: 9111116
Change-Id: I5b3916c6d8a04ebb86d985196ae1ee086a1aca09
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
33acbcca5fe84649ed8522481900097016c3f5a6 10-May-2013 Alice Yang <alice@google.com> Merge "Add gservices flag for disabling transforms" into jb-ub-mail-ur9
3617b41394337774fb2e6fcf9fef1ac9eca00482 10-May-2013 Alice Yang <alice@google.com> Add gservices flag for disabling transforms

Bug 8876381

Change-Id: Id6f144bcb964307c6ab73a3555b9c7e019a2d6ea
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
da5af45d1349aa25dcf199a370c64bfa69be317d 08-May-2013 Alice Yang <alice@google.com> Merge "Revert "Disable transforms temporarily"" into jb-ub-mail-ur9
b8e6ea1f56b21c444ff7aec5b9165f011a6dd8a6 08-May-2013 Alice Yang <alice@google.com> Revert "Disable transforms temporarily"

This reverts commit ebfbfbd4a429a0ae720735cb988c9f48f646999a

Change-Id: I806a76d0d0887db3f867748f5ffc33a6b1cd162d
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
fb223ae20710d0e8aba038324638241636ac9a68 08-May-2013 Alice Yang <alice@google.com> Merge "Disable transforms temporarily" into jb-ub-mail-ur9
919d01a1144dc14f114860949ff4af79a9165ec7 08-May-2013 Scott Kennedy <skennedy@google.com> More logging

Bug: 8824046
Change-Id: I99c63dc62393f1446938c52699ca03b6ea2fad3a
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
ebfbfbd4a429a0ae720735cb988c9f48f646999a 08-May-2013 Alice Yang <alice@google.com> Disable transforms temporarily

Checking this in temporarily to obtain a signed build with transforms
disabled. Will revert once we have a build.

Bug 8835996

Change-Id: Ibb61dc548381c393f4cc82b273889ec3dbb2035f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
022c7ea78f5ceb1b1633cf3df3c357a103eb3559 01-May-2013 Andrew Sapperstein <asapperstein@google.com> Merge "Implement "Revert auto-sizing" menu option." into jb-ub-mail-ur9
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/AbstractConversationViewFragment.java
f5715ffa1a69c425c0f204a58a9c727577a45898 30-Apr-2013 Paul Westbrook <pwestbro@google.com> Remove dead code

Also, remove code that would crash when deciding not
to run the dead code

(If the fragment is detached before the animation finishes)

Bug: 8759728
Change-Id: I6b8ce3b03077ff779e4f0e7d0b7c19e13a79bff2
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
214522998157088ec7e38e0d2b4497e43f310ab7 16-Apr-2013 Paul Westbrook <pwestbro@google.com> Prevent using closed cursor

Bug: 8622492
Change-Id: I02467487e0efa04a119e11b3a78861deada9bc5c
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
ad8b99b26bf9eff7730ab733cc8ef8b0710a9e0e 08-Apr-2013 Vikram Aggarwal <viki@google.com> Remove the subject from the actionbar

Following the new UX guidelines: no subject in actionbar anymore.

Bug: 8438223 Subject of the mail disappears from the action bar on
orientation change to landscape mode

Bug: 8492928 Action bar title switches between subject and the
folder+account name

Bug: 8529168 Remove search_actionbar_view

Change-Id: I8551fdacd7843ca0b2ba0bf1025483eee2587638
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
8c40a1d7e56ea1d59b6b91ee82034bf1e54818b5 16-Mar-2013 Andy Huang <ath@google.com> am f6d04ed7: fix build

* commit 'f6d04ed7b875e56ae57f24366daf981f99c6f06c':
fix build
f6d04ed7b875e56ae57f24366daf981f99c6f06c 16-Mar-2013 Andy Huang <ath@google.com> fix build

Change-Id: Icd023c7bd38b2f89abdb2b193767c412415acf6b
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
4df6f119a28d8d0022f58189368eb67753160efa 16-Mar-2013 Alice Yang <alice@google.com> am 9d4e681d: Merge "clean up secure CVF" into jb-ub-mail-ur9

* commit '9d4e681d5e44b8f47fdee2f13fba02a34ae8315b':
clean up secure CVF
2e57e5485504c9ea2e5b5186f22bb76ea5f7bf6d 16-Mar-2013 Andy Huang <ath@google.com> clean up secure CVF

no functional changes yet.

Change-Id: I9bf895aeb1b41de88002d5597d802e4c782fb0fd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
d1e0be61f7d3bbbd2a83f9d7b11f059dba56bdac 14-Mar-2013 Alice Yang <alice@google.com> Merge remote-tracking branch 'goog/jb-ub-mail-ur9' into merge

Merge UR9 into MR2.

Change-Id: I916879cbe469883ac0281985441d17e03d3a6250
2dc738718b894e1b5ce34a736a5b278a6636bfbe 04-Mar-2013 Andy Huang <ath@google.com> am bb9dd6b3: work around zombie fragments receiving unread commands

* commit 'bb9dd6b315c2b3a5816c8f52418a991c5c1b70fd':
work around zombie fragments receiving unread commands
ca895f1f844c483f796a992ea0589a0b619e640f 04-Mar-2013 Andy Huang <ath@google.com> resolved conflicts for merge of 9e4ca799 to jb-mr2-dev

Change-Id: I3b1ff1051c934476e6fe99fad55f00868554fa37
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/AbstractConversationViewFragment.java
bb9dd6b315c2b3a5816c8f52418a991c5c1b70fd 01-Mar-2013 Andy Huang <ath@google.com> work around zombie fragments receiving unread commands

Bug: 7326925
Change-Id: I3fcd15371e1f5905cdf29d46b494ff4537105653
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
c7523c17ba955b9a7c754edf6dbda7d010d06a30 28-Feb-2013 Andy Huang <ath@google.com> pop out of conversation view when dealing with singleton drafts

Previous CLs (Ieb2753, If86b18) popped out of conversation mode
when the visible conversation goes missing from the cursor AND
the conversation's message count goes to zero.

Sadly, Gmail reassigns IDs to outbound unsynced singleton draft
conversations upon sync, so the sync makes the current draft
seem like it's being deleted, which triggers detached mode.

A longer-term fix is to prevent those IDs from ever changing,
but for now, change the scope of the original fix. Rather than
pop out when message count goes to zero, do it when a
conversation that starts out as a singleton draft goes missing.

Now that the message cursor count is not used to trigger the
pop-out, simplify the code to cut the fragment out of the loop.

Bug: 8185448
Change-Id: I0bf78b11b93c71b13ad3ffa560a4ee0e75a9e542
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
18176786f320b4d4312ad1682da057434f201c13 21-Feb-2013 Scott Kennedy <skennedy@google.com> Pop out of a draft after discarding it.

Bug: 8185448
Change-Id: Ieb27536edc2a716b76d005fcbcc250aa03693dfd
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
a91d00b4de3092b41af5f36436d3b49fe4586f64 18-Jan-2013 Vikram Aggarwal <viki@google.com> Many fixes to detached mode

1. Unselect the top conversation in list (by un-setting activated
state), before entering detached mode.
2. Set choice mode to NONE to avoid changes to the selected state in
detached mode.
3. Allow for recovering from detached mode by tapping on a valid
conversation in the list.
4. Bypass most of the action in CPA.notifyDataSetChanged() in detached
mode.
5. Pop out of conversation view if there are no messages (when
detached and the detached conversation is expunged).

Bug: 8026749 Detached mode triggered even when not detached

Bug: 8025487 In detached mode, CPA.notifyDataSetChanged() shouldn't do
much

Bug: 7337160 Subject and message body mismatch

Change-Id: I7b578ab929ee6a7d18002567b1cf4aaac54b0480
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
5bc4f4ac341edfd7b5ba9d810c6255cab58060c2 29-Jan-2013 Yu Ping Hu <yph@google.com> Merge "If conversation list cursor is not loaded, defer mark unread until it's loaded." into jb-ub-mail-ur8
7c909c76deb748e6aca82e885a9fbaee52adeb9c 18-Jan-2013 Yu Ping Hu <yph@google.com> If conversation list cursor is not loaded, defer mark unread until it's loaded.

Bug: 7357200
Change-Id: I176d2c37c14679bb98b35dd40eaf3d1b3a77d1ed
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
02133aa80d4ff68739a8b8c6f4cc00150a3cfc80 09-Nov-2012 Andy Huang <ath@google.com> fix starring after rotation

Starring a message depended on having a working
ConversationController. But while rotation retains the
Loader/Cursor/Messages, it makes the controller (actually a
Fragment) useless because a new one is made.

So have onLoadFinished ALWAYS update the Cursor's controller
to point to the current Fragment before using it.

Similarly, it isn't great that the Cursor points to a
Conversation, which may be old after rotation. That one is less
bad, since a Conversation is relatively static, but everybody
should be on the same page after rotation, so stop caching
internal Conversation references in the Message/Cursor/Loader.

No null checks on conversation/controller get(), because they
really should never be null on access. NPE is as good as
anything to catch these cases.

Bug: 7295695
Change-Id: I949f53779afc820eae0f05da4618e570db381942
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
bb6039ed45a5eeccf08d97cb91d1b91069fed5af 25-Oct-2012 Andy Huang <ath@google.com> prevent buildLayer ISEs

buildLayer() crashes when the view isn't attached. Hmm.
Layer twiddling is only useful if attached anyway, so just check
before, like Launcher2 does.

Bug: 7404218
Change-Id: Ib23a512487ff0746ba279ab3e4af02898c6b1044
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
196b2b14b494be3cfe72d56b7222a595a2bd8a48 19-Oct-2012 Andy Huang <ath@google.com> use hardware layer to improve conversation load animation fps

Follow the standard pattern to enable HW acceleration when
animating alpha.
Improves framerate of the fade-in on older hardware.

Also add buildLayer() to the pattern (copied from Launcher and
QuickContacts) to do some work up-front instead of during the
animation.

Fix the multi-dismiss case in swipe to switch back to no layer
when the animation is complete.

Bug: 7360692
Change-Id: Id97c473eeffdabe15e3308aa4f1e0755c3f33019
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
2f2ad3f5ecc0185dfa09091062322dbaeb14c7ed 17-Oct-2012 Andy Huang <ath@google.com> simplify conversation load spinner

Bug: 7360703
Change-Id: I501636c17b3a086bb35dbdcf70cb6020bdcf6e0e
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
ba4cce62e2de2b818190b81bb07ecc5e94544165 28-Sep-2012 Paul Westbrook <pwestbro@google.com> Set the base uri

Setting the base uri allows the java script to rewite
relative urls to the correct conversation Base uri

Bug: 7240585

Cherrypick of https://googleplex-android-review.googlesource.com/#/c/232188/
Change-Id: I28ed329f4de830ee883cbcdb30ddec86e007bcaf
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
f807ba7ac1011f7fd1e0d382dcc0518ba3529810 21-Sep-2012 Yorke Lee <yorkelee@google.com> Update ActionBar immediately when entering conversation

Update the ActionBar immediately when a conversation is selected
instead of when AbstractConversationViewFragment is loaded so that
the extra ActionBar icons are not displayed twice momentarily.

Fixes b/7161358 Duplicate "Archive" icon displayed temporarily when an email is loading in the Gmail Android app
Change-Id: I3990c52789d0e9796bec8985c937c1d6f80982e9
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.java
0b9b48c1ac510d6d0d043a86354880ceb57a8175 19-Sep-2012 mindyp <mindyp@google.com> Small change: we want a non null cursor since that means it actually loaded

Change-Id: I2764852d1d62631173d7045382b06bf993812381
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java
8fe8ed43ef6e08b09d12b0827607d15699da3c06 18-Sep-2012 Vikram Aggarwal <viki@google.com> Set activity early, disallow null

Fixes b/7187161 Search for any text and tap/select back key shows NPE
in Gmail

Change-Id: I8e9296033e8ef1a37111c3fa1ec09f6ead7abb8f
/packages/apps/UnifiedEmail/src/com/android/mail/ui/AbstractConversationViewFragment.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/AbstractConversationViewFragment.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/AbstractConversationViewFragment.java