• Home
  • History
  • Annotate
  • only in /frameworks/support/v17/leanback/src/android/support/v17/leanback/app/
History log of /frameworks/support/v17/leanback/src/android/support/v17/leanback/app/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
93c2b64d5c75b9e7f0dd6ae3fa8f4b082a446e78 24-May-2016 Keyvan Amiri <keyvana@google.com> Merge "PlaybackOverlayFragment: fixed the wrong focus behavior after fade-in & fade-out" into nyc-dev
794711994b16b276a7d952303a90fd4da2288362 24-May-2016 Keyvan Amiri <keyvana@google.com> PlaybackOverlayFragment: fixed the wrong focus behavior after fade-in &
fade-out

When a song starts playing, PlaybackOverlayFragment fades out
all the components. After a user pressed a DPAD button however,
the focus shifted to the media player
while the highlight selector still remained on that row.

Now after a fade-out, the focus remains at the same
location as it was if a media item row is clicked.
If the focus was on the media player before fade-out, the focus
resets to the play button after fade-in happens.

Bug: 28916752
Change-Id: I1584a8a96687ed36b740aa033f253f23c89364a9
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
dc819e77b4095005a4b77ca615b3e1e3cc9c1edf 10-May-2016 Dake Gu <dake@google.com> Merge "PlaybackOverlayFragment: allow fadeOut when fadeEnabled is false" into nyc-dev
f86c4e016cb4ea82c337223893b56335e0b213a8 09-May-2016 Dake Gu <dake@google.com> PlaybackOverlayFragment: allow fadeOut when fadeEnabled is false

PIP needs to setFadingEnabled(false) and hide the controls. But when
calling setFadingEnabled(false), the control will be faded in, then
fadeOut() is ignored.

Bug 28667137

Change-Id: Iee6febc9491d0ca0b1bb0431ddcd40aca889357f
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
c1ec7d7eff002329b245a4edb1b87da2f3b5e006 09-May-2016 Dake Gu <dake@google.com> BrowseFragment: fix RTL

Bug 28671940

Change-Id: I2fefe0c667ada922635d961b28b46f808a594f8f
rowseFragment.java
rowseSupportFragment.java
3f19c1616ed2749a70ecc764dccb467ec96aa1f4 09-May-2016 Dake Gu <dake@google.com> BrowseFragment: fix NPE when setAdapter in onActivityCreated()

Bug 28451581

Change-Id: Ic2f2169758be7735f509dc7498b45bccb5af1248
rowseFragment.java
rowseSupportFragment.java
08b235bf23a8ca8e68aa678d598b6af8fd8a8ddf 07-May-2016 Keyvan Amiri <keyvana@google.com> Merge "Leanback media-list support: Added optional customizable actions" into nyc-dev
4fe538f2d65eefc57f618887ccb1226ec1a9741d 28-Apr-2016 Keyvan Amiri <keyvana@google.com> Leanback media-list support: Added optional customizable actions

AbstractMediaItemPresenter now supports arbitrary number of optional
custom actions. Each media item row can consist of multiple, separately
focusable views where each component is highlighted through an animated
drawable.

APIs are provided for capturing click events on media item details or
actions, and dynamically altering the contents of the details or
action views.

Also changed the attribute names to "media items" to make them more
generic for any media item list usage (e.g. music app, podcast, etc.).

Bug: 28636413
Change-Id: I167fc15c3961dec4280a77c1356f1bf571525650
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
3ba1d10e9fb4969b92c324307a9d19d5484de360 05-May-2016 Susnata Basak <susnata@google.com> Merge "Making SearchOrb optional in TitleView." into nyc-dev
b92376f5be24ddee5c6cd7c23b7c7e8e5c2cda68 29-Apr-2016 susnata <susnata@google.com> Making SearchOrb optional in TitleView.

Users are able to provide custom TitleView components. Consequently
we need to make SearchOrb optional inside their TitleView.

Bug: 28471869
Change-Id: I65e3ddf0bf2d1330e547cdcb5d29d88faeb6e000
rowseFragment.java
rowseSupportFragment.java
4a978d3d3c1163179ca7b387abcaf572a9a14889 04-May-2016 Chulwoo Lee <chulwoo@google.com> Merge "Run the animators together" into nyc-dev
5740176a71133eeafeed3733c28470fbb590aac7 02-May-2016 Chulwoo Lee <chulwoo@google.com> Run the animators together

Change-Id: Iffd3fd9f81347fb147572cbf97adf0ba5214555a
nboardingFragment.java
nboardingSupportFragment.java
a471ba40d52cde2d5a0afeded68c9d915f76183b 30-Apr-2016 Dake Gu <dake@google.com> BrowseFragment: allow page fragment to delay loading data

When first row of BrowseFragment is a page fragment,
startEntranceTransition() is called when BrowseFragment's adapter is
ready. It is also when page fragment is just created from first
Row of BrowseFragment. But page fragment can take another second
to load its own data, so startEntranceTransition() cannot start
transition immediately, it needs wait the current fragment's data
to be ready.

Added new API for page fragment to notify data is ready, this doesn't
apply to fragment implemented RowsFragmentAdapter because in that case
the fragment is sharing the same adapter of BrowseFragment.

Bug 28471536

Change-Id: Ie9fd475868e0f7cc530b38769d31c0f71d1a2c6c
rowseFragment.java
rowseSupportFragment.java
34c66772dedda7e80513d92084d5189ed469ffc9 26-Apr-2016 Dake Gu <dake@google.com> Merge "leanback: fix choppy main fragment switching" into nyc-dev
d78de5e10e8426beff2ec22a3e3e0967a6b3d557 22-Apr-2016 susnata <susnata@google.com> Switching from Adaptable to Provider interface.

Following the recommendation from API councel team, we are tigheting
the scope of our classes by adopting explicit provider pattern.

Bug: 28271067
Change-Id: Ib39b5255445b7bf71b56ed548ddaecfb491af0ec
daptable.java
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
041a037dbeb68c17322e62e729ec5ece6c7f5b20 22-Apr-2016 Dake Gu <dake@google.com> leanback: fix choppy main fragment switching

When headers fragment is scrolling, delay switching main fragment
until scroll stops.

Bug 28343973

Change-Id: I6f05778f1d7e9902ade6d6f3638bc5cb203e65d4
rowseFragment.java
rowseSupportFragment.java
f7bdb2b37497128b8a9108eea43c17ea544c957a 22-Apr-2016 Alan Viverette <alanv@google.com> Merge "Clean up deprecation tags in support libraries" into nyc-dev
d805095048f6be52cddbd572ee343c4639ba8187 22-Apr-2016 Alan Viverette <alanv@google.com> Clean up deprecation tags in support libraries

Also fixes renderscript and recyclerview docs builds.

Bug: 28339627
Bug: 28073702
Change-Id: I0f38cf82fe260de4488660c87aaed8d26265eeba
rowseFragment.java
rowseSupportFragment.java
laybackControlGlue.java
laybackControlSupportGlue.java
owsFragment.java
owsSupportFragment.java
a373804d10f93a9488adc35cf6ce44dce09b3778 21-Apr-2016 Dake Gu <dake@google.com> leanback: allow customize title view branding

Added theme attribute browseTitleViewLayout to customize layout
for title view. The theme attribute is shared across all
BrandedFragment subclasses including BrowseFragment, DetailsFragment,
VerticalGridFragment and ErrorFragment.

Custom layout can provide a customized widget which implements
TitleViewAdapter.

Expose hidden base BrandedFragment class to public in API, this fix
issues of API generator does not handle public methods in
hidden base class.

Refactored ErrorFragment to use BrandedFragment.

Bug 28297243

Change-Id: I355a0a12a1d994b6bb0a63745a0754557a5f4b20
randedFragment.java
randedSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
rrorFragment.java
rrorSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
16ab389e0bd11594059f8164a1477045ee625154 20-Apr-2016 Dake Gu <dake@google.com> Leanback: Add onGuidedActionCanceled

onGuidedActionEdited() was called for the cancel case and confirm case,
which was very confusing.
Now deprecate this method and introduce onGuidedActionCanceled() method.

Bug 28279231

Change-Id: I000491611b78a7aaba11ed61a5196ac34d7babd6
uidedStepFragment.java
uidedStepSupportFragment.java
8ff4c54cdaf5e8164fba7eac999c1ceafc462fc8 16-Apr-2016 Dake Gu <dake@google.com> HeadersFragment tweaking

support two lines header
support divider
support unfocusable section header

Bug 28270725

Change-Id: I41f97e0ccca390db6e440e26567b18faa029e492
rowseFragment.java
rowseSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
bfa933a3e3aecab19ee507f7425342275381eec1 19-Apr-2016 Susnata Basak <susnata@google.com> Merge "Adding support for customization of TitleView." into nyc-dev
7350fc450e5850b7a3dddff6d63fb87bd24886dd 19-Apr-2016 susnata <susnata@google.com> Adding support for customization of TitleView.

Following the Youtube model, we are adding the ability for page
fragments to control the visibility of TitleView.

Bug: 28269880
Change-Id: I5153f51ff155aeac3186156f79f2ddc0ab34cb42
randedFragment.java
randedSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
1df69817819b7432780b242dd18f86f7b60834aa 15-Apr-2016 Dake Gu <dake@google.com> Merge "BrowseFragment: fix bug when MainFragment is initialized early" into nyc-dev
69381509eace8e71ba4886e9e1e78cda62b66516 15-Apr-2016 Dake Gu <dake@google.com> BrowseFragment: fix bug when MainFragment is initialized early

If MainFragment was restored before BrowseFragment's adapter,
the HeadersFragment is empty and user may opens empty HeadersFragment
when pressing LEFT or BACK key.

This change prevent LEFT or BACK at the first place. We cannot
prevent BACK from pop backstack: so in the BACK case,
re-add the stack entry.

Change-Id: I112e746ddd9ac5c2dcc34dec461dce4c65f26f2d
rowseFragment.java
rowseSupportFragment.java
d0fc2e48059f718676a531af06a31849f54c1ca9 15-Apr-2016 susnata <susnata@google.com> Fixing the animation issue with TitleView.

Change-Id: I61d3084a95625865f17718022bc0c638d5d0cf17
randedFragment.java
randedSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
b082c7277cff057bdff19e411e345c3d6fea2e12 14-Apr-2016 susnata <susnata@google.com> Fixing NPE issue in BrowseFragment.

Change-Id: Ia614fca4c5ee39d1346a3b46246191139b1b5161
rowseFragment.java
rowseSupportFragment.java
15b0b8fd4f2608c2c12d386f2d2416d02c90b484 15-Apr-2016 Susnata Basak <susnata@google.com> Merge "Revert "Fixing the animation issue with TitleView."" into nyc-dev
3c633c99ead9855d70594f50345d19ac8c56146b 15-Apr-2016 Susnata Basak <susnata@google.com> Revert "Fixing the animation issue with TitleView."

This reverts commit b10ba3b01290ce801180a3d5dc992825af8cb3ab.

Change-Id: I1b401f0d82ff164d99d741e2aea0cb25a352e38e
randedFragment.java
randedSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
5410782838dc6c765995bf1442ed8e7f0809faef 14-Apr-2016 Susnata Basak <susnata@google.com> Merge "Fixing the animation issue with TitleView." into nyc-dev
b10ba3b01290ce801180a3d5dc992825af8cb3ab 13-Apr-2016 susnata <susnata@google.com> Fixing the animation issue with TitleView.

Change-Id: Iced7b29e6eb3e0b2f0e36277393a1034696848ed
randedFragment.java
randedSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
7709986aa43e891046183168a29f3e78d05abcc5 13-Apr-2016 Dake Gu <dake@google.com> Merge "GuidedStepFragment: differentiate clicking confirm button and cancel IME" into nyc-dev
9050c0fc8fbcd8ffe794915375efd5d2b96a0b2d 02-Apr-2016 Dake Gu <dake@google.com> GuidedAction: Add save/restore support

These cases will be saved automatically when autoRestore
is not turned off on GuidedAction:

1. editable none password title
2. editable none password description
3. checked status
4. DatePicker's current selection

Bug 27978256

Change-Id: If52f09e440538fb1d70a697eb69db371f02fd63f
uidedStepFragment.java
uidedStepSupportFragment.java
bcc19824dc43bc2e1bf23bccb1263f8de87ac013 13-Apr-2016 Dake Gu <dake@google.com> GuidedStepFragment: differentiate clicking confirm button and cancel IME

It used to call same onGuidedActionEditedAndProceed().
We now call different methods
onGuidedActionEdited()
onGuidedActionEditedAndProceed()

Bug 27989656

Change-Id: If71352e86238a3a37845da3dd39256c518f4bf76
uidedStepFragment.java
uidedStepSupportFragment.java
dc1492d3655550b7a9c861aae1bd538410c7324d 12-Apr-2016 Dake Gu <dake@google.com> Fix NPE of null FragmentHostImpl

Change-Id: I0e9a6808cb2e0d1df8c7e7b1ed49f95cb5e3e333
randedSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
044783ff434328501a53ed38773cbdc42c89857b 12-Apr-2016 Dake Gu <dake@google.com> Merge "Revert "Fix NPE calling FragmentHost.notifyViewCreated"" into nyc-dev
7560f1efed0774bc6fe0c5cf7030feba51010645 12-Apr-2016 Dake Gu <dake@google.com> Revert "Fix NPE calling FragmentHost.notifyViewCreated"

This reverts commit 185aab211d9c2d889e0fa9cc106da89edb27e567.

Change-Id: I2b69753cfb3ea162d3d5061a3efd26ddd15dea87
owsFragment.java
owsSupportFragment.java
afc9b9fe07e5d7b1575d1337381ab91276a74a60 12-Apr-2016 Dake Gu <dake@google.com> Merge "Fix NPE calling FragmentHost.notifyViewCreated" into nyc-dev
185aab211d9c2d889e0fa9cc106da89edb27e567 12-Apr-2016 Dake Gu <dake@google.com> Fix NPE calling FragmentHost.notifyViewCreated

When RowsFragment is restored from savedInstanceState, onViewCreated()
is launched before BrowseFragment setFragmentHost on MainFragmentAdapter.

Change-Id: Iaccda53080bcd91b4991df6d0e63868d221c8204
owsFragment.java
owsSupportFragment.java
24e53dc0c9e5fd32556eaa9265b9f1dec48c3989 12-Apr-2016 Susnata Basak <susnata@google.com> Merge "Adding support for displaying TitleView inside page/rows fragments." into nyc-dev
6fd4441435b14669deced90a05097dd5fe459ace 06-Apr-2016 susnata <susnata@google.com> Adding support for displaying TitleView inside page/rows fragments.

Currently, BrowseFragment shows titleview when we scroll to the
top row and hide it when we scroll away. But when we move into
the content section, we don't show the titleview. This Cl will
allow clients to show titleview inside their fragment.

Change-Id: I81489e25165135d71acb376248ba2a000788413f
randedFragment.java
randedSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
6bab657cffc32270d494ab47f469658f14e17c56 12-Apr-2016 susnata <susnata@google.com> Fixing the issue with progress bar.

If we call hide() before the progress bar is actually shown,
the hide request is ignored. This cl takes care of the pending
hide request.

Bug: 28040656
Change-Id: I0c18ee3040620f55c62c5bb4f9a244c3a9f9b0aa
rogressBarManager.java
4ec5f7292678de5949e76c9076bee4465a139962 02-Apr-2016 Dake Gu <dake@google.com> Merge "GuidedStep: Fix addAsRoot() restoring problem" into mnc-ub-dev
am: 2634f01

* commit '2634f01e2cd3ec949cd4c3b566cb3e96b3b130c3':
GuidedStep: Fix addAsRoot() restoring problem

Change-Id: I0cdba20ec44676c44aeab8796a763cfdd0d96842
68a94e5c24b85f071fb57727954510fff0224d9c 01-Apr-2016 Dake Gu <dake@google.com> GuidedStep: Fix addAsRoot() restoring problem

Should only add fragment when savedInstanceState is not null.
Since Activity.onCreate(savedInstanceState) will restore
the FragmentManager and Framgnets.

This CL dumps a warning and skip creating fragment when detected
duplicated fragment.

Bug 27972030

Change-Id: Iaa3177b0b70877ffea25e49d44f5be778a734a55
uidedStepFragment.java
uidedStepSupportFragment.java
34cbdda09048e72ba91bbb123f3a0c57a4e34b93 01-Apr-2016 Dake Gu <dake@google.com> GuidedStep: Add back the focus in onResume
am: 5b20ee9

* commit '5b20ee9a8d24e70f5e9f2d134440885241a00586':
GuidedStep: Add back the focus in onResume

Change-Id: Ic25cf0f371ef01b1a39e66e6f44cbe5891769253
5b20ee9a8d24e70f5e9f2d134440885241a00586 01-Apr-2016 Dake Gu <dake@google.com> GuidedStep: Add back the focus in onResume

When opening GuidedStepFragment from a Fragment with focus,
GuidedStepFragment should requestFocus() when it is resumed.

Bug 27970073

Change-Id: I96639ef806f5a9877d8c7dba6e49ea944f3099f7
uidedStepFragment.java
uidedStepSupportFragment.java
95e0df2fce7fd3f6585ef01ff588879839175181 31-Mar-2016 Susnata Basak <susnata@google.com> Merge "Adding support for clients to call methods on BrowseFragment." into nyc-dev
cabb8eca86d0248274f57008ff66427fec2e927c 31-Mar-2016 susnata <susnata@google.com> Adding support for clients to call methods on BrowseFragment.

Change-Id: I3fdf60f6bd74e0c62f5133b112e9c41636819da1
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
d25c850c5d8053809d260d34c4d4d526da992d4f 31-Mar-2016 Dake Gu <dake@google.com> Merge "Fix GudiedStep GridView focus 2nd try" into mnc-ub-dev
am: e12b873

* commit 'e12b87372d9c4c745fa54e124947316e0ecc6c88':
Fix GudiedStep GridView focus 2nd try

Change-Id: I3d21829267ead27d0025f5ad4a2d58bed5a80c2a
015eaf265571c84b5d37311f58bc69b2eb4af8d4 30-Mar-2016 Dake Gu <dake@google.com> Fix GudiedStep GridView focus 2nd try

Setting focusable in style/layout doesn't work for RecylerView,
so set the attribute in GuidedActionsStyleList.

Making grid view not focusable causing another issue: in Fragmet
to Fragment transition, fragment.onResume() does not have any item
view in the action list yet. So actionlist.requestFocus() gets
ignored. Fixing this by declaring focusableViewAvailable() when
RecylerView layout pass added focusable children.

Bug 27886380

Change-Id: Ic95db8fb60d6e6c309f5a8d45642dbe0505d457b
uidedStepFragment.java
uidedStepSupportFragment.java
54bab13ae9de4dd00002792bebf9531ede3c12e2 28-Mar-2016 Dake Gu <dake@google.com> BrowseFragment: Fix NPE when exiting

Header transition onTransitionEnd() might be fired after onDestroyView()

Change-Id: I14d49c30d83d46e8ea1442bf41332523cf82cf66
rowseFragment.java
rowseSupportFragment.java
1e0f144c00c249ce3673ae10c1398537cd354f15 28-Mar-2016 Chulwoo Lee <chulwoo@google.com> Don't use container in Fragment.onCreateView

It can be null.

Change-Id: I5ce18392f6835f89bd9fad576708592fd8ba6c2f
nboardingFragment.java
nboardingSupportFragment.java
dee82957d1100c2b65e6850769abd3ff00f1ec95 24-Mar-2016 Dake Gu <dake@google.com> leanback: fix regression

Bug 23415833

Added back the check if fragment/activity is destroyed

Change-Id: Ic8321424dab2d608b14b0e1610c9b356a974593d
rowseFragment.java
rowseSupportFragment.java
684f4a94f6f55b2abc5ed2677dfdfc9501dd6407 18-Mar-2016 susnata <susnata@google.com> Adding support for ProgressBar widget inside BrowseFragment.

Change-Id: Ie2c5833e6f244dfcaf23fbaccc8c7936eb81f361
aseFragment.java
aseSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
rogressBarManager.java
erticalGridFragment.java
erticalGridSupportFragment.java
3eb709dbe85f06b69cf1b683a2c1fe7109a85a9a 22-Mar-2016 Dake Gu <dake@google.com> BrowseFragment: fix ClassCastException

Fix classCastException in fast scrolling to a PageRow.
When OnItemSelected is fired, mainfragment might already switched to
a Page Fragment.
This fix binds the onItemSelected listener to MainFragmentRowsAdapter.

Change-Id: I59b0665545f28ed0c650a1f28fdce04de9234a14
rowseFragment.java
rowseSupportFragment.java
0d841b3454f896da58deb506ca22730bfd04f34f 19-Mar-2016 Dake Gu <dake@google.com> leanback: fix row selection problems

Bug 27718801 When removing all rows in SearchFragment,
the search bar's visibility is set to gone

Bug 27751344 BrowseFragment missing item in OnItemSelected event

Bug 27751870 RowsFragment does not update mSelectedPosition

Change-Id: If455ccaeee6b10bbfed9586e73f55449a825250d
aseRowFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
earchFragment.java
earchSupportFragment.java
e2e9faf86bd8b8a2953bd9f89e731d1c6357eb66 19-Mar-2016 Dake Gu <dake@google.com> DO NOT MERGE leanback: fix row selection problems

Bug 27718801 When removing all rows in SearchFragment,
the search bar's visibility is set to gone

Bug 27751344 BrowseFragment missing item in OnItemSelected event

Bug 27751870 RowsFragment does not update mSelectedPosition

Change-Id: Ib4cd980f295bdf4dcff87d255edca6e009d919d7
aseRowFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
earchFragment.java
earchSupportFragment.java
a5a85434f936023043f074fb86eaa6d48f7f6411 17-Mar-2016 Dake Gu <dake@google.com> BrowseFragment: Fix enter transition for lazy loaded MainFragment

Entrance transition stops working because the MainFragment is no longer
created in onViewCreated().

It causes two issues:
1. mMainFragment.setEntranceTransitionState(false) and
onPrepareEntranceTransition() are called before mMainFragment is
created, thus gets ignored.
2. The entrance transition is launched too early before mMainFragment
view is created.

The fix abstracted precondition for prepareEntranceTransition()
and precondition for startEntranceTransition(). Refactored
code using a StateMachine defining preconditions and actions for
each step.

Change-Id: I5d5abe60cfdf896e0bdb2ffaa1afa6e4f1faf7b4
aseFragment.java
aseSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
cfcb31c4895793dda843faf67d1b769268e3cce8 18-Mar-2016 susnata <susnata@google.com> Adding a default fragment factory in BrowseFragment

Change-Id: I677e340c0315bd36bf9ef8d3285cb5436b9f2f2a
rowseFragment.java
rowseSupportFragment.java
c0ad3d1d9ee64cf0bdb68ac70bfb04cc919c53e6 16-Mar-2016 Dake Gu <dake@google.com> Fix BrowseFragment NPE by lazy loading

When setAdapter() before onCreateView(), the HeadersFragment is null.
We used to guard by mMainFragment != null.

Change-Id: I0388ac57b2c7e48f29652cb71723e6605384361f
rowseFragment.java
rowseSupportFragment.java
2aff8659c7362b48f099a13ffad390bf7984dd5a 16-Mar-2016 Jaewan Kim <jaewan@google.com> Fix NPE

This is regression caused by
a9cab85 Refactoring BrowseFragment to support multiple PageRows.

Change-Id: Icee00d676178320aa7c88d76c63a3e77fd0c09ed
rowseFragment.java
rowseSupportFragment.java
ed8d4bbcd2d4c758edda7ba575b0f6ed2eb0c497 16-Mar-2016 Susnata Basak <susnata@google.com> Merge "Adding support for lazy adapter loading in BrowseFragment." into nyc-dev
bb0a680c10b84b83833a59634373140f8bd0750c 14-Mar-2016 susnata <susnata@google.com> Adding support for lazy adapter loading in BrowseFragment.

Change-Id: Iedc3a85d12434c3d04cc53170f2b2190437b3d4c
aseRowFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
22eaa9441bf3a521bfafb160674ff2da421eded8 15-Mar-2016 Dake Gu <dake@google.com> Loosen the requirement of using Row inside RowsFragment.

Only BrowseFragment requires rows to be subclass of Row which includes a Header.
RowsFragment, DetailsFragment and PlaybackOverlayFragment can now put any
object as rows; they should still use RowPresenter to support the selection event.

Change-Id: Id97e6ec27dfbf3bcc87449db4a6695f51588945d
etailsFragment.java
etailsSupportFragment.java
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
owsFragment.java
owsSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
fb11ded6cfa3965883e68625e0c7e14b4b4fe0b3 15-Mar-2016 Susnata Basak <susnata@google.com> Revert "Revert "Improving Row/Page fragment handling in BrowseFragment.""

This reverts commit 80a1d2dfbe5c1f26370cc1753c3ae321f126f5d2.

Change-Id: I98961927b6428b6a741939ce1c09ae6a1855a508
daptable.java
aseRowFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsFragmentAdapter.java
owsSupportFragment.java
owsSupportFragmentAdapter.java
80a1d2dfbe5c1f26370cc1753c3ae321f126f5d2 15-Mar-2016 Carlos Valdivia <carlosvaldivia@google.com> Revert "Improving Row/Page fragment handling in BrowseFragment."

This reverts commit 4400ca12ff731a7392715bc3d8ad3539b4c37889.

Change-Id: I9f30e33f64b4520327da614f6a4755d2bf292141
daptable.java
aseRowFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsFragmentAdapter.java
owsSupportFragment.java
owsSupportFragmentAdapter.java
4400ca12ff731a7392715bc3d8ad3539b4c37889 11-Mar-2016 susnata <susnata@google.com> Improving Row/Page fragment handling in BrowseFragment.

Change-Id: I68eed234dc3dc10eb14aafc42478360578fa21a0
daptable.java
aseRowFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsFragmentAdapter.java
owsSupportFragment.java
owsSupportFragmentAdapter.java
3155d10b5debd0b67101553edf65f4284a57cb68 09-Mar-2016 Susnata Basak <susnata@google.com> Merge "Refactoring BrowseFragment to support multiple PageRows." into nyc-dev
a9cab85f79e3993c3d7c4f5e0246f8492bcc2a48 08-Mar-2016 susnata <susnata@google.com> Refactoring BrowseFragment to support multiple PageRows.

Change-Id: Icabfb34d001dda3dddefadea55e59682f9ad681c
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsFragmentAdapter.java
owsSupportFragment.java
owsSupportFragmentAdapter.java
ab6cfa17d463f56a75e0b8c0457fcb099ab09178 08-Mar-2016 Chulwoo Lee <chulwoo@google.com> Merge "Unhide OnboardingFragment" into nyc-dev
5902461209082cea73ccebb52b0e452cdd97ac37 07-Mar-2016 Susnata Basak <susnata@google.com> Merge "Fixing the alignment issue in BrowseFragment." into nyc-dev
3faa5780307cf10ff0e4a1d89a9ba099cdad2e15 07-Mar-2016 susnata <susnata@google.com> Fixing the alignment issue in BrowseFragment.

Change-Id: I509b066eea54a77c4beb3f6d9caf1f72c7595a4f
rowseFragment.java
rowseSupportFragment.java
d114436ff3874abf9635b716f3322cb14735d53a 05-Mar-2016 Susnata Basak <susnata@google.com> Merge "Adding support for scaling individual fragments inside BrowseFragment." into nyc-dev
ce06f6b530f22e1e7839d068d5dd8ea3e4af8262 04-Mar-2016 Dake Gu <dake@google.com> SearchFragment: request RECORD_AUDIO runtime permission

Added callback in SearchBar to request runtime permission when start
using internal recognizer. SearchFragment implements the callback,
request permission and re-startRecognition when permission is granted.

Bug: 23958590

Change-Id: I3090e16b76eb592c3336434781f9f69cd2f6e14b
ermissionHelper.java
earchFragment.java
earchSupportFragment.java
f7a4099b29d7739616dd9d7e466b48dfda4b32f2 04-Mar-2016 susnata <susnata@google.com> Adding support for scaling individual fragments inside BrowseFragment.

Change-Id: Ia483c7800944391a91862bcbac6565e4549fdb93
rowseFragment.java
rowseSupportFragment.java
owsFragmentAdapter.java
owsSupportFragmentAdapter.java
ebe4901e5e467a8ff9a4e2a203a589f9755de329 19-Feb-2016 Chulwoo Lee <chulwoo@google.com> Unhide OnboardingFragment

Bug: 26024822
Change-Id: Ibaa4e3e70809a4cf290f99318156c2ed223e3379
nboardingFragment.java
nboardingSupportFragment.java
a9f6062bd2dd02b3de253b57c69302893bf1f2e3 03-Mar-2016 susnata <susnata@google.com> Moving all scaling logic into BrowseFragment.

Change-Id: I00c3ce502903730c239d4b0510e56f6484065dd2
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsFragmentAdapter.java
owsSupportFragment.java
owsSupportFragmentAdapter.java
1c3ce0fa10ec24e4edd5e5ea909b4d4357534b53 23-Feb-2016 susnata <susnata@google.com> Refactoring BrowseFragment to support single page fragments.

Change-Id: Iccf5de0fd3f1b38667d450b3fd110200afb914a3
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsFragmentAdapter.java
owsSupportFragment.java
owsSupportFragmentAdapter.java
f80eefeee0e5af34c2aa0f4058612def96c1d27f 25-Feb-2016 Dake Gu <dake@google.com> BrowseFragment: Fix alignment

Broken in refactoring

Change-Id: I75117964addaba081c89d6d572dfec97657e2460
owsFragment.java
owsSupportFragment.java
74b156b733925039d690efb9d252532f35d6beaa 19-Feb-2016 Susnata Basak <susnata@google.com> Merge "Refactoring BrowseFragment to support page fragments." into nyc-dev
2f5ebf3f6f7bb6a24856f389e369b247118ba119 18-Feb-2016 susnata <susnata@google.com> Refactoring BrowseFragment to support page fragments.

Change-Id: I2c4af2782443ba4fb957642a68ead563877fa0ed
aseRowFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
owsFragment.java
owsSupportFragment.java
e22092227572db7e749e5cbb8139aa79a18fecd5 18-Feb-2016 Chulwoo Lee <chulwoo@google.com> Revert "Revert "Theme OnboardingFragment""

Added the change for fixing build.

This reverts commit 294f8ce702e7134ab8652101d2abac47795a56e9.

Change-Id: Icb5ad9e436837021c6abf43d77677be2230c705b
nboardingFragment.java
nboardingSupportFragment.java
011d4dc36e26dacbfbd213e223091aa8dc89d115 18-Feb-2016 Chulwoo Lee <chulwoo@google.com> Fix build on mnc-ub-dev

Adding @hide caused the build breakage.

Change-Id: I6a87838757c3dce2e0b7972d31193a9aeae8a55d
nboardingFragment.java
nboardingSupportFragment.java
294f8ce702e7134ab8652101d2abac47795a56e9 18-Feb-2016 Brian Carlstrom <bdc@google.com> Revert "Theme OnboardingFragment"

This reverts commit 5f0182eace42f35a6bf18f3699f1706a64b41470.
nboardingFragment.java
nboardingSupportFragment.java
b7dd08e359e1e71200daa307cafa3cbbb73e7869 18-Feb-2016 Chulwoo Lee <chulwoo@google.com> Merge "Theme OnboardingFragment" into mnc-ub-dev
am: 53351f0ef3

* commit '53351f0ef3c9041aefabbaef409a09cacaaff730':
Theme OnboardingFragment
63de67ad4e954f49ba030210fb2d21fbc3efec5b 18-Feb-2016 Chulwoo Lee <chulwoo@google.com> Merge "RTL support in onboarding" into mnc-ub-dev
am: 315c581396

* commit '315c581396f861fb927c70d524964d5c4e9fd6c8':
RTL support in onboarding
5f0182eace42f35a6bf18f3699f1706a64b41470 12-Feb-2016 Chulwoo Lee <chulwoo@google.com> Theme OnboardingFragment

Support three ways as GuidedStepFragment does.
Still need to customize Page Indicator.

Bug: 26024822
Change-Id: Id553752a264611aea180a4494fe3946f1a4c30e1
nboardingFragment.java
nboardingSupportFragment.java
6cb24d438e700ceb0a8b7d5a93683b19eae6c1b5 08-Feb-2016 Chulwoo Lee <chulwoo@google.com> RTL support in onboarding

Bug: 26024822
Change-Id: I9a135b0679ca0bb86917e38bc571ce5520e1c323
nboardingFragment.java
nboardingSupportFragment.java
8c202ae6ec536167ae59ea7afb2da80b58042615 09-Feb-2016 Keyvan Amiri <keyvana@google.com> Merge "Framework Support Library: Ensure addSharedElement on TransitionHelper is only called on non-null views" into mnc-ub-dev am: 7b5870b264
am: 26e0dbbf31

* commit '26e0dbbf311b833ae55f760c8c8cb00cc057420f':
Framework Support Library: Ensure addSharedElement on TransitionHelper is only called on non-null views
54da7192d4f251f9fb9f9e49f1e57ce51c4c4ddc 09-Feb-2016 Chulwoo Lee <chulwoo@google.com> Merge "Provide a way to customize logo animation in onboarding" into mnc-ub-dev am: dd87581ed4
am: ca2875c55f

* commit 'ca2875c55f9126bfaffd20f2eb1d3be41b014ebd':
Provide a way to customize logo animation in onboarding
8bfa8f6a659c1188a955ee185b13e777d29fb4d9 09-Feb-2016 Keyvan Amiri <keyvana@google.com> Framework Support Library: Ensure addSharedElement on TransitionHelper
is only called on non-null views

Prior to this, the null check was performed within the
TransitionHelper's addSharedElement itself. Removed and transferred the
null checking to the actual users of this method in GuidedStepFragment.

Change-Id: I40def6c588364847edbbb30666b3e55f3f75dc52
uidedStepFragment.java
uidedStepSupportFragment.java
dd87581ed44e1ee07df4a4b9b430f4f3f808320e 08-Feb-2016 Chulwoo Lee <chulwoo@google.com> Merge "Provide a way to customize logo animation in onboarding" into mnc-ub-dev
8d34ce39a8f8dd2683e4c9690abddf1ce5513d1d 05-Feb-2016 Dake Gu <dake@google.com> Merge "Fixing focusability issue with SearchFragment." into mnc-ub-dev am: fc425490cd
am: 0cddcb70d2

* commit '0cddcb70d21e51813f3ea64112ff173af6cbba6c':
Fixing focusability issue with SearchFragment.
fc425490cd71c517202a634a6e6dde65765d223d 05-Feb-2016 Dake Gu <dake@google.com> Merge "Fixing focusability issue with SearchFragment." into mnc-ub-dev
dd667f84d7dc1c24207cb6e66ffa0e91caa640a3 03-Feb-2016 Chulwoo Lee <chulwoo@google.com> Provide a way to customize logo animation in onboarding

We need the three requirements for the logo animation:
1. Simply change the logo image.
2. Show different kind of animations.
3. Do not show the animation

Also saved and restored the fragment state.

Bug: 26024822
Change-Id: I1d18617f99442f7d1f5f353e91e7f6a12b0e38f4
nboardingFragment.java
nboardingSupportFragment.java
5521aebcb4df063762801eada82d753449bbc2fb 04-Feb-2016 susnata <susnata@google.com> Fixing focusability issue with SearchFragment.

VerticalGridView should not be stealing focus in
SearchFragment, disabling it.

Bug: 26894680
Change-Id: Iff5dcf1566d034093f2dd7d38193da3764a57ff2
earchFragment.java
earchSupportFragment.java
a6f015f9f5430e50870c9b87d997dda5262e227d 03-Feb-2016 Dake Gu <dake@google.com> Merge "leanback: make HeaderFragment callback public" into mnc-ub-dev am: 16d17ad1b5
am: a157708c81

* commit 'a157708c818f96d2984da13fffc11229d03cf29e':
leanback: make HeaderFragment callback public
16d17ad1b5e70b95142fbc308bb6b441ed5c5353 03-Feb-2016 Dake Gu <dake@google.com> Merge "leanback: make HeaderFragment callback public" into mnc-ub-dev
b14b4211dcd7d8ff5d5d93339836efa15121435c 02-Feb-2016 Chulwoo Lee <chulwoo@google.com> Generate support fragment for OnboardingFragment am: bc69c4a046
am: 08954d2939

* commit '08954d293926cb2146672cd833fa69025bcc1697':
Generate support fragment for OnboardingFragment
bc69c4a046bdabeaa72c28fcca0ceeb72517a81f 02-Feb-2016 Chulwoo Lee <chulwoo@google.com> Generate support fragment for OnboardingFragment

Bug: 26936113
Change-Id: I2d5a4b145c710effab38a9b6c3b8989b90e220ad
nboardingSupportFragment.java
032debddad0d6e2c3f24c37a2debd1427019e0eb 02-Feb-2016 Chulwoo Lee <chulwoo@google.com> Merge "Add javadoc for OnboardingFragment" into mnc-ub-dev am: 608dda9930
am: ea6bf1398d

* commit 'ea6bf1398d2133081b2ed3606829c8bf6dba8a0f':
Add javadoc for OnboardingFragment
ebd7bfd1433ec17efe4899a251edd2952168154a 02-Feb-2016 Chulwoo Lee <chulwoo@google.com> Merge "Fix talkback issues" into mnc-ub-dev am: aebcf20c1d
am: 6d529d1715

* commit '6d529d17151ab43fa022cde190edd15981e197c5':
Fix talkback issues
191f8a951397d2f4e58c336c0d894ffca2a328c3 02-Feb-2016 Chulwoo Lee <chulwoo@google.com> Add javadoc for OnboardingFragment

Bug: 26751768
Change-Id: I2b5d42cee15078644cdae8469b209dc9cd4cd618
nboardingFragment.java
729cbf4cd57c87bcd569db5974c8cbd51a942581 02-Feb-2016 Dake Gu <dake@google.com> leanback: make HeaderFragment callback public

Since the class was made public, also make the Callback public.

Bug 26867965

Change-Id: If8eb937913f93bc4dbb32aed62b841a190961184
rowseFragment.java
rowseSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
044cd07f5123509f57d93ad475c486d0e5db543e 01-Feb-2016 Chulwoo Lee <chulwoo@google.com> Fix talkback issues

This is merging ag/856152 and ag/856184.

Bug: 26751768
Change-Id: I4cd6c382db623c053178e1980fe9f0408136f47c
nboardingFragment.java
77212efe8bac2cea4bbff413f10489dbc786ca35 30-Jan-2016 Chulwoo Lee <chulwoo@google.com> Merge "Initial CL for the onboarding screen" into mnc-ub-dev am: 05dcb796b0
am: 8b6f2862f2

* commit '8b6f2862f2eef52c6bfc46fef3d02f7427272a36':
Initial CL for the onboarding screen
b78877670c813ccfc46071a8d361f45185fd06f4 27-Jan-2016 Chulwoo Lee <chulwoo@google.com> Initial CL for the onboarding screen

Refer to the documents about onboarding in the bug.

Bug: 26751768
Change-Id: I673afd21d1b8b8d72ec549d0d35da36b1fee68ae
nboardingFragment.java
4dd8cdf91d7411203092d27f20f82c1d74c2a8fb 28-Jan-2016 Dake Gu <dake@google.com> Merge "GuidedStepFragment: made Picker accessibility friendly" into mnc-ub-dev am: 9350d61309
am: 69ff8d97eb

* commit '69ff8d97eb6f1a2112f8a3e6feab132b43eb1fdb':
GuidedStepFragment: made Picker accessibility friendly
9350d6130981386b220c0600d95d34ff3f43f4c9 28-Jan-2016 Dake Gu <dake@google.com> Merge "GuidedStepFragment: made Picker accessibility friendly" into mnc-ub-dev
0f96ae4965103bade4bebe7776b2ee35cd603112 26-Jan-2016 Dake Gu <dake@google.com> GuidedStepFragment: made Picker accessibility friendly

Interpreting keys in Picker view does not work with accessibility services.
Talkback 4.4 expects the view to be focusable to drive the UI. The change
makes Picker's child views focusable. Also added new functions to
block focus out of item view when it's activated for editing.

Bug 26725708

Change-Id: I332fe577dffa4fe86a83dfe25e13cb90444d5da3
uidedStepRootLayout.java
88b24abc8dde3a9a904f4c108af3b67fe400d70c 28-Jan-2016 Susnata Basak <susnata@google.com> Merge "Adding support for 2 different entrance transitions for GuidedStepFragment." into mnc-ub-dev am: 0b465e7a59
am: feaf07ffaa

* commit 'feaf07ffaa3cfdd724ae4ceb4c39ac5218511663':
Adding support for 2 different entrance transitions for GuidedStepFragment.
e03d465a8a7b3e7c63a3487f2c05b99f28b8bec9 27-Jan-2016 susnata <susnata@google.com> Adding support for 2 different entrance transitions for GuidedStepFragment.

This will be used to provide different visual treatment for GuidedStepFragment
used in full/half screen mode.

BUG: 24979579
Change-Id: Ib02254d686dc1e5313c4b83247b0e040b415c4ca
uidedStepFragment.java
uidedStepSupportFragment.java
e593ed56c32611362b9d61e01481cca5452b2087 27-Jan-2016 Dongwon Kang <dwkang@google.com> Merge "Leanback: Add fadeOut() in PlaybackOverlayFragment"
91e100e4450b6101a674d8a3ab15e426fc5294bc 27-Jan-2016 Dongwon Kang <dwkang@google.com> Leanback: Add fadeOut() in PlaybackOverlayFragment

Bug: 26776716
Change-Id: I9b0e87cb701f67496a62b5b8b35d856595cd85e4
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
b984f3bcc6e81f30c8acd6b79313381c97339ec2 27-Jan-2016 Susnata Basak <susnata@google.com> Merge "Adding support to render GuidedStepFragment in full/half screen mode." into mnc-ub-dev
68d693985e85ee5eed18f78beaaadbfd9b8a4f13 25-Jan-2016 susnata <susnata@google.com> Adding support to render GuidedStepFragment in full/half screen mode.

Bug: 24979579

Change-Id: Id286a2df026d4668356bf0aa94aba45f667e6006
uidedStepFragment.java
uidedStepRootLayout.java
uidedStepSupportFragment.java
b88b36aa081a500eb0e9d4be0bac85b33cd57dde 05-Jan-2016 Dake Gu <dake@google.com> Adding datepicker in GuidedStepFragment

Add GuidedDatePickerAction. Added a new VIEW_TYPE_DATE_PICKER in
GuidedActionsStylist to handle GuidedDatePickerAction. The behavior
is abstracted as a "click to activate/deactivate" widget, allowing
subclass to support action other than DatePicker. The transition
shares same code for drop down list (i.e. sub actions).

Fix the generic Builder class problem, passing the concrete Builder
class as generic parameter.

Switch Picker to use standard activated status from a customized
"expanded" attribute.

And API review changes

Bug: 25390757
Bug: 26509683
Bug: 26509387
Bug: 26509381

Change-Id: I35cb5f99a1e81acaa51366cf17b1353180c7a549
uidedStepFragment.java
uidedStepSupportFragment.java
10cc7d33634e8f516941f702caccbf5c3c4d7aaf 17-Dec-2015 Dake Gu <dake@google.com> leanback: API tuning remove getSelectedViewHolder part 2

For the support fragment.

Bug 26227133

Change-Id: I90a66d7c72c0b23496a1dc262c903965a3aec0ea
rowseSupportFragment.java
owsSupportFragment.java
df2923d64b7fac60614eefcb769415f3003a0c47 17-Dec-2015 Dake Gu <dake@google.com> leanback: API tuning remove getSelectedViewHolder

Bug 26227133

Change-Id: I411756d19bbcd2c26cd968d204e392c324320ed2
rowseFragment.java
owsFragment.java
8470e2540ea5b571aa4570b5d5d6a76656a9a849 16-Dec-2015 Dake Gu <dake@google.com> Merge "leanback: API tuning: inner classes" into mnc-ub-dev
cff6e470de4a0b2ed1dec944bdc848bd26f852f6 16-Dec-2015 Dake Gu <dake@google.com> leanback: API tuning: inner classes

Change-Id: I00b48c1d3a3d16c783744c978a4d73337d6558ad
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
c3d11aea44660bf77326f6f07ebf11c6a19f7e1f 16-Dec-2015 Dake Gu <dake@google.com> GuidedStepFragment: API tuning

Add back the constant definition UI_STYLE_DEFAULT and mark it
as deprecated.

Change-Id: I68d3613cc96870360d53ade2451f0ceb88d64608
uidedStepFragment.java
uidedStepSupportFragment.java
16d7e4b3b98569c16b53b41006345f5328112f66 16-Dec-2015 Dake Gu <dake@google.com> Merge "GuidedStepFragment: API tuning" into mnc-ub-dev
b5ba5532e1ece8fd051ad1066c8efb0d2c32936c 15-Dec-2015 Dake Gu <dake@google.com> GuidedStepFragment: refactoring the focusable control

1. The actions list view does not need to be focusable.

2. It's a pain to disable focus left/right at verticalgridview
level. For example when button actions are not visible, we
should disable "focus out of right edge of main actions", when
button actions are visible, we should enable "focus out of right
edge of main actions". Moving the disable left/right logic to
top layout make it lot cleaner.

3. Allow GuidedStepFragment subclass to customize isFocusOutStartAllowed
or isFocusOutEndAllowed

Bug: 26205201

Change-Id: I66ee6bee8c7abbfe97db0f9fdf8119615143f543
uidedStepFragment.java
uidedStepRootLayout.java
uidedStepSupportFragment.java
fd3fc2de015a0771537ff5100668941eb7c0ea00 14-Dec-2015 Dake Gu <dake@google.com> GuidedStepFragment: API tuning

Hide all entry name related APIs.
Those are used by the helper functions add/addAsRoot/finishGuidedStepFragments/
popBackStackToGuidedStepFragment.
So apps either use the helper functions without knowing details of entry names,
or they are on own.

Change-Id: I2c0e1847bd25cc8db82488c87125ed20202aa6e8
uidedStepFragment.java
uidedStepSupportFragment.java
6bca8e820530b6590d02014a4f40e78609ee481b 08-Dec-2015 Dake Gu <dake@google.com> Merge "leanback: Fix typo in API method name" into mnc-ub-dev
2f1bd591e01fe93f605844d4a10cde7116315b7c 08-Dec-2015 Dake Gu <dake@google.com> leanback: Fix typo in API method name

getSeleted -> getSelected

Bug 26010216

Change-Id: Id4c98c8f489358d74f6f58ad65d015d4a5380bb2
aseRowFragment.java
aseRowSupportFragment.java
60f531e3d9667db9afe091f5a7979410eb7a0b48 07-Dec-2015 Dake Gu <dake@google.com> leanback: Expose some APIs

Bug 26027075

Change-Id: I2ab5c0683f1e00e4dd06b702787e3358cf64c105
etailsFragment.java
etailsSupportFragment.java
owsFragment.java
owsSupportFragment.java
0d73d42df7cf4b325b8f49660e3326204915ce8f 04-Dec-2015 Dake Gu <dake@google.com> Add helper to select a row then a card on that row.

Bug 26010216

Change-Id: Ic1cedc60c58644631ce62a6f4c8f95971d6702ab
aseRowFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
fb23f1271e21761bb523948d9ea9c60c42ae7251 03-Dec-2015 Dake Gu <dake@google.com> GuidedStepFragment: Fix bug of sub actions focus

Bug 26007404

Change-Id: Ib02b0cb3b8c92b30e822a7e7bb09e728ee82a473
uidedStepFragment.java
uidedStepSupportFragment.java
1db5382081756ee276c1fb88f5ebdbc138b70249 02-Dec-2015 Dake Gu <dake@google.com> GuidedStepFragment: switch to material selector/ripple effect

Use android:attr/selectableItemBackground for highlighting.
Add a customized LinearLayout to support foreground before v23.

Change-Id: Ie7f0448e3782853c20938826560aa137957cec49
uidedStepFragment.java
uidedStepSupportFragment.java
9a49e322d10c1a67860d812352a5ea710843b75e 02-Dec-2015 Dake Gu <dake@google.com> BrowseFragment: fix crash on v17 and setBrandColor

Using theme attribute in drawble crashes before v21.
The brandColor should be set on listView, not the parent.

Bug 25974561

Change-Id: Ifc5e7f8df9e2937d540030e77b3ff03235783f30
eadersFragment.java
eadersSupportFragment.java
1ed9dc77616514e20c51baa67a04adab42e4135e 01-Dec-2015 Dake Gu <dake@google.com> GuidedStepFragment: Support animation of expanding sub actions

Bug 24979518

Change-Id: Ie2d5bf7c25c30db89f6edffd6f71a26e9bca2090
uidedStepFragment.java
uidedStepSupportFragment.java
be6eb618b4ba8a74d69fa04c77c717b1fcbea818 20-Nov-2015 Dake Gu <dake@google.com> GuidedStepFragment: support expand/collapse sub actions.

Refactored GuidedActonsStylist.ViewHolder to be subclass of
RecyclerView.ViewHolder, since GuidedActionsStylistis already
assumes running in RecyclerView and adding scroll listener.
There is no benefit of hiding RecyclerView.

Added support to disable focus right / left in actions list
view. We don't allow focus to the side buttons from sub actions.
Also disable focus left so it won't be interpreted by a bottom
BrowseFragment as open fast lane.

Expand/collapse animation is yet to be added.

Bug 24979518

Change-Id: I4309e63347e5b85b746477f988721fd4fca67943
uidedActionAdapter.java
uidedActionAdapterGroup.java
uidedStepFragment.java
uidedStepSupportFragment.java
e9401be71ad141fe76dc6064c58f8c64054fde8d 21-Nov-2015 Dake Gu <dake@google.com> Reenable the workarond for framework fragment transition NPE

The change was accidentally lost when I was removing the background fragment.
Even without background fragment, still need this workaround for popping
the first GuidedStepFragment.

Change-Id: I30b17fed28abd70170559fe38af6f304dd766a8c
uidedStepFragment.java
uidedStepSupportFragment.java
8e5ae27d6db125867640b672cc97d4a158fdfd48 18-Nov-2015 Dake Gu <dake@google.com> GuidedStep: sync selectorView translationY to focused view

Current implementation assumes the focused view stays at fixed Y location.
This is no longer true for expanded actions.

This CL added support to sync selectorView Y position to focused
view Y position. And due to the conflicts of both IME and scroll changes
selector Y position, added common parent for change Y position for IME.

Simplified selectorView animation implementation.

Fixed bug that FadeAndShortSlide resets transitionY to 0.
Fixed a mismatch of transitionName for guidedactions_root2.
Remove unnecessary transition excludes since the views are already part
of shared element transition.

Tested by changing alignment rule of VerticalGridView.

Change-Id: Id9f676e607aa6e3e9fed14e5b2687e4ad0951f45
uidedStepFragment.java
uidedStepSupportFragment.java
7f43e18536eae40705d5c63830e9edb283f196ad 16-Nov-2015 Dake Gu <dake@google.com> Theme dark version of brand color and guided actions background

Follow the same strategy for defaultBrandColor/colorPrimary, introduce
defaultBrandColorDark/colorPrimaryDark for details action background.
Remove the code that auto-calculate dark version from defaultBrandColor.
Simplify HeadersFragment and FullWidthdetailsOverviewRowPresenter code
by using theme attribute in layout file.

Follow the same naming convension, renamed guidedButtonActionsBackground
to guidedActionsBackgroundDark for the "dark" version.

Change-Id: I05f4ebc0903a3e10b860777c4eb44c4ac5547c9a
uidedStepFragment.java
uidedStepSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
517a5ef1716efc7696a78dc9e0fff0312c47612d 13-Nov-2015 Dake Gu <dake@google.com> GuidedStepFragment Refactoring background handling

Changed the way background works, no longer use a dedicated
BackgroundFragment, make background part of GuidedStepFragment.
This need some tuning to make background view part of
GuidedStepFragment transition (and excluded in some cases).

Switch the default Ui Style to be UI_STYLE_ENTRANCE, allows
app launches GuidedStepFragment without using helper method.

Bug: 25671370

Change-Id: Ic68c0cc796d32df6919593d391a6fcfae99258ae
uidedStepFragment.java
uidedStepSupportFragment.java
4705eed4421d3b00923b56062765206dea21387e 13-Nov-2015 Dake Gu <dake@google.com> GuidedStepFragment: Allow app to override Ime Action text

Change-Id: Idcc713472639bacb9767ee6d64de1bf6452b272b
uidedActionAdapter.java
11cb62de8bfc6b5b6d22811ad12a1e60451b82be 11-Nov-2015 Dake Gu <dake@google.com> GuidedStep: support checkbox and use standard android drawable

Introduce a special checkset id for checkbox.

Current implementation uses non-standard View and animation resource for
radio. Switch to use standard android checkbox/radio defined in the
theme.

Bug 25631132

Change-Id: I0c9356a624dfd9b3b2dfc38be2b1dcb3eea125b7
uidedActionAdapter.java
43e10e99e55c1c2eeca31fa13e9cc84160850f59 09-Nov-2015 Dake Gu <dake@google.com> GuidedStepFragment: allow move focus to button action list

Add a GuidedActionAdapterGroup to maintain single ImeOpen flag and
control next focus after editing. This would allow focus move
between different action lists.
Code refactoring moves editing logic from GuidedActionAdapter into
GuidedActionAdapterGroup.

Don't openIME in onKeyUp event, this causes timing issue that onKeyUp
can be fired on a different view of keyDown. Move openIME into onClick
event.

Remove references to Adapter objects and view objects after Fragment
onDestroyView(), fix potential View leaking.

Change-Id: If89a7bf67bd62ff02d3ac2a2c64a1164d3fa76bd
uidedActionAdapter.java
uidedActionAdapterGroup.java
uidedStepFragment.java
uidedStepSupportFragment.java
0b3811639349fd5791a3f330b23b7e4b1c099c27 06-Nov-2015 Dake Gu <dake@google.com> GuidedStepFragment: morph action panel size change in fragment transaction

Use shared element transition to morph between single action panel
and double action panel. This requires different view Ids and
transitionNames for two action panels in order to match shared element
views correctly.

b/24979563

Change-Id: I507c0329071317d0c1282f8892c0f4901d72c245
uidedStepFragment.java
uidedStepSupportFragment.java
a97810e4e2ec2552f8247ebdadf323dae70d9e3f 04-Nov-2015 Dake Gu <dake@google.com> GuidedStepFragment: multiple fixes:

1. Handle Keyboard ENTER key correctly. Go through the same logic
that press enter icon in soft IME.

2. Add theme attribute for actions elevation value where SetupWraith
need override as 0dip

3. Make EditText not focusable if action is not editable.

Change-Id: I0e77487ba655c2d4ab729f180fe057b28e19e7e2
uidedActionAdapter.java
uidedStepFragment.java
uidedStepSupportFragment.java
0c047fba6b8acc3154830f12c0d09bd5e8df0f55 04-Nov-2015 Dake Gu <dake@google.com> Merge "GuidedStepFragment: fix the unfocus alpha being overriden." into mnc-ub-dev
19c1329def8d277c914cba46540d24bfde58b2a4 04-Nov-2015 Dake Gu <dake@google.com> GuidedStepFragment: fix the unfocus alpha being overriden.

A regression of fixing b/20759626: if onAnimateItemFocused()
changes item alpha, it will be overriden by animator created by
onAnimateItemPressed(false).

Introduce onAnimateItemPressedCancelled() which sets alpha without animation.
Let onAnimateItemFocused() be executed after onAnimateItemPressedCancelled().

Bug 20759626

Change-Id: I61d100d93c47afa1ad9dc6c070dc9477eb092dc9
uidedActionAdapter.java
d14724d33d61385c27a00c31bbc67ad8eeb57b3c 31-Oct-2015 Dake Gu <dake@google.com> GuidedStepFragment: two columns actions

Duplicated action methods into another copy.

The weight of actions width is controlled through theme:
guidedActionContentWidthWeight, guidedActionContentWidthWeightTwoPanels.
When there is one column: actions take 40% of screen width.
When there are two columns: actions take 50% of screen width.

Two actions backgrounds are controlled through theme:
guidedActionsBackground, guidedButtonActionsBackground.

b/24979563

Change-Id: I96486921c39693771c243b18ef9897aa750c65cb
uidedStepFragment.java
uidedStepSupportFragment.java
e2f7aef2f45dcdfe116995b64f9a7be5c68a36a1 30-Oct-2015 Dake Gu <dake@google.com> GuidedActionsStylist: support different viewTypes and LayoutIds

Bug 25387934

Change-Id: I1ebc652b2de4d162284e111fe2a095ab3d37158d
uidedActionAdapter.java
25e01ca9bf8fb694671ab5dbd85a4ed4e94b975a 30-Oct-2015 Dake Gu <dake@google.com> Merge "GuidedStep: support popping multiple entries transition" into mnc-ub-dev
fd23a2faf77c66a405a2b2974f719041feda9177 30-Oct-2015 Dake Gu <dake@google.com> GuidedStep: support popping multiple entries transition

When finishGuidedStepFragments() is called, apply the
UI_STYLE_ENTRANCE on current fragment so it will run the
slide two sides returnTransition instead of slide one side
returnTransition.

Included a workaround of b/25375640

Change-Id: Ia8b15802a8e7a0c6f0466d1d5e6c8760c67483d0
uidedStepFragment.java
uidedStepSupportFragment.java
7af424644dc8daae5298a5ca2f655770270366fe 29-Oct-2015 Dake Gu <dake@google.com> Make GuidedAction extensible, add focusable attribute

Change-Id: I043c683f2e53aaa2bd923f1ca8bf09f9af8aa8d1
uidedActionAdapter.java
37d4ed50ac446f9f8ad033fe56888dd6eb602d4d 27-Oct-2015 Dake Gu <dake@google.com> Add convenient GuidedStepFragment finish methods

finishGuidedStepFragments() would either finish activity
or pops all GuidedStepFragments if was launched on top
of other content. This made it possible that fragment
does not care about whether it's launched in separate
activity or on top of other content when it handles "finish"
action.

popBackStackToGuidedStepFragment() would pop several
GuidedStepFragments from stack.

Also fixed a bug of losing focus to content below
GuidedStepFragment when switch to next action.

Change-Id: I4345bfe9e4dac73b915f0f6318ce19d90098b45a
uidedActionAdapter.java
uidedStepFragment.java
uidedStepSupportFragment.java
7f8e46a9b23feffba396200fcb48bcbce32b00a1 21-Oct-2015 Dake Gu <dake@google.com> GuidedStepFragment: undo pressed animation when losing focus

Bug 20759626

Change-Id: Ie13a6c14e54f8f708e1133be3af69ea9079b42c0
uidedActionAdapter.java
c1741246af607f6be2389056da0182c40f938348 17-Oct-2015 Dake Gu <dake@google.com> GuidedStepFragment: lots of editing improvements

1. Support editing description
2. add onGuidedActionEditedAndProceed() to control
target action to focus on when IME finished. Currently
we always focus to sibling action regardless whether the
input is correct or not.
3. add notifyActionChanged() to update action item ui
4. Dim alpha of title when disabled

Bug: 24979559
Bug: 25019347

Change-Id: I3258681d27761a3892f67f528539110bc7640c88
uidedActionAdapter.java
uidedStepFragment.java
uidedStepSupportFragment.java
8403619efebe94666c0615c3fc85080a303acf80 14-Oct-2015 Dake Gu <dake@google.com> leanback: fix NPE of transition listener and clean up

We actually can not support setListener(null) because transition
class only provides addListener() and removeListener(). Details fragment
adds a transition listener with null callback to the sharedelemententer
transition. The bug was not discovered because leanback theme always
specifies the sharedElementReturn transition. When sharedElementReturn
transition is not specified. When pressing back, the null callback listener
of sharedElementEnter transition are cloned into sharedElementReturn transition.

Now we switch to use addListener/removeListener and change
TransitionHelper methods to static.

Bug 24202013

Change-Id: I7cc918013e4a357a59987ea9727bc03c15cb0097
aseFragment.java
aseSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
uidedStepFragment.java
uidedStepSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
ce4c2014042fe6e4723bab30741039848adcf4be 09-Oct-2015 Dake Gu <dake@google.com> leanback: some javadoc fixes

Bug 24804296
Bug 24806837
Bug 24807801
Bug 24806081
Bug 24804939

Change-Id: Ie611c6c663335628ba98c2571bfda494e80f47b3
uidedStepFragment.java
uidedStepSupportFragment.java
laybackControlGlue.java
laybackControlSupportGlue.java
5356bc373aa2c51ff7dac08058e7ae5e53e20509 05-Oct-2015 Dake Gu <dake@google.com> GuidedStepFragment: allow editing a different text than title

Added getEditTitle() and setEditTitle(), this is the String being
edited instead of title.

Bug 24673827

Change-Id: I1501c105ab1ce6982af0d111ba1506292449a6f3
uidedActionAdapter.java
bd0afce433ec8c219627522a5233d61bf27f7397 01-Oct-2015 Dake Gu <dake@google.com> Dont crash if no container for background fragment

Bug 24570987

Change-Id: I67c759f9c64080671832ee6e3fe3ec9097d632df
uidedStepFragment.java
uidedStepSupportFragment.java
7f3d7b01db6056a4061a8dc52b4c6dea8b4a1881 30-Sep-2015 Dake Gu <dake@google.com> Add PlaybackControlGlue for support v4 fragment

Change-Id: I301956d46baacb45b351ee0f1d01a49ead76c9e2
laybackControlSupportGlue.java
2be7e6dbeec0a7c9fe1453cf6fd4f75a8c1c69f6 25-Sep-2015 Dake Gu <dake@google.com> GuidedStepFragment: slide from both side for UI_STYLE_ENTRANCE

Simply check if the center of view in left to center of sceneRoot,
then slide to the left, otherwise slide to the right.
The position needs to be saved in captured transition values.

b/21504593

Change-Id: I310b5c998a4f763c926f67086ca065b30d2a52ba
uidedStepFragment.java
uidedStepSupportFragment.java
b749047cd5b6e0aa4514e5f17c053a256e20e1ca 24-Sep-2015 Dake Gu <dake@google.com> Workaround for NPE inFragment.mContainerId

The current workaround is not complete for opening guided step fragment
on existing fragment. Added protection for both container id.

Tested on Emulators of API22 and API23

Bug 24375784

Change-Id: I2ae73ea50bde2bee0e6c8f1a855e4f993ad5068b
uidedStepFragment.java
uidedStepSupportFragment.java
47d21fb23abd7099f1bcfc08365ec9f946f0f6d8 23-Sep-2015 Dake Gu <dake@google.com> Fix doc build of autogenerated GuidedStepSupportFragment

Change-Id: I15e283baca31581e5acfe0b23d0bf5074bc71560
uidedStepSupportFragment.java
4e9bfff0d62ddb50391fecefdf8d98d59fb21387 23-Sep-2015 Dake Gu <dake@google.com> Revert "Revert "Generate GuidedStepSupportFragment""

This reverts commit 443ba2e86253206c52d83678fb806763c6eb6f06.
uidedStepSupportFragment.java
42ae32908312e63b474963fef789017c75feae37 23-Sep-2015 Dake Gu <dake@google.com> Revert "Revert "GuidedStepFragment transition and new features""

This reverts commit d7b834d0339476a8867c6d14e67ed9a08d314e75.
uidedStepFragment.java
4935f2739238e9abba8fa792e97a33d6fe04beeb 21-Sep-2015 Dake Gu <dake@google.com> Merge "Revert "GuidedStepFragment transition and new features"" into mnc-ub-dev
d7b834d0339476a8867c6d14e67ed9a08d314e75 21-Sep-2015 Dake Gu <dake@google.com> Revert "GuidedStepFragment transition and new features"

This reverts commit ce0bd5abebf662db7d8b42468009b227715698ec.

Change-Id: I4ee14b2e4af37f707f6232fa0a5a1cb149c51540
uidedStepFragment.java
443ba2e86253206c52d83678fb806763c6eb6f06 21-Sep-2015 Dake Gu <dake@google.com> Revert "Generate GuidedStepSupportFragment"

This reverts commit 8d02cf0ae050cbf990b4537c5de0d26d8a30c05f.

Change-Id: I600a064d000a121a7dff807912253970b5d9b0c9
uidedStepSupportFragment.java
8d02cf0ae050cbf990b4537c5de0d26d8a30c05f 04-Sep-2015 Dake Gu <dake@google.com> Generate GuidedStepSupportFragment

Tested with SupportLeanbackDemos

Bug 21504593

Change-Id: Ie3ac4c02d01a9d9d88e0d11788e8d04e759cd530
uidedStepSupportFragment.java
3b2e3fdb89c30fb5f807dcbf8321876b705837d2 21-Sep-2015 Dake Gu <dake@google.com> Merge "GuidedStepFragment transition and new features" into mnc-ub-dev
ce0bd5abebf662db7d8b42468009b227715698ec 01-Sep-2015 Dake Gu <dake@google.com> GuidedStepFragment transition and new features

This is a re-iterate of use cases of GuidedStepFragment, new
features including allowing app to add GuidedStepFragment
on top of other content with a covering background fragment;
using activity return transition to slide out content.

Switched from fragment animation to fragment transition. Using
transition will allow us to clone a support version of
GuidedStepFragment that is impossible under fragment animation.

Clearly defined three use cases:
1. When GuidedStepFragment is launched in empty activity.
2. When GuidedStepFragment is launched on top of other content.
3. When GuidedStepFragment is replacing exisitng GuidedStepFragment.

For case 2, we need background to cover bottom content.
Three cases has different transitions settings. Case 1 does not
need Fragment enter transition because that's handled by activity
transition.

Bug 21504593
Bug 23976865

Change-Id: Id7a49d8706fb4b6d21f5f93db5ba9b21238b2c5e
uidedStepFragment.java
255e7911fa9ef664618b74bb9959e00479a9bec1 08-Sep-2015 Dake Gu <dake@google.com> Fix BrowseFragment NPE and add Fragment tests

Fix NPE because fragment view is destroyed in next frame of
launching header transition.

BrowseSupportFragment tests are autogenerated from BrowseFragment
tests.

Bug 23415833

Change-Id: Iefc469d8aaac781600214b47526d99d92f272b4d
owsFragment.java
owsSupportFragment.java
c738357d90fcc7876415ee16d7fe935510229d4a 26-Aug-2015 Jerome Poichet <jpoichet@google.com> Exposing CompletionInfo API on SearchFragment

CompletionInfo have both label (displayed text) and text (value actually
used when completing), so in order to allow applications to add "icons"
to distinguish between different type of search suggestions, expose
CompletionInfo directly.

b/23348955 | Allow annotating different types of search completions

Change-Id: Ib23da2109f49e9e95941d02a469d4372d78fa130
earchFragment.java
earchSupportFragment.java
60751b437df43b5c6b72dd3fc9f4c341a707c8d4 21-Aug-2015 Dake Gu <dake@google.com> Details entrance transition does not slide in rows...

unless used with shared element transition.

Details fragment calls rowsFragment.onTransitionStart() which disables
layout of vertical grid view. Result is that details row view never
gets a chance added to vertical grid view. Until we call
startEntranceTransition(), after entrance transition finishes,
onTransitionEnd() it will reenable the layout.

Upon reenable the layout, sharedelement transition helper will
bind row to view and start a delayed activity transition and slide
rows in. That's why the rows only slide-in with shared element
transition.

The fix is quite straightforward using same logic of BrowseFragment/
VerticalGridFragment.

Bug 23397234

Change-Id: I79e92e3f435abe97e30fcac2ddebce1a2a05e6e4
etailsFragment.java
etailsSupportFragment.java
22ba669b080964291d922a196998ff3d8f63c24f 19-Aug-2015 Dake Gu <dake@google.com> am 40b95b79: am 87dc4f73: am 4a4e0872: fix NPE of Fragment destroyed before transition ends

* commit '40b95b7930956ae9a939eadb8bef8ee27d4344b5':
fix NPE of Fragment destroyed before transition ends
4a4e0872bdf0548188e81740eb62085215e7f976 19-Aug-2015 Dake Gu <dake@google.com> fix NPE of Fragment destroyed before transition ends

This is a regression.

Bug 23331423

Change-Id: Ifa9935f819413b20aad2b9a0b38233dd0d7edbae
aseRowFragment.java
aseRowSupportFragment.java
786ba352397f44022617411936515fc9eb28d23f 18-Aug-2015 Dake Gu <dake@google.com> Staggered transition support for VerticalGrid

Bug 23319507

Change-Id: Ib86761eccd06bdbe9e2b0712a12a4d2507c5c0db
erticalGridFragment.java
erticalGridSupportFragment.java
6813fd3b732156a921a57cf18ee27040a8c5c99f 18-Aug-2015 Johan Gardell <gardell@google.com> Transition from expanded READ MORE on Play Movies new DetailsActivity

The requestFocus call removed in this CL
caused the returning transition to
break when returning from our expanded
read more-view to the new DetailsActivity
on Play Movies.

Bug: 23134332
Change-Id: I65c125cfc29142566ea3f55d43879f5bb8801c5f
etailsFragment.java
etailsSupportFragment.java
ac07e9d12b10138d4a449522f7082a40f18861e2 08-Aug-2015 Kris Giesing <kgiesing@google.com> Allow action item layouts that do not supply editable actions.

Fix cast operations that were throwing exceptions; make the Leanback
edit text object public to allow reuse.

b/23039755

Change-Id: Id9ceda139efeb352210831dbed0f1dfbbcccd76a
uidedActionAdapter.java
16233ade5b051564ff297ee48c172bf7dec22440 06-Aug-2015 Kris Giesing <kgiesing@google.com> Merge "Add support for editable actions to GuidedSteps" into mnc-ub-dev
4158705d3f0751d419a08c47a659abeae5f6c196 23-May-2015 Kris Giesing <kgiesing@google.com> Add support for editable actions to GuidedSteps

b/21403345

Change-Id: Id46c94e237f461fcb96439c1dea033e3c2f2a1c4
uidedActionAdapter.java
uidedStepFragment.java
e71207666a1a915e5a5bdf7503bd936f4d87b48b 22-Jul-2015 Dake Gu <dake@google.com> Unregister ItemBridgeAdapter from ObjectAdapter

This is a rare use case: if same ObjectAdapter is reused
across multiple Fragments and backstack is not supported.
(Activity switch fragment showing same data?)
We must remove ItemBridgeAdapter from observer list of
the long existing ObjectAdapter.

Fragment should in theory to be self restoreable for example
when BACK is supported. So ObjectAdapter should have same
lifecycle as RowsFragment. This fix isnt necessary in
these typical cases.

But it is a safe fix.

Bug: 22642503

Change-Id: Id0b40a0c1b022d0ec534f6281fb38156a1436c06
aseRowFragment.java
aseRowSupportFragment.java
52aff68afe51c82a416701db4ac8c7a8d1a5695b 22-Jul-2015 Dake Gu <dake@google.com> am 756d7b63: Merge "leanback: prevent RV update children during transition" into lmp-mr1-ub-dev

* commit '756d7b63dc1e9d9b1f5674882fb3717cd10f08db':
leanback: prevent RV update children during transition
902e68c114f86e8002516ff3f0248b722b6c5711 29-Jun-2015 Dake Gu <dake@google.com> leanback: prevent RV update children during transition

Introduce onTransitionPrepare() which is earlier than onTransitionStart().
Now it's three stages:
- onTransitionPrepare() stops animation, scroll, user interaction but
allows RV change without item animation.
- onTransitionStart() further stops RV layout, prevent any child change until
onTransitionEnd() resumes it. Adapter change is postponed.
- onTransitionEnd() restores everything.

Fixed a bug when focused header view is re-binding, select level
gets assigned to 0.

b/22067316

Change-Id: If3e05e0bffe8b1b3d67e424989142dc9b69cccdb
aseFragment.java
aseRowFragment.java
aseRowSupportFragment.java
aseSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
owsFragment.java
owsSupportFragment.java
24502efdf76165e8bd35044e44737de8c6efbe46 05-May-2015 Dake Gu <dake@google.com> am a16d7278: Merge "New details fragment design" into lmp-mr1-ub-dev

* commit 'a16d727807a23ac7de1c94c946555fb2e42ac8d1':
New details fragment design
0246318f27a905a31df5a8af445cfe67d31dfb68 15-Apr-2015 Dake Gu <dake@google.com> New details fragment design

Added new FullWidthDetailsOverviewRowPresenter and changed
DetailsFragment.

Under new design, details fragment is responsible to setup
alignment for each row.

Details fragment is also responsible to change the view state
of row based on selected position and selected sub position.

There are three states for the overview row:
STATE_FULL: covers full width and full height(may be customizable).
STATE_HALF: has empty space in the top to look through.
STATE_SMALL: a banner style like the old Details.

The layouts for different states are defined in the new
FullWidthDetailsOverviewRowPresenter.

Made the logo view presenter exposed and replaceable.

Decouple SharedElementHelper from FullWidthDetailsOverviewRowPresenter
to make it possible to customize shared element transition.

For the apps: they only need switch to use the new presenter.
The old DetailsOverviewRowPresenter is still supported at this point
but might be removed in the future.

Support customize or disable title of DetailsFragment.

Fixed api/current.txt: Hide GridLayoutManager.

Change-Id: Id53aa5a185f132c8d74c95042595f223371fa708
aseRowFragment.java
aseRowSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
owsFragment.java
owsSupportFragment.java
674cb8b91bec1a1de9c8d3482e1044cfe481846f 28-Apr-2015 Kris Giesing <kgiesing@google.com> am 6b28bed7: Merge "Fix variable reference errors related to check groups." into lmp-mr1-ub-dev

* commit '6b28bed7db5c19985275b33ffeba3f27e9118cc4':
Fix variable reference errors related to check groups.
6b28bed7db5c19985275b33ffeba3f27e9118cc4 28-Apr-2015 Kris Giesing <kgiesing@google.com> Merge "Fix variable reference errors related to check groups." into lmp-mr1-ub-dev
633f924bac2b143ae67f86eace4d5068f2acab5e 28-Apr-2015 Kris Giesing <kgiesing@google.com> Fix variable reference errors related to check groups.

Checkmarks were incorrectly turned off for the clicked view rather
than all views in the current group; checkmark fade used the wrong
animation constant.

b/20545155

Change-Id: I3d93149708f87950da9ce818a84c48d08dea2b77
uidedActionAdapter.java
3998e33b723e04874bae46b457674e142ca3c3e0 24-Apr-2015 Craig Stout <cstout@google.com> am 87480a3b: Merge "Support persistent focus on the playback controls row." into lmp-mr1-ub-dev

* commit '87480a3bc0b3b6ccafc934939a9b6e2ebfaf5f1f':
Support persistent focus on the playback controls row.
d30b6d18e1c6b988f75d76c50dbec7199386ce9b 15-Apr-2015 Craig Stout <cstout@google.com> Support persistent focus on the playback controls row.

b/20148117

Change-Id: I4973f6ad2b5b450ea850939a47d1b8f73ea11f54
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
780757bd2c0d51a1395f425adbbca83fe00edc23 18-Apr-2015 Craig Stout <cstout@google.com> am 13b4ae81: Merge "Don\'t set view clicked listener unless app provides one." into lmp-mr1-ub-dev

* commit '13b4ae8170d083f143f26fba739c85031b283315':
Don't set view clicked listener unless app provides one.
4c353487a7c006e6bb67bf31a734ae271ef096b0 17-Apr-2015 Craig Stout <cstout@google.com> Don't set view clicked listener unless app provides one.

b/20324421

Change-Id: I89f593b0fbd8db01fc31e5701c18739950886d9c
earchFragment.java
earchSupportFragment.java
c15b9b8f9beb27b22e73ba88a3a1af2837bea79d 14-Apr-2015 Craig Stout <cstout@google.com> am 2877f3ad: Merge "Fix NPE if release called before background animation finishes." into lmp-mr1-ub-dev

* commit '2877f3add24f8bf8df4ce15f2674cb9c5bf1faba':
Fix NPE if release called before background animation finishes.
f988bc054a2e0ccefacd8c76cbcf47a1ab88e6b1 14-Apr-2015 Craig Stout <cstout@google.com> Fix NPE if release called before background animation finishes.

b/20217055

Change-Id: I51cb21ea556f5008108e45c05c8891a4443cb3a1
ackgroundManager.java
74fe4082496a9d3da0dc0a560ae4c41a40b84e40 07-Apr-2015 Kris Giesing <kgiesing@google.com> am aa36620c: Merge "Minor change to JavaDoc" into lmp-mr1-ub-dev

* commit 'aa36620ca8b256584fdb69a8f97a3ac3b1de56a9':
Minor change to JavaDoc
751fc58ffff0614288c610fbd0767969abb9365f 06-Apr-2015 Kris Giesing <kgiesing@google.com> Minor change to JavaDoc

Change-Id: I9c6e892520171493fc8a9c0a8685d551ad2af222
uidedStepFragment.java
1a264264a128f012d123f73cb1e4bf000b53fad0 03-Apr-2015 Craig Stout <cstout@google.com> am 363191eb: Fix missing theme drawable issue.

* commit '363191eb688c10be4f8ffe10c41da1664168d1fe':
Fix missing theme drawable issue.
363191eb688c10be4f8ffe10c41da1664168d1fe 03-Apr-2015 Craig Stout <cstout@google.com> Fix missing theme drawable issue.

The same drawable instance should not be contained in multiple LayerDrawables
simultaneously. Cache the theme drawable state instead.

b/19991532

Change-Id: Ib7dbbadcd0c2add50e078840e54a92bcfd1fccff
ackgroundManager.java
5df0069e15cf2ecdc97273c5190748fac9c8a66b 02-Apr-2015 Craig Stout <cstout@google.com> am f36902ae: Fix infinite recursion bug.

* commit 'f36902ae811a12506f54faa261cb653f45a27612':
Fix infinite recursion bug.
0670f090a011e864bd726784c2a85333bf2ae7fb 02-Apr-2015 Craig Stout <cstout@google.com> Merge commit '870246af'

Change-Id: Ia2e3cc2d15ff6b3d3b88a3f1a6e822374df67bd7
f36902ae811a12506f54faa261cb653f45a27612 02-Apr-2015 Craig Stout <cstout@google.com> Fix infinite recursion bug.

b/20046447

Change-Id: Ibf8daeeadf41131e69e7bb6e1a4da42203e698a2
ackgroundManager.java
870246affed5ced2eb69e0a0b9ba460c7d17f80f 02-Apr-2015 Craig Stout <cstout@google.com> Merge "Javadoc polish." into lmp-mr1-ub-dev
a00bada00bff4a58436a39472ab14ccb7a8f619d 31-Mar-2015 Craig Stout <cstout@google.com> Javadoc polish.

Includes new package level javadoc for:
android.support.v17.leanback
android.support.v17.leanback.app
android.support.v17.leanback.widget

b/19007191

Change-Id: Id1e5d55eabbf37c0420e6e4c73abe3d4f1aabee1
ackgroundManager.java
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
owsFragment.java
owsSupportFragment.java
earchFragment.java
earchSupportFragment.java
ackage-info.java
5f1495c5e04580b8b8d79450e528c284d07f6949 02-Apr-2015 Craig Stout <cstout@google.com> am 7d860667: Merge "Add BackgroundManager api for specifying the theme drawable." into lmp-mr1-ub-dev

* commit '7d86066752e22390dcea30efeceabb56564efd86':
Add BackgroundManager api for specifying the theme drawable.
459af78be7413b944e2ff0a6f231a8b7b5de3aad 30-Mar-2015 Craig Stout <cstout@google.com> Add BackgroundManager api for specifying the theme drawable.

Allows an app to avoid setting this drawable in the theme and thereby
skip the overhead of decoding the image when the activity starts,
which now happens commonly because leanback recommends different
themes for browse and details.

b/19991532

Change-Id: I0f5c73d91efd35a09c76d1bf87a184d1deb47f09
ackgroundManager.java
597df6ae74efa5ef9d2690b4eb164ff0000a3913 20-Mar-2015 Craig Stout <cstout@google.com> More BackgroundManager improvements.

Fix another case of flashing when returning from a released state.

Reduce BackgroundManager impact on transitions (see comments for details).

b/19689219

Change-Id: I43c63cd599eab84c78bfa3161f2a5c23225b452b
ackgroundFragment.java
ackgroundManager.java
ackgroundSupportFragment.java
8db4363e7b227c5d908de261890824e15bb1761c 25-Mar-2015 Craig Stout <cstout@google.com> am 4cccbaec: Merge "More BackgroundManager improvements." into lmp-mr1-ub-dev

* commit '4cccbaec5f851c429a38c23c00d3fed742e6a048':
More BackgroundManager improvements.
f684b94c5f316e9735abc298e00c3f61642b821e 20-Mar-2015 Craig Stout <cstout@google.com> More BackgroundManager improvements.

Fix another case of flashing when returning from a released state.

Reduce BackgroundManager impact on transitions (see comments for details).

b/19689219

Change-Id: I43c63cd599eab84c78bfa3161f2a5c23225b452b
ackgroundFragment.java
ackgroundManager.java
ackgroundSupportFragment.java
422812233b44ff358e460c0c884b55f87f5d4e8b 20-Mar-2015 Craig Stout <cstout@google.com> am ca342c28: am bf3531cf: am 2590c397: Fix more BackgroundManager glitches.

* commit 'ca342c284db250d65441cc0bf2db72a86e540f95':
Fix more BackgroundManager glitches.
2590c39739945451f80dcf8667709b93293fc8bc 19-Mar-2015 Craig Stout <cstout@google.com> Fix more BackgroundManager glitches.

Must implement getAlpha for background fade in transition.
Must not cache drawable wrappers or they'll be stale when mutate is called.

b/19689219

Change-Id: Id36910e243e205c56b913f57fa3197110819007d
ackgroundManager.java
db79c2c68f694fbbd821a2e18ef3bd229c52fe62 19-Mar-2015 Kris Giesing <kgiesing@google.com> am aad0e6f6: am 7e69f0b3: am 6ef613ed: Merge "Initial implementation of GuidedStepFragment" into lmp-mr1-ub-dev

* commit 'aad0e6f6005d8be013d4e616ab367af5726027cd':
Initial implementation of GuidedStepFragment
6ef613edd296c9daccceb258f94bad926384f325 19-Mar-2015 Kris Giesing <kgiesing@google.com> Merge "Initial implementation of GuidedStepFragment" into lmp-mr1-ub-dev
9db834f80dc832f58ccd4d1814142dee8533f2b2 19-Mar-2015 Craig Stout <cstout@google.com> Merge commit '80e69471'

Change-Id: Ifdb8ad7580c80f09cd55f6fefb712caca9b6b4aa
d6c1bec6bd003158e79da4c945ee57f915336e12 11-Mar-2015 Craig Stout <cstout@google.com> BackgroundManager fixes.

- Fix failure to fade out when a null bitmap/drawable is provided.
- Fix flashing caused by activity transition animating alpha on the window background.
The layer drawable must apply its alpha to the layer composition of the child drawables.
- Fix case where BM was released then on resume the app provides a background before
the background fragment is resumed.

b/19699049
b/19689219
b/17924621

Change-Id: I6d246badaf1d76682e602c2ba382d44290357665
ackgroundManager.java
ebd3d9078dbaebd10a9506ca086435eb63e8a2d2 17-Feb-2015 Kris Giesing <kgiesing@google.com> Initial implementation of GuidedStepFragment

b/18935698

Change-Id: I413f04bcac739768f79e22ab6b518399302a0d8b
uidedActionAdapter.java
uidedStepFragment.java
307001a6b0cbb2f48cf4e27c22dd585aaecd0117 13-Mar-2015 Craig Stout <cstout@google.com> am 6d690623: am 828ccfbe: am 223fd8dd: Merge "Fix NPE when RowPresenter is shared between fragments." into lmp-mr1-ub-dev

* commit '6d6906238addf396af0df3c26976baa5b45d82fd':
Fix NPE when RowPresenter is shared between fragments.
3a5038bd0fefa5628a31a21422bf2126c53472a9 12-Mar-2015 Craig Stout <cstout@google.com> Fix NPE when RowPresenter is shared between fragments.

View clicked and selected listeners are now members of ViewHolder,
not RowPresenter.

b/19709636

Change-Id: Iabfe09b721ec97de863c4387ed72339494ddbb70
owsFragment.java
owsSupportFragment.java
8676c90089e5713ae8d3e2c4fa7518acc488a180 12-Mar-2015 Craig Stout <cstout@google.com> am d993a5fb: am 47cbd9f9: am f01172a8: Fix docs.

* commit 'd993a5fbc4e9ff562cf38abe87ace087aca2b813':
Fix docs.
9475c273add480a260ed60914b363a3f847e1a03 12-Mar-2015 Craig Stout <cstout@google.com> Merge commit '1fcb45fa'

Change-Id: Ia1f09b8ba8bc49256d01e8447af71b72b4904ef7
f01172a8028e20a2d86c71c1024fbc973e67afa4 10-Mar-2015 Craig Stout <cstout@google.com> Fix docs.

Also sync BrandedSupportFragment.

b/16029942

Change-Id: Ib74ade93895ef18fca599ea62a0d31555c4412f6
randedFragment.java
randedSupportFragment.java
e7246ef136ed686d8caf339d4d1fd8e37b499c6a 24-Feb-2015 Craig Stout <cstout@google.com> Broaden support for title/branding.

Unhide TitleView and BrowseFrameLayout.
Refactored branding fragment apis into base class BrandedFragment.
Browse, details, vertical grid are now BrandedFragments.
Create TitleHelper for devs managing TitleViews without BrandedFragment.
Ensure moving toward 'end' from TitleView passes focus correctly.

b/16029942

Change-Id: I5f48e404694997b359cbed579735544e79f6319b
aseFragment.java
aseSupportFragment.java
randedFragment.java
randedSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
70acb0c19be3831a2080e4f902324de16bfbf62e 04-Mar-2015 Tor Norbye <tnorbye@google.com> Annotate support library with @ColorInt, @CallSuper, etc

Change-Id: Ifa25a628f89a07d3903cd71eb1c3639297fdf722
ackgroundManager.java
rowseFragment.java
rowseSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
8df88a1ead9ea62456fc3bbda41657ccf61d5721 26-Feb-2015 Dake Gu <dake@google.com> Revert "Revert "Remove deprecated OnItemSelectedListener and OnItemClickedListener""

This reverts commit ee73a5bfd4d2460a93a9afb9d1bfce10ff875300.

Change-Id: If6b926c093a8254dca02d4ccac4bfaefca85bc81
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
owsFragment.java
owsSupportFragment.java
earchFragment.java
earchSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
ee73a5bfd4d2460a93a9afb9d1bfce10ff875300 26-Feb-2015 Chris Banes <chrisbanes@google.com> Revert "Remove deprecated OnItemSelectedListener and OnItemClickedListener"

Fix's all the builds.

This reverts commit 628f94f0d3293372bc23bea1411e687dfe508753.

Change-Id: I17e677c513da0ea36f50b1ab5b73e927d73f0598
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
owsFragment.java
owsSupportFragment.java
earchFragment.java
earchSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
628f94f0d3293372bc23bea1411e687dfe508753 26-Feb-2015 Dake Gu <dake@google.com> Remove deprecated OnItemSelectedListener and OnItemClickedListener

Bug 19514090

Change-Id: I690674d506202bc5513b5fb4cc0eaf3bcddb04f5
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
owsFragment.java
owsSupportFragment.java
earchFragment.java
earchSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
c149abce7f8a46f7c54211b5f97c5cd9ee729357 24-Feb-2015 Dake Gu <dake@google.com> BackgroundManager: fix ThemeDrawable leak

Each activity gets different copy of Bitmap for ThemeDrawable.
So we should free theme drawable during release(). This wasn't
a problem before when all activities use same Leanback theme
and we weak-reference-cache last theme drawable by id. In latest
leanback lib, browseactivity and detailsactivty are using
different themes, the weak-reference-cache doesnt kick in.

Move ThemeDrawable initialization into lazyInit().

Little cleanup: no need to hold mThemeDrawable and never use it.

Bug 19494763

Change-Id: I1093b88c3990c20fa5b8f5695c1e0368450a589e
ackgroundManager.java
7ae6200550f3c4e02054a0290f46bb1444a5a0d0 23-Feb-2015 Craig Stout <cstout@google.com> Merge "Handle KEYCODE_ESCAPE like KEYCODE_BACK." into lmp-mr1-ub-dev
c89266e21f0269aecd5df2dc2a39f6f0cf11a58e 23-Feb-2015 Craig Stout <cstout@google.com> Handle KEYCODE_ESCAPE like KEYCODE_BACK.

b/18517374

Change-Id: I056e5b843ad3acfa4cb0eb1dbddf24cca70258a1
laybackControlGlue.java
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
76b3441abcfcf1291d865fd4a204c103b637027c 20-Feb-2015 Dake Gu <dake@google.com> DetailsFragment: setOnItemViewSelectedListener after view created

b/18926118

Change-Id: Ib19acae979827ada2624f49daa774907eadcd8c5
etailsFragment.java
etailsSupportFragment.java
6834e168743e839d4df1bc49ba625cfbb74e1045 23-Feb-2015 Dake Gu <dake@google.com> Merge "Do not scroll to non-focusable item" into lmp-mr1-ub-dev
77b17ebed6d1f8488b150b25e2b6754971480cae 10-Feb-2015 Dake Gu <dake@google.com> Do not scroll to non-focusable item

Refactoring to use same PendingMoveSmoothScroller for both
staggered case and non-staggered case (RowsFragment vertical).
The problem of position based linearsmoothscroller is that
it calculates target position before the view is created;
so we may scroll to a target position that is not focusable.
Now using PendingMovementSmoothScroller, added a callback
consumePendingMovementBeforeLayout() where we skip the view
that's not focusable.

Allow dispatchChildSelected() during scroll pass, so we can append
an item with selected state without running another layout pass if
we apply select status after laid out it. This requires a change
in StagggeredGrid to make data structure consistent before
dispatchChildSelected() call. To avoid excessive dispatchChildSelected,
we postpone dispatchChildSelected() if a PendingMoveSmoothScroller is
still running. We only dispatchChildSelected() event on the final target.

Fixed a problem of unbind RowView does not apply animator end value.

Added TestCases

Bug: 19283027

Change-Id: I5cab61420514b5d0141387aa13a18d623b38536f
owsFragment.java
owsSupportFragment.java
46443cb5b092f1d9156342645088eead9da026f6 13-Feb-2015 Dake Gu <dake@google.com> Allow app runs without theme/style.

1. Dont directly refer theme attribute in layout xml, this
causes attribute not found error if style is not specified.
In particular, fixed couple places layout defines "paddingTop" using
theme attribute.

2. specify "wrap_content" in layout xml for list row, so it
will work without style. fixed a bug that getDimensionPixelSize()
does not work for "wrap_content" in layout, using
getLayoutDimension() instead.

3. specify "clipPadding=false" in layout xml, so it wont
clip to padding when style is missing.

4. Add protection that brandColor is missing

5. Add protection where playback icon is missing in style.

Change-Id: I6641d57a6c5eff8cdf945d716d391ab13a86c299
rowseFragment.java
rowseSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
60bb6af2e336072921f5d3c3861e86b3cc6241b3 04-Feb-2015 Craig Stout <cstout@google.com> Revamp support for keyevent handling.

Now any RowPresenter.ViewHolder can handle keyevents.
Fixes playback controls issues when ff/rw are triggered via keyevent.
Also add support for KEYCODE_MEDIA_PLAY and KEYCODE_MEDIA_PAUSE.

b/18933835

Change-Id: I6e4c568524dda538ea7082c8097b481a2e59dff0
laybackControlGlue.java
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
0f82bdd768ca56c4d14fa96afe8ff0355360148b 08-Jan-2015 Craig Stout <cstout@google.com> BackgroundManager improvements.

No longer enforce a minimum delay between the time when a new background is provided and
the start of the fade transition. Now enforce a minimum delay from the last time a
background was specified.
Use FastOutLinearIn curve for fade animation.
Allow app to specify a custom scrim/dim wrapper.
Add isAttached method.
Fix alpha on dim layer.

b/17576952
b/18692080
b/14827932

Change-Id: If7737544e43dac1bb2a21fa4d372d51fbd040803
ackgroundManager.java
d586ba8825b418d9589436725bfdead30f0dc075 28-Jan-2015 Dake Gu <dake@google.com> Reduce memory consumption of DPAD scroll multiple column grid

Created a special SmoothScroller to handle onFocusSearchFailed
for multiple column cases. It remembers the pending movements caused
in onFocusSearchFailed and consume the pending DPAD movements when
a view is laid out in the direction. The change avoids appending
or prepending excessive views on the scroll direction which is not
within screen bounds.

Add a onLaidOut() listener for VerticalGridFragment to check if
we hit the first row. If the grid is three columns.
Previously (before introducing the special SmoothScroller) we always
prepend one row of items before fire onSelected event, so when we fire
onSelected(1), item0 is already in the tree and havePreviousViewInSameRow()
returns false. Using the special SmoothScroller, onSelected is fired at
the time a view is created. Checking hasPreviousViewInSameRow() at the
time item1 is selected will return true because item0 has not been
created yet. So VerticalGridFragment should also listen to when
item0 is added to hierarchy.

Applied a MAX_PENDING_MOVES to avoid overscroll too much.

Issue: 19150678

Change-Id: I7cf0093a4bee652f60c5f2004b799ee7c3f87fc8
erticalGridFragment.java
erticalGridSupportFragment.java
b682c5a20aa0a383ea2b3e7d639e51b3e7771bcd 02-Feb-2015 Craig Stout <cstout@google.com> Playback controls focus fixes.

b/18518261

Change-Id: Id4319ced4d18f3c16c94255e9d7e6772f74971b0
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
8d47905ed7e4aa6a364b75fcad85f28ddd8bce66 27-Jan-2015 Dake Gu <dake@google.com> am 572ed31d: Fix leanback crash in Kitkat (API19)

* commit '572ed31d757c2635ea0a5cdd7ec8a33cd16f77b7':
Fix leanback crash in Kitkat (API19)
572ed31d757c2635ea0a5cdd7ec8a33cd16f77b7 26-Jan-2015 Dake Gu <dake@google.com> Fix leanback crash in Kitkat (API19)

1. Fixed crash caused by KitKat is unable to load custom transition
from resource. Created kitkat specific helper class to create
custom title transition.

2. Fixed crash caused by entrance transition is not supported before
LOLLIPOP: disabled entrance transition before LOLLIPOP.

Bug: 19147233

Change-Id: Id628fdd11fe268ff42c53d8ee437a8f0ce5bf8fb
aseFragment.java
aseSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
aca6f4e4d28935fdc8f8d2a74cd41dc88c8b9e80 15-Jan-2015 Craig Stout <cstout@google.com> Fix setSelectedPosition.

Can now be invoked from onResume.

b/19029685

Change-Id: Ie75d562f1a7b007954aee6f750c43382dcd61cd0
rowseFragment.java
rowseSupportFragment.java
8dfa64298e91ed411f713acb279e5e3d71e60ae1 13-Jan-2015 Craig Stout <cstout@google.com> Restore post on row selection to fix a regression.

The performance impact of skipping a row has been mitigated so this
change is no longer needed.

b/18986994
(cherry picked from commit 35408ae42cc05d5a2a451a648359cbe3536aa004)

Change-Id: Iae4eec560748ffe184899d6a423010cfd8a78b5b
rowseFragment.java
rowseSupportFragment.java
4fa88de14977f610141695468a8a4faedc92b96d 19-Dec-2014 Craig Stout <cstout@google.com> Fix to prevent jumps when vertical browse scrolling.

Call setSelection right away instead of delaying to a post which
may not run before the next onRowSelected.

b/18742856

Change-Id: I28dd941f9add7ca39a72f35c1f83e6a127227bf7
(cherry picked from commit 71a9abe2bd686b7cb51596a9e5b2b58e5fc074b0)
rowseFragment.java
rowseSupportFragment.java
db14dd5106afde6a39ae26448df2b81b536ebc2b 30-Dec-2014 Craig Stout <cstout@google.com> Fix NPE in the support fragment.

b/18707593

Change-Id: If484980d616a46c407b30ca74be8c5b14bb40ccc
laybackOverlaySupportFragment.java
1df1f18de496764a0c922053e601d1b6d6d3f31c 11-Dec-2014 Craig Stout <cstout@google.com> Fix NPE.

b/18707593

Change-Id: Ib7519e36f99cf23a9913b91e478013377a1e12a7
laybackOverlayFragment.java
2741fddad965ac290e32834dae30d0be37c0d530 04-Dec-2014 Craig Stout <cstout@google.com> Merge "Fix focus navigation when browse headers are disabled." into lmp-mr1-dev
56c76a9fceeb2a516e4bc82bb8b31bbcec6528fc 04-Dec-2014 Craig Stout <cstout@google.com> Merge "Fixes to support improved external recognizer overlay." into lmp-mr1-dev
765a60dddf8a4e746144f9f1d432753c4eb353bb 04-Dec-2014 Craig Stout <cstout@google.com> Merge "Fix error message color." into lmp-mr1-dev
5ae73b45620a3d535b2d279512d5d34603e2bdb1 04-Dec-2014 Craig Stout <cstout@google.com> Fix focus navigation when browse headers are disabled.

b/18061087

Change-Id: I6ac98cabe9443c83a20a8bc08d1fcccd13a39675
rowseFragment.java
rowseSupportFragment.java
6a5a773fad65a61baa84ca994da9de1026007e42 04-Dec-2014 Craig Stout <cstout@google.com> Fix error message color.

b/18548286

Change-Id: I9a9d50d83e6a5b778576778bb768b839f3b57397
rrorFragment.java
rrorSupportFragment.java
490691bd414dbb2093dc6cb56ae63ae9b04e70e3 04-Dec-2014 Craig Stout <cstout@google.com> Fixes to support improved external recognizer overlay.

b/17611324

Change-Id: I449fcfdd1ec408e86e6305d4a6fc185af77a4902
earchFragment.java
earchSupportFragment.java
d102c8521d2695194e2939c9fd5d2b7795996887 04-Dec-2014 Craig Stout <cstout@google.com> Merge "Don't tickle playback controls on generic motion." into lmp-mr1-dev
ef9a081416ca11ef185e298259d99efc82bac197 04-Dec-2014 Craig Stout <cstout@google.com> Merge "Fix back key handling for playback controls." into lmp-mr1-dev
da2811c870d38a56f9ea4548ffb36f18d5f20a08 03-Dec-2014 Craig Stout <cstout@google.com> Don't tickle playback controls on generic motion.

b/18350753

Change-Id: I50178d9e15114c312f377188c5b0882acfc9e589
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
e2047098f696c81f6435cdd588a62d8ab5829c7d 24-Nov-2014 Craig Stout <cstout@google.com> Fix SearchFragment auto start of voice recognition.

Also fixes back navigation for single activity multi fragment apps.

b/18488044
b/18333293

Change-Id: I2a1649a7ef2feaa14c89dc0545ba37df5e80f53e
earchFragment.java
earchSupportFragment.java
c92c356de1a687598a031f3452053dc6c9af9b77 03-Dec-2014 Craig Stout <cstout@google.com> Fix back key handling for playback controls.

If fading is enabled and controls are not hidden, back key will fade out
the controls immediately.

b/18517833

Change-Id: I5d9f4781286f3b483c21c981fb640ab078c20523
laybackControlGlue.java
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
4db320a7ab7e3cfd02fafbb32b670ef026d6898b 27-Nov-2014 Dake Gu <dake@google.com> Merge "Refactoring transition code" into lmp-mr1-dev
8aee95909671c0350e5f6955b698dcd2899ee0ed 26-Nov-2014 Craig Stout <cstout@google.com> am a7dc9b9e: am 7a8227c4: Merge "Fix erroneous IllegalStateException." into lmp-dev

* commit 'a7dc9b9efa537a1ff7d21967ad828057588e6658':
Fix erroneous IllegalStateException.
4735bfcd924fec2d694523f34fac5f8151257dc7 25-Nov-2014 Dake Gu <dake@google.com> Refactoring transition code

Now transitions are all defined in xml, make it easy
for modification.

b/17628884

Change-Id: I34b42bb131fc3055807b91c8d3e8a00db3d853df
rowseFragment.java
rowseSupportFragment.java
itleTransitionHelper.java
erticalGridFragment.java
erticalGridSupportFragment.java
f47fb1e34efd538c322f7539893272ba847cdbdc 24-Nov-2014 Craig Stout <cstout@google.com> Ensure playback controls are visible when fading is disabled.

b/17923350

Change-Id: If089b2f1a6cae06fc09d751de0b828b1288c808d
laybackControlGlue.java
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
4a10f1eb5c4283cfeef34cd71b84173f5ab3eefb 21-Nov-2014 Kris Giesing <kgiesing@google.com> Fix navigation in VerticalGridFragment for RTL layouts

Bug: 18020272
Change-Id: Id74d29d003a5ce4ac11c37f54cf958538c232907
erticalGridFragment.java
erticalGridSupportFragment.java
8e3566285de4ac771d6188f62fe947e23d371a3d 19-Nov-2014 Kris Giesing <kgiesing@google.com> Changes to support RTL layouts

Bug: 18020272
Change-Id: I3e07b5f3784303b0b50dccc72d9d5ab140ea158f
rowseFragment.java
rowseSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
bed2e0359e5c75e29cc41642833021bac9f671f5 20-Nov-2014 Craig Stout <cstout@google.com> Fix erroneous IllegalStateException.

Reset mViewsCreated when fragment view is destroyed.

b/18458802

Change-Id: I85db53b11f6a693b7d01cbc1010d4e4da4d6d543
owsFragment.java
owsSupportFragment.java
2dfed05c8ab53ca7c28424c9c03b1a87b9b7ca0d 19-Nov-2014 Craig Stout <cstout@google.com> Rename getInputEventListener to getInputEventHandler.

b/18077079

Change-Id: Ie857b5bc743772b68e8cdb37521dae4920ea5990
laybackControlGlue.java
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
ad16ef7c021371b7ae385ab049f76d0aa6f5c988 18-Nov-2014 Dake Gu <dake@google.com> Merge "Leanback: Support delayed details entrance transition" into lmp-mr1-dev
3f0f3eb255bde49549a77c0b5d252decaa2a0202 13-Nov-2014 Dake Gu <dake@google.com> Leanback: Support delayed details entrance transition

Added a BaseFragment and move shared entrance transition code in.

b/17628884

Change-Id: Ibfe78116a0822925dbd25dbfde38e9b1c8e6c488
aseFragment.java
aseRowFragment.java
aseRowSupportFragment.java
aseSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
etailsFragment.java
etailsSupportFragment.java
owsFragment.java
owsSupportFragment.java
07b8c8b4d2f40a014d837d98929392e44eee1540 18-Nov-2014 Craig Stout <cstout@google.com> Merge "Check for null to fix NPEs when fragment is shutting down." into lmp-mr1-dev
7fd35190a1f0fd92f1275324b23708b5a2087a76 14-Nov-2014 Craig Stout <cstout@google.com> Check for null to fix NPEs when fragment is shutting down.

b/17646987

Change-Id: Iad5f72c8e7fee558e00dd3ea87f3340d110e5292
rowseFragment.java
rowseSupportFragment.java
447860fd5c105dd0ccd227237ac5f18fdc4c26dc 18-Nov-2014 Craig Stout <cstout@google.com> Stop orb color animation when fragment is paused.

b/17789226

Change-Id: I2a467ba0f0673e3248b7738e6381adc6dd5fd95b
rowseFragment.java
rowseSupportFragment.java
erticalGridFragment.java
erticalGridSupportFragment.java
a9f26f2ca4ea230f322a33a55cbaaaab5574a8ea 13-Nov-2014 Craig Stout <cstout@google.com> Merge "Handle media key events." into lmp-mr1-dev
43afed9e93ab5b510440412b35c6b39e4ecffb7a 12-Nov-2014 Dake Gu <dake@google.com> Merge "Leanback: do not use clipChildren=false for ScaleFrameLayout" into lmp-mr1-dev
6a0a9a6f8fd8ab428d81732875d6245777556b5f 12-Nov-2014 Craig Stout <cstout@google.com> Merge "Helper classes for managing standard playback control actions." into lmp-mr1-dev
f0ac258505ec580e01907c0ae044147521d45b0f 11-Nov-2014 Craig Stout <cstout@google.com> Handle media key events.

b/18091787

Change-Id: Ib12ebcdfbf488f4abec98525cef75aaf9080a91c
ediaControllerGlue.java
laybackControlGlue.java
eb66dab544c4c1eabe4d469b7cea348d4b01e664 30-Oct-2014 Craig Stout <cstout@google.com> Helper classes for managing standard playback control actions.

b/18077079

Change-Id: Id299ee35cf44ef987cea8a2d8718df4837de1abc
ediaControllerGlue.java
laybackControlGlue.java
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
3595aa0cbdaa8e754365ca94a0b9eb8fc52b9796 11-Nov-2014 Dake Gu <dake@google.com> Leanback: do not use clipChildren=false for ScaleFrameLayout

Activity transition uses getGlobalVisibleRect() to decide whether
to run a window Return transition on a View, this function will
ignore child outside ancestors bounds even clipChildren=false.

Changed the way we scale the view so that we don't need
use clipChildren=false any more. Side benefit: this CL also takes
out the need of flipping clipChildren flag in header transition;
clipChildren=true is also better performance-wise.

b/18292516

Change-Id: Ie5018ae5c0e5e1df9e0f92e2435da767c7b8b3c5
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
369af1fd77864d2983396334edd6f5cb830460b2 11-Nov-2014 Dake Gu <dake@google.com> Merge "Leanback: add Browse and Details enter and return transition" into lmp-mr1-dev
be58994c64c87cf00c5b19362f0103bd69b59992 10-Nov-2014 Craig Stout <cstout@google.com> DO NOT MERGE Fix rows fragment scaling on support fragments.

b/17914987

Change-Id: Ib4c172311f4baaaf7b0bd701965759f65995c444
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
f0a682c04fe15c6c9c683e248fd8c659623cccee 08-Nov-2014 Craig Stout <cstout@google.com> DO NOT MERGE Fix back stack issue with fragment-only app.

Going from browse fragment to details and back to browse,
the transition back stack entry was added twice. The browse
fragment onCreateView is called a 2nd time but not onCreate.

Change-Id: I28cbd2ec2ce60cff186655f8607c683a60aafb7d
rowseFragment.java
rowseSupportFragment.java
9c94c635bed18caa22d14f7c5d03accf086fcec8 11-Nov-2014 Craig Stout <cstout@google.com> Merge "Fix rows fragment scaling on support fragments." into lmp-mr1-dev
989119c10e0ae2465879c37a23d3a5c75f89baa9 06-Nov-2014 Craig Stout <cstout@google.com> DO NOT MERGE Don't consume system key events.

Also, don't bring up the controls on back, since most likely the back key
will remove the fragment.

b/18045528

Change-Id: I39ffd74abe5ebcab5d30c785c44056edbd731bf4
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
42f8a879beb54fd181c588b78554367d947ec48b 20-Sep-2014 Dake Gu <dake@google.com> DO NOT MERGE Leanback: Finish implements overreach feature

GridLayoutManager Overreach feature is not quite right yet, a diff of
alignoffset * (1 - 1/scale) needs to be applied.

And we may need overreach for views other than gridlayoutmanager.

Move all the functions into a ScaleFrameLayout,
so that it can scale any type of view, not just gridlayoutmanager.

b/17914987

Change-Id: I99e0711041a2115b3ed1bce29e7a021b2a2132bd
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
c165ad62b34f1f4b4f7c5394b4c5b89ab801c66a 31-Oct-2014 Dake Gu <dake@google.com> DO NOT MERGE BrowseFragment: Fix NPE that focus change during activity destroy

b/18044793

Change-Id: Id073dc06d2decbdf67396626f2625bd9d7d4bc36
rowseFragment.java
rowseSupportFragment.java
7121d4307443933ec8b680e4fc0b9bf6ddea66ab 29-Oct-2014 Dake Gu <dake@google.com> DO NOT MERGE Leanback: fix javadoc and add comments of auto-generated fragment code

b/17930984

Change-Id: Ifc814b28dce2787a0359274c7ad5e57286a23a3e
ackgroundSupportFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
etailsSupportFragment.java
rrorSupportFragment.java
eadersSupportFragment.java
laybackOverlaySupportFragment.java
owsSupportFragment.java
earchSupportFragment.java
erticalGridSupportFragment.java
4abd11d1ad999ca46209f690fa24883386e40e6f 29-Oct-2014 Dake Gu <dake@google.com> DO NOT MERGE Leanback: Initial check-in of v4 fragment

from generatev4.sh
b/17930984

Change-Id: I507ea601779621d65593413dea68188d3314d059
aseRowSupportFragment.java
rowseSupportFragment.java
etailsSupportFragment.java
rrorSupportFragment.java
eadersSupportFragment.java
laybackOverlaySupportFragment.java
owsSupportFragment.java
earchSupportFragment.java
erticalGridSupportFragment.java
b9f624f1c1e2bcc6b2502a6dcf632445679a9beb 27-Oct-2014 Dake Gu <dake@google.com> DO NOT MERGE Generate v4 fragment in same package

Make the v4 version same package so that we don't have
a weird package name like v17.leanback.v4.app

Make BackgroundManager works both for two versions of Fragment.

b/17930984

Change-Id: I3df9dfdc1bc4bcfe5ddb6f4fbd2f2484b63d0855
ackgroundManager.java
ackgroundSupportFragment.java
1f97045e486f6680a5e8ddcff383df6988fc1b56 10-Nov-2014 Craig Stout <cstout@google.com> Fix rows fragment scaling on support fragments.

This is actually needed only for lmp based sdks because
the change to support fragment manager to remove the intermediary
framelayout is only in lmp-mr1.

b/17914987

Change-Id: Ib4c172311f4baaaf7b0bd701965759f65995c444
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
c04ca1b14c5bf9ecac80fc53d3f28a5a7fdd4e77 07-Nov-2014 Dake Gu <dake@google.com> Leanback: add Browse and Details enter and return transition

b/17628884

Change-Id: I5ab571563b75cfac6eaff662c4263aba0a6fa055
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
34f3ee7e818a20939ef49abf5509bcfaea5c3db0 08-Nov-2014 Craig Stout <cstout@google.com> Fix back stack issue with fragment-only app.

Going from browse fragment to details and back to browse,
the transition back stack entry was added twice. The browse
fragment onCreateView is called a 2nd time but not onCreate.

Change-Id: I28cbd2ec2ce60cff186655f8607c683a60aafb7d
rowseFragment.java
rowseSupportFragment.java
76b50416ae52b6c80af7a8661b949c19ddad6bf7 14-Oct-2014 Dake Gu <dake@google.com> DO NOT MERGE Add script to generate v4 fragment code.

To provide v4 version fragment which is required by lots
of apps. To avoid generate two versions of resource file,
move shared widget class into widget package.

Outreach clipToChildren should be set on parent of VerticalGridView,
parent will be different for v4 case and none-v4 case.

b/17930984

Change-Id: Ica8cbd7195b481cd0831386b51cfff4955feda6b
rowseFragment.java
rowseFrameLayout.java
rowseRowsFrameLayout.java
owsFragment.java
erticalGridFragment.java
cbfc318baee2fc054af4c723bfac0fd3c28a1667 06-Nov-2014 Craig Stout <cstout@google.com> Don't consume system key events.

Also, don't bring up the controls on back, since most likely the back key
will remove the fragment.

b/18045528

Change-Id: I39ffd74abe5ebcab5d30c785c44056edbd731bf4
laybackOverlayFragment.java
laybackOverlaySupportFragment.java
1f000f84b9f8db8778b941a6a1bf60f3d349545d 20-Sep-2014 Dake Gu <dake@google.com> Leanback: Finish implements overreach feature

GridLayoutManager Overreach feature is not quite right yet, a diff of
alignoffset * (1 - 1/scale) needs to be applied.

And we may need overreach for views other than gridlayoutmanager.

Move all the functions into a ScaleFrameLayout,
so that it can scale any type of view, not just gridlayoutmanager.

b/17914987

Change-Id: I28d073b39eba9c0d24093274b2f5a524e3381aa9
rowseFragment.java
rowseSupportFragment.java
owsFragment.java
owsSupportFragment.java
28fe4119471dcc0ccd752c331d6420fcf363f5a5 31-Oct-2014 Dake Gu <dake@google.com> BrowseFragment: Fix NPE that focus change during activity destroy

b/18044793

Change-Id: Iddb8a60e21f33d583d1312433ef1c7f753a8aa86
rowseFragment.java
rowseSupportFragment.java
42752c860a26deacca04ea9ebeb00ddb4d8ce2fc 29-Oct-2014 Dake Gu <dake@google.com> Leanback fragment: House clean

Rmove dead code; don't expose methods that shouldn't expose.

Change-Id: I9b353c9781cbd9f0dcf13a5788c076c65ad47c1f
aseRowFragment.java
aseRowSupportFragment.java
eadersFragment.java
eadersSupportFragment.java
owsFragment.java
owsSupportFragment.java
6193c12a1897723c87b41f4e304a8cd04deef2dc 29-Oct-2014 Dake Gu <dake@google.com> Leanback: fix javadoc and add comments of auto-generated fragment code

b/17930984

Change-Id: I38a588f49da6e0d65097c3bc159093bae4808a3e
ackgroundSupportFragment.java
aseRowSupportFragment.java
rowseFragment.java
rowseSupportFragment.java
etailsSupportFragment.java
rrorSupportFragment.java
eadersSupportFragment.java
laybackOverlaySupportFragment.java
owsSupportFragment.java
earchSupportFragment.java
erticalGridSupportFragment.java
61905b0b52c50018dcaebcd79699c39b8f28d622 29-Oct-2014 Dake Gu <dake@google.com> Leanback: Initial check-in of v4 fragment

from generatev4.sh
b/17930984

Change-Id: I2baf78f43adb1a4915636ac0bc13733690f7d7e1
aseRowSupportFragment.java
rowseSupportFragment.java
etailsSupportFragment.java
rrorSupportFragment.java
eadersSupportFragment.java
laybackOverlaySupportFragment.java
owsSupportFragment.java
earchSupportFragment.java
erticalGridSupportFragment.java
fa9f41f8f5408b6e3931f1ab81f586a47cc2d975 27-Oct-2014 Dake Gu <dake@google.com> Generate v4 fragment in same package

Make the v4 version same package so that we don't have
a weird package name like v17.leanback.v4.app

Make BackgroundManager works both for two versions of Fragment.

b/17930984

Change-Id: I733d0d841a13e616075a7b7fcbdf938515178550
ackgroundManager.java
ackgroundSupportFragment.java
5d00775a5d3ce3c1fc06c4de0945d1b8f03aadc4 14-Oct-2014 Dake Gu <dake@google.com> Add script to generate v4 fragment code.

To provide v4 version fragment which is required by lots
of apps. To avoid generate two versions of resource file,
move shared widget class into widget package.

Outreach clipToChildren should be set on parent of VerticalGridView,
parent will be different for v4 case and none-v4 case.

b/17930984

Change-Id: I1c67186d9046ac8fd5b2c45de048a3fae2b79be7
rowseFragment.java
rowseFrameLayout.java
rowseRowsFrameLayout.java
owsFragment.java
erticalGridFragment.java
60c3b420827d0520509387f1abe3e3d8168e2279 09-Oct-2014 Dake Gu <dake@google.com> BackgroundManager: Use the right drawable cache with activity theme

Theme background drawable is decoded twice in loading movie details activity.
It always miss the cache if calling getResources().getDrawable(id).
Calling context.getDrawable(id) instead.

Also Cache theme Drawable in BackgroundContinuityService, this will save a
texture upload before in future release activities can share Drawable cache.

b/17915241

Change-Id: I7623c4345d9dc56b7dc32de9c361bc35d1703e3d
ackgroundManager.java
e2bc82a1c02f667901bd96e244afa7dc0232b354 04-Oct-2014 Jerome Poichet <jpoichet@google.com> SpeechRecognizer fixed in framework

Now that SpeechRecognizer calls cancel when being destroyed, no need for
the delayed destroy call. It was actually leaking a service, and could
cause crashes in application using the SearchFragment.

Moved the show/not show listening to correspond when voice is actually
being recorded.

b/17789827 Mic won't open
b/17675621 Music search - runtime restart
b/17851959 In-app voice search should grab audio focus

Change-Id: I34473743a9e42c4b87eccc3ae85cd8f5ade15ca3
earchFragment.java
22e46a46e20c53b2e2d23dca792534ee3434c954 04-Oct-2014 Dake Gu <dake@google.com> SearchFragment improvements (2nd try)

1. Expose startRecognition() for calling from Activity.onNewIntent()
(When user clicks mic button in search activity)

2. Do not pass text change event when we are in speech recognition.

3. Autofocus back to speech orb when startRecognition() is called.

4. Make sure internal speech recognizer calls stopRecognition.

5. When SearchFragment calls setSearchQuery(), make sure stopRecoginition.

b/17790589

Change-Id: I55ca97b5b3384b47214a0afac35bd31324e89347
earchFragment.java
2eac9924967d79de4a4488eb9bf0fc2950819670 06-Oct-2014 Dake Gu <dake@google.com> Revert "SearchFragment improvments"

This reverts commit edb67b0b59ee6657b2d1adb6b2822858db34e8c8.

Change-Id: If2627e201dd0e7dfcc3359718175e2a7c74b8ac2
earchFragment.java
edb67b0b59ee6657b2d1adb6b2822858db34e8c8 04-Oct-2014 Dake Gu <dake@google.com> SearchFragment improvments

1. Expose startRecognition() for calling from Activity.onNewIntent()
(When user clicks mic button in search activity)

2. Do not pass text change event when we are in speech recognition.

3. Autofocus back to speech orb when startRecognition() is called.

b/17790589

Change-Id: I3d3c9ce57f467dc6f1f26d3608b13c7b34a8adce
earchFragment.java
f52e0718c20bedc86f0b67f6b3660e737d787bd4 27-Sep-2014 Dake Gu <dake@google.com> Support restoring SearchFragment results

1. do not start speech recognition if SearchFragment is
restored from instance state
2. onTextChange() is invoked when restore view hiearchy,
we should change query regardless if it has focus or not.
3. Defer first setAdapter() on RowsFragment until we got some data
from result Adapter. If there are multiple consequent
onChange() events (e.g. add result rows one by one), they are
consolidated into one callback so that first setAdapter() on
RowsFragment will include all of them.
4. Fixed problem that results being cleaned while IME opens up,
it temporary clears the edittext.
5. Fix the wrong fragmentId when we try to find fragment restored
by FragmentManager, so we can restore the selected position!


b/17624232

Change-Id: I22e4192ca5c363b0d9545b412c5be7aec8554832
earchFragment.java
7e599cd800f063eb6c7f965d5f13c7ae0556be1d 26-Sep-2014 Jerome Poichet <jpoichet@google.com> Call cancel on recognizer to close audio

b/17550906 Retrying voice search often fails

Change-Id: I6f24596dd12236cc955df5d0e03afeae44e8c419
earchFragment.java
49e6a6cd81f3a1117b306323064c53230a7f01ad 26-Sep-2014 Dake Gu <dake@google.com> Workaround accessiblity focus problem

Avoid item gaining focus in transition.

b/15376774

Change-Id: I5f3899a23a960c6d31582b4219da34a81c97df59
eadersFragment.java
ce1dad42528bdd7d26aaf714af7ccc4ebaa57fcd 26-Sep-2014 Dake Gu <dake@google.com> Revert "Workaround accessiblity focus problem"

This reverts commit 1c7cf0caa7eae95dbd73a4fb093bead673d7047b.

Change-Id: I89d6f5070d3b3fdf0d207e4ea9525a6998bd5809
eadersFragment.java
1c7cf0caa7eae95dbd73a4fb093bead673d7047b 25-Sep-2014 Dake Gu <dake@google.com> Workaround accessiblity focus problem

Avoid item gaining focus in transition.

b/15376774

Change-Id: I10ac97bc45dd94eedbdaca296b30f856e4368897
eadersFragment.java
90a30a0dfdd4341f1587003579229d7f28d98d21 17-Sep-2014 Tim Kilbourn <tkilbourn@google.com> Guard against NPE after transitions.

Bug: 17511707
Change-Id: Ia79c37324157fbd25f709f782c4a6b728e734841
owsFragment.java
fa4fa516a4053b22ae9695c17bbcd61272f38c48 16-Sep-2014 Craig Stout <cstout@google.com> Merge "Fix slow fading animation of playback controls fragment." into lmp-dev
2d33e3cfedc56adc2d4e5ac6279ec683d041fe21 16-Sep-2014 Craig Stout <cstout@google.com> Fix slow fading animation of playback controls fragment.

Use a hardware layer during animation.

b/17512846

Change-Id: I53c69095aca17eb5e5f4964e1ba529d6cfc1bfb5
laybackOverlayFragment.java
8a7a303a0f9ef08ad0dd5de25da2106866b396b7 15-Sep-2014 Craig Stout <cstout@google.com> Merge "Add recognizer intent helper methods to search fragment." into lmp-dev
963e336e8839f26c739007242caf7ca4e50e792d 15-Sep-2014 Craig Stout <cstout@google.com> Add recognizer intent helper methods to search fragment.

b/17509582

Change-Id: I4ff3f49cec65149c1b7f4561f322bec864d0bf65
earchFragment.java
bdbd214e30be2de3f174f9b20aef84a596e7f172 15-Sep-2014 Tim Kilbourn <tkilbourn@google.com> Merge "Add a callback interface for voice input." into lmp-dev
8a8613eeff5a6715c28e0148aa8f078b743d38aa 15-Sep-2014 Dake Gu <dake@google.com> Merge "Leanback: Fix crashing on KitKat caused by defaultBrandColor" into lmp-dev
361955cd7c040bf30330c8e21d9016c747a94473 13-Sep-2014 Craig Stout <cstout@google.com> Add a callback interface for voice input.

Bug: 16320681
Change-Id: I48224a8167435372c722553ba88e4f6961d9c152
earchFragment.java
116c06a5bc40fd4d1753012582842ecc5cd06aec 14-Sep-2014 Dake Gu <dake@google.com> Use material interpolator for header transition

Still a little hack, ideally in next release, we should
compose transitions in resource files.

Change helper to static function.

b/16795293

Change-Id: I9797e09441ba0f8302461871332d9bcf5364d7c5
rowseFragment.java
b74149016854eb172c0ef121ccfef749c6ef7eb1 14-Sep-2014 Dake Gu <dake@google.com> Leanback: Fix crashing on KitKat caused by defaultBrandColor

There are two problems:
missing defaultBrandColor in v19 theme base.
KitKat(and earlier version?) seems does not like using theme attribute for a
color value. So we just apply the color value in code.

b/17499857

Change-Id: I5881551c857a7864681665f6f1893087a0705d27
eadersFragment.java
3659dc62f9e55b1043edb4105c311c8ef997f2ae 13-Sep-2014 Dake Gu <dake@google.com> avoid creating hardware layer for headerView

by declaring hasOverlappingRendering is false on the element with alpha

b/17409091

Change-Id: Idc3ae30a63f794b5db4fa5afc6f94e72eb3e183f
eadersFragment.java
0fff85d7f9dee67ec5116f3cba4e8b3961f805a7 11-Sep-2014 Craig Stout <cstout@google.com> Scale rows when headers are showing.

b/15887467

Change-Id: Ib7a942c7de6f7bdfef08ba8ef8e938abee585358
rowseFragment.java
owsFragment.java
b60082430ab9c45352b42764d6f94e54514084aa 11-Sep-2014 Dake Gu <dake@google.com> RowsFragment: fix double layout warning in transition

If we setExpand in the first layout callback, it will complain
double layout (requestLayout during layout). Instead we
request layout when it's about to draw a new frame.

b/17460530

Change-Id: I21a4f1440d4e8595859b713e666aa57520995007
owsFragment.java
095ec562afeb3670cc62e41b87e2820417e1988b 11-Sep-2014 Dake Gu <dake@google.com> BrowseFragment: run a better open fastlane transition

Run additional layout pass to get added rows' initial position when
we set row fragment from expand to non-expand. So the new rows
can be slide in from outside window.

b/17460530

Change-Id: Id100c236e3c4444f064e4d1f69e1ef8acf35198d
rowseFragment.java
owsFragment.java
c031fd76061137a1873a1e506c499710b71dc9e3 10-Sep-2014 Craig Stout <cstout@google.com> Merge "Fix focus navigation from search bar down to results." into lmp-dev
f6221e91bd3f0f584893baadcb9f8cf5621dce3b 09-Sep-2014 Craig Stout <cstout@google.com> Fix focus navigation from search bar down to results.

b/16189418

Change-Id: Iba103910fd7d80888d2ebc3b876a326f5ab2828d
earchFragment.java
9652881bb6af5a2b76f89d683bd420336f4bf463 09-Sep-2014 Dake Gu <dake@google.com> fix grey panel on top of settings

Bug introduced because changed layout of headers fragment.

b/17436246

Change-Id: Ie46673099894ceb3b64513b2d0ba315fdccbb2a4
eadersFragment.java
82a2377919d8de2658bff96507cbcd9dac591a83 09-Sep-2014 Craig Stout <cstout@google.com> Merge "Fix focus handling between search bar and results." into lmp-dev
1d9c59a1a9621e54d4f3defd20451ced63cbf088 09-Sep-2014 Craig Stout <cstout@google.com> Fix focus handling between search bar and results.

b/15330714

Change-Id: I9e56560a0a403deff43360c69a559b1bf979a7cf
earchFragment.java
7a208cd35be79a69b1f4f36724b85ab96eb23e75 09-Sep-2014 Dake Gu <dake@google.com> Implement fastlane fading edge

b/17289018

Change-Id: Idc6629f5d18df668b3cca56495574755ada689b9
aseRowFragment.java
eadersFragment.java
d7618ab69ef591dd5342b9481c4954bfc7e9110c 08-Sep-2014 Dake Gu <dake@google.com> Fix fading out children not moving with parent

Don't remove child of listview, switch visiblity instead.
Removed children will fade out at original position but not moving
with parent.

b/17423570

Change-Id: I253bdbadeefb71ced6971d446a17d96d7a96dea3
eadersFragment.java
1102fc6fafe721522f2b67f86d89feda87096265 28-Aug-2014 Dake Gu <dake@google.com> GridLayoutManager: Multiple fixes to state saving

1. Implemented a LruCache based child states to limit the memory used.
2. When adding/removing child happens, clean up all cache (will lose all offscreen
child view state). This is because we use index as key, which will be changed.
3. Evict item cache when item is changed.
4. Make saveChildren policy API of BaseGridView, only the vertical list
which has nested horizontal list turned on this feature. This is quite
reasonable assumption: only save the nested horizontal list's focus
index but no more deeper children states: less expensive and avoid
potential unknown problems.
5. load children states inline instead of requesting layout, fixed bug
that requestLayout gets eaten by a top level scrolling layoutmanager.

b/17212513

Change-Id: Ic60c7ac216fa265b64646c3072767983eeb02653
owsFragment.java
33f66eb67b6457ea75434dfd9f79703ad9e03560 21-Aug-2014 Dake Gu <dake@google.com> BrowseFragment: save/restore fastlane and title status

fastlane status restoring needs to handle the backstack properly.

Use Slide transition for handling titleView, avoid the extra
waiting cycle for title offscreen position.

Made changes to Slide to be able to seamlessly continue with
another transition.

b/15701483

Change-Id: I346a71a28ae6cce3e498a5c45fabc264ee275b37
rowseFragment.java
itleTransitionHelper.java
erticalGridFragment.java
cda8867f3c17e94f41d7dcd491e0eb27e6a3953a 21-Aug-2014 Craig Stout <cstout@google.com> Merge "OnItemViewClicked/SelectedListener for details rows and playback controls rows." into lmp-dev
801d8b7bc960a5ae4b0e23af8ac5b8b81f8ad6f3 21-Aug-2014 Dake Gu <dake@google.com> GridLayoutManger: fix setSelectedPosition is aligned to a wrong position.

setSelection calls scrollToView(false), which offset children's location and
switches focused child which incorrectly triggers another not needed scroll
animation. The extra scroll animation causes "over" scroll amount.

Also fixed row not being highlighted if people calls notifyChanged() and
setSelectedPosition(1) consequently, the mSelectedViewHolder is set to the
selected row 1, then an immediate onLayoutChildren() detached and reattach
all rows, which clears the selected state of the row, but
mSelectedViewHolder is still referring row1, and skipped a selected event
fired from onLayoutChildren(). The fix is to clear mSelectedViewHolder
when view holder is detached from parent.

b/16681515

Change-Id: I61a8efde46327853a2ed67af63fa125d5426f907
owsFragment.java
cf992de2d34abb8228dc6cb39fffe97346823a37 20-Aug-2014 Craig Stout <cstout@google.com> OnItemViewClicked/SelectedListener for details rows and playback controls rows.

Addresses the feature request because the row is provided in these callbacks.
Playback controls rows already supported item selection but this change fixes an issue
with ping-pong selection on action adapter updates.
Also add support for multiple details rows.

b/16354712

Change-Id: I0d3ce47d19514937b6d0d7a6eaeb61275c7dac85
etailsFragment.java
8f5c183ba7b9df6b5339586f51219b4d5e6305f3 19-Aug-2014 Craig Stout <cstout@google.com> Fix NPE in playback controls when no details description presenter.

b/17131898

Change-Id: Ie682bbddfe710fd482c5aba583a2275325e06cb1
laybackOverlayFragment.java
dbfb5013ef4647e61d96a31db67071afc9c1c3b8 19-Aug-2014 Dake Gu <dake@google.com> Merge "Use a foreground instead of itemdecoration for default row selection effect" into lmp-dev
cfad630a58857f3740bcc422ba73258ed786433d 15-Aug-2014 Dake Gu <dake@google.com> Merge "Prevent recyclerview scrolling in transition" into lmp-dev
709bb7083a089e788d84ffa81f2c4f60a1bc8cf2 15-Aug-2014 Dake Gu <dake@google.com> Prevent recyclerview scrolling in transition

Both scrolling animation and ChangeBounds animation will change the card
position and cause card being put at random position.

b/16952270

Change-Id: I628230e32088cc9bb43908f9076a32877c685bd0
owsFragment.java
b23ee09bf4aee03bc403abf39016c8ca5ecf301c 14-Aug-2014 Dake Gu <dake@google.com> Use a foreground instead of itemdecoration for default row selection effect

Most of time vertical grid view only has ListRow, but in order
to handle possible default row selection effect, it always add
item decoration.

Switch to use a foreground of RowContainerView for the dim effect.

Disable not needed overscroll effect for TV.

b/17044705

Change-Id: Id48b5ff595f6b2efe70599d1255ceba42ca35966
owsFragment.java
aa67105babce5fb14e1f39b57d4c84ce634afa62 14-Aug-2014 Craig Stout <cstout@google.com> Fixes for playback controls "more actions".

b/17031274

Change-Id: Icde9524cb5bce1c3f61826bf1cd0d8f224663cb1
laybackOverlayFragment.java
aab7b0fba9753574215c9b1c3bc8ce5d81018248 14-Aug-2014 Dake Gu <dake@google.com> Merge "DetailRow: Dont focus to button during transition" into lmp-dev
95400e6d31a1ac09e48cb8944a79b7250484aa4c 09-Aug-2014 Dake Gu <dake@google.com> DetailRow: Dont focus to button during transition

fix No.2 of b/16900335.

This is not stricly following the ux spec because running
the fading animation of parent viewgroup and a background fading
animation at the same time is really slow. The button fading
is started after activity transition is done.

Also clean up and removed ChangeBounds workaround, (reparent) is no longer
used. Moved classes to transition package, it is used by both widget
and app package.

Change-Id: I00463642843b3f3ef9c9845de451712d65745a89
rowseFragment.java
itleTransitionHelper.java
ransitionHelper.java
erticalGridFragment.java
4bf1df568033630004b24b1c1289f4943db8368c 14-Aug-2014 Craig Stout <cstout@google.com> Fix row dimming animation.

On each animation update, ensure the parent grid view is invalidated so
the item decorations are redrawn.

b/16898456

Change-Id: Ieff9eab010bc34a9dc52ab1ac160b644f0dc77aa
owsFragment.java
b500acb88c1ac8ba4dbd50441e1c71316c65da75 14-Aug-2014 Craig Stout <cstout@google.com> Fix recycled view pool sharing between list rows.

b/17013302

Change-Id: I4813d59d970b9d581f4e2e89aaa917b3c11f0a49
owsFragment.java
d20507e0f5ac7ad021f42ca87c294787246f0591 13-Aug-2014 Craig Stout <cstout@google.com> PlaybackOverlayFragment positioning and spacing polish.

b/16987129

Change-Id: Ie450ae9c5f493ae6eeb33f454dbe66ce920b97fc
laybackOverlayFragment.java
6b2e5b5117f1b8dfafbd81b995bb423ab0297564 12-Aug-2014 Craig Stout <cstout@google.com> Playback overlay animation polish.

b/16980270

Change-Id: I01476bbd239ae6ba850573935a1df1de8bb105db
laybackOverlayFragment.java
1e5725d52c7ec12b184dcfce6bfafa80aed35230 08-Aug-2014 Craig Stout <cstout@google.com> Fix NPEs when activity is stopped while animations are in progress.

b/16873740

Change-Id: I7546db2151aa3d57b7641bdef99279620a48104f
laybackOverlayFragment.java
d1adbdcb44a48e142d28a93189c57edfe62d93ce 07-Aug-2014 Craig Stout <cstout@google.com> PlaybackOverlayFragment fade animation improvements.

Change-Id: I7d8d35e3afed3b6d5633a235ec397dfc405bfe64
etailsFragment.java
laybackOverlayFragment.java
owsFragment.java
372d07bb41510d91a6a662a1906aceb0ee759481 25-Jul-2014 Craig Stout <cstout@google.com> Add view fading support to PlaybackOverlayFragment.

Includes auto-tickle on input.

Change-Id: I58d1f6d87870d06527b3b80f7fedcdeab1b3cb6e
laybackOverlayFragment.java
7709709c2c78490a21311e9950d5dca7e89a6aed 26-Jul-2014 Craig Stout <cstout@google.com> Add background scrim to PlaybackOverlayFragment.

Change-Id: I6b7f2d0c8e3e6bce63e0fa8c2622f3af5919a7f8
laybackOverlayFragment.java
86c973d53a08fdd1081be12c10c86e06e0172cd3 29-Jul-2014 Dake Gu <dake@google.com> fix default background is lost when transition back.

Both Browse and Detail activity shared the same theme
drawable. When pops Detail activity, transition fades out
window background of Detail activity which sets alpha to 0
on theme drawable.

Fix is to having each window manager maintain a different
drawable state for theme drawable.

Change-Id: I5c9556befca5f46099e74ec9abd8aa50415e1e85
ackgroundManager.java
6dca725412977bb56b933bdec120e31909233cdb 22-Jul-2014 Craig Stout <cstout@google.com> Add support for progress to playback controls.

Change-Id: I63f0e93c9151cfa4ef4b4ade8ee2b9502771d4e8
laybackOverlayFragment.java
7ab1edf2b49f3cdcb9db7a1c60d0dc1e17a9aef7 16-Jul-2014 Craig Stout <cstout@google.com> Add PlaybackOverlayFragment and associated row and presenters.

Progress bar is not functional yet.

Change-Id: I6217385433d7c6621c68de68da93257efebe3c5b
etailsFragment.java
laybackOverlayFragment.java
dc9b5676ab337317154fa7702033ae174617525b 10-Jul-2014 Dake Gu <dake@google.com> new listeners for DetailsFragment and SearchFragment

Change-Id: I127be8199e6ab37629da7e17ea6b378ab432d5d6
etailsFragment.java
earchFragment.java
afe1da48b4673f64c67c130237dd485a34a69c1b 10-Jul-2014 Dake Gu <dake@google.com> fix doc build - re-add @deprecated

Change-Id: Ib7c09752ac7e9acb0e55eacd3749d6347c2f3db2
erticalGridFragment.java
3cbe5c34f9710da1ab935b45f568995b12219ca2 10-Jul-2014 Alan Viverette <alanv@google.com> Remove @deprecated from VerticalGridFragment/Presenter doc

Fixes docs / update-api builds target.

Change-Id: Id4c2d4942070109b627166eb8ae97eafd193f5ee
erticalGridFragment.java
947dbf076cd019e3c26217fbc7aa21e860d68044 10-Jul-2014 Dake Gu <dake@google.com> Use new listeners in VerticalGridFragment

Change-Id: I77f6a8f90bf2bd9508ec44a047c2aceeddd1b7b0
erticalGridFragment.java
9de363b8db05106b03d115c266859fe200d41db7 09-May-2014 Dake Gu <dake@google.com> Preparing for transition

In order to make transition work, user needs
to get current clicked view, added view parameter
in all our listeners and deprecated old version.

add methods to access imageview of cardview.

Change-Id: Ibccfae4bf13c623047475f2147a685b10e44c278
rowseFragment.java
owsFragment.java
b7c2e023ab13ac158badfc9f4e17fd33fd6bf274 27-Jun-2014 Craig Stout <cstout@google.com> New ErrorFragment.

Change-Id: I11355505141932b65905f189f7e8ddd6d4526b44
rrorFragment.java
4fdd3589c982860b831c0fad63c0082cb9079f47 24-Jun-2014 Craig Stout <cstout@google.com> Allow developer to specify search orb colors.

b/15774559

Change-Id: Ie8522f55b1dedf81410eaf60980509d1d8756fd5
rowseFragment.java
erticalGridFragment.java
d6019d141130ae4811b78e37286faf93d5944fd9 19-Jun-2014 Craig Stout <cstout@google.com> BackgroundManager fix for repeated quick setting of the same drawable.

Change-Id: Id0cb3de42adcbbf93eee64ac93b5b874dba8fca6
ackgroundManager.java
4c0f3062b5edd9750351068f46e5270bb220091d 13-Jun-2014 Tim Kilbourn <tkilbourn@google.com> Update leanback javadocs.

Fill in more details for search and vertical grid fragments.

Bug: 15149629
Change-Id: I9e1ff0aa286e8cf84f500664be741ea0e6ec72c9
earchFragment.java
erticalGridFragment.java
528dd8dc49dc2399c7d1ca829065b8a25a67780e 12-Jun-2014 Dake Gu <dake@google.com> BrowseFragment: not trigger header transition in requestFocus()

When RecyclerView removes headerView, it causes unFocus() on
headerView which triggers a getRootView().requestFocus().
BrowseFrameLayout runs requestFocus() on each individual child.
The rows fragment gets called first and triggers a transition.

In such situation, we should not transfer focus from fast lane
to right panel.

b/15570240

Change-Id: I2e9b55d4588a82bfcfbae6daa92e0b3a1fb57459
rowseFragment.java
rowseFrameLayout.java
789afeffe3986b5beec48107e0afcbb2438d5668 12-Jun-2014 Dake Gu <dake@google.com> Merge "BrowseFragment: Fix crashing when exit activity." into lmp-preview-dev
3c5f724ea8bfaef6f096e5bcd977364a423a4e02 12-Jun-2014 Dake Gu <dake@google.com> BrowseFragment: Fix crashing when exit activity.

When activity is exiting, it destroys and removes fragment view,
which can cause focus change from left lane to right part, which
internally triggers a browse fragment transition, which pushes
backstack entry to fragmentmanager, which crashes complaining
activity is destroyed.

b/15569626

Change-Id: Icc951b5db0a9294b60aad51ff3a1066e3d07fc03
rowseFragment.java
961a8f12d1fbeeb86ea066f9f2c693abb2ce50f2 12-Jun-2014 Tim Kilbourn <tkilbourn@google.com> Update leanback javadoc.

Bug: 15149629
Change-Id: Ib3977c497f1fc0fd2a9cc8527347a85e8f1e8d40
rowseFragment.java
497a47f2ab7fdc8490191b02caa9a68f884d9ac0 11-Jun-2014 Tim Kilbourn <tkilbourn@google.com> Remove deprecated Params.

Bug: 15414619
Change-Id: I82f390cdaf16a52c4d88efd10404a95121195856
ackgroundManager.java
rowseFragment.java
erticalGridFragment.java
78093fbede6ea2d189e5d0ad176466ef140e950c 07-Jun-2014 Tim Kilbourn <tkilbourn@google.com> Merge "BrowseFragment javadoc cleanup." into lmp-preview-dev
40827ad908a3dfaebc496004e2c5690195000a76 06-Jun-2014 Tim Kilbourn <tkilbourn@google.com> BrowseFragment javadoc cleanup.

Bug: 15149629
Change-Id: I7c598d8d27127fd8acd8e93f7557e6cb1037c0b3
rowseFragment.java
6f2623c3520b1fde1e30bce75d4e7cd38bc7c156 07-Jun-2014 Jerome Poichet <jpoichet@google.com> Merge "Fixing SpeechRecognizer leak" into lmp-preview-dev
4fbaf9b54d7f9723f3ec5c320db9cea887eeff7b 07-Jun-2014 Jerome Poichet <jpoichet@google.com> Fixing SpeechRecognizer leak

Since there is no lifecyce on SearchBar, moving the ownership of the
SpeechRecognizer to the SearchFragment.

- Creating a SpeechRecognizer when SearchFragment resumes and pass it to
the SearchBar
- Destroy SpeechRecognizer when SearchFragment pause, and unset it in
the SearchBar
- Ensure recognition has a recognizer before starting and stopping

b/15460657

Change-Id: I95dc3f37b5c4ae7dbd337dcc90d28c6ee17f8f09
earchFragment.java
71ace352963715f82ed0ecede3f55f3808af30b0 07-Jun-2014 Craig Stout <cstout@google.com> Merge "Use ValueAnimator instead of ObjectAnimator." into lmp-preview-dev
7e22f555da71f49a32420965817c760522b95963 07-Jun-2014 Craig Stout <cstout@google.com> Use ValueAnimator instead of ObjectAnimator.

Prevent proguard related issues.

b/15456883

Change-Id: Ifead15aabacbd29c0b6750d1bccc8d8d581bd61b
ackgroundManager.java
134804b76d18b0a15e73f62aeaa5a7c70ad667b2 06-Jun-2014 Craig Stout <cstout@google.com> Merge "BackgroundManager improvements." into lmp-preview-dev
3d9d8cbaa9086f3ca2f486233fa3051e614a99ed 06-Jun-2014 Craig Stout <cstout@google.com> BackgroundManager improvements.

Fade in and fade out have the same duration.
Don't interrupt an animation in progress.
Use newDrawable/mutate when syncing with service.

b/14802540

Change-Id: I4eb77662015a4013de69a44700dbbd1692d1ed34
ackgroundManager.java
3269c07a0277b250a67a05fbc3c072593a3eba3a 06-Jun-2014 Dake Gu <dake@google.com> Merge "BrowseFragment: remove backstack listener onDestroy" into lmp-preview-dev
610633fb4ff9fe26624bf1708480c0c4882616ed 06-Jun-2014 Dake Gu <dake@google.com> BrowseFragment: remove backstack listener onDestroy

it's possible that BrowseFragment is not at bottom of activity,
it's popped from stack but listener is not removed.

b/15453520

Change-Id: Id0bf16e149a1d2c037583121be5777a8ac1bac12
rowseFragment.java
7d3eb15c1a75cb2ea938abf6d4bf691b2d303da3 06-Jun-2014 Craig Stout <cstout@google.com> Merge "Add a wrapper framelayout for fastlane headers." into lmp-preview-dev
e51474af2c4b5192a75fd283cb737d02fccc58a4 06-Jun-2014 Craig Stout <cstout@google.com> Add a wrapper framelayout for fastlane headers.

Needed to workaround setAlpha conflict with RecylerView animations.

b/15452858

Change-Id: I564019ee95af54b78872953b867a2da55db40e94
eadersFragment.java
b8f95f79fdba6860887d6826a9447cf15cea6d7d 06-Jun-2014 Jerome Poichet <jpoichet@google.com> Merge "Add API to provide suggestions (aka completions)" into lmp-preview-dev
731066a59e10ddc7bb6c95d0b91b3e0e11e10396 05-Jun-2014 Craig Stout <cstout@google.com> Add TitleView and use it to complete VerticalGridFragment.

b/15432740

Change-Id: I00740c265e76b93b943d402be452c74d889510e4
rowseFragment.java
itleTransitionHelper.java
erticalGridFragment.java
e5f2388b8d24876ebbd6daf302487bf452245d50 04-Jun-2014 Jerome Poichet <jpoichet@google.com> Add API to provide suggestions (aka completions)

b/15436910 Add API to SearchFragment to allow passing suggestions to IME

Change-Id: I53850dd74d99f7edb04739436c2b66c5dcae8bd0
earchFragment.java
9020c0aec57b4e8994d66b7cd1a89c225e9bfa11 05-Jun-2014 Craig Stout <cstout@google.com> Fix VerticalGridFragment focus navigation and title transition.

b/15432740

Change-Id: I6ac533a88d8ce8b17aa28d3605e688536bfbb8e5
erticalGridFragment.java
5a983d70762d39d92501479cfc445be6cb1b569c 04-Jun-2014 Craig Stout <cstout@google.com> Fix leanback docs.

Change-Id: Ic5f3ba909d0686b61da422e88744c75dc3519079
rowseFragment.java
dfb60d0af5d49da05c584d74245c616263f26b65 04-Jun-2014 Craig Stout <cstout@google.com> Deprecate Params in BrowseFragment and VerticalGridFragment.

Apps should use methods directly on the fragment.

b/15414619

Change-Id: I8aed729ea0393d1f8c558b88cade2870e156fda0
rowseFragment.java
erticalGridFragment.java
0eb4595e6a4d6e9ebc9f5b8065e0c787d45a0f70 04-Jun-2014 David Saxton <saxton@google.com> Call mutate() on the layer drawable used in BackgroundManager.

Fixes / work-around for b/15417998 - LayerDrawable seems to have difficulties
copying itself if some of the layers have been modified.

Change-Id: Iafaed7668bb838688b0d4c20f54d060ae9cdd7ad
ackgroundManager.java
76c3b90228d8c4afc6d24c683e9c95f41ae619c9 04-Jun-2014 Jerome Poichet <jpoichet@google.com> Removing ununsed imports

Change-Id: Id398857ca752b9ac612d0e596da1cce58e6e3a6f
rowseFragment.java
etailsFragment.java
eadersFragment.java
owsFragment.java
e0fc06a975f22a71c6d106a33feb4859ce8fe191 03-Jun-2014 Jerome Poichet <jpoichet@google.com> Merge "Handling missing RECORD_AUDIO permission." into lmp-preview-dev
10960072d3c1f9c7f42f9ae77adbfb12f9aed138 03-Jun-2014 Jerome Poichet <jpoichet@google.com> Handling missing RECORD_AUDIO permission.

Added documentation on SearchFragment and SearchBar to note the
requirement for the RECORD_AUDIO permission.

Added documentation on SearchFragment and SearchBar listeners to explain
that submit can be called without any call to changed.

Check for RECORD_AUDIO permission, throw IllegalStateException when not
found when loading SearchBar.

b/15350629
b/15326734

Change-Id: I9b55fc76ecb438087d1d389e3555d2652ded68d9
earchFragment.java
056561d81012983d2d27b8665c4aeabb427174cb 03-Jun-2014 Tim Kilbourn <tkilbourn@google.com> Set defaults for brand color and search orb color.

Bug: 15162080
Change-Id: I0c184ac1dd8f30744966fe0232c37a263c0bad96
rowseFragment.java
eadersFragment.java
9de682083d3da5b1127969ee1fd7b74561aa9acd 02-Jun-2014 Craig Stout <cstout@google.com> Fix view recycling.

GridLayoutManager must recycle existing views when rebound.
ItemBridgeAdapter must track view types globally.
Increase the max recycle pool size (defaults to 5).

b/15291691

Change-Id: I861da37f39e1a35d1d7bd38579269b814b736234
owsFragment.java
9a1a0dc3d1ae8e80a5992e414a77c854e9f0cf65 31-May-2014 Dake Gu <dake@google.com> Merge "show title when no row is available" into lmp-preview-dev
8caf1c7f7da73186a03751bdd959b8137c9bd222 31-May-2014 Craig Stout <cstout@google.com> Merge "BackgroundManager improvements." into lmp-preview-dev
d736653bfee7fc83fc68d57d0e0bee5fa807287f 30-May-2014 Dake Gu <dake@google.com> show title when no row is available

fire null selected event for no row selected.

b/15348400

Change-Id: I931f61f694e1ac0f7dc6aeb74bd118c6942288fc
rowseFragment.java
eadersFragment.java
7f85292289f235c50740c3180fdbcb4bb2bf9703 30-May-2014 Craig Stout <cstout@google.com> BackgroundManager improvements.

Don't created a scaled copy; instead scale the given bitmap at render time.
Also fix issues same-bitmap detection issues.

b/14802540

Change-Id: Ia2a5219cb673115516bc84edfb77bc84c3145f09
ackgroundManager.java
d559710c8763acb37fd444735da7ee770b84df07 30-May-2014 Craig Stout <cstout@google.com> Hide the fastlane if headers are disabled.

b/15339596

Change-Id: I703ba776edf8098bb5ad14740859f2251a96a7bc
rowseFragment.java
eadersFragment.java
d4a794983364c7b1801638abc7f332abee12b6e6 28-May-2014 Yigit Boyar <yboyar@google.com> RecyclerView Cleanup

Removed deprecated methods from RecyclerView.

(cherry picked from commit 34106bc044343fdac6d16623166d17cda17c083e)

Change-Id: Ie9de0aae4519b870302424deaf2326cbf9e4b7fc
owsFragment.java
268de3d2ea3de1be0725a80bbc79dd7b8b18617e 23-May-2014 Craig Stout <cstout@google.com> Browse redlines improvements.

b/15094070

Change-Id: I842070f69c136eaae33e6c66ff02828c49be3175
eadersFragment.java
cdb70a71717005904c8fc20b41c36513b1875b52 22-May-2014 Tim Kilbourn <tkilbourn@google.com> Merge "fix extra browse backstack entries"
1dfaa33e6e751ac7eb2ecd3721777b6960810114 22-May-2014 Dake Gu <dake@google.com> fix extra browse backstack entries

Shouldn't add extra backstack every time of fragment.onStart

Change-Id: I51dde7ca494d678603a24d4191a0be79c052ec98
rowseFragment.java
25aacd3f5896ec09053739cc731bdbab3a6f2b81 15-May-2014 Jerome Poichet <jpoichet@google.com> Adding voice support in search bar

- Use private IME option to catch when voice key is pressed in IME
- Use private IME option to allow "escape north"
- Add a speech orb/button in search to start recognition
- Animate speech orb when speaking
- Handle switching from voice to IME

Change-Id: I14774ca173a8da94b26f4942e267377a496b838c
earchFragment.java
erticalGridFragment.java
0d9a8f694bd3fedbd758de124f23992b7b8d7ac7 22-May-2014 Jerome Poichet <jpoichet@google.com> Merge "Adding SearchFragment title and badge"
514bdd5473ae7f4da990d6035422d0784c6c344e 16-May-2014 Jerome Poichet <jpoichet@google.com> Adding SearchFragment title and badge

Add getter and setters to set the hint and the icon in the search bar.

Change-Id: I63bc323ef5ce886efe578a58ddca7eb0fc8717b5
earchFragment.java
e43e9266c4b7e4902fefb5d2a0cacca90a3d2681 16-May-2014 Dake Gu <dake@google.com> Browse: fix the space between rows in not expanded state

when expanded goes to false, half the vertical space to make
it equal to the horizontal space between cards.

remove the hardcoded 16 pixels due to compensating paddingTop
of horizontal grid view. Instead, introduce a flag
"setItemAlignmentOffsetWithPadding" in ItemAlignment.
So row will align the top of horizontal grid view(R.id.row_content)
plus the top padding of horizontal grid view to a fixed position
vertically.

Fixed some bug of handling optical bounds in ItemAlignment.

Removed duplicated browse margin dimens.

Change-Id: Ic3dcad2935bc7e4b525e6f830603bdce46e73086
aseRowFragment.java
rowseFragment.java
owsFragment.java
4510b275c55d9a3dae13af38196d3bc6affd3dfc 16-May-2014 Dake Gu <dake@google.com> fix janky "hide title transition"

don't prune the rows during transition, so they can be slided
out instead of faded out at original position.

b/15017332

Change-Id: Icc6e8b7d7c0b1f10ae2372bcb1b644455f1063d2
aseRowFragment.java
74c29896d6e2a520e00605cceeef64669bab02b3 15-May-2014 Dake Gu <dake@google.com> Quantum browse: remove reparent transition

Change-Id: I4900a583a5989770b3069d3c7984961804461a68
rowseFragment.java
eadersFragment.java
owsFragment.java
6f8c0cb076a103d044b18fc58117e37d2319d9eb 15-May-2014 Craig Stout <cstout@google.com> Switch to changebounds transition for browse title.

Change-Id: I5011f4742e094475d3bf0ac7c3cf263d42463c7b
rowseFragment.java
ransitionHelper.java
42e4e84c1266426e89f7cf6117aae99e3aec4d81 12-May-2014 Dake Gu <dake@google.com> BrowseFragment: headers transition back press support.

Added a default support for "headers transition on back pressed".
Also provided BrowseTransitionListener and startHeadersTransition() for
the rare case if app has its own onBackPressed() handling (e.g. PlayStore).

b/13628758

Change-Id: I8c70171d0353d6b212fec9e9b0e4739b9f0d2138
rowseFragment.java
4cf79b1c4d38a190317961891f9fd052836710fd 14-May-2014 Craig Stout <cstout@google.com> New browse ux with solid color fastlane.

Change-Id: Ide2516e6570c0990dd976b3ac6b759826ec95979
rowseFragment.java
eadersFragment.java
2f97594742886d045ca1ce409ebc6e6e780452f6 06-May-2014 Dake Gu <dake@google.com> browse transition

fix bug that ListRowPresenter does not fire row selected event.
adjusted pivotx of header.
add fast lane header sliding transition.
fade row header in-place while moving parent.
Merged transitions into concurrent to make the transition more "tight".

b/14164663

Change-Id: I360118c98950519ed7e9dc3bf67dbe0bfdd45995
aseRowFragment.java
rowseFragment.java
eadersFragment.java
owsFragment.java
ransitionHelper.java
e34cae48707e70442aca13e1b4ab55757292828d 02-May-2014 Dake Gu <dake@google.com> VerticalGridFragment title transition

Change-Id: I4f2d17ffe112e5ea89e5392a519d90e236e1e48d
rowseFragment.java
ransitionHelper.java
erticalGridFragment.java
bd80644186ff8622c565f067dc3a4136a4dc0586 01-May-2014 Dake Gu <dake@google.com> Add API to change fast lane header presenter

Change-Id: I17dfc5c51d22d0afb3d45a78033eeae33a93493e
rowseFragment.java
eadersFragment.java
a4560456facaa3dd341a7ab2f372f655d46f7ee6 14-Apr-2014 Tim Kilbourn <tkilbourn@google.com> Add methods to set row heights in ListRowPresenter.

Allows a ListRowPresenter to set the row height on new rows created by
the Presenter. Optionally, an expanded row height can be set, and the
RowPresenter will animate the height changes on expanded state changes.

Change-Id: I59257c1cc9cb4dbcf3447877b14a11295b11e992
owsFragment.java
fe0cc53f3e75b22b3b855677df650e797132cf12 30-Apr-2014 Dake Gu <dake@google.com> resolved conflicts for merge of 48a48651 to master

Change-Id: I183b1ac777437394d033210a10cd3df561428589
b4cfb396e982db69063cfa74a1dbb6a86db95ba3 30-Apr-2014 Dake Gu <dake@google.com> am d8dc4e73: am 12f8c04a: Merge "RowsFragment: fix NPE when fragment view is destroyed." into klp-modular-dev

* commit 'd8dc4e73556edc0a03688fb0b319ddc6b9b931b8':
RowsFragment: fix NPE when fragment view is destroyed.
101dde19d1d2150afb02d1bf1d78a1759265c928 30-Apr-2014 Dake Gu <dake@google.com> Merge "Support header changeBounds transtion between fastlane and row" into klp-modular-dev
7480d843215ed1cfd94c05330331ae1f13441bb3 30-Apr-2014 Dake Gu <dake@google.com> RowsFragment: fix NPE when fragment view is destroyed.

b/14414372

Change-Id: I122370155d2008d163f2ab9450bbae5ab4778de6
owsFragment.java
4df06cbe8f6dd087fc8f1068faa77923cb297365 24-Apr-2014 Tim Kilbourn <tkilbourn@google.com> Activate cards that are off screen.

setActivated() only affects children of recycler view that are on screen,
so previously new views that are attached are not set to activated.

Bug: 14089372
Change-Id: Ife7b954b5793fcf5ff1858481285a7f09e387fe1
owsFragment.java
3c23ada8bc25a05bbaa8c479a9df72e8172c4349 18-Apr-2014 Dake Gu <dake@google.com> Support header changeBounds transtion between fastlane and row

Now both fastlane and text view above row share the
same RowHeaderPresenter by default, this allows
customized RowHeaderPresenter also being used in fast
lane. Transition handles the transition between
them.

No longer detach/attach fast lane, goes back to the
original hide/show mechanism, also split the transition
work from focusSearch() and performed after focus changed.

Added a Customized changeBounds transtion that support setting
staggered startDelay of fastlane text views.

Change-Id: I688074b850c088c2ff53039d235ba70f88c38da5
aseRowFragment.java
rowseFragment.java
rowseFrameLayout.java
eaderPresenter.java
eadersFragment.java
owsFragment.java
ransitionHelper.java
02e411c2c69d20aab138f1a162a24ea650eff7a1 19-Apr-2014 Dake Gu <dake@google.com> fix header position not synchronized to rows position and fix NPE

for no hovercard case.

Change-Id: Ic21b322158e88f1a42cc99f89fefb92f1e90357c
rowseFragment.java
03db662eb2cd3f53f5dc7a7346933e410eaff8e3 18-Apr-2014 Dake Gu <dake@google.com> Merge changes Ia0a8c8c1,I7904a373 into klp-modular-dev

* changes:
BrowseFragment: Fix transition/animation conflicts
more transition support and fading edge support
79ea84679035f18acc581896ff028a4866361b04 17-Apr-2014 Dake Gu <dake@google.com> BrowseFragment: Fix transition/animation conflicts

Disable vertical scrolling in left/right transition.
Disable left/right transition when vertical scrolling is running.

Change-Id: Ia0a8c8c164f85d9227245673c68b2df2630947ad
rowseFragment.java
9240e796bc63422c28f2707840bd99c48573279b 14-Apr-2014 Dake Gu <dake@google.com> more transition support and fading edge support

Use fading edge effect instead of switching clipToPadding, this also
fixes bug of shadow gets clipped by padding.

Let TransitionManager control the browse rows animation, disable
grid view animation during transition, grid view should
re-initialize the start position values when layout animation is
turned on after transition completes.

Made transition customizable from code, adding listeners.

Change-Id: I7904a3731f58af035e207cf61ad7ab174cee231a
aseRowFragment.java
rowseFragment.java
ransitionHelper.java
26b8cb87efab1b6e9b6aa7bfef24bcab634ffe73 17-Apr-2014 Craig Stout <cstout@google.com> Merge "Fix browse and details child fragment re-creation." into klp-modular-dev
6c3b0b3d19683ea8c4069ec761f14dc2c7b8c5dc 16-Apr-2014 Craig Stout <cstout@google.com> Fix browse and details child fragment re-creation.

Bug: 14088678

Change-Id: I2d52074632d169fc23b44aa675bd7d12590774d2
rowseFragment.java
etailsFragment.java
9e8ebb07f6b0c7d8d8590ef1d5287d84d91957f3 16-Apr-2014 Craig Stout <cstout@google.com> Merge "Api cleanup." into klp-modular-dev
32ba8fc7b148485db84aee7e37c0c1bca8260006 16-Apr-2014 Craig Stout <cstout@google.com> Api cleanup.

Remove unused BackgroundParams.

Change-Id: Ifccf6cb2923cdec9fbdb091260b8f3595dda569f
ackgroundParams.java
rowseFragment.java
owsFragment.java
5a8a7c929e07e3a3d17b2e5466785d271eee7657 14-Apr-2014 Jose Lima <joselima@google.com> Fix bitmap scaling for Background manager

Change-Id: I2098629f10584d2c3bc24137fad258dd0a649404
ackgroundManager.java
437657ea98e2f33077569d8d763f92504481173a 15-Apr-2014 Tim Kilbourn <tkilbourn@google.com> Merge "Update javadoc for the BackgroundManager." into klp-modular-dev
a8d3588c80a232042474aca55a69df78c8ac8cb3 15-Apr-2014 Tim Kilbourn <tkilbourn@google.com> Add search listener for VerticalGridFragment.

Change-Id: Ibac5cc340cadc9d50f9420496d98d798377b3cd2
rowseFragment.java
erticalGridFragment.java
146a2a07c0e9750c2bdd5bd434197c2f46fea662 11-Apr-2014 Tim Kilbourn <tkilbourn@google.com> Update javadoc for the BackgroundManager.

Change-Id: I5b9fad5251b75fddaab235a81e5ad7283ef5c5a0
ackgroundManager.java
cb13a318e577e14461eb008071dddf762847de42 11-Apr-2014 Dake Gu <dake@google.com> RowPresenter refactoring and preparing for Transition support

use a seperate RowContainerView for holding header view instead of insert
directly into view created by RowPresenter. This is an API change that
need fix all subclass of RowPresenter.

renamed some view classes.

Prepare for transition support: add and remove header view in
onRowViewExpanded()

Change-Id: I67fa23db6d2c21fa577d68393aca0746f3012002
eaderPresenter.java
owsFragment.java
b6c84c2cd06d9470342a24af9f436ee85a74ab44 09-Apr-2014 Dake Gu <dake@google.com> Merge "Removed the hardcoded fragment width" into klp-modular-dev
b55f0880c367c0b7e4132e7d954b60725e01e0b2 05-Apr-2014 Tim Kilbourn <tkilbourn@google.com> BaseCardView and ImageCardView for leanback library.

A BaseCardView defines regions that can be displayed based on view state
changes on the layout. Three regions are defined: main, info, and extra,
and info and extra regions may become visible when the layout becomes
either activated or selected. Info must appear before or at the same
time as extra.

ImageCardView is a widget based on BaseCardView, defining a simple card
widget with a main image, a title, and a content string. Optionally the
card may also contain a small image badge. The text and badge are
contained in the info region, and there is no extra section.

Change-Id: I0cc497a7eaf434da3633ff307ab10d730731bbed
owsFragment.java
cfc50bafd5437b4f6396d60ebc258c76599ba52b 06-Apr-2014 Dake Gu <dake@google.com> Removed the hardcoded fragment width

Allow fragment to be adapted to parent width
using match_parent.

Change-Id: Ic8eb5c686c4fc4deb4cad35bab0f6fd908cc6624
rowseRowsFrameLayout.java
afcaf8343b5fd033ce2810552f17dda93ce38047 09-Apr-2014 Dake Gu <dake@google.com> Merge "fix row select/expand state for SearchFragment" into klp-modular-dev
739e3805bf2785e6773aede5e2e1643f537305f9 07-Apr-2014 Craig Stout <cstout@google.com> Add a VerticalGridFragment.

Change-Id: I35476263c52d1fef09036bbe9339c945de2f339c
erticalGridFragment.java
8abe871a26db135be7db8160563e6c9465297375 09-Apr-2014 Tim Kilbourn <tkilbourn@google.com> Merge "Fix details fragment initialization." into klp-modular-dev
4d744f70ce60a8ac66294d9298b25b2c827224d0 07-Apr-2014 Jerome Poichet <jpoichet@google.com> removing deprecated call

Change-Id: I8e9d37e60f090f054c28ddfe271f090b6d0d9ae2
earchFragment.java
1caf420879768ae8aebe8c27546707a28f3bb659 08-Apr-2014 Craig Stout <cstout@google.com> Fix details fragment initialization.

Change-Id: I8ebb57beea8bbdfbf6fe844e00b5a52f043385ac
etailsFragment.java
0946602a3f3815a5f7d46dfc571b3c60483f1ea4 05-Apr-2014 Dake Gu <dake@google.com> fix row select/expand state for SearchFragment

The SearchFragment does regional updates that causes
onBind() again without attach, in onBind() we incorrectly
reset the UI state.

Change-Id: I5382793dfb923314c3b30af711977bf49966a847
owsFragment.java
earchFragment.java
9ae240b06cd3863c146290524ae1efdb71208e8d 04-Apr-2014 Jerome Poichet <jpoichet@google.com> Fixing NPE

b/13752247 | Item selected events not firing for SearchFragment
b/13767335 | Search crashes when launched from play store

Change-Id: Id89888101879038c4917f0ba03e60add2f01f013
earchFragment.java
892181367d658f347d00ea5e091aa31f086b2a20 04-Apr-2014 Dake Gu <dake@google.com> implement a default shadow on browse row card in a non-intrusive way.

Automatically create a wrapper layout that wraps the view created
by Presenter and adding shadows, color overlay.

Change-Id: I34f4c508c01d7d3c1710e455ec0edd600735d278
owsFragment.java
8fac6554640f547c0efd98e67ca2d659172468bb 01-Apr-2014 Dake Gu <dake@google.com> stylize leanback padding etc, fix bug of top clipping.

The main purpose of the CL is to allow developer customize padding of
browse fragment by introducing a "browsePaddingXXX" theme attributes
that applies to different widgets. Fixed bug of top padding clip.

Also make rowsWidth browseRowsMarginStart browseRowsMarginTop
to be customizable if user are use our fragment in non-full screen case.

Change-Id: I2894a8e505d1025ecc637f038b141712115e11cd
rowseFragment.java
etailsFragment.java
b755101b56de0db47494910ea7e68d40243e3b9a 01-Apr-2014 Jerome Poichet <jpoichet@google.com> Protecting setExpand from NPE

When setExpand is called before VerticalGridView gets created then we
get an NPE.

b/13732096 - NPE when inflating view with SearchFragment

Change-Id: I7866cc33dd9bab179a88c20e7becf8091544a414
owsFragment.java
7f0ed3452a3378c851217cd300950ba2e03f2649 29-Mar-2014 Dake Gu <dake@google.com> BackgroundManager: make it foolproof to share manger instance

Introducing getInstance() that will return the same
BackgroundManager attached to internal fragment, thus activity
does not need save a BackgroundManager object as member and
expose getBackgroundManager().

When user/child fragment needs it, they can call
BackgroundManager.getInstance(activity) to get the associated
background manager.

Added check to avoid people create multiple BackgroundManagers
for the same activity if they still use the deprecated
BackgroundManager constructor and do not follow the single
instance per activity rule. This should never happen after
they switch "getInstance()".

Fixed NPE in BackgroundFragment.onDestroy() when fragment is
just restored by FragmentManager and goes to destroy state
without attached backgroundManager.

Change-Id: Ie051fbadca868f479e1c9a424e8771445ad1fb40
ackgroundFragment.java
ackgroundManager.java
2e2e91a93f6d03108a73e7b4a05d289589957a0e 27-Mar-2014 Craig Stout <cstout@google.com> Background fixes.

Ensure the service is updated on resume. Don't rely on the
activity to take any action on resume.

Bug: 13680476
Bug: 13703977

Change-Id: I21c4faec4f03b2426f04f94ff812f20fd25af34e
ackgroundFragment.java
ackgroundManager.java
3c2998d502e4e2586d0bfc52ff5d1f2725fa9e6d 28-Mar-2014 Jerome Poichet <jpoichet@google.com> Improvement to SearchFragment

new SearchFragment API
better handling of focus
slowly following red lines

Change-Id: Icb56af529f03c9535eba0d9859e71dc49eb99253
earchFragment.java
b70539172cdeb5672ed7128f69383d1fc1458ccb 28-Mar-2014 Dake Gu <dake@google.com> Fix fragment restore crash.

The nested fragment can be initialized by fragmentmanager in
restore case.
Tested with a touch screen device rotate.

Change-Id: I6c85a1bc8604196cfa6eeeb49694a9eeef6aee9a
ackgroundManager.java
rowseFragment.java
etailsFragment.java
earchFragment.java
baace7864a7d7e8fa4b118512d9ebf72a02af282 28-Mar-2014 Tim Kilbourn <tkilbourn@google.com> Merge "Initial DetailsFragment for leanback apps." into klp-modular-dev
43fd7c31e66a8a3821a0272cf7dc1d01e3bed91b 27-Mar-2014 Andrew Wilson <anwilson@google.com> Fix disappearing search icon.

Change-Id: I8198d48e6854b7ec43af526a0f0a857d2dd9237d
rowseFragment.java
c3047aae5913bf0f79ed65e2d4b6b74ca38d53de 21-Mar-2014 Tim Kilbourn <tkilbourn@google.com> Initial DetailsFragment for leanback apps.

This first version is just a simplified browse fragment. Future CLs
will include some details-specific functionality.

Change-Id: I79e978789160d157b57e246473eed7c96e9bcb6b
etailsFragment.java
a9a5262b09c09e83822236a18eb810991e01fea6 26-Mar-2014 Craig Stout <cstout@google.com> Merge "Fix focus switching to/from the search orb." into klp-modular-dev
81619fb7459d1caf6bfab07c8f5f406be95ff523 26-Mar-2014 Craig Stout <cstout@google.com> Fix focus switching to/from the search orb.

Change-Id: I2e84a33c85394c3e67767b83900254a64ca5dbaa
rowseFragment.java
9e8e482b545c9c7d8db82c05993850d2f9038c5b 26-Mar-2014 Dake Gu <dake@google.com> Merge "more javadocs about RowPresenter events and animations" into klp-modular-dev
1c33346ba79177e64fe33da70ee73547d7bb15f7 26-Mar-2014 Craig Stout <cstout@google.com> Fix docs.

Change-Id: Ia091709f44f1962b613dfa9c87ff3df2815122ea
ackgroundManager.java
rowseFragment.java
owsFragment.java
17993c442c26161f684d6c0c6867a746f3148548 19-Mar-2014 Craig Stout <cstout@google.com> Add support for backgrounds.

Change-Id: I6e1652a79d17f87e964836a729056dc78d67c7ca
ackgroundFragment.java
ackgroundManager.java
rowseFragment.java
owsFragment.java
earchFragment.java
42ded13505ce3e4300335e4cdeb24a677a71ed32 26-Mar-2014 Jerome Poichet <jpoichet@google.com> adding missing APIs to SearchFragment

Change-Id: If5f2cd125ceb3cb7ab43501cb8390c3f0358ae7f
earchFragment.java
3cc680daf97a77022b2e7d937c80c07991af19ed 25-Mar-2014 Tim Kilbourn <tkilbourn@google.com> Merge "Update browse UX closer to spec." into klp-modular-dev
6f03a4e411825283e5fddac2ab29ee8a9de4c42b 25-Mar-2014 Tim Kilbourn <tkilbourn@google.com> Update browse UX closer to spec.

Moved top overscan padding out to the outermost layout. Updated several
dimensions. Aligned the title icon and text centered vertically. Hid
the title icon if it is not set.

Change-Id: I33ea60b01b7c898ba2ecac03f58d6906dd79a85d
rowseFragment.java
7aaa6c6ef8807cc4ea4c4642716d6e30056bc4eb 24-Mar-2014 Dake Gu <dake@google.com> more javadocs about RowPresenter events and animations

renamed "row_list" to "row_content", so it can make sense for non list
row alignment.

Change-Id: I4f0a0d3bdf30049ada1a9bc87ac90900b6be3721
rowseFragment.java
owsFragment.java
8f7f69e59ac59c0399c28a08a0fbec2eb4c065d1 25-Mar-2014 Andrew Wilson <anwilson@google.com> Merge "Don't request items at negative indicies." into klp-modular-dev
e2679e4ccab0ce75f701629c22c179165df4f15e 24-Mar-2014 Jerome Poichet <jpoichet@google.com> Search 'affordance' in title of BrowseFragment

Change-Id: Ifc2729489fcff597c8864ae8ac43d611d92e4b7a
rowseFragment.java
2f5fbc79d656fc4966119141aaef48161f08376f 25-Mar-2014 Andrew Wilson <anwilson@google.com> Don't request items at negative indicies.

Change-Id: Id932e91308bd12af8f35b45add359f8b4ebacff2
eadersFragment.java
7f96e4590bb25b2079fe395168f3c6b2117fb051 24-Mar-2014 Tim Kilbourn <tkilbourn@google.com> Fix HeaderPresenter to use Rows not ListRows.

Now that Rows have HeaderItems and not just ListRows, we can cast the
items to Row.

Bug: 13626576
Change-Id: Ic0afede86a5af9cdf2e2c7b2b69fd37608a38720
eaderPresenter.java
5b882ac46cc2ee851de04dadbd9bdc8fe946d9da 22-Mar-2014 Andrew Wilson <anwilson@google.com> fix initial dim color

Change-Id: I4866dd2ca19bb964baca21c984c1e06ea7ad7d85
owsFragment.java
85c10faf654848a8aacd1e61760b3e24a1902a83 21-Mar-2014 Jerome Poichet <jpoichet@google.com> SearchFragment and SearchBar in support-leanback

Change-Id: Id958ad47462d9efd2b5b770c0391477190e0d66a
earchFragment.java
a8a3b898da49324e83ea32c3f08776a481312166 21-Mar-2014 Tim Kilbourn <tkilbourn@google.com> Rename some leanback lib classes.

RowHeaderFragment -> HeadersFragment
RowContainerFragment -> RowsFragment
BaseListView -> BaseGridView
ListView -> VerticalGridView

Change-Id: Id37cb80a95122247aa33c55e545ece9f526df073
aseRowFragment.java
rowseFragment.java
eadersFragment.java
owContainerFragment.java
owHeaderFragment.java
owsFragment.java
cf94c5fa8ae8edb7e26a623133207415ceeed187 20-Mar-2014 Dake Gu <dake@google.com> add support of row select animation

Row select animation is controlled in RowContainerFragment that
is not recommended to override. Developer can override the default
dim effect either as a subclass of RowPresenter or subclass
of ListRowPresenter. We also provide helper classes:
ColorFilterDimmer and ColorOverlayDimmer that developers might use
for their own dim effect.

Change-Id: I1982aa193ccf04be557187a6338feefbd675710a
aseRowFragment.java
owContainerFragment.java
0f1fa0dfa946ddc8afb6af26a4dd1a4d01dca10f 19-Mar-2014 Dake Gu <dake@google.com> final some methods and classes, fix some compile warnings

add some comments

Change-Id: I3868cd11eb6345778ae9c813cb9ea974543bc4ba
eaderPresenter.java
owHeaderFragment.java
8b068ddbbf22a246eab49ec25a2f7c3abfbdca51 16-Mar-2014 Tim Kilbourn <tkilbourn@google.com> Add a .readme file to be copied into the sdk src.

This allows the project resources to be built by ant/eclipse.
Also moved default source code dir to src instead of java/src.

Change-Id: I9e5002fbbfb96b98be772c1ec6653322d5563b56
ackgroundParams.java
aseRowFragment.java
rowseFragment.java
rowseFrameLayout.java
eaderPresenter.java
owContainerFragment.java
owHeaderFragment.java
ransitionHelper.java