History log of /frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
163df90a6133c655cb84bbea89247496f157db6c 04-May-2017 Dake Gu <dake@google.com> Merge "leanback: fix GuidedStepFragment baseline alignment" into oc-dev
3a585b405904d1d8dc9c714ae06da4441a07382d 03-May-2017 Dake Gu <dake@google.com> leanback: fix GuidedStepFragment baseline alignment

Using FontMetricsInt does not consider the case that textView
can have extra space above the the text line. Switch to
use getBaseline()

Bug: 37947607
Test: manually change Guidance text view and Guided action text view
layout_height in style and inspect in sample app.

Change-Id: I312e19ff4dbedbd867f18c6b546a9bf78737928e
/frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java
bc6713f8e2fa9702675dc3827591ed401b539723 29-Apr-2017 Dake Gu <dake@google.com> leanback: fix Item alignment.

1. Add support of RTL case.

2. The existing rule of using offset negative/positive as indication
of start/end padding does not make sense, switch to use percentage,
when percentage is 0, we will use low padding, for percentage 100, we
will use high padding.
Although this changes behavior, existing apps all use low padding
and set percentage to 0, so this will not break existing apps.

Test: testItemAlignmentVertical testItemAlignmentHorizontal
testItemAlignmentHorizontalRTL
Bug: 37794661

Change-Id: I3fe4a05642fa959812f6079b335c707570c6761a
/frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java
3103f63e99d47573823957f7aa34308555873221 20-Sep-2016 Aurimas Liutikas <aurimas@google.com> Fix all operator wrapping issues in leanback library.

Test: code still compiles, there should be no code/logic changes.
Change-Id: I6e97e2ba429c323022055263540c3fb6d0003822
/frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java
50c611b216a4b2c8eb2bbd2a2848bb6da34677be 21-Apr-2016 susnata <susnata@google.com> Fixing styling issue with GuidedStepFragment.

Change-Id: Ia2780de5c44925872d9d5a0996dd99caefdfece1
/frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java
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
/frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java
08c56822b71ab0aa0b9bb03e5fd45e28f6e358b8 28-Apr-2015 Dake Gu <dake@google.com> Revert "Revert "Support multiple alignment within one ViewHolder""

This reverts commit bc0edc3ab9bac3c8d7d3cc9de1cb499ea3b4155e.

Change-Id: I1f9540e54fdee874adf7239a0ead1fb5447f2610
/frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java
bc0edc3ab9bac3c8d7d3cc9de1cb499ea3b4155e 27-Apr-2015 Dake Gu <dake@google.com> Revert "Support multiple alignment within one ViewHolder"

This reverts commit 86a6309c3e89ec6abc40ec045bfaef7827cbe427.

Change-Id: I3385d74766e948566b7321cbe2afcf31a66282c1
/frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java
86a6309c3e89ec6abc40ec045bfaef7827cbe427 07-Apr-2015 Dake Gu <dake@google.com> Support multiple alignment within one ViewHolder

Add support of align to multiple positions within one ViewHolder of
Grid View.

Introduce "FacetProvider" inteface for optional features to be implemented
without requiring an object must implement a java interface. Benefit
is less impact on the major feature of a class, make the extra optional
features loosely coupled with existing class. (And it is the only way
for ItemBridgeAdapter to provide a list of optional features that
are implemented by some Presenters but not others)

Add a new ItemAlignmentFacet class to describe multiple alignment positions.

Grid view gets optional ItemAlignmentFacet from RecyclerView.ViewHolder(rare)
or RecyclerView.Adapter for a given view type. If the facet exists, it's used
to calculate multiple alignment positions within this ViewHolder.

At high level, for apps that using Presenter, they don't directly use
RecyclerView.ViewHolder or RecyclerView.Adapter. apps put Facet in Presenter
(most cases) or a ViewHolder(rare cases). For example in the new detail page
design, DetailsOverviewRowPresenter will need this facet(TODO),
ItemBridgeAdapter is responsible to "bridge" facet from Presenter.

In the future, Facet may be used to customize child view state saving.

Bug: 20094419

Change-Id: Iabef94e46f9a304ffd68e49bed10e74a57dfe4ce
/frameworks/support/v17/leanback/src/android/support/v17/leanback/widget/ItemAlignmentFacet.java