Merge "Updating the all-apps discovery bounce animation" into ub-launcher3-dorval-polish2

This commit is contained in:
Sunny Goyal
2017-08-30 18:37:14 +00:00
committed by Android (Google) Code Review
9 changed files with 61 additions and 91 deletions

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 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.
*/
-->
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="2166"
android:repeatCount="5">
<propertyValuesHolder
android:propertyName="progress"
android:valueType="floatType">
<keyframe
android:fraction="0"
android:value="1f" />
<keyframe
android:fraction="0.346"
android:value="1f" />
<keyframe
android:fraction=".423"
android:interpolator="@interpolator/disco_bounce"
android:value="0.9438f" />
<keyframe
android:fraction="0.654"
android:interpolator="@interpolator/disco_bounce"
android:value="1f" />
<keyframe
android:fraction="1"
android:value="1f" />
</propertyValuesHolder>
</objectAnimator>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2016, The Android Open Source Project
** Copyright 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.
@@ -16,30 +16,20 @@
** limitations under the License.
*/
-->
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:ordering="sequentially"
android:startOffset="200">
android:ordering="sequentially">
<objectAnimator
android:duration="166"
android:interpolator="@interpolator/disco_bounce"
android:propertyName="progress"
android:duration="250"
android:interpolator="@interpolator/disco_bounce_section1"
android:startOffset="750"
android:valueFrom="1f"
android:valueTo=".94f"
android:valueType="floatType"/>
android:valueTo="0.9438f"
android:valueType="floatType" />
<objectAnimator
android:duration="500"
android:interpolator="@interpolator/disco_bounce"
android:propertyName="progress"
android:duration="216"
android:interpolator="@interpolator/disco_bounce_section2"
android:valueFrom=".94f"
android:valueTo="1.012f"
android:valueType="floatType"/>
<objectAnimator
android:propertyName="progress"
android:duration="234"
android:interpolator="@interpolator/disco_bounce_section3"
android:valueFrom="1.012f"
android:valueTo="1f"
android:valueType="floatType"/>
android:valueType="floatType" />
</set>

View File

@@ -16,7 +16,7 @@
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:controlX1="0.9"
android:controlY1="0"
android:controlX2="0.5"
android:controlY2="1"/>
android:controlX1="0.35"
android:controlY1="0"
android:controlX2="0.5"
android:controlY2="1" />

View File

@@ -1,22 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright (C) 2016 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
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:controlX1="0.9"
android:controlY1="0"
android:controlX2="0.6"
android:controlY2="1"/>

View File

@@ -1,22 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright (C) 2016 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
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:controlX1="0.1"
android:controlY1="0"
android:controlX2="0.7"
android:controlY2="1"/>

View File

@@ -272,7 +272,6 @@ public class Launcher extends BaseActivity
private IconCache mIconCache;
private LauncherAccessibilityDelegate mAccessibilityDelegate;
private final Handler mHandler = new Handler();
private boolean mIsResumeFromActionScreenOff;
private boolean mHasFocus = false;
private ObjectAnimator mScrimAnimator;
@@ -1046,7 +1045,6 @@ public class Launcher extends BaseActivity
if (shouldShowDiscoveryBounce()) {
mAllAppsController.showDiscoveryBounce();
}
mIsResumeFromActionScreenOff = false;
if (mLauncherCallbacks != null) {
mLauncherCallbacks.onResume();
}
@@ -1548,7 +1546,6 @@ public class Launcher extends BaseActivity
mAppsView.reset();
}
}
mIsResumeFromActionScreenOff = true;
mShouldFadeInScrim = true;
} else if (Intent.ACTION_USER_PRESENT.equals(action)) {
// ACTION_USER_PRESENT is sent after onStart/onResume. This covers the case where
@@ -3910,16 +3907,7 @@ public class Launcher extends BaseActivity
}
private boolean shouldShowDiscoveryBounce() {
if (mState != State.WORKSPACE) {
return false;
}
if (mLauncherCallbacks != null && mLauncherCallbacks.shouldShowDiscoveryBounce()) {
return true;
}
if (!mIsResumeFromActionScreenOff) {
return false;
}
return !mSharedPrefs.getBoolean(APPS_VIEW_SHOWN, false);
return mState == State.WORKSPACE && !mSharedPrefs.getBoolean(APPS_VIEW_SHOWN, false);
}
protected void moveWorkspaceToDefaultScreen() {

View File

@@ -95,6 +95,4 @@ public interface LauncherCallbacks {
int SEARCH_BAR_HEIGHT_NORMAL = 0, SEARCH_BAR_HEIGHT_TALL = 1;
/** Must return one of {@link #SEARCH_BAR_HEIGHT_NORMAL} or {@link #SEARCH_BAR_HEIGHT_TALL} */
int getSearchBarHeight();
boolean shouldShowDiscoveryBounce();
}

View File

@@ -99,7 +99,7 @@ public class AllAppsTransitionController implements TouchController, SwipeDetect
// Used in discovery bounce animation to provide the transition without workspace changing.
private boolean mIsTranslateWithoutWorkspace = false;
private AnimatorSet mDiscoBounceAnimation;
private Animator mDiscoBounceAnimation;
private GradientView mGradientView;
private SpringAnimation mSearchSpring;
@@ -421,8 +421,8 @@ public class AllAppsTransitionController implements TouchController, SwipeDetect
cancelDiscoveryAnimation();
// assumption is that this variable is always null
mDiscoBounceAnimation = (AnimatorSet) AnimatorInflater.loadAnimator(mLauncher,
R.anim.discovery_bounce);
mDiscoBounceAnimation = AnimatorInflater.loadAnimator(mLauncher,
R.animator.discovery_bounce);
mDiscoBounceAnimation.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationStart(Animator animator) {

View File

@@ -215,10 +215,5 @@ public class LauncherExtension extends Launcher {
@Override
public void onDetachedFromWindow() {
}
@Override
public boolean shouldShowDiscoveryBounce() {
return false;
}
}
}