Fixing bug when model was not reflected properly on the UI.
If launcher submits a job, and then reloads before the job is executed, the correct model
is not reflected on the Launcher. In that case, we simply rebind the launcher
Change-Id: I380242a4de13e7b2bc326d1a076f0a974435999c
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index a1176f1..fdf468c 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -400,17 +400,22 @@
getStateManager().reapplyState();
// TODO: We can probably avoid rebind when only screen size changed.
- int currentPage = mWorkspace.getNextPage();
- if (mModel.startLoader(currentPage)) {
- mWorkspace.setCurrentPage(currentPage);
- setWorkspaceLoading(true);
- }
+ rebindModel();
}
mOldConfig.setTo(newConfig);
super.onConfigurationChanged(newConfig);
}
+ @Override
+ public void rebindModel() {
+ int currentPage = mWorkspace.getNextPage();
+ if (mModel.startLoader(currentPage)) {
+ mWorkspace.setCurrentPage(currentPage);
+ setWorkspaceLoading(true);
+ }
+ }
+
private void initDeviceProfile(InvariantDeviceProfile idp) {
// Load configuration-specific DeviceProfile
mDeviceProfile = idp.getDeviceProfile(this);
@@ -420,7 +425,7 @@
display.getSize(mwSize);
mDeviceProfile = mDeviceProfile.getMultiWindowProfile(this, mwSize);
}
- mModelWriter = mModel.getWriter(mDeviceProfile.isVerticalBarLayout());
+ mModelWriter = mModel.getWriter(mDeviceProfile.isVerticalBarLayout(), true);
}
public RotationHelper getRotationHelper() {