mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-05 02:16:49 +00:00
Merge "Fix crash bug when splitting with animations disabled" into tm-dev
This commit is contained in:
@@ -107,7 +107,6 @@ public final class RecentsViewStateController extends
|
||||
*/
|
||||
private void handleSplitSelectionState(@NonNull LauncherState toState,
|
||||
@Nullable PendingAnimation builder) {
|
||||
LauncherState currentState = mLauncher.getStateManager().getState();
|
||||
boolean animate = builder != null;
|
||||
PagedOrientationHandler orientationHandler =
|
||||
((RecentsView) mLauncher.getOverviewPanel()).getPagedOrientationHandler();
|
||||
@@ -116,7 +115,7 @@ public final class RecentsViewStateController extends
|
||||
TASK_PRIMARY_SPLIT_TRANSLATION, TASK_SECONDARY_SPLIT_TRANSLATION,
|
||||
mLauncher.getDeviceProfile());
|
||||
|
||||
if (isSplitSelectionState(currentState, toState)) {
|
||||
if (toState == OVERVIEW_SPLIT_SELECT) {
|
||||
// Animation to "dismiss" selected taskView
|
||||
PendingAnimation splitSelectInitAnimation = mRecentsView.createSplitSelectInitAnimation(
|
||||
toState.getTransitionDuration(mLauncher));
|
||||
@@ -125,30 +124,18 @@ public final class RecentsViewStateController extends
|
||||
toState.getSplitSelectTranslation(mLauncher), LINEAR);
|
||||
splitSelectInitAnimation.setFloat(mRecentsView, taskViewsFloat.second, 0, LINEAR);
|
||||
|
||||
if (!animate && isSplitSelectionState(currentState, toState)) {
|
||||
if (!animate) {
|
||||
splitSelectInitAnimation.buildAnim().start();
|
||||
} else if (animate &&
|
||||
isSplitSelectionState(currentState, toState)) {
|
||||
} else {
|
||||
builder.add(splitSelectInitAnimation.buildAnim());
|
||||
}
|
||||
}
|
||||
|
||||
if (isSplitSelectionState(currentState, toState)) {
|
||||
mRecentsView.applySplitPrimaryScrollOffset();
|
||||
} else {
|
||||
mRecentsView.resetSplitPrimaryScrollOffset();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @return true if {@param toState} is {@link LauncherState#OVERVIEW_SPLIT_SELECT}
|
||||
* and {@param fromState} is not {@link LauncherState#OVERVIEW_SPLIT_SELECT}
|
||||
*/
|
||||
private boolean isSplitSelectionState(@NonNull LauncherState fromState,
|
||||
@NonNull LauncherState toState) {
|
||||
return fromState != OVERVIEW_SPLIT_SELECT && toState == OVERVIEW_SPLIT_SELECT;
|
||||
}
|
||||
|
||||
private void setAlphas(PropertySetter propertySetter, StateAnimationConfig config,
|
||||
LauncherState state) {
|
||||
float clearAllButtonAlpha = state.areElementsVisible(mLauncher, CLEAR_ALL_BUTTON) ? 1 : 0;
|
||||
|
||||
Reference in New Issue
Block a user