Merge "Fixing empty page not removed when drag ends" into sc-dev

This commit is contained in:
Sunny Goyal
2021-03-05 06:29:33 +00:00
committed by Android (Google) Code Review

View File

@@ -446,6 +446,19 @@ public class Workspace extends PagedView<WorkspacePageIndicator>
}
updateChildrenLayersEnabled();
StateManager<LauncherState> stateManager = mLauncher.getStateManager();
stateManager.addStateListener(new StateManager.StateListener<LauncherState>() {
@Override
public void onStateTransitionComplete(LauncherState finalState) {
if (finalState == NORMAL) {
if (!mDeferRemoveExtraEmptyScreen) {
removeExtraEmptyScreen(true /* stripEmptyScreens */);
}
stateManager.removeStateListener(this);
}
}
});
mDragInfo = null;
mOutlineProvider = null;
mDragSourceInternal = null;
@@ -1877,19 +1890,6 @@ public class Workspace extends PagedView<WorkspacePageIndicator>
};
}
}
StateManager<LauncherState> stateManager = mLauncher.getStateManager();
stateManager.addStateListener(new StateManager.StateListener<LauncherState>() {
@Override
public void onStateTransitionComplete(LauncherState finalState) {
if (finalState == NORMAL) {
if (!mDeferRemoveExtraEmptyScreen) {
removeExtraEmptyScreen(true /* stripEmptyScreens */);
}
stateManager.removeStateListener(this);
}
}
});
mLauncher.getModelWriter().modifyItemInDatabase(info, container, screenId,
lp.cellX, lp.cellY, item.spanX, item.spanY);
} else {