diff options
Diffstat (limited to 'src/com/android/launcher3/Workspace.java')
-rw-r--r-- | src/com/android/launcher3/Workspace.java | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 59c870a8d..09a0a9889 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -574,6 +574,11 @@ public class Workspace extends PagedView mScreenOrder.add(insertIndex, screenId); addView(newScreen, insertIndex); + if (getDefaultScreenId() == screenId) { + int defaultPage = getPageIndexForScreenId(screenId); + moveToScreen(defaultPage, false); + } + LauncherAccessibilityDelegate delegate = LauncherAppState.getInstance().getAccessibilityDelegate(); if (delegate != null && delegate.isInAccessibleDrag()) { @@ -1546,6 +1551,10 @@ public class Workspace extends PagedView super.computeScroll(); if (mScrollWallpaper) mWallpaperOffset.syncWithScroll(); + + if (isInOverviewMode() && !isReordering(true)) { + mLauncher.updateDefaultScreenButton(); + } } @Override @@ -1985,6 +1994,9 @@ public class Workspace extends PagedView // Re-enable auto layout transitions for page deletion. enableLayoutTransitions(); + + // Show the default screen button + mLauncher.updateDefaultScreenButton(); } public boolean isInOverviewMode() { @@ -4436,7 +4448,7 @@ public class Workspace extends PagedView } void moveToDefaultScreen(boolean animate) { - moveToScreen(mDefaultPage, animate); + moveToScreen(getPageIndexForScreenId(getDefaultScreenId()), animate); } void moveToCustomContentScreen(boolean animate) { @@ -4521,6 +4533,11 @@ public class Workspace extends PagedView } } + private long getDefaultScreenId() { + return SettingsProvider.getLongCustomDefault(mLauncher, + SettingsProvider.SETTINGS_UI_HOMESCREEN_DEFAULT_SCREEN_ID, 1); + } + /** * Used as a workaround to ensure that the AppWidgetService receives the * PACKAGE_ADDED broadcast before updating widgets. |