diff options
Diffstat (limited to 'quickstep/src/com/android')
3 files changed, 18 insertions, 5 deletions
diff --git a/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java b/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java index 864316095..44324cb2e 100644 --- a/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java +++ b/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java @@ -765,7 +765,7 @@ public abstract class QuickstepAppTransitionManagerImpl extends LauncherAppTrans LauncherAnimationRunner.AnimationResult result) { if (!mLauncher.hasBeenResumed()) { // If launcher is not resumed, wait until new async-frame after resume - mLauncher.setOnResumeCallback(() -> + mLauncher.addOnResumeCallback(() -> postAsyncCallback(mHandler, () -> onCreateAnimation(targetCompats, result))); return; diff --git a/quickstep/src/com/android/quickstep/ActivityControlHelper.java b/quickstep/src/com/android/quickstep/ActivityControlHelper.java index 8675c3e02..cd2c9cb1b 100644 --- a/quickstep/src/com/android/quickstep/ActivityControlHelper.java +++ b/quickstep/src/com/android/quickstep/ActivityControlHelper.java @@ -95,6 +95,8 @@ public interface ActivityControlHelper<T extends BaseDraggingActivity> { void onLaunchTaskFailed(T activity); + void onLaunchTaskSuccess(T activity); + interface ActivityInitListener { void register(); diff --git a/quickstep/src/com/android/quickstep/views/ShelfScrimView.java b/quickstep/src/com/android/quickstep/views/ShelfScrimView.java index b6ddb5fd1..63c8023f6 100644 --- a/quickstep/src/com/android/quickstep/views/ShelfScrimView.java +++ b/quickstep/src/com/android/quickstep/views/ShelfScrimView.java @@ -15,6 +15,7 @@ */ package com.android.quickstep.views; +import static com.android.launcher3.LauncherState.ALL_APPS_HEADER_EXTRA; import static com.android.launcher3.LauncherState.BACKGROUND_APP; import static com.android.launcher3.LauncherState.OVERVIEW; import static com.android.launcher3.anim.Interpolators.ACCEL; @@ -29,6 +30,7 @@ import android.graphics.Paint; import android.graphics.Path; import android.graphics.Path.Direction; import android.graphics.Path.Op; +import android.graphics.Rect; import android.util.AttributeSet; import android.view.animation.Interpolator; @@ -36,6 +38,7 @@ import com.android.launcher3.DeviceProfile; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.anim.Interpolators; +import com.android.launcher3.uioverrides.states.OverviewState; import com.android.launcher3.util.Themes; import com.android.launcher3.views.ScrimView; import com.android.quickstep.SysUINavigationMode; @@ -145,14 +148,22 @@ public class ShelfScrimView extends ScrimView implements NavigationModeChangeLis mRemainingScreenPathValid = false; mShiftRange = mLauncher.getAllAppsController().getShiftRange(); - mMidProgress = OVERVIEW.getVerticalProgress(mLauncher); - mMidAlpha = mMidProgress >= 1 ? 0 - : Themes.getAttrInteger(getContext(), R.attr.allAppsInterimScrimAlpha); + if ((OVERVIEW.getVisibleElements(mLauncher) & ALL_APPS_HEADER_EXTRA) == 0) { + mMidProgress = 1; + mMidAlpha = 0; + } else { + mMidAlpha = Themes.getAttrInteger(getContext(), R.attr.allAppsInterimScrimAlpha); + Rect hotseatPadding = dp.getHotseatLayoutPadding(); + int hotseatSize = dp.hotseatBarSizePx + dp.getInsets().bottom + - hotseatPadding.bottom - hotseatPadding.top; + float arrowTop = Math.min(hotseatSize, OverviewState.getDefaultSwipeHeight(dp)); + mMidProgress = 1 - (arrowTop / mShiftRange); + } mTopOffset = dp.getInsets().top - mShelfOffset; mShelfTopAtThreshold = mShiftRange * SCRIM_CATCHUP_THRESHOLD + mTopOffset; - updateColors(); } + updateColors(); updateDragHandleAlpha(); invalidate(); } |