diff options
Diffstat (limited to 'src/com/android/launcher3/Launcher.java')
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 813d091df..682758909 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -337,6 +337,7 @@ public class Launcher extends Activity private boolean mWorkspaceLoading = true; private boolean mDynamicGridUpdateRequired = false; + private boolean mDynamicGridResizeRequired = false; private boolean mPaused = true; private boolean mRestoring; @@ -457,7 +458,7 @@ public class Launcher extends Activity Runnable mUpdateDynamicGridRunnable = new Runnable() { @Override public void run() { - updateDynamicGrid(); + updateDynamicGrid(false); } }; @@ -469,7 +470,7 @@ public class Launcher extends Activity return; } - updateDynamicGrid(); + updateDynamicGrid(false); } }; @@ -1323,7 +1324,7 @@ public class Launcher extends Activity SettingsProvider.putInt(this, SettingsProvider.SETTINGS_UI_DYNAMIC_GRID_SIZE, size.getValue()); - setUpdateDynamicGrid(); + setUpdateDynamicGrid(true); } mOverviewSettingsPanel.notifyDataSetInvalidated(); @@ -5862,11 +5863,11 @@ public class Launcher extends Activity return effect == null ? TransitionEffect.TRANSITION_EFFECT_NONE : effect.getName(); } - public void updateDynamicGrid() { - updateDynamicGrid(mWorkspace.getRestorePage()); + public void updateDynamicGrid(boolean resizeGridIfNeeded) { + updateDynamicGrid(mWorkspace.getRestorePage(), resizeGridIfNeeded); } - public void updateDynamicGrid(int page) { + public void updateDynamicGrid(int page, boolean resizeGridIfNeeded) { mSearchDropTargetBar.setupQSB(Launcher.this); initializeDynamicGrid(true); @@ -5875,19 +5876,22 @@ public class Launcher extends Activity // Synchronized reload mModel.resetLoadedState(true, true); - mModel.startLoader(true, page); + int flag = resizeGridIfNeeded ? LauncherModel.LOADER_FLAG_RESIZE_GRID : + LauncherModel.LOADER_FLAG_NONE; + mModel.startLoader(true, page, flag); mWorkspace.updateCustomContentVisibility(); mAppDrawerAdapter.reset(); } - public void setUpdateDynamicGrid() { + public void setUpdateDynamicGrid(boolean resizeDynamicGrid) { mDynamicGridUpdateRequired = true; + mDynamicGridResizeRequired = resizeDynamicGrid; } public boolean updateGridIfNeeded() { if (mDynamicGridUpdateRequired) { - updateDynamicGrid(mWorkspace.getCurrentPage()); + updateDynamicGrid(mWorkspace.getCurrentPage(), mDynamicGridResizeRequired); mDynamicGridUpdateRequired = false; return true; } |