| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Peek mode allows CV fragments to be visible but not marked viewed and
read. TPC keeps a global flag for whether the current conversation
should be peeked vs marked read. I have tried to manually reset the
flag in the 6 cases that cause the current conversation to change:
1. tap another conversation (don't peek)
2. swipe to another conversation (don't peek)
3. keyboard-advance to another conversation (peek)
4. auto-advance=newer|older (don't peek)
5. auto-advance=list (go older & peek)
6. empty CV and a list cursor has loaded (peek at i=0)
Swipe, in particular, required a new onConversationViewSwitched() call
in CPA because onPageSelected() is triggered both when swiping around in
the view pager AND when simply setting the initial page as part of
constructing a view pager.
Thankfully, there is only ever one copy of this peek flag in the app, in
TPC, since AAC/TPC is where all the work is done both to mark
conversations seen and to switch to new conversations.
Rotation to portrait on tablets now requires tearing down a ViewPager;
this code and thought process is documented here: http://go/xqaxk
TODO: selected indicator for transition from peek->read state in-place
TODO: touches in CVF should mark it read
Bug: 17291366
Change-Id: I24f71a2b7985773814d8caad9f3ab3fe5c3609c8
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Catch up to b/6347192 by patching FSPA2 to handle dataset
changes. This should fix the random ISE crashes where fragments
are "not currently in the FragmentManager".
Dataset changes cause FSPA2 to redo its mFragments state
*before* the ViewPager redoes its state, so that when ViewPager
issues instantiate/destroy commands, both FSPA2 and ViewPager
reference the new dataset.
Bug: 6539685
Change-Id: Ic7364e30ec797669a3b57a4b06d4ca2d436a5b5b
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
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
|