WIP: Add moveToCustomContentScreen method

To allow as to move to the -1 screen from GEL. Also added a
showWorkspace method to handle intents when we are in All Apps.

Related GEL CL at ag/357408

Change-Id: I0a4d03df2bf035d342b74f6c3c9b3fe9105f1c59
This commit is contained in:
Allan Wojciechowski
2013-09-12 10:48:23 +01:00
committed by Sandeep Siddhartha
parent d6214a7a63
commit af110e8603
2 changed files with 35 additions and 9 deletions
+11 -4
View File
@@ -1631,10 +1631,7 @@ public class Launcher extends Activity
// If we are already on home, then just animate back to the workspace,
// otherwise, just wait until onResume to set the state back to Workspace
if (alreadyOnHome) {
showWorkspace(true);
if (mWorkspace.isInOverviewMode()) {
mWorkspace.exitOverviewMode();
}
showWorkspace();
} else {
mOnResumeState = State.WORKSPACE;
}
@@ -1668,6 +1665,13 @@ public class Launcher extends Activity
}
}
protected void showWorkspace() {
showWorkspace(true);
if (mWorkspace.isInOverviewMode()) {
mWorkspace.exitOverviewMode();
}
}
@Override
public void onRestoreInstanceState(Bundle state) {
super.onRestoreInstanceState(state);
@@ -1941,6 +1945,9 @@ public class Launcher extends Activity
}
}
protected void moveToCustomContentScreen(boolean animate) {
mWorkspace.moveToCustomContentScreen(animate);
}
/**
* Process a shortcut drop.
*
+24 -5
View File
@@ -1333,7 +1333,7 @@ public class Workspace extends SmoothPagedView
}
private void updateStateForCustomContent(int screenCenter) {
if (hasCustomContent() && !isSmall() && !isSwitchingState()) {
if (hasCustomContent()) {
int index = mScreenOrder.indexOf(CUSTOM_CONTENT_SCREEN_ID);
int scrollDelta = getScrollForPage(index + 1) - getScrollX();
float translationX = Math.max(scrollDelta, 0);
@@ -4127,20 +4127,39 @@ public class Workspace extends SmoothPagedView
}
}
void moveToDefaultScreen(boolean animate) {
private void moveToScreen(int page, boolean animate) {
if (!isSmall()) {
if (animate) {
snapToPage(mDefaultPage);
snapToPage(page);
} else {
setCurrentPage(mDefaultPage);
setCurrentPage(page);
}
}
View child = getChildAt(mDefaultPage);
View child = getChildAt(page);
if (child != null) {
child.requestFocus();
}
}
void moveToDefaultScreen(boolean animate) {
moveToScreen(mDefaultPage, animate);
}
void moveToCustomContentScreen(boolean animate) {
if (hasCustomContent()) {
int ccIndex = getPageIndexForScreenId(CUSTOM_CONTENT_SCREEN_ID);
if (animate) {
snapToPage(ccIndex);
} else {
setCurrentPage(ccIndex);
}
View child = getChildAt(ccIndex);
if (child != null) {
child.requestFocus();
}
}
}
@Override
protected int getPageIndicatorMarker(int pageIndex) {
if (getScreenIdForPageIndex(pageIndex) == CUSTOM_CONTENT_SCREEN_ID) {