diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2018-03-14 17:51:49 -0700 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2018-03-19 20:02:34 -0700 |
commit | 7185dd63eb8942dec65c2babeb39ee6ec64b4533 (patch) | |
tree | bec53b0f31970f001716a95876de2306d3cc9f1a /src_ui_overrides/com/android/launcher3 | |
parent | 9d69c8da9a4f933cc700ef1672b4e60d34a2fb10 (diff) | |
download | android_packages_apps_Trebuchet-7185dd63eb8942dec65c2babeb39ee6ec64b4533.tar.gz android_packages_apps_Trebuchet-7185dd63eb8942dec65c2babeb39ee6ec64b4533.tar.bz2 android_packages_apps_Trebuchet-7185dd63eb8942dec65c2babeb39ee6ec64b4533.zip |
Changing the overviewState to show appsearch and floating header
Change-Id: I2cfd61cfc9978e4c8e4520f0f7217e49e7344c79
Diffstat (limited to 'src_ui_overrides/com/android/launcher3')
3 files changed, 28 insertions, 45 deletions
diff --git a/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsState.java b/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsState.java index 2acd29bc6..c05d30ccd 100644 --- a/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsState.java +++ b/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsState.java @@ -63,8 +63,8 @@ public class AllAppsState extends LauncherState { } @Override - public float getHoseatAlpha(Launcher launcher) { - return 0; + public int getVisibleElements(Launcher launcher) { + return ALL_APPS_HEADER | ALL_APPS_CONTENT; } @Override diff --git a/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java b/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java index 76b7e0d81..e495477f5 100644 --- a/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java +++ b/src_ui_overrides/com/android/launcher3/uioverrides/AllAppsSwipeController.java @@ -1,19 +1,3 @@ -/* - * 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 com.android.launcher3.uioverrides; import static com.android.launcher3.LauncherState.ALL_APPS; @@ -21,31 +5,34 @@ import static com.android.launcher3.LauncherState.NORMAL; import android.view.MotionEvent; +import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.Launcher; +import com.android.launcher3.touch.AbstractStateChangeTouchController; import com.android.launcher3.touch.SwipeDetector; -import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Direction; -import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Touch; import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; -import com.android.launcher3.util.VerticalSwipeController; /** - * Extension of {@link VerticalSwipeController} to switch between NORMAL and ALL_APPS state. + * TouchController to switch between NORMAL and ALL_APPS state. */ -public class AllAppsSwipeController extends VerticalSwipeController { - - private int mStartContainerType; +public class AllAppsSwipeController extends AbstractStateChangeTouchController { public AllAppsSwipeController(Launcher l) { - super(l, NORMAL); + super(l, SwipeDetector.VERTICAL); } @Override - protected boolean shouldInterceptTouch(MotionEvent ev) { + protected boolean canInterceptTouch(MotionEvent ev) { + if (mCurrentAnimation != null) { + // If we are already animating from a previous state, we can intercept. + return true; + } + if (AbstractFloatingView.getTopOpenView(mLauncher) != null) { + return false; + } if (!mLauncher.isInState(NORMAL) && !mLauncher.isInState(ALL_APPS)) { // Don't listen for the swipe gesture if we are already in some other state. return false; } - if (mLauncher.isInState(ALL_APPS) && !mLauncher.getAppsView().shouldContainerScroll(ev)) { return false; } @@ -56,8 +43,12 @@ public class AllAppsSwipeController extends VerticalSwipeController { protected int getSwipeDirection(MotionEvent ev) { if (mLauncher.isInState(ALL_APPS)) { mStartContainerType = ContainerType.ALLAPPS; + mFromState = ALL_APPS; + mToState = NORMAL; return SwipeDetector.DIRECTION_NEGATIVE; } else { + mFromState = NORMAL; + mToState = ALL_APPS; mStartContainerType = mLauncher.getDragLayer().isEventOverHotseat(ev) ? ContainerType.HOTSEAT : ContainerType.WORKSPACE; return SwipeDetector.DIRECTION_POSITIVE; @@ -65,14 +56,14 @@ public class AllAppsSwipeController extends VerticalSwipeController { } @Override - protected void onTransitionComplete(boolean wasFling, boolean stateChanged) { - if (stateChanged) { - // Transition complete. log the action - mLauncher.getUserEventDispatcher().logActionOnContainer( - wasFling ? Touch.FLING : Touch.SWIPE, - mLauncher.isInState(ALL_APPS) ? Direction.UP : Direction.DOWN, - mStartContainerType, - mLauncher.getWorkspace().getCurrentPage()); - } + protected float initCurrentAnimation() { + float range = getShiftRange(); + long maxAccuracy = (long) (2 * range); + mCurrentAnimation = mLauncher.getStateManager() + .createAnimationToNewWorkspace(mToState, maxAccuracy); + float startVerticalShift = mFromState.getVerticalProgress(mLauncher) * range; + float endVerticalShift = mToState.getVerticalProgress(mLauncher) * range; + float totalShift = endVerticalShift - startVerticalShift; + return 1 / totalShift; } } diff --git a/src_ui_overrides/com/android/launcher3/uioverrides/OverviewState.java b/src_ui_overrides/com/android/launcher3/uioverrides/OverviewState.java index 3dfbc401d..8def0d3cc 100644 --- a/src_ui_overrides/com/android/launcher3/uioverrides/OverviewState.java +++ b/src_ui_overrides/com/android/launcher3/uioverrides/OverviewState.java @@ -16,16 +16,8 @@ package com.android.launcher3.uioverrides; import static com.android.launcher3.LauncherAnimUtils.OVERVIEW_TRANSITION_MS; -import static com.android.launcher3.compat.AccessibilityManagerCompat.isAccessibilityEnabled; -import android.graphics.Rect; -import android.view.View; -import android.view.accessibility.AccessibilityNodeInfo; - -import com.android.launcher3.DeviceProfile; -import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; -import com.android.launcher3.Workspace; import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; /** |