Merge "AutoSize Button - support library impl" into oc-support-26.0-dev
diff --git a/buildSrc/dependencies.gradle b/buildSrc/dependencies.gradle
index a58b1d0..a00c139 100644
--- a/buildSrc/dependencies.gradle
+++ b/buildSrc/dependencies.gradle
@@ -33,7 +33,7 @@
libs.gradle = 'com.android.tools.build:gradle:' + androidPluginVersionOverride
} else {
// Keep gradle plugin version in sync with ub_supportlib-master manifest.
- libs.gradle = 'com.android.tools.build:gradle:3.0.0-alpha4'
+ libs.gradle = 'com.android.tools.build:gradle:3.0.0-alpha5'
}
// Other dependencies
diff --git a/gradle.properties b/gradle.properties
index b8e17ca..e5750c9 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,6 +1,7 @@
org.gradle.jvmargs=-Xmx4g
org.gradle.daemon=true
-org.gradle.configureondemand=true
+# Disabled due to b/63329112
+# org.gradle.configureondemand=true
org.gradle.parallel=true
org.gradle.caching=true
android.useDexArchive=false
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 15afcfd..2a386c4 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=../../../../tools/external/gradle/gradle-4.0-bin.zip
+distributionUrl=../../../../tools/external/gradle/gradle-4.1-milestone-1-bin.zip
diff --git a/samples/SupportLeanbackDemos/src/com/example/android/leanback/DetailsPresenterSelectionActivity.java b/samples/SupportLeanbackDemos/src/com/example/android/leanback/DetailsPresenterSelectionActivity.java
index 4f8546e..e6cf32f 100644
--- a/samples/SupportLeanbackDemos/src/com/example/android/leanback/DetailsPresenterSelectionActivity.java
+++ b/samples/SupportLeanbackDemos/src/com/example/android/leanback/DetailsPresenterSelectionActivity.java
@@ -69,7 +69,10 @@
.build());
}
- private static class SetupFragment extends GuidedStepFragment {
+ /**
+ * Fragment hosted in DetailsPresenterSelectionActivity.
+ */
+ public static class SetupFragment extends GuidedStepFragment {
@Override
public Guidance onCreateGuidance(Bundle savedInstanceState) {
diff --git a/v17/leanback/build.gradle b/v17/leanback/build.gradle
index 8c02cc4..a2e7342 100644
--- a/v17/leanback/build.gradle
+++ b/v17/leanback/build.gradle
@@ -36,11 +36,6 @@
]
main.res.srcDir 'res'
}
-
- lintOptions {
- // Remove this once all NewApi breakages have been fixed.
- disable "NewApi"
- }
}
supportLibrary {
diff --git a/v17/leanback/kitkat/android/support/v17/leanback/transition/LeanbackTransitionHelperKitKat.java b/v17/leanback/kitkat/android/support/v17/leanback/transition/LeanbackTransitionHelperKitKat.java
index 872e836..bb30b00 100644
--- a/v17/leanback/kitkat/android/support/v17/leanback/transition/LeanbackTransitionHelperKitKat.java
+++ b/v17/leanback/kitkat/android/support/v17/leanback/transition/LeanbackTransitionHelperKitKat.java
@@ -35,7 +35,7 @@
SlideKitkat slide = new SlideKitkat();
slide.setSlideEdge(Gravity.TOP);
slide.setInterpolator(AnimationUtils.loadInterpolator(context,
- R.animator.lb_decelerator_4));
+ R.anim.lb_decelerator_4));
slide.addTarget(R.id.browse_title_group);
return slide;
}
diff --git a/v17/leanback/lint-baseline.xml b/v17/leanback/lint-baseline.xml
index 24cb762..b373b5e 100644
--- a/v17/leanback/lint-baseline.xml
+++ b/v17/leanback/lint-baseline.xml
@@ -1,346 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<issues format="4" by="lint 2.4.0-alpha6">
-
- <issue
- id="MissingSuperCall"
- message="Overriding method should call `super.onAnimationEnd`"
- errorLine1=" public void onAnimationEnd(Animation animation) {"
- errorLine2=" ~~~~~~~~~~~~~~">
- <location
- file="java/android/support/v4/app/FragmentManager.java"
- line="1604"
- column="29"/>
- </issue>
-
- <issue
- id="MissingSuperCall"
- message="Overriding method should call `super.onAnimationEnd`"
- errorLine1=" public void onAnimationEnd(Animation animation) {"
- errorLine2=" ~~~~~~~~~~~~~~">
- <location
- file="java/android/support/v4/app/FragmentManager.java"
- line="3935"
- column="21"/>
- </issue>
-
- <issue
- id="ResourceType"
- message="Expected resource of type string"
- errorLine1=" ? Float.parseFloat(res.getString(R.dimen.lb_browse_header_select_scale))"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/android/support/v17/leanback/widget/FocusHighlightHelper.java"
- line="276"
- column="58"/>
- </issue>
-
- <issue
- id="ResourceType"
- message="Expected resource of type string"
- errorLine1=" Integer.parseInt(res.getString(R.dimen.lb_browse_header_select_duration));"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/android/support/v17/leanback/widget/FocusHighlightHelper.java"
- line="279"
- column="56"/>
- </issue>
-
- <issue
- id="ResourceType"
- message="Expected resource of type anim or interpolator"
- errorLine1=" R.animator.lb_decelerator_4));"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="kitkat/android/support/v17/leanback/transition/LeanbackTransitionHelperKitKat.java"
- line="38"
- column="17"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 27 (DetailsOverviewRowPresenter)"
- errorLine1=" if (DEBUG) Log.v(TAG, "onLayoutChange " + v);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/widget/DetailsOverviewRowPresenter.java"
- line="178"
- column="34"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 27 (DetailsOverviewRowPresenter)"
- errorLine1=" Log.v(TAG, "checkFirstAndLast fromScroll " + fromScroll"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/widget/DetailsOverviewRowPresenter.java"
- line="237"
- column="23"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 36 (FullWidthDetailsOverviewRowPresenter)"
- errorLine1=" if (DEBUG) Log.v(TAG, "onLayoutChange " + v);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.java"
- line="236"
- column="34"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 36 (FullWidthDetailsOverviewRowPresenter)"
- errorLine1=" Log.v(TAG, "checkFirstAndLast fromScroll " + fromScroll"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.java"
- line="295"
- column="23"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 25 (GuidedStepSupportFragment)"
- errorLine1=" Log.w(TAG, "Fragment is already exists, likely calling ""
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/GuidedStepSupportFragment.java"
- line="642"
- column="19"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 25 (GuidedStepSupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "onCreate");"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/GuidedStepSupportFragment.java"
- line="1000"
- column="26"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 25 (GuidedStepSupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "onCreateView");"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/GuidedStepSupportFragment.java"
- line="1039"
- column="26"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 25 (GuidedStepSupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "Found guided step theme flag? " + found);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/GuidedStepSupportFragment.java"
- line="1239"
- column="26"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 25 (GuidedStepSupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "Found guided step theme reference? " + found);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/GuidedStepSupportFragment.java"
- line="1352"
- column="30"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 25 (GuidedStepSupportFragment)"
- errorLine1=" Log.e(TAG, "GuidedStepSupportFragment does not have an appropriate theme set.");"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/GuidedStepSupportFragment.java"
- line="1364"
- column="23"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 25 (OnboardingSupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "Found onboarding theme reference? " + found);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/OnboardingSupportFragment.java"
- line="552"
- column="30"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "onAnimationEnd " + mBgAlpha);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="148"
- column="30"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "setFadingEnabled " + enabled);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="236"
- column="26"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "tickle enabled " + mFadingEnabled + " isResumed " + isResumed());"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="313"
- column="26"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "onInterceptInputEvent hidden " + controlsHidden + " " + event);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="363"
- column="26"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "fraction " + fraction);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="481"
- column="38"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "fade " + fadeIn);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="577"
- column="26"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "requested fade in progress");"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="582"
- column="30"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "fade is no-op");"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="586"
- column="30"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "onAttachedToWindow " + vh.getViewHolder().view);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="770"
- column="30"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "setting alpha to 0");"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="772"
- column="34"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 30 (PlaybackOverlaySupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "onDetachedFromWindow " + vh.getViewHolder().view);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java"
- line="781"
- column="30"/>
- </issue>
-
- <issue
- id="LongLogTag"
- message="The logging tag can be at most 23 characters, was 27 (VerticalGridSupportFragment)"
- errorLine1=" if (DEBUG) Log.v(TAG, "grid selected position " + position);"
- errorLine2=" ~~~">
- <location
- file="src/android/support/v17/leanback/app/VerticalGridSupportFragment.java"
- line="120"
- column="30"/>
- </issue>
-
- <issue
- id="Orientation"
- message="No orientation specified, and the default is horizontal. This is a common source of bugs when children are added dynamically."
- errorLine1=" <LinearLayout"
- errorLine2=" ^">
- <location
- file="res/layout/lb_row_media_item.xml"
- line="63"
- column="13"/>
- </issue>
-
- <issue
- id="WrongConstant"
- message="Must be one of: ViewCompat.LAYOUT_DIRECTION_LTR, ViewCompat.LAYOUT_DIRECTION_RTL"
- errorLine1=" boolean isRtl = ViewCompat.getLayoutDirection(focused) == View.LAYOUT_DIRECTION_RTL;"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/android/support/v17/leanback/app/BrowseFragment.java"
- line="1029"
- column="71"/>
- </issue>
-
- <issue
- id="WrongConstant"
- message="Must be one of: ViewCompat.LAYOUT_DIRECTION_LTR, ViewCompat.LAYOUT_DIRECTION_RTL"
- errorLine1=" boolean isRtl = ViewCompat.getLayoutDirection(focused) == View.LAYOUT_DIRECTION_RTL;"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/android/support/v17/leanback/app/BrowseSupportFragment.java"
- line="1032"
- column="71"/>
- </issue>
+<issues format="4" by="lint 3.0.0-alpha5">
<issue
id="WrongConstant"
@@ -353,63 +12,4 @@
column="47"/>
</issue>
- <issue
- id="WrongConstant"
- message="Must be one of: View.VISIBLE, View.INVISIBLE, View.GONE"
- errorLine1=" v.setVisibility(mChildVisibility);"
- errorLine2=" ~~~~~~~~~~~~~~~~">
- <location
- file="src/android/support/v17/leanback/widget/GridLayoutManager.java"
- line="1566"
- column="37"/>
- </issue>
-
- <issue
- id="WrongConstant"
- message="Must be one of: View.VISIBLE, View.INVISIBLE, View.GONE"
- errorLine1=" getChildAt(i).setVisibility(mChildVisibility);"
- errorLine2=" ~~~~~~~~~~~~~~~~">
- <location
- file="src/android/support/v17/leanback/widget/GridLayoutManager.java"
- line="3476"
- column="45"/>
- </issue>
-
- <issue
- id="WrongConstant"
- message="Must be one of: ViewCompat.LAYOUT_DIRECTION_LTR, ViewCompat.LAYOUT_DIRECTION_RTL"
- errorLine1=" boolean isRtl = ViewCompat.getLayoutDirection(view) == View.LAYOUT_DIRECTION_RTL;"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/android/support/v17/leanback/widget/HorizontalHoverCardSwitcher.java"
- line="50"
- column="64"/>
- </issue>
-
- <issue
- id="WrongConstant"
- message="Must be one of: ViewCompat.LAYOUT_DIRECTION_LTR, ViewCompat.LAYOUT_DIRECTION_RTL"
- errorLine1=" == View.LAYOUT_DIRECTION_RTL;"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/android/support/v17/leanback/widget/TitleHelper.java"
- line="49"
- column="24"/>
- </issue>
-
- <issue
- id="RtlCompat"
- message="Inconsistent alignment specification between `textAlignment` and `gravity` attributes: was `center_vertical|end`, expected `start`"
- errorLine1=" android:textAlignment="viewStart""
- errorLine2=" ~~~~~~~~~">
- <location
- file="res/layout/lb_search_bar.xml"
- line="70"
- column="44"/>
- <location
- file="res/layout/lb_search_bar.xml"
- line="57"
- column="45"/>
- </issue>
-
</issues>
diff --git a/v17/leanback/res/animator/lb_decelerator_2.xml b/v17/leanback/res/anim/lb_decelerator_2.xml
similarity index 100%
rename from v17/leanback/res/animator/lb_decelerator_2.xml
rename to v17/leanback/res/anim/lb_decelerator_2.xml
diff --git a/v17/leanback/res/animator/lb_decelerator_4.xml b/v17/leanback/res/anim/lb_decelerator_4.xml
similarity index 100%
rename from v17/leanback/res/animator/lb_decelerator_4.xml
rename to v17/leanback/res/anim/lb_decelerator_4.xml
diff --git a/v17/leanback/res/animator-v21/lb_onboarding_description_enter.xml b/v17/leanback/res/animator-v21/lb_onboarding_description_enter.xml
new file mode 100644
index 0000000..3cb5843
--- /dev/null
+++ b/v17/leanback/res/animator-v21/lb_onboarding_description_enter.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2015 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <objectAnimator
+ android:propertyName="alpha"
+ android:valueFrom="0.0"
+ android:valueTo="1.0"
+ android:duration="533"
+ android:startOffset="@integer/lb_onboarding_header_description_delay"
+ android:interpolator="@android:interpolator/fast_out_slow_in" />
+ <objectAnimator
+ android:propertyName="translationY"
+ android:valueFrom="60dp"
+ android:valueTo="0dp"
+ android:duration="533"
+ android:startOffset="@integer/lb_onboarding_header_description_delay"
+ android:interpolator="@android:interpolator/fast_out_slow_in" />
+</set>
diff --git a/v17/leanback/res/animator-v21/lb_onboarding_logo_enter.xml b/v17/leanback/res/animator-v21/lb_onboarding_logo_enter.xml
new file mode 100644
index 0000000..76a4609
--- /dev/null
+++ b/v17/leanback/res/animator-v21/lb_onboarding_logo_enter.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2015 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <objectAnimator
+ android:propertyName="alpha"
+ android:valueFrom="0.0"
+ android:valueTo="1.0"
+ android:duration="333"
+ android:interpolator="@android:interpolator/linear_out_slow_in" />
+</set>
diff --git a/v17/leanback/res/animator-v21/lb_onboarding_logo_exit.xml b/v17/leanback/res/animator-v21/lb_onboarding_logo_exit.xml
new file mode 100644
index 0000000..40b618e
--- /dev/null
+++ b/v17/leanback/res/animator-v21/lb_onboarding_logo_exit.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2015 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <objectAnimator
+ android:propertyName="alpha"
+ android:valueFrom="1.0"
+ android:valueTo="0.0"
+ android:duration="666"
+ android:interpolator="@android:interpolator/fast_out_slow_in" />
+</set>
diff --git a/v17/leanback/res/animator-v21/lb_onboarding_page_indicator_enter.xml b/v17/leanback/res/animator-v21/lb_onboarding_page_indicator_enter.xml
new file mode 100644
index 0000000..e9fc46e
--- /dev/null
+++ b/v17/leanback/res/animator-v21/lb_onboarding_page_indicator_enter.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2015 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <objectAnimator
+ android:propertyName="alpha"
+ android:valueFrom="0.0"
+ android:valueTo="1.0"
+ android:duration="500"
+ android:interpolator="@android:interpolator/fast_out_slow_in" />
+</set>
diff --git a/v17/leanback/res/animator-v21/lb_onboarding_title_enter.xml b/v17/leanback/res/animator-v21/lb_onboarding_title_enter.xml
new file mode 100644
index 0000000..9b65b48
--- /dev/null
+++ b/v17/leanback/res/animator-v21/lb_onboarding_title_enter.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2015 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<set xmlns:android="http://schemas.android.com/apk/res/android">
+ <objectAnimator
+ android:propertyName="alpha"
+ android:valueFrom="0.0"
+ android:valueTo="1.0"
+ android:duration="533"
+ android:startOffset="@integer/lb_onboarding_header_title_delay"
+ android:interpolator="@android:interpolator/fast_out_slow_in" />
+ <objectAnimator
+ android:propertyName="translationY"
+ android:valueFrom="60dp"
+ android:valueTo="0dp"
+ android:duration="533"
+ android:startOffset="@integer/lb_onboarding_header_title_delay"
+ android:interpolator="@android:interpolator/fast_out_slow_in" />
+</set>
diff --git a/v17/leanback/res/animator/lb_onboarding_description_enter.xml b/v17/leanback/res/animator/lb_onboarding_description_enter.xml
index 3cb5843..d8393bd 100644
--- a/v17/leanback/res/animator/lb_onboarding_description_enter.xml
+++ b/v17/leanback/res/animator/lb_onboarding_description_enter.xml
@@ -21,13 +21,11 @@
android:valueFrom="0.0"
android:valueTo="1.0"
android:duration="533"
- android:startOffset="@integer/lb_onboarding_header_description_delay"
- android:interpolator="@android:interpolator/fast_out_slow_in" />
+ android:startOffset="@integer/lb_onboarding_header_description_delay" />
<objectAnimator
android:propertyName="translationY"
android:valueFrom="60dp"
android:valueTo="0dp"
android:duration="533"
- android:startOffset="@integer/lb_onboarding_header_description_delay"
- android:interpolator="@android:interpolator/fast_out_slow_in" />
+ android:startOffset="@integer/lb_onboarding_header_description_delay" />
</set>
diff --git a/v17/leanback/res/animator/lb_onboarding_logo_enter.xml b/v17/leanback/res/animator/lb_onboarding_logo_enter.xml
index 76a4609..5d8d762 100644
--- a/v17/leanback/res/animator/lb_onboarding_logo_enter.xml
+++ b/v17/leanback/res/animator/lb_onboarding_logo_enter.xml
@@ -20,6 +20,5 @@
android:propertyName="alpha"
android:valueFrom="0.0"
android:valueTo="1.0"
- android:duration="333"
- android:interpolator="@android:interpolator/linear_out_slow_in" />
+ android:duration="333" />
</set>
diff --git a/v17/leanback/res/animator/lb_onboarding_logo_exit.xml b/v17/leanback/res/animator/lb_onboarding_logo_exit.xml
index 40b618e..820ba8e 100644
--- a/v17/leanback/res/animator/lb_onboarding_logo_exit.xml
+++ b/v17/leanback/res/animator/lb_onboarding_logo_exit.xml
@@ -20,6 +20,5 @@
android:propertyName="alpha"
android:valueFrom="1.0"
android:valueTo="0.0"
- android:duration="666"
- android:interpolator="@android:interpolator/fast_out_slow_in" />
+ android:duration="666" />
</set>
diff --git a/v17/leanback/res/animator/lb_onboarding_page_indicator_enter.xml b/v17/leanback/res/animator/lb_onboarding_page_indicator_enter.xml
index e9fc46e..b8bd083 100644
--- a/v17/leanback/res/animator/lb_onboarding_page_indicator_enter.xml
+++ b/v17/leanback/res/animator/lb_onboarding_page_indicator_enter.xml
@@ -20,6 +20,5 @@
android:propertyName="alpha"
android:valueFrom="0.0"
android:valueTo="1.0"
- android:duration="500"
- android:interpolator="@android:interpolator/fast_out_slow_in" />
+ android:duration="500" />
</set>
diff --git a/v17/leanback/res/animator/lb_onboarding_title_enter.xml b/v17/leanback/res/animator/lb_onboarding_title_enter.xml
index 9b65b48..011f51c 100644
--- a/v17/leanback/res/animator/lb_onboarding_title_enter.xml
+++ b/v17/leanback/res/animator/lb_onboarding_title_enter.xml
@@ -21,13 +21,11 @@
android:valueFrom="0.0"
android:valueTo="1.0"
android:duration="533"
- android:startOffset="@integer/lb_onboarding_header_title_delay"
- android:interpolator="@android:interpolator/fast_out_slow_in" />
+ android:startOffset="@integer/lb_onboarding_header_title_delay" />
<objectAnimator
android:propertyName="translationY"
android:valueFrom="60dp"
android:valueTo="0dp"
android:duration="533"
- android:startOffset="@integer/lb_onboarding_header_title_delay"
- android:interpolator="@android:interpolator/fast_out_slow_in" />
+ android:startOffset="@integer/lb_onboarding_header_title_delay" />
</set>
diff --git a/v17/leanback/res/layout/lb_row_media_item.xml b/v17/leanback/res/layout/lb_row_media_item.xml
index b25e922..e76e281 100644
--- a/v17/leanback/res/layout/lb_row_media_item.xml
+++ b/v17/leanback/res/layout/lb_row_media_item.xml
@@ -62,6 +62,7 @@
<LinearLayout
android:id="@+id/mediaItemActionsContainer"
+ android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:paddingStart="16dip" />
diff --git a/v17/leanback/res/layout/lb_search_bar.xml b/v17/leanback/res/layout/lb_search_bar.xml
index 37cdfb3..73a5985 100644
--- a/v17/leanback/res/layout/lb_search_bar.xml
+++ b/v17/leanback/res/layout/lb_search_bar.xml
@@ -54,7 +54,7 @@
android:id="@+id/lb_search_text_editor"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:layout_gravity="center_vertical|end"
+ android:layout_gravity="center_vertical|start"
android:layout_marginStart="@dimen/lb_search_bar_edit_text_margin_start"
android:layout_centerVertical="true"
android:cursorVisible="true"
diff --git a/v17/leanback/res/transition-v21/lb_title_out.xml b/v17/leanback/res/transition-v21/lb_title_out.xml
index 69735ab..2402857 100644
--- a/v17/leanback/res/transition-v21/lb_title_out.xml
+++ b/v17/leanback/res/transition-v21/lb_title_out.xml
@@ -18,7 +18,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:lb="http://schemas.android.com/apk/res-auto"
class="android.support.v17.leanback.transition.SlideKitkat"
- android:interpolator="@animator/lb_decelerator_2"
+ android:interpolator="@anim/lb_decelerator_2"
lb:lb_slideEdge="top" >
<targets>
<target android:targetId="@id/browse_title_group" />
diff --git a/v17/leanback/res/values-v18/themes.xml b/v17/leanback/res/values-v18/themes.xml
new file mode 100644
index 0000000..9fc7722
--- /dev/null
+++ b/v17/leanback/res/values-v18/themes.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright (C) 2014 The Android Open Source Project
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<resources>
+ <style name="Theme.LeanbackBase" parent="android:Theme.Holo.NoActionBar">
+ <item name="playbackProgressPrimaryColor">@color/lb_playback_progress_color_no_theme</item>
+ <item name="playbackControlsIconHighlightColor">@color/lb_playback_icon_highlight_no_theme</item>
+ <item name="defaultBrandColor">@color/lb_default_brand_color</item>
+ <item name="defaultBrandColorDark">@color/lb_default_brand_color_dark</item>
+
+ <item name="android:windowOverscan">true</item>
+ <item name="guidedStepTheme">@style/Theme.Leanback.GuidedStep</item>
+ </style>
+</resources>
diff --git a/v17/leanback/res/values-v21/styles.xml b/v17/leanback/res/values-v21/styles.xml
index 89029c4..cd81934 100644
--- a/v17/leanback/res/values-v21/styles.xml
+++ b/v17/leanback/res/values-v21/styles.xml
@@ -25,4 +25,9 @@
<item name="android:background">@drawable/lb_action_bg</item>
</style>
+ <style name="Widget.Leanback.OnboardingStartButtonStyleBase">
+ <item name="android:elevation">1.5dp</item>
+ <item name="android:stateListAnimator">@null</item>
+ </style>
+
</resources>
\ No newline at end of file
diff --git a/v17/leanback/res/values-v21/themes.xml b/v17/leanback/res/values-v21/themes.xml
index 886077a..4e5bd5a 100644
--- a/v17/leanback/res/values-v21/themes.xml
+++ b/v17/leanback/res/values-v21/themes.xml
@@ -26,10 +26,49 @@
<item name="android:windowOverscan">true</item>
<item name="guidedStepTheme">@style/Theme.Leanback.GuidedStep</item>
+
+ <!-- android:windowSharedElementEnterTransition is kept for backward compatibility for apps still refer
+ to Theme.Leanback, app should use Theme.Leanback.Details instead -->
+ <item name="android:windowSharedElementEnterTransition">@transition/lb_shared_element_enter_transition</item>
+ <!-- android:windowSharedElementReturnTransition is kept for backward compatibility for apps still refer
+ to Theme.Leanback, app should use Theme.Leanback.Details instead -->
+ <item name="android:windowSharedElementReturnTransition">@transition/lb_shared_element_return_transition</item>
+ <item name="android:windowEnterTransition">@transition/lb_enter_transition</item>
+ <item name="android:windowReturnTransition">@transition/lb_return_transition</item>
+ <item name="android:windowTransitionBackgroundFadeDuration">350</item>
+
+ </style>
+
+ <style name="Theme.Leanback.Browse" parent="Theme.Leanback">
+ <item name="android:windowEnterTransition">@transition/lb_browse_enter_transition</item>
+ <item name="android:windowReturnTransition">@transition/lb_browse_return_transition</item>
+ </style>
+
+ <style name="Theme.Leanback.VerticalGrid" parent="Theme.Leanback">
+ <item name="android:windowEnterTransition">@transition/lb_vertical_grid_enter_transition</item>
+ <item name="android:windowReturnTransition">@transition/lb_vertical_grid_return_transition</item>
+ </style>
+
+ <style name="Theme.Leanback.Details" parent="Theme.Leanback">
+ <item name="android:windowEnterTransition">@transition/lb_details_enter_transition</item>
+ <item name="android:windowReturnTransition">@transition/lb_details_return_transition</item>
+ <item name="android:windowSharedElementEnterTransition">@transition/lb_shared_element_enter_transition</item>
+ <item name="android:windowSharedElementReturnTransition">@transition/lb_shared_element_return_transition</item>
+ </style>
+
+ <style name="Theme.Leanback.Details.NoSharedElementTransition">
+ <item name="android:windowSharedElementEnterTransition">@null</item>
+ <item name="android:windowSharedElementReturnTransition">@null</item>
</style>
<style name="Theme.Leanback.GuidedStepBase" parent="Theme.LeanbackBase">
<item name="guidedActionsSelectorDrawable">@drawable/lb_selectable_item_rounded_rect</item>
+ <item name="android:windowEnterTransition">@transition/lb_guidedstep_activity_enter</item>
+ <item name="android:windowTransitionBackgroundFadeDuration">@integer/lb_guidedstep_activity_background_fade_duration_ms</item>
+ </style>
+
+ <style name="Theme.Leanback.GuidedStep.HalfBase" parent="Theme.Leanback.GuidedStep">
+ <item name="android:windowEnterTransition">@transition/lb_guidedstep_activity_enter_bottom</item>
</style>
</resources>
diff --git a/v17/leanback/res/values/styles.xml b/v17/leanback/res/values/styles.xml
index d10260d..b7e3da2 100644
--- a/v17/leanback/res/values/styles.xml
+++ b/v17/leanback/res/values/styles.xml
@@ -751,19 +751,20 @@
<item name="arrowBgColor">@color/lb_page_indicator_arrow_background</item>
</style>
+ <style name="Widget.Leanback.OnboardingStartButtonStyleBase">
+ </style>
+
<!-- Style for the start button in OnboardingFragment. -->
- <style name="Widget.Leanback.OnboardingStartButtonStyle">
+ <style name="Widget.Leanback.OnboardingStartButtonStyle" parent="Widget.Leanback.OnboardingStartButtonStyleBase">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">36dp</item>
<item name="android:layout_gravity">center_horizontal</item>
<item name="android:layout_marginBottom">4dp</item>
<item name="android:background">@drawable/lb_onboarding_start_button_background</item>
- <item name="android:elevation">1.5dp</item>
<item name="android:fontFamily">sans-serif</item>
<item name="android:gravity">center_vertical</item>
<item name="android:paddingEnd">24dp</item>
<item name="android:paddingStart">24dp</item>
- <item name="android:stateListAnimator">@null</item>
<item name="android:text">@string/lb_onboarding_get_started</item>
<item name="android:textAllCaps">true</item>
<item name="android:textColor">#014269</item>
diff --git a/v17/leanback/res/values/themes.xml b/v17/leanback/res/values/themes.xml
index e5b98f6..d40734e 100644
--- a/v17/leanback/res/values/themes.xml
+++ b/v17/leanback/res/values/themes.xml
@@ -24,7 +24,6 @@
<item name="defaultBrandColor">@color/lb_default_brand_color</item>
<item name="defaultBrandColorDark">@color/lb_default_brand_color_dark</item>
- <item name="android:windowOverscan">true</item>
<item name="guidedStepTheme">@style/Theme.Leanback.GuidedStep</item>
</style>
@@ -103,16 +102,6 @@
<item name="defaultSectionHeaderColor">?attr/defaultSearchColor</item>
- <!-- android:windowSharedElementEnterTransition is kept for backward compatibility for apps still refer
- to Theme.Leanback, app should use Theme.Leanback.Details instead -->
- <item name="android:windowSharedElementEnterTransition">@transition/lb_shared_element_enter_transition</item>
- <!-- android:windowSharedElementReturnTransition is kept for backward compatibility for apps still refer
- to Theme.Leanback, app should use Theme.Leanback.Details instead -->
- <item name="android:windowSharedElementReturnTransition">@transition/lb_shared_element_return_transition</item>
- <item name="android:windowEnterTransition">@transition/lb_enter_transition</item>
- <item name="android:windowReturnTransition">@transition/lb_return_transition</item>
- <item name="android:windowTransitionBackgroundFadeDuration">350</item>
-
<item name="overlayDimMaskColor">@color/lb_view_dim_mask_color</item>
<item name="overlayDimActiveLevel">@fraction/lb_view_active_level</item>
<item name="overlayDimDimmedLevel">@fraction/lb_view_dimmed_level</item>
@@ -120,26 +109,16 @@
</style>
<style name="Theme.Leanback.Browse" parent="Theme.Leanback">
- <item name="android:windowEnterTransition">@transition/lb_browse_enter_transition</item>
- <item name="android:windowReturnTransition">@transition/lb_browse_return_transition</item>
</style>
<style name="Theme.Leanback.VerticalGrid" parent="Theme.Leanback">
- <item name="android:windowEnterTransition">@transition/lb_vertical_grid_enter_transition</item>
- <item name="android:windowReturnTransition">@transition/lb_vertical_grid_return_transition</item>
</style>
<style name="Theme.Leanback.Details" parent="Theme.Leanback">
- <item name="android:windowEnterTransition">@transition/lb_details_enter_transition</item>
- <item name="android:windowReturnTransition">@transition/lb_details_return_transition</item>
- <item name="android:windowSharedElementEnterTransition">@transition/lb_shared_element_enter_transition</item>
- <item name="android:windowSharedElementReturnTransition">@transition/lb_shared_element_return_transition</item>
</style>
<!-- Theme for the details without shared element transition -->
<style name="Theme.Leanback.Details.NoSharedElementTransition">
- <item name="android:windowSharedElementEnterTransition">@null</item>
- <item name="android:windowSharedElementReturnTransition">@null</item>
</style>
<style name="Theme.Leanback.GuidedStepBase" parent="Theme.LeanbackBase">
@@ -150,7 +129,6 @@
<item name="guidedStepThemeFlag">true</item>
<item name="guidedStepHeightWeight">@string/lb_guidedstep_height_weight</item>
- <item name="android:windowEnterTransition">@transition/lb_guidedstep_activity_enter</item>
<!-- background applied to each GuidedStepFragment by default-->
<item name="guidedStepBackground">?android:attr/colorBackground</item>
@@ -158,7 +136,6 @@
But We still need a dumb background to keep the temporary translucent state last
as long as the background view fade-in transition -->
<item name="android:windowBackground">@android:color/transparent</item>
- <item name="android:windowTransitionBackgroundFadeDuration">@integer/lb_guidedstep_activity_background_fade_duration_ms</item>
<item name="guidedStepImeAppearingAnimation">@animator/lb_guidedstep_slide_up</item>
<item name="guidedStepImeDisappearingAnimation">@animator/lb_guidedstep_slide_down</item>
@@ -198,8 +175,10 @@
<item name="guidedStepKeyline">@string/lb_guidedstep_keyline</item>
</style>
- <style name="Theme.Leanback.GuidedStep.Half" parent="Theme.Leanback.GuidedStep">
- <item name="android:windowEnterTransition">@transition/lb_guidedstep_activity_enter_bottom</item>
+ <style name="Theme.Leanback.GuidedStep.HalfBase" parent="Theme.Leanback.GuidedStep">
+ </style>
+
+ <style name="Theme.Leanback.GuidedStep.Half" parent="Theme.Leanback.GuidedStep.HalfBase">
<item name="guidedStepHeightWeight">@string/lb_guidedstep_height_weight_translucent</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
diff --git a/v17/leanback/src/android/support/v17/leanback/app/BrowseFragment.java b/v17/leanback/src/android/support/v17/leanback/app/BrowseFragment.java
index 698b5f2..fd930ee 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/BrowseFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/BrowseFragment.java
@@ -1026,7 +1026,8 @@
? mHeadersFragment.getVerticalGridView() : mMainFragment.getView();
}
- boolean isRtl = ViewCompat.getLayoutDirection(focused) == View.LAYOUT_DIRECTION_RTL;
+ boolean isRtl = ViewCompat.getLayoutDirection(focused)
+ == ViewCompat.LAYOUT_DIRECTION_RTL;
int towardStart = isRtl ? View.FOCUS_RIGHT : View.FOCUS_LEFT;
int towardEnd = isRtl ? View.FOCUS_LEFT : View.FOCUS_RIGHT;
if (mCanShowHeaders && direction == towardStart) {
diff --git a/v17/leanback/src/android/support/v17/leanback/app/BrowseSupportFragment.java b/v17/leanback/src/android/support/v17/leanback/app/BrowseSupportFragment.java
index 34c6775..094fef9 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/BrowseSupportFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/BrowseSupportFragment.java
@@ -1029,7 +1029,8 @@
? mHeadersSupportFragment.getVerticalGridView() : mMainFragment.getView();
}
- boolean isRtl = ViewCompat.getLayoutDirection(focused) == View.LAYOUT_DIRECTION_RTL;
+ boolean isRtl = ViewCompat.getLayoutDirection(focused)
+ == ViewCompat.LAYOUT_DIRECTION_RTL;
int towardStart = isRtl ? View.FOCUS_RIGHT : View.FOCUS_LEFT;
int towardEnd = isRtl ? View.FOCUS_LEFT : View.FOCUS_RIGHT;
if (mCanShowHeaders && direction == towardStart) {
diff --git a/v17/leanback/src/android/support/v17/leanback/app/GuidedStepFragment.java b/v17/leanback/src/android/support/v17/leanback/app/GuidedStepFragment.java
index 33ec805..a01cf26 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/GuidedStepFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/GuidedStepFragment.java
@@ -234,7 +234,7 @@
@RestrictTo(LIBRARY_GROUP)
public static final int SLIDE_FROM_BOTTOM = 1;
- private static final String TAG = "GuidedStepFragment";
+ private static final String TAG = "GuidedStepF";
private static final boolean DEBUG = false;
/**
diff --git a/v17/leanback/src/android/support/v17/leanback/app/GuidedStepSupportFragment.java b/v17/leanback/src/android/support/v17/leanback/app/GuidedStepSupportFragment.java
index 9bd9b08..ed34548 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/GuidedStepSupportFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/GuidedStepSupportFragment.java
@@ -237,7 +237,7 @@
@RestrictTo(LIBRARY_GROUP)
public static final int SLIDE_FROM_BOTTOM = 1;
- private static final String TAG = "GuidedStepSupportFragment";
+ private static final String TAG = "GuidedStepF";
private static final boolean DEBUG = false;
/**
diff --git a/v17/leanback/src/android/support/v17/leanback/app/OnboardingFragment.java b/v17/leanback/src/android/support/v17/leanback/app/OnboardingFragment.java
index ab61c4a..5eb2784 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/OnboardingFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/OnboardingFragment.java
@@ -152,7 +152,7 @@
* @attr ref R.styleable#LeanbackOnboardingTheme_onboardingLogoStyle
*/
abstract public class OnboardingFragment extends Fragment {
- private static final String TAG = "OnboardingFragment";
+ private static final String TAG = "OnboardingF";
private static final boolean DEBUG = false;
private static final long LOGO_SPLASH_PAUSE_DURATION_MS = 1333;
diff --git a/v17/leanback/src/android/support/v17/leanback/app/OnboardingSupportFragment.java b/v17/leanback/src/android/support/v17/leanback/app/OnboardingSupportFragment.java
index 0c7cc4c..46c2a81 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/OnboardingSupportFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/OnboardingSupportFragment.java
@@ -155,7 +155,7 @@
* @attr ref R.styleable#LeanbackOnboardingTheme_onboardingLogoStyle
*/
abstract public class OnboardingSupportFragment extends Fragment {
- private static final String TAG = "OnboardingSupportFragment";
+ private static final String TAG = "OnboardingF";
private static final boolean DEBUG = false;
private static final long LOGO_SPLASH_PAUSE_DURATION_MS = 1333;
diff --git a/v17/leanback/src/android/support/v17/leanback/app/PlaybackOverlayFragment.java b/v17/leanback/src/android/support/v17/leanback/app/PlaybackOverlayFragment.java
index c934f6b..d4b532b 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/PlaybackOverlayFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/PlaybackOverlayFragment.java
@@ -96,7 +96,7 @@
}
}
- static final String TAG = "PlaybackOverlayFragment";
+ static final String TAG = "PlaybackOF";
static final boolean DEBUG = false;
private static final int ANIMATION_MULTIPLIER = 1;
diff --git a/v17/leanback/src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java b/v17/leanback/src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java
index ecabdaa..d751320 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/PlaybackOverlaySupportFragment.java
@@ -99,7 +99,7 @@
}
}
- static final String TAG = "PlaybackOverlaySupportFragment";
+ static final String TAG = "PlaybackOF";
static final boolean DEBUG = false;
private static final int ANIMATION_MULTIPLIER = 1;
diff --git a/v17/leanback/src/android/support/v17/leanback/app/VerticalGridFragment.java b/v17/leanback/src/android/support/v17/leanback/app/VerticalGridFragment.java
index 9e80dfc..5cf5799 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/VerticalGridFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/VerticalGridFragment.java
@@ -38,7 +38,7 @@
* an {@link ObjectAdapter}.
*/
public class VerticalGridFragment extends BaseFragment {
- static final String TAG = "VerticalGridFragment";
+ static final String TAG = "VerticalGF";
static boolean DEBUG = false;
private ObjectAdapter mAdapter;
diff --git a/v17/leanback/src/android/support/v17/leanback/app/VerticalGridSupportFragment.java b/v17/leanback/src/android/support/v17/leanback/app/VerticalGridSupportFragment.java
index 6327790..a38bac5 100644
--- a/v17/leanback/src/android/support/v17/leanback/app/VerticalGridSupportFragment.java
+++ b/v17/leanback/src/android/support/v17/leanback/app/VerticalGridSupportFragment.java
@@ -41,7 +41,7 @@
* an {@link ObjectAdapter}.
*/
public class VerticalGridSupportFragment extends BaseSupportFragment {
- static final String TAG = "VerticalGridSupportFragment";
+ static final String TAG = "VerticalGF";
static boolean DEBUG = false;
private ObjectAdapter mAdapter;
diff --git a/v17/leanback/src/android/support/v17/leanback/transition/LeanbackTransitionHelper.java b/v17/leanback/src/android/support/v17/leanback/transition/LeanbackTransitionHelper.java
index 2598969..f97d64e 100644
--- a/v17/leanback/src/android/support/v17/leanback/transition/LeanbackTransitionHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/transition/LeanbackTransitionHelper.java
@@ -17,6 +17,7 @@
import android.content.Context;
import android.os.Build;
+import android.support.annotation.RequiresApi;
import android.support.annotation.RestrictTo;
import android.support.v17.leanback.R;
@@ -36,6 +37,7 @@
* Kitkat does not allow load custom transition from resource, calling
* LeanbackTransitionHelperKitKat to build custom transition in code.
*/
+ @RequiresApi(19)
static class LeanbackTransitionHelperKitKatImpl implements LeanbackTransitionHelperVersion {
@Override
diff --git a/v17/leanback/src/android/support/v17/leanback/transition/TransitionHelper.java b/v17/leanback/src/android/support/v17/leanback/transition/TransitionHelper.java
index 9f92066..de8b374 100644
--- a/v17/leanback/src/android/support/v17/leanback/transition/TransitionHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/transition/TransitionHelper.java
@@ -17,6 +17,7 @@
import android.content.Context;
import android.os.Build;
+import android.support.annotation.RequiresApi;
import android.support.annotation.RestrictTo;
import android.view.Gravity;
import android.view.View;
@@ -427,6 +428,7 @@
/**
* Implementation used on KitKat (and above).
*/
+ @RequiresApi(19)
static class TransitionHelperKitkatImpl extends TransitionHelperStubImpl {
@Override
@@ -566,6 +568,7 @@
}
}
+ @RequiresApi(21)
static final class TransitionHelperApi21Impl extends TransitionHelperKitkatImpl {
@Override
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/BackgroundHelper.java b/v17/leanback/src/android/support/v17/leanback/widget/BackgroundHelper.java
index 62d94d2..6bc2462 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/BackgroundHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/BackgroundHelper.java
@@ -19,6 +19,7 @@
import android.graphics.drawable.Drawable;
import android.os.Build;
+import android.support.annotation.RequiresApi;
import android.support.annotation.RestrictTo;
import android.view.View;
@@ -47,6 +48,7 @@
}
}
+ @RequiresApi(19)
private static final class BackgroundHelperKitkatImpl implements BackgroundHelperVersionImpl {
BackgroundHelperKitkatImpl() {
}
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/BaseCardView.java b/v17/leanback/src/android/support/v17/leanback/widget/BaseCardView.java
index 9ca331f..735bb99 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/BaseCardView.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/BaseCardView.java
@@ -891,7 +891,7 @@
* @param source The layout params to copy from.
*/
public LayoutParams(LayoutParams source) {
- super(source);
+ super((ViewGroup.MarginLayoutParams) source);
this.viewType = source.viewType;
}
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/DetailsOverviewRowPresenter.java b/v17/leanback/src/android/support/v17/leanback/widget/DetailsOverviewRowPresenter.java
index d484bcc..98b9f78 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/DetailsOverviewRowPresenter.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/DetailsOverviewRowPresenter.java
@@ -61,7 +61,7 @@
@Deprecated
public class DetailsOverviewRowPresenter extends RowPresenter {
- static final String TAG = "DetailsOverviewRowPresenter";
+ static final String TAG = "DetailsOverviewRowP";
static final boolean DEBUG = false;
private static final int MORE_ACTIONS_FADE_MS = 100;
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/FocusHighlightHelper.java b/v17/leanback/src/android/support/v17/leanback/widget/FocusHighlightHelper.java
index 394142d..49565ab 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/FocusHighlightHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/FocusHighlightHelper.java
@@ -25,6 +25,7 @@
import android.support.v17.leanback.app.HeadersFragment;
import android.support.v17.leanback.graphics.ColorOverlayDimmer;
import android.support.v7.widget.RecyclerView;
+import android.util.TypedValue;
import android.view.View;
import android.view.ViewParent;
import android.view.animation.AccelerateDecelerateInterpolator;
@@ -272,11 +273,15 @@
void lazyInit(View view) {
if (!mInitialized) {
Resources res = view.getResources();
- mSelectScale = mScaleEnabled
- ? Float.parseFloat(res.getString(R.dimen.lb_browse_header_select_scale))
- : 1f;
- mDuration =
- Integer.parseInt(res.getString(R.dimen.lb_browse_header_select_duration));
+ TypedValue value = new TypedValue();
+ if (mScaleEnabled) {
+ res.getValue(R.dimen.lb_browse_header_select_scale, value, true);
+ mSelectScale = value.getFloat();
+ } else {
+ mSelectScale = 1f;
+ }
+ res.getValue(R.dimen.lb_browse_header_select_duration, value, true);
+ mDuration = value.data;
mInitialized = true;
}
}
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/ForegroundHelper.java b/v17/leanback/src/android/support/v17/leanback/widget/ForegroundHelper.java
index 64cb769..4c2a857 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/ForegroundHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/ForegroundHelper.java
@@ -2,6 +2,7 @@
import android.graphics.drawable.Drawable;
import android.os.Build;
+import android.support.annotation.RequiresApi;
import android.view.View;
final class ForegroundHelper {
@@ -22,6 +23,7 @@
/**
* Implementation used on api 23 (and above).
*/
+ @RequiresApi(23)
private static final class ForegroundHelperApi23Impl implements ForegroundHelperVersionImpl {
ForegroundHelperApi23Impl() {
}
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.java b/v17/leanback/src/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.java
index 189dfe6..dad4414 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/FullWidthDetailsOverviewRowPresenter.java
@@ -62,7 +62,7 @@
*/
public class FullWidthDetailsOverviewRowPresenter extends RowPresenter {
- static final String TAG = "FullWidthDetailsOverviewRowPresenter";
+ static final String TAG = "FullWidthDetailsRP";
static final boolean DEBUG = false;
private static Rect sTmpRect = new Rect();
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/GridLayoutManager.java b/v17/leanback/src/android/support/v17/leanback/widget/GridLayoutManager.java
index 5ab9ba0..45d69ef 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/GridLayoutManager.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/GridLayoutManager.java
@@ -504,7 +504,8 @@
/**
* override child visibility
*/
- int mChildVisibility = -1;
+ @Visibility
+ int mChildVisibility;
/**
* Pixels that scrolled in secondary forward direction. Negative value means backward.
@@ -668,6 +669,7 @@
public GridLayoutManager(BaseGridView baseGridView) {
mBaseGridView = baseGridView;
+ mChildVisibility = -1;
}
public void setOrientation(int orientation) {
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/HorizontalHoverCardSwitcher.java b/v17/leanback/src/android/support/v17/leanback/widget/HorizontalHoverCardSwitcher.java
index eff822b..8aead19 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/HorizontalHoverCardSwitcher.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/HorizontalHoverCardSwitcher.java
@@ -47,7 +47,7 @@
// end edge with row view's end edge, otherwise align start edges.
view.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED);
MarginLayoutParams params = (MarginLayoutParams) view.getLayoutParams();
- boolean isRtl = ViewCompat.getLayoutDirection(view) == View.LAYOUT_DIRECTION_RTL;
+ boolean isRtl = ViewCompat.getLayoutDirection(view) == ViewCompat.LAYOUT_DIRECTION_RTL;
if (!isRtl && mCardLeft + view.getMeasuredWidth() > rightLimit) {
params.leftMargin = rightLimit - view.getMeasuredWidth();
} else if (isRtl && mCardLeft < leftLimit) {
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/RoundedRectHelper.java b/v17/leanback/src/android/support/v17/leanback/widget/RoundedRectHelper.java
index f9382ff..60fedf2 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/RoundedRectHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/RoundedRectHelper.java
@@ -13,8 +13,9 @@
*/
package android.support.v17.leanback.widget;
-import android.support.v17.leanback.R;
import android.os.Build;
+import android.support.annotation.RequiresApi;
+import android.support.v17.leanback.R;
import android.view.View;
/**
@@ -71,6 +72,7 @@
/**
* Implementation used on api 21 (and above).
*/
+ @RequiresApi(21)
private static final class Api21Impl implements Impl {
Api21Impl() {
}
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/ShadowHelper.java b/v17/leanback/src/android/support/v17/leanback/widget/ShadowHelper.java
index e5fb61d..cbdddbf 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/ShadowHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/ShadowHelper.java
@@ -14,6 +14,7 @@
package android.support.v17.leanback.widget;
import android.os.Build;
+import android.support.annotation.RequiresApi;
import android.view.View;
@@ -64,6 +65,7 @@
/**
* Implementation used on api 21 (and above).
*/
+ @RequiresApi(21)
private static final class ShadowHelperApi21Impl implements ShadowHelperVersionImpl {
ShadowHelperApi21Impl() {
}
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/StaticShadowHelper.java b/v17/leanback/src/android/support/v17/leanback/widget/StaticShadowHelper.java
index 4422d62..436668f 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/StaticShadowHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/StaticShadowHelper.java
@@ -16,6 +16,7 @@
package android.support.v17.leanback.widget;
import android.os.Build;
+import android.support.annotation.RequiresApi;
import android.view.ViewGroup;
@@ -64,6 +65,7 @@
/**
* Implementation used on JBMR2 (and above).
*/
+ @RequiresApi(19)
private static final class ShadowHelperJbmr2Impl implements ShadowHelperVersionImpl {
ShadowHelperJbmr2Impl() {
}
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/TitleHelper.java b/v17/leanback/src/android/support/v17/leanback/widget/TitleHelper.java
index f12d8d0..3aba59d 100644
--- a/v17/leanback/src/android/support/v17/leanback/widget/TitleHelper.java
+++ b/v17/leanback/src/android/support/v17/leanback/widget/TitleHelper.java
@@ -46,7 +46,7 @@
return mTitleView;
}
final boolean isRtl = ViewCompat.getLayoutDirection(focused)
- == View.LAYOUT_DIRECTION_RTL;
+ == ViewCompat.LAYOUT_DIRECTION_RTL;
final int forward = isRtl ? View.FOCUS_LEFT : View.FOCUS_RIGHT;
if (mTitleView.hasFocus() && (direction == View.FOCUS_DOWN || direction == forward)) {
return mSceneRoot;
diff --git a/v17/leanback/src/android/support/v17/leanback/widget/Visibility.java b/v17/leanback/src/android/support/v17/leanback/widget/Visibility.java
new file mode 100644
index 0000000..b16a2f9
--- /dev/null
+++ b/v17/leanback/src/android/support/v17/leanback/widget/Visibility.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.support.v17.leanback.widget;
+
+import static android.support.annotation.RestrictTo.Scope.LIBRARY_GROUP;
+
+import android.support.annotation.IntDef;
+import android.support.annotation.RestrictTo;
+import android.view.View;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** @hide */
+@RestrictTo(LIBRARY_GROUP)
+@IntDef({View.VISIBLE, View.INVISIBLE, View.GONE})
+@Retention(RetentionPolicy.SOURCE)
+public @interface Visibility {}