diff options
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/launcher3/AppsCustomizePagedView.java | 6 | ||||
-rw-r--r-- | src/com/android/launcher3/AppsCustomizeTabHost.java | 11 | ||||
-rw-r--r-- | src/com/android/launcher3/CellLayout.java | 35 | ||||
-rw-r--r-- | src/com/android/launcher3/Cling.java | 7 | ||||
-rw-r--r-- | src/com/android/launcher3/DynamicGrid.java | 2 | ||||
-rw-r--r-- | src/com/android/launcher3/Launcher.java | 87 | ||||
-rw-r--r-- | src/com/android/launcher3/PagedView.java | 59 | ||||
-rw-r--r-- | src/com/android/launcher3/PagedViewIcon.java | 26 | ||||
-rw-r--r-- | src/com/android/launcher3/Workspace.java | 48 |
9 files changed, 150 insertions, 131 deletions
diff --git a/src/com/android/launcher3/AppsCustomizePagedView.java b/src/com/android/launcher3/AppsCustomizePagedView.java index 213e50a67..dd870e402 100644 --- a/src/com/android/launcher3/AppsCustomizePagedView.java +++ b/src/com/android/launcher3/AppsCustomizePagedView.java @@ -499,13 +499,7 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen if (mPressedIcon != null) { mPressedIcon.lockDrawableState(); } - - // NOTE: We want all transitions from launcher to act as if the wallpaper were enabled - // to be consistent. So re-enable the flag here, and we will re-disable it as necessary - // when Launcher resumes and we are still in AllApps. - mLauncher.updateWallpaperVisibility(true); mLauncher.startActivitySafely(v, appInfo.intent, appInfo); - } else if (v instanceof PagedViewWidget) { // Let the user know that they have to long press to add a widget if (mWidgetInstructionToast != null) { diff --git a/src/com/android/launcher3/AppsCustomizeTabHost.java b/src/com/android/launcher3/AppsCustomizeTabHost.java index 89e74b218..23feda3f9 100644 --- a/src/com/android/launcher3/AppsCustomizeTabHost.java +++ b/src/com/android/launcher3/AppsCustomizeTabHost.java @@ -22,6 +22,7 @@ import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.content.Context; import android.content.res.Resources; +import android.graphics.Color; import android.graphics.Rect; import android.util.AttributeSet; import android.view.LayoutInflater; @@ -81,13 +82,6 @@ public class AppsCustomizeTabHost extends TabHost implements LauncherTransitiona setOnTabChangedListener(this); } - void selectAppsTab() { - setContentTypeImmediate(AppsCustomizePagedView.ContentType.Applications); - } - void selectWidgetsTab() { - setContentTypeImmediate(AppsCustomizePagedView.ContentType.Widgets); - } - @Override public void setInsets(Rect insets) { mInsets.set(insets); @@ -203,6 +197,9 @@ public class AppsCustomizeTabHost extends TabHost implements LauncherTransitiona } private void onTabChangedEnd(AppsCustomizePagedView.ContentType type) { + int bgAlpha = (int) (255 * (getResources().getInteger( + R.integer.config_appsCustomizeSpringLoadedBgAlpha) / 100f)); + setBackgroundColor(Color.argb(bgAlpha, 0, 0, 0)); mAppsCustomizePane.setContentType(type); } diff --git a/src/com/android/launcher3/CellLayout.java b/src/com/android/launcher3/CellLayout.java index 30ca7376b..22492ac31 100644 --- a/src/com/android/launcher3/CellLayout.java +++ b/src/com/android/launcher3/CellLayout.java @@ -949,9 +949,11 @@ public class CellLayout extends ViewGroup { int heightSpecMode = MeasureSpec.getMode(heightMeasureSpec); int widthSize = MeasureSpec.getSize(widthMeasureSpec); int heightSize = MeasureSpec.getSize(heightMeasureSpec); + int childWidthSize = widthSize - (getPaddingLeft() + getPaddingRight()); + int childHeightSize = heightSize - (getPaddingTop() + getPaddingBottom()); if (mFixedCellWidth < 0 || mFixedCellHeight < 0) { - int cw = grid.calculateCellWidth(widthSize, mCountX); - int ch = grid.calculateCellHeight(heightSize, mCountY); + int cw = grid.calculateCellWidth(childWidthSize, mCountX); + int ch = grid.calculateCellHeight(childHeightSize, mCountY); if (cw != mCellWidth || ch != mCellHeight) { mCellWidth = cw; mCellHeight = ch; @@ -960,8 +962,8 @@ public class CellLayout extends ViewGroup { } } - int newWidth = widthSize; - int newHeight = heightSize; + int newWidth = childWidthSize; + int newHeight = childHeightSize; if (mFixedWidth > 0 && mFixedHeight > 0) { newWidth = mFixedWidth; newHeight = mFixedHeight; @@ -973,8 +975,8 @@ public class CellLayout extends ViewGroup { int numHeightGaps = mCountY - 1; if (mOriginalWidthGap < 0 || mOriginalHeightGap < 0) { - int hSpace = widthSize - getPaddingLeft() - getPaddingRight(); - int vSpace = heightSize - getPaddingTop() - getPaddingBottom(); + int hSpace = childWidthSize; + int vSpace = childHeightSize; int hFreeSpace = hSpace - (mCountX * mCellWidth); int vFreeSpace = vSpace - (mCountY * mCellHeight); mWidthGap = Math.min(mMaxGap, numWidthGaps > 0 ? (hFreeSpace / numWidthGaps) : 0); @@ -990,15 +992,19 @@ public class CellLayout extends ViewGroup { int maxHeight = 0; for (int i = 0; i < count; i++) { View child = getChildAt(i); - int childWidthMeasureSpec = MeasureSpec.makeMeasureSpec(newWidth - getPaddingLeft() - - getPaddingRight(), MeasureSpec.EXACTLY); - int childheightMeasureSpec = MeasureSpec.makeMeasureSpec(newHeight - getPaddingTop() - - getPaddingBottom(), MeasureSpec.EXACTLY); + int childWidthMeasureSpec = MeasureSpec.makeMeasureSpec(newWidth, + MeasureSpec.EXACTLY); + int childheightMeasureSpec = MeasureSpec.makeMeasureSpec(newHeight, + MeasureSpec.EXACTLY); child.measure(childWidthMeasureSpec, childheightMeasureSpec); maxWidth = Math.max(maxWidth, child.getMeasuredWidth()); maxHeight = Math.max(maxHeight, child.getMeasuredHeight()); } - setMeasuredDimension(maxWidth, maxHeight); + if (mFixedWidth > 0 && mFixedHeight > 0) { + setMeasuredDimension(maxWidth, maxHeight); + } else { + setMeasuredDimension(widthSize, heightSize); + } } @Override @@ -1006,8 +1012,11 @@ public class CellLayout extends ViewGroup { int count = getChildCount(); for (int i = 0; i < count; i++) { View child = getChildAt(i); - child.layout(getPaddingLeft(), getPaddingTop(), - r - l - getPaddingRight(), b - t - getPaddingBottom()); + int left = getPaddingLeft(); + int top = getPaddingTop(); + child.layout(left, top, + left + r - l, + top + b - t); } } diff --git a/src/com/android/launcher3/Cling.java b/src/com/android/launcher3/Cling.java index 963702ae2..7ca699030 100644 --- a/src/com/android/launcher3/Cling.java +++ b/src/com/android/launcher3/Cling.java @@ -24,6 +24,7 @@ import android.content.res.Resources; import android.content.res.TypedArray; import android.graphics.Bitmap; import android.graphics.Canvas; +import android.graphics.Color; import android.graphics.Paint; import android.graphics.PorterDuff; import android.graphics.PorterDuffXfermode; @@ -55,7 +56,7 @@ public class Cling extends FrameLayout implements Insettable, View.OnLongClickLi private static String FOLDER_LANDSCAPE = "folder_landscape"; private static String FOLDER_LARGE = "folder_large"; - private static float FIRST_RUN_CIRCLE_BUFFER_DPS = 40; + private static float FIRST_RUN_CIRCLE_BUFFER_DPS = 60; private static float WORKSPACE_INNER_CIRCLE_RADIUS_DPS = 50; private static float WORKSPACE_OUTER_CIRCLE_RADIUS_DPS = 60; private static float WORKSPACE_CIRCLE_Y_OFFSET_DPS = 30; @@ -101,8 +102,10 @@ public class Cling extends FrameLayout implements Insettable, View.OnLongClickLi mErasePaint.setAlpha(0); mErasePaint.setAntiAlias(true); + int circleColor = getResources().getColor( + R.color.first_run_cling_circle_background_color); mBubblePaint = new Paint(); - mBubblePaint.setColor(0xFFFFFF); + mBubblePaint.setColor(circleColor); mBubblePaint.setAntiAlias(true); mDotPaint = new Paint(); diff --git a/src/com/android/launcher3/DynamicGrid.java b/src/com/android/launcher3/DynamicGrid.java index 664a99cd0..bbf0e03fd 100644 --- a/src/com/android/launcher3/DynamicGrid.java +++ b/src/com/android/launcher3/DynamicGrid.java @@ -430,7 +430,7 @@ class DeviceProfile { lp.gravity = Gravity.BOTTOM; lp.width = LayoutParams.MATCH_PARENT; lp.height = hotseatBarHeightPx; - hotseat.setPadding(2 * edgeMarginPx, 0, + hotseat.findViewById(R.id.layout).setPadding(2 * edgeMarginPx, 0, 2 * edgeMarginPx, 0); } hotseat.setLayoutParams(lp); diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 3bbb39ee3..8959e7e09 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -274,6 +274,7 @@ public class Launcher extends Activity private boolean mVisible = false; private boolean mAttached = false; private static final boolean DISABLE_CLINGS = true; + private static final boolean DISABLE_CUSTOM_CLINGS = true; private static LocaleConfiguration sLocaleConfiguration = null; @@ -895,11 +896,6 @@ public class Launcher extends Activity @Override protected void onPause() { - // NOTE: We want all transitions from launcher to act as if the wallpaper were enabled - // to be consistent. So re-enable the flag here, and we will re-disable it as necessary - // when Launcher resumes and we are still in AllApps. - updateWallpaperVisibility(true); - // Ensure that items added to Launcher are queued until Launcher returns InstallShortcutReceiver.enableInstallQueue(); @@ -2646,16 +2642,6 @@ public class Launcher extends Activity view.setPivotY(view.getHeight() / 2.0f); } - void disableWallpaperIfInAllApps() { - // Only disable it if we are in all apps - if (isAllAppsVisible()) { - if (mAppsCustomizeTabHost != null && - !mAppsCustomizeTabHost.isTransitioning()) { - updateWallpaperVisibility(false); - } - } - } - private void setWorkspaceBackground(boolean workspace) { mLauncherView.setBackground(workspace ? mWorkspaceBackgroundDrawable : null); @@ -2815,7 +2801,6 @@ public class Launcher extends Activity @Override public void onAnimationStart(Animator animation) { - updateWallpaperVisibility(true); // Prepare the position toView.setTranslationX(0.0f); toView.setTranslationY(0.0f); @@ -2827,10 +2812,6 @@ public class Launcher extends Activity dispatchOnLauncherTransitionEnd(fromView, animated, false); dispatchOnLauncherTransitionEnd(toView, animated, false); - if (!animationCancelled) { - updateWallpaperVisibility(false); - } - // Hide the search bar if (mSearchDropTargetBar != null) { mSearchDropTargetBar.hideSearchBar(false); @@ -2904,7 +2885,6 @@ public class Launcher extends Activity dispatchOnLauncherTransitionPrepare(toView, animated, false); dispatchOnLauncherTransitionStart(toView, animated, false); dispatchOnLauncherTransitionEnd(toView, animated, false); - updateWallpaperVisibility(false); } } @@ -2941,7 +2921,6 @@ public class Launcher extends Activity } setPivotsForZoom(fromView, scaleFactor); - updateWallpaperVisibility(true); showHotseat(animated); if (animated) { final LauncherViewPropertyAnimator scaleAnim = @@ -2973,7 +2952,6 @@ public class Launcher extends Activity mStateAnimation.addListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { - updateWallpaperVisibility(true); fromView.setVisibility(View.GONE); dispatchOnLauncherTransitionEnd(fromView, animated, true); dispatchOnLauncherTransitionEnd(toView, animated, true); @@ -3011,30 +2989,13 @@ public class Launcher extends Activity } } - @Override - public void onWindowFocusChanged(boolean hasFocus) { - if (!hasFocus) { - // When another window occludes launcher (like the notification shade, or recents), - // ensure that we enable the wallpaper flag so that transitions are done correctly. - updateWallpaperVisibility(true); - } else { - // When launcher has focus again, disable the wallpaper if we are in AllApps - mWorkspace.postDelayed(new Runnable() { - @Override - public void run() { - disableWallpaperIfInAllApps(); - } - }, 500); - } - } - void showWorkspace(boolean animated) { showWorkspace(animated, null); } void showWorkspace(boolean animated, Runnable onCompleteRunnable) { if (mState != State.WORKSPACE) { - boolean wasInSpringLoadedMode = (mState == State.APPS_CUSTOMIZE_SPRING_LOADED); + boolean wasInSpringLoadedMode = (mState != State.WORKSPACE); mWorkspace.setVisibility(View.VISIBLE); hideAppsCustomizeHelper(State.WORKSPACE, animated, false, onCompleteRunnable); @@ -4166,16 +4127,33 @@ public class Launcher extends Activity // If we're not using the default workspace layout, replace workspace cling // with a custom workspace cling (usually specified in an overlay) // For now, only do this on tablets - if (mSharedPrefs.getInt(LauncherProvider.DEFAULT_WORKSPACE_RESOURCE_ID, 0) != 0 && - getResources().getBoolean(R.bool.config_useCustomClings)) { - // Use a custom cling - View cling = findViewById(R.id.workspace_cling); - ViewGroup clingParent = (ViewGroup) cling.getParent(); - int clingIndex = clingParent.indexOfChild(cling); - clingParent.removeViewAt(clingIndex); - View customCling = mInflater.inflate(R.layout.custom_workspace_cling, clingParent, false); - clingParent.addView(customCling, clingIndex); - customCling.setId(R.id.workspace_cling); + if (!DISABLE_CUSTOM_CLINGS) { + if (mSharedPrefs.getInt(LauncherProvider.DEFAULT_WORKSPACE_RESOURCE_ID, 0) != 0 && + getResources().getBoolean(R.bool.config_useCustomClings)) { + // Use a custom cling + View cling = findViewById(R.id.workspace_cling); + ViewGroup clingParent = (ViewGroup) cling.getParent(); + int clingIndex = clingParent.indexOfChild(cling); + clingParent.removeViewAt(clingIndex); + View customCling = mInflater.inflate(R.layout.custom_workspace_cling, clingParent, false); + clingParent.addView(customCling, clingIndex); + customCling.setId(R.id.workspace_cling); + } + } + Cling cling = (Cling) findViewById(R.id.first_run_cling); + if (cling != null) { + String sbHintStr = getFirstRunClingSearchBarHint(); + String ccHintStr = getFirstRunCustomContentHint(); + if (!sbHintStr.isEmpty()) { + TextView sbHint = (TextView) cling.findViewById(R.id.search_bar_hint); + sbHint.setText(sbHintStr); + sbHint.setVisibility(View.VISIBLE); + } + if (!ccHintStr.isEmpty()) { + TextView ccHint = (TextView) cling.findViewById(R.id.custom_content_hint); + ccHint.setText(ccHintStr); + ccHint.setVisibility(View.VISIBLE); + } } initCling(R.id.first_run_cling, null, false, true); } else { @@ -4183,6 +4161,13 @@ public class Launcher extends Activity } } + protected String getFirstRunClingSearchBarHint() { + return ""; + } + protected String getFirstRunCustomContentHint() { + return ""; + } + public void showFirstRunWorkspaceCling() { // Enable the clings only if they have not been dismissed before if (isClingsEnabled() && diff --git a/src/com/android/launcher3/PagedView.java b/src/com/android/launcher3/PagedView.java index 31a979760..1ae2943f6 100644 --- a/src/com/android/launcher3/PagedView.java +++ b/src/com/android/launcher3/PagedView.java @@ -911,8 +911,9 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc mPageScrolls[i] = childLeft - scrollOffset - offsetX; if (i != endIndex - delta) { + childLeft += childWidth + scrollOffset; int nextScrollOffset = (getViewportWidth() - getChildWidth(i + delta)) / 2; - childLeft += childWidth + nextScrollOffset; + childLeft += nextScrollOffset; } } } @@ -1039,9 +1040,6 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc protected int getChildOffset(int index) { if (index < 0 || index > getChildCount() - 1) return 0; - final boolean isRtl = isLayoutRtl(); - - if (isRtl) index = getChildCount() - index - 1; int offset = getPageAt(index).getLeft() - getViewportOffsetX(); return offset; @@ -1056,33 +1054,43 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc final int pageCount = getChildCount(); mTmpIntPoint[0] = mTmpIntPoint[1] = 0; + range[0] = -1; + range[1] = -1; + if (pageCount > 0) { int viewportWidth = getViewportWidth(); - int leftScreen = 0; - int rightScreen = 0; + int curScreen = 0; - for (leftScreen = getNextPage(); leftScreen >= 0; --leftScreen) { - View currPage = getPageAt(leftScreen); + int count = getChildCount(); + for (int i = 0; i < count; i++) { + View currPage = getPageAt(i); - // Check if the right edge of the page is in the viewport - mTmpIntPoint[0] = currPage.getMeasuredWidth(); + mTmpIntPoint[0] = 0; Utilities.getDescendantCoordRelativeToParent(currPage, this, mTmpIntPoint, false); - if (mTmpIntPoint[0] < 0) { - break; + if (mTmpIntPoint[0] > viewportWidth) { + if (range[0] == -1) { + continue; + } else { + break; + } } - } - for (rightScreen = getNextPage(); rightScreen < getChildCount(); ++rightScreen) { - View currPage = getPageAt(rightScreen); - // Check if the left edge of the page is in the viewport - mTmpIntPoint[0] = 0; + mTmpIntPoint[0] = currPage.getMeasuredWidth(); Utilities.getDescendantCoordRelativeToParent(currPage, this, mTmpIntPoint, false); - if (mTmpIntPoint[0] >= viewportWidth) { - break; + if (mTmpIntPoint[0] < 0) { + if (range[0] == -1) { + continue; + } else { + break; + } + } + curScreen = i; + if (range[0] < 0) { + range[0] = curScreen; } } - range[0] = Math.max(0, leftScreen); - range[1] = Math.min(rightScreen, getChildCount() - 1); + + range[1] = curScreen; } else { range[0] = -1; range[1] = -1; @@ -1558,8 +1566,13 @@ public abstract class PagedView extends ViewGroup implements ViewGroup.OnHierarc if (!mFreeScroll) { snapToPage(snapPage); } else { - mFreeScrollMinScrollX = getScrollForPage(mTempVisiblePagesRange[0]); - mFreeScrollMaxScrollX = getScrollForPage(mTempVisiblePagesRange[1]); + if (isLayoutRtl()) { + mFreeScrollMinScrollX = getScrollForPage(mTempVisiblePagesRange[1]); + mFreeScrollMaxScrollX = getScrollForPage(mTempVisiblePagesRange[0]); + } else { + mFreeScrollMinScrollX = getScrollForPage(mTempVisiblePagesRange[0]); + mFreeScrollMaxScrollX = getScrollForPage(mTempVisiblePagesRange[1]); + } if (getCurrentPage() < mTempVisiblePagesRange[0]) { setCurrentPage(mTempVisiblePagesRange[0]); diff --git a/src/com/android/launcher3/PagedViewIcon.java b/src/com/android/launcher3/PagedViewIcon.java index fa9ec5a15..c6d5e4996 100644 --- a/src/com/android/launcher3/PagedViewIcon.java +++ b/src/com/android/launcher3/PagedViewIcon.java @@ -18,6 +18,9 @@ package com.android.launcher3; import android.content.Context; import android.graphics.Bitmap; +import android.graphics.Canvas; +import android.graphics.Region; +import android.graphics.Region.Op; import android.util.AttributeSet; import android.util.TypedValue; import android.widget.TextView; @@ -99,4 +102,27 @@ public class PagedViewIcon extends TextView { setAlpha(1f); } } + + @Override + public void draw(Canvas canvas) { + // If text is transparent, don't draw any shadow + if (getCurrentTextColor() == getResources().getColor(android.R.color.transparent)) { + getPaint().clearShadowLayer(); + super.draw(canvas); + return; + } + + // We enhance the shadow by drawing the shadow twice + getPaint().setShadowLayer(BubbleTextView.SHADOW_LARGE_RADIUS, 0.0f, + BubbleTextView.SHADOW_Y_OFFSET, BubbleTextView.SHADOW_LARGE_COLOUR); + super.draw(canvas); + canvas.save(Canvas.CLIP_SAVE_FLAG); + canvas.clipRect(getScrollX(), getScrollY() + getExtendedPaddingTop(), + getScrollX() + getWidth(), + getScrollY() + getHeight(), Region.Op.INTERSECT); + getPaint().setShadowLayer(BubbleTextView.SHADOW_SMALL_RADIUS, 0.0f, 0.0f, + BubbleTextView.SHADOW_SMALL_COLOUR); + super.draw(canvas); + canvas.restore(); + } } diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index aab0a639a..284c57f70 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -933,8 +933,9 @@ public class Workspace extends SmoothPagedView boolean passRightSwipesToCustomContent = (mTouchDownTime - mCustomContentShowTime) > CUSTOM_CONTENT_GESTURE_DELAY; - if (deltaX > 0 && getScreenIdForPageIndex(getCurrentPage()) == CUSTOM_CONTENT_SCREEN_ID - && passRightSwipesToCustomContent) { + boolean swipeInIgnoreDirection = isLayoutRtl() ? deltaX < 0 : deltaX > 0; + if (swipeInIgnoreDirection && getScreenIdForPageIndex(getCurrentPage()) == + CUSTOM_CONTENT_SCREEN_ID && passRightSwipesToCustomContent) { // Pass swipes to the right to the custom content page. return; } @@ -1363,9 +1364,15 @@ public class Workspace extends SmoothPagedView if (hasCustomContent()) { int index = mScreenOrder.indexOf(CUSTOM_CONTENT_SCREEN_ID); int scrollDelta = getScrollForPage(index + 1) - getScrollX(); - translationX = Math.max(scrollDelta, 0); + translationX = scrollDelta; progress = (1.0f * scrollDelta) / (getScrollForPage(index + 1) - getScrollForPage(index)); + + if (isLayoutRtl()) { + translationX = Math.min(0, translationX); + } else { + translationX = Math.max(0, translationX); + } progress = Math.max(0, progress); } @@ -1396,7 +1403,10 @@ public class Workspace extends SmoothPagedView updateStateForCustomContent(screenCenter); enableHwLayersOnVisiblePages(); - if ((mOverScrollX < 0 && !hasCustomContent()) || mOverScrollX > mMaxScrollX) { + boolean shouldOverScroll = (mOverScrollX < 0 && (!hasCustomContent() || isLayoutRtl())) || + (mOverScrollX > mMaxScrollX && (!hasCustomContent() || !isLayoutRtl())); + + if (shouldOverScroll) { int index = 0; float pivotX = 0f; final float leftBiasedPivot = 0.25f; @@ -1836,10 +1846,10 @@ public class Workspace extends SmoothPagedView final boolean stateIsSpringLoaded = (state == State.SPRING_LOADED); final boolean stateIsSmall = (state == State.SMALL); final boolean stateIsOverview = (state == State.OVERVIEW); - float finalBackgroundAlpha = stateIsSpringLoaded ? 1.0f : 0f; + float finalBackgroundAlpha = (stateIsSpringLoaded || stateIsOverview) ? 1.0f : 0f; float finalHotseatAndPageIndicatorAlpha = (stateIsOverview || stateIsSmall) ? 0f : 1f; float finalOverviewPanelAlpha = stateIsOverview ? 1f : 0f; - float finalSearchBarAlpha = stateIsOverview ? 0f : 1f; + float finalSearchBarAlpha = !stateIsNormal ? 0f : 1f; float finalWorkspaceTranslationY = stateIsOverview ? getOverviewModeTranslationY() : 0; boolean zoomIn = true; @@ -1857,13 +1867,11 @@ public class Workspace extends SmoothPagedView } else if (stateIsOverview) { mNewScale = mOverviewModeShrinkFactor; } else if (stateIsSmall){ - mNewScale = mOverviewModeShrinkFactor - 0.1f; + mNewScale = mOverviewModeShrinkFactor - 0.3f; } if (oldStateIsNormal && stateIsSmall) { zoomIn = false; updateChildrenLayersEnabled(false); - } else { - finalBackgroundAlpha = 1.0f; } } final int duration = zoomIn ? @@ -1871,24 +1879,9 @@ public class Workspace extends SmoothPagedView getResources().getInteger(R.integer.config_appsCustomizeWorkspaceShrinkTime); for (int i = 0; i < getChildCount(); i++) { final CellLayout cl = (CellLayout) getChildAt(i); - float finalAlpha = (!mWorkspaceFadeInAdjacentScreens || stateIsSpringLoaded || - (i == mCurrentPage)) ? 1f : 0f; - float currentAlpha = cl.getShortcutsAndWidgets().getAlpha(); - float initialAlpha = currentAlpha; - - // Determine the pages alpha during the state transition - if ((oldStateIsSmall && stateIsNormal) || - (oldStateIsNormal && stateIsSmall)) { - // To/from workspace - only show the current page unless the transition is not - // animated and the animation end callback below doesn't run; - // or, if we're in spring-loaded mode - if (i == mCurrentPage || !animated || oldStateIsSpringLoaded) { - finalAlpha = 1f; - } else { - initialAlpha = 0f; - finalAlpha = 0f; - } - } + float finalAlpha = (!mWorkspaceFadeInAdjacentScreens || + (i == mCurrentPage)) && !stateIsSmall ? 1f : 0f; + float initialAlpha = cl.getShortcutsAndWidgets().getAlpha(); mOldAlphas[i] = initialAlpha; mNewAlphas[i] = finalAlpha; @@ -1917,7 +1910,6 @@ public class Workspace extends SmoothPagedView cl.setBackgroundAlpha(mNewBackgroundAlphas[i]); cl.setShortcutAndWidgetAlpha(mNewAlphas[i]); } else { - if (mOldAlphas[i] != mNewAlphas[i] || currentAlpha != mNewAlphas[i]) { LauncherViewPropertyAnimator alphaAnim = new LauncherViewPropertyAnimator(cl.getShortcutsAndWidgets()); |