mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-03 09:26:51 +00:00
Merge "Hide overview actions when focused task is not snapped" into sc-v2-dev
This commit is contained in:
@@ -53,13 +53,15 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo
|
||||
@IntDef(flag = true, value = {
|
||||
HIDDEN_NON_ZERO_ROTATION,
|
||||
HIDDEN_NO_TASKS,
|
||||
HIDDEN_NO_RECENTS})
|
||||
HIDDEN_NO_RECENTS,
|
||||
HIDDEN_FOCUSED_SCROLL})
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
public @interface ActionsHiddenFlags { }
|
||||
|
||||
public static final int HIDDEN_NON_ZERO_ROTATION = 1 << 0;
|
||||
public static final int HIDDEN_NO_TASKS = 1 << 1;
|
||||
public static final int HIDDEN_NO_RECENTS = 1 << 2;
|
||||
public static final int HIDDEN_FOCUSED_SCROLL = 1 << 3;
|
||||
|
||||
@IntDef(flag = true, value = {
|
||||
DISABLED_SCROLLING,
|
||||
@@ -76,7 +78,6 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo
|
||||
private static final int INDEX_VISIBILITY_ALPHA = 1;
|
||||
private static final int INDEX_FULLSCREEN_ALPHA = 2;
|
||||
private static final int INDEX_HIDDEN_FLAGS_ALPHA = 3;
|
||||
private static final int INDEX_SCROLL_ALPHA = 4;
|
||||
|
||||
private final MultiValueAlpha mMultiValueAlpha;
|
||||
private View mSplitButton;
|
||||
@@ -196,10 +197,6 @@ public class OverviewActionsView<T extends OverlayUICallbacks> extends FrameLayo
|
||||
return mMultiValueAlpha.getProperty(INDEX_FULLSCREEN_ALPHA);
|
||||
}
|
||||
|
||||
public AlphaProperty getScrollAlpha() {
|
||||
return mMultiValueAlpha.getProperty(INDEX_SCROLL_ALPHA);
|
||||
}
|
||||
|
||||
private void updateHorizontalPadding() {
|
||||
setPadding(mInsets.left, 0, mInsets.right, 0);
|
||||
}
|
||||
|
||||
@@ -29,7 +29,6 @@ import static com.android.launcher3.LauncherAnimUtils.VIEW_ALPHA;
|
||||
import static com.android.launcher3.LauncherState.BACKGROUND_APP;
|
||||
import static com.android.launcher3.QuickstepTransitionManager.RECENTS_LAUNCH_DURATION;
|
||||
import static com.android.launcher3.Utilities.EDGE_NAV_BAR;
|
||||
import static com.android.launcher3.Utilities.boundToRange;
|
||||
import static com.android.launcher3.Utilities.mapToRange;
|
||||
import static com.android.launcher3.Utilities.squaredHypot;
|
||||
import static com.android.launcher3.Utilities.squaredTouchSlop;
|
||||
@@ -1691,28 +1690,28 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
|
||||
// After scrolling, update the visible task's data
|
||||
loadVisibleTaskData(TaskView.FLAG_UPDATE_ALL);
|
||||
|
||||
// After scrolling, update ActionsView's visibility.
|
||||
updateActionsViewScrollAlpha();
|
||||
}
|
||||
|
||||
// Update ActionsView's visibility when scroll changes.
|
||||
updateActionsViewFocusedScroll();
|
||||
|
||||
// Update the high res thumbnail loader state
|
||||
mModel.getThumbnailCache().getHighResLoadingState().setFlingingFast(isFlingingFast);
|
||||
return scrolling;
|
||||
}
|
||||
|
||||
private void updateActionsViewScrollAlpha() {
|
||||
float scrollAlpha = 1f;
|
||||
private void updateActionsViewFocusedScroll() {
|
||||
boolean hiddenFocusedScroll;
|
||||
if (showAsGrid()) {
|
||||
TaskView focusedTaskView = getFocusedTaskView();
|
||||
if (focusedTaskView != null) {
|
||||
float scrollDiff = Math.abs(getScrollForPage(indexOfChild(focusedTaskView))
|
||||
- mOrientationHandler.getPrimaryScroll(this));
|
||||
float delta = (mGridSideMargin - scrollDiff) / (float) mGridSideMargin;
|
||||
scrollAlpha = Utilities.boundToRange(delta, 0, 1);
|
||||
}
|
||||
hiddenFocusedScroll = focusedTaskView == null
|
||||
|| getScrollForPage(indexOfChild(focusedTaskView))
|
||||
!= mOrientationHandler.getPrimaryScroll(this);
|
||||
} else {
|
||||
hiddenFocusedScroll = false;
|
||||
}
|
||||
mActionsView.getScrollAlpha().setValue(scrollAlpha);
|
||||
mActionsView.updateHiddenFlags(OverviewActionsView.HIDDEN_FOCUSED_SCROLL,
|
||||
hiddenFocusedScroll);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -3091,7 +3090,7 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
setCurrentPage(pageToSnapTo);
|
||||
// Update various scroll depedent UI.
|
||||
dispatchScrollChanged();
|
||||
updateActionsViewScrollAlpha();
|
||||
updateActionsViewFocusedScroll();
|
||||
if (isClearAllHidden()) {
|
||||
mActionsView.updateDisabledFlags(OverviewActionsView.DISABLED_SCROLLING,
|
||||
false);
|
||||
@@ -4560,7 +4559,7 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
|
||||
public void setOverviewGridEnabled(boolean overviewGridEnabled) {
|
||||
if (mOverviewGridEnabled != overviewGridEnabled) {
|
||||
mOverviewGridEnabled = overviewGridEnabled;
|
||||
updateActionsViewScrollAlpha();
|
||||
updateActionsViewFocusedScroll();
|
||||
// Request layout to ensure scroll position is recalculated with updated mGridProgress.
|
||||
requestLayout();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user