Loading res/values/colors.xml +9 −8 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ <color name="outline_color">#FFFFFFFF</color> <color name="all_apps_divider_color">#1E000000</color> <color name="all_apps_caret_color">#FFFFFFFF</color> <color name="all_apps_container_color">#FFF2F2F2</color> <color name="spring_loaded_panel_color">#40FFFFFF</color> <color name="spring_loaded_highlighted_panel_border_color">#FFF</color> Loading src/com/android/launcher3/BaseContainerView.java +16 −5 Original line number Diff line number Diff line Loading @@ -36,7 +36,8 @@ public abstract class BaseContainerView extends FrameLayout { protected final int mHorizontalPadding; private final Drawable mRevealDrawable; private final InsetDrawable mRevealDrawable; private final ColorDrawable mDrawable; private View mRevealView; private View mContent; Loading @@ -63,14 +64,16 @@ public abstract class BaseContainerView extends FrameLayout { } if (FeatureFlags.LAUNCHER3_ALL_APPS_PULL_UP && this instanceof AllAppsContainerView) { mRevealDrawable = new InsetDrawable(new ColorDrawable(Color.WHITE), mHorizontalPadding, 0, mHorizontalPadding, 0); mDrawable = new ColorDrawable(); mRevealDrawable = new InsetDrawable(mDrawable, mHorizontalPadding, 0, mHorizontalPadding, 0); } else { TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.BaseContainerView, defStyleAttr, 0); mRevealDrawable = new InsetDrawable( a.getDrawable(R.styleable.BaseContainerView_revealBackground), mHorizontalPadding, 0, mHorizontalPadding, 0); mDrawable = null; a.recycle(); } } Loading @@ -82,8 +85,12 @@ public abstract class BaseContainerView extends FrameLayout { mContent = findViewById(R.id.main_content); mRevealView = findViewById(R.id.reveal_view); if (FeatureFlags.LAUNCHER3_ALL_APPS_PULL_UP && this instanceof AllAppsContainerView) { mRevealView.setBackground(mRevealDrawable); } else { mRevealView.setBackground(mRevealDrawable.getConstantState().newDrawable()); mContent.setBackground(mRevealDrawable); } // We let the content have a intent background, but still have full width. // This allows the scroll bar to be used responsive outside the background bounds as well. Loading @@ -97,4 +104,8 @@ public abstract class BaseContainerView extends FrameLayout { public final View getRevealView() { return mRevealView; } public void setRevealDrawableColor(int color) { mDrawable.setColor(color); } } src/com/android/launcher3/Hotseat.java +6 −3 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import android.graphics.Color; import android.graphics.Rect; import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.Drawable; import android.support.v4.graphics.ColorUtils; import android.util.AttributeSet; import android.view.LayoutInflater; import android.view.MotionEvent; Loading Loading @@ -67,7 +68,9 @@ public class Hotseat extends FrameLayout super(context, attrs, defStyle); mLauncher = (Launcher) context; mHasVerticalHotseat = mLauncher.getDeviceProfile().isVerticalBarLayout(); mBackground = new ColorDrawable(); mBackgroundColor = ColorUtils.setAlphaComponent( context.getColor(R.color.all_apps_container_color), 0); mBackground = new ColorDrawable(mBackgroundColor); setBackground(mBackground); } Loading Loading @@ -227,7 +230,7 @@ public class Hotseat extends FrameLayout } } public int getBackgroundDrawableAlpha() { return Color.alpha(mBackgroundColor); public int getBackgroundDrawableColor() { return mBackgroundColor; } } src/com/android/launcher3/allapps/AllAppsContainerView.java +0 −2 Original line number Diff line number Diff line Loading @@ -366,9 +366,7 @@ public class AllAppsContainerView extends BaseContainerView implements DragSourc // TODO(hyunyoungs): clean up setting the content and the reveal view. if (FeatureFlags.LAUNCHER3_ALL_APPS_PULL_UP) { getContentView().setBackground(null); getRevealView().setVisibility(View.VISIBLE); getRevealView().setAlpha(AllAppsTransitionController.ALL_APPS_FINAL_ALPHA); } } Loading src/com/android/launcher3/allapps/AllAppsTransitionController.java +12 −8 Original line number Diff line number Diff line Loading @@ -3,7 +3,9 @@ package com.android.launcher3.allapps; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; import android.animation.ArgbEvaluator; import android.animation.ObjectAnimator; import android.graphics.Color; import android.util.Log; import android.view.MotionEvent; import android.view.View; Loading Loading @@ -43,14 +45,14 @@ public class AllAppsTransitionController implements TouchController, VerticalPul private final Interpolator mDecelInterpolator = new DecelerateInterpolator(1f); private static final float ANIMATION_DURATION = 1200; public static final float ALL_APPS_FINAL_ALPHA = .9f; private static final float PARALLAX_COEFFICIENT = .125f; private AllAppsContainerView mAppsView; private int mAllAppsBackgroundColor; private Workspace mWorkspace; private Hotseat mHotseat; private float mHotseatBackgroundAlpha; private int mHotseatBackgroundColor; private ObjectAnimator mCaretAnimator; private final long mCaretAnimationDuration; Loading @@ -60,6 +62,7 @@ public class AllAppsTransitionController implements TouchController, VerticalPul private final Launcher mLauncher; private final VerticalPullDetector mDetector; private final ArgbEvaluator mEvaluator; // Animation in this class is controlled by a single variable {@link mShiftCurrent}. // Visually, it represents top y coordinate of the all apps container. Using the Loading Loading @@ -95,6 +98,8 @@ public class AllAppsTransitionController implements TouchController, VerticalPul R.integer.config_caretAnimationDuration); mCaretInterpolator = AnimationUtils.loadInterpolator(launcher, R.interpolator.caret_animation_interpolator); mEvaluator = new ArgbEvaluator(); mAllAppsBackgroundColor = launcher.getColor(R.color.all_apps_container_color); } @Override Loading Loading @@ -248,17 +253,15 @@ public class AllAppsTransitionController implements TouchController, VerticalPul mStatusBarHeight = mLauncher.getDragLayer().getInsets().top; mHotseat.setVisibility(View.VISIBLE); mHotseat.bringToFront(); if (!mLauncher.isAllAppsVisible()) { mLauncher.tryAndUpdatePredictedApps(); mHotseatBackgroundAlpha = mHotseat.getBackgroundDrawableAlpha() / 255f; mHotseatBackgroundColor = mHotseat.getBackgroundDrawableColor(); mHotseat.setBackgroundTransparent(true /* transparent */); mAppsView.setVisibility(View.VISIBLE); mAppsView.getContentView().setVisibility(View.VISIBLE); mAppsView.getContentView().setBackground(null); mAppsView.getRevealView().setVisibility(View.VISIBLE); mAppsView.getRevealView().setAlpha(mHotseatBackgroundAlpha); mAppsView.setRevealDrawableColor(mHotseatBackgroundColor); } } else { setProgress(mShiftCurrent); Loading Loading @@ -297,8 +300,9 @@ public class AllAppsTransitionController implements TouchController, VerticalPul float alpha = calcAlphaAllApps(progress); float workspaceHotseatAlpha = 1 - alpha; mAppsView.getRevealView().setAlpha(Math.min(ALL_APPS_FINAL_ALPHA, Math.max(mHotseatBackgroundAlpha, mDecelInterpolator.getInterpolation(alpha)))); int color = (Integer) mEvaluator.evaluate(mDecelInterpolator.getInterpolation(alpha), mHotseatBackgroundColor, mAllAppsBackgroundColor); mAppsView.setRevealDrawableColor(color); mAppsView.getContentView().setAlpha(alpha); mAppsView.setTranslationY(progress); mWorkspace.setWorkspaceYTranslationAndAlpha( Loading Loading
res/values/colors.xml +9 −8 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ <color name="outline_color">#FFFFFFFF</color> <color name="all_apps_divider_color">#1E000000</color> <color name="all_apps_caret_color">#FFFFFFFF</color> <color name="all_apps_container_color">#FFF2F2F2</color> <color name="spring_loaded_panel_color">#40FFFFFF</color> <color name="spring_loaded_highlighted_panel_border_color">#FFF</color> Loading
src/com/android/launcher3/BaseContainerView.java +16 −5 Original line number Diff line number Diff line Loading @@ -36,7 +36,8 @@ public abstract class BaseContainerView extends FrameLayout { protected final int mHorizontalPadding; private final Drawable mRevealDrawable; private final InsetDrawable mRevealDrawable; private final ColorDrawable mDrawable; private View mRevealView; private View mContent; Loading @@ -63,14 +64,16 @@ public abstract class BaseContainerView extends FrameLayout { } if (FeatureFlags.LAUNCHER3_ALL_APPS_PULL_UP && this instanceof AllAppsContainerView) { mRevealDrawable = new InsetDrawable(new ColorDrawable(Color.WHITE), mHorizontalPadding, 0, mHorizontalPadding, 0); mDrawable = new ColorDrawable(); mRevealDrawable = new InsetDrawable(mDrawable, mHorizontalPadding, 0, mHorizontalPadding, 0); } else { TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.BaseContainerView, defStyleAttr, 0); mRevealDrawable = new InsetDrawable( a.getDrawable(R.styleable.BaseContainerView_revealBackground), mHorizontalPadding, 0, mHorizontalPadding, 0); mDrawable = null; a.recycle(); } } Loading @@ -82,8 +85,12 @@ public abstract class BaseContainerView extends FrameLayout { mContent = findViewById(R.id.main_content); mRevealView = findViewById(R.id.reveal_view); if (FeatureFlags.LAUNCHER3_ALL_APPS_PULL_UP && this instanceof AllAppsContainerView) { mRevealView.setBackground(mRevealDrawable); } else { mRevealView.setBackground(mRevealDrawable.getConstantState().newDrawable()); mContent.setBackground(mRevealDrawable); } // We let the content have a intent background, but still have full width. // This allows the scroll bar to be used responsive outside the background bounds as well. Loading @@ -97,4 +104,8 @@ public abstract class BaseContainerView extends FrameLayout { public final View getRevealView() { return mRevealView; } public void setRevealDrawableColor(int color) { mDrawable.setColor(color); } }
src/com/android/launcher3/Hotseat.java +6 −3 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import android.graphics.Color; import android.graphics.Rect; import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.Drawable; import android.support.v4.graphics.ColorUtils; import android.util.AttributeSet; import android.view.LayoutInflater; import android.view.MotionEvent; Loading Loading @@ -67,7 +68,9 @@ public class Hotseat extends FrameLayout super(context, attrs, defStyle); mLauncher = (Launcher) context; mHasVerticalHotseat = mLauncher.getDeviceProfile().isVerticalBarLayout(); mBackground = new ColorDrawable(); mBackgroundColor = ColorUtils.setAlphaComponent( context.getColor(R.color.all_apps_container_color), 0); mBackground = new ColorDrawable(mBackgroundColor); setBackground(mBackground); } Loading Loading @@ -227,7 +230,7 @@ public class Hotseat extends FrameLayout } } public int getBackgroundDrawableAlpha() { return Color.alpha(mBackgroundColor); public int getBackgroundDrawableColor() { return mBackgroundColor; } }
src/com/android/launcher3/allapps/AllAppsContainerView.java +0 −2 Original line number Diff line number Diff line Loading @@ -366,9 +366,7 @@ public class AllAppsContainerView extends BaseContainerView implements DragSourc // TODO(hyunyoungs): clean up setting the content and the reveal view. if (FeatureFlags.LAUNCHER3_ALL_APPS_PULL_UP) { getContentView().setBackground(null); getRevealView().setVisibility(View.VISIBLE); getRevealView().setAlpha(AllAppsTransitionController.ALL_APPS_FINAL_ALPHA); } } Loading
src/com/android/launcher3/allapps/AllAppsTransitionController.java +12 −8 Original line number Diff line number Diff line Loading @@ -3,7 +3,9 @@ package com.android.launcher3.allapps; import android.animation.Animator; import android.animation.AnimatorListenerAdapter; import android.animation.AnimatorSet; import android.animation.ArgbEvaluator; import android.animation.ObjectAnimator; import android.graphics.Color; import android.util.Log; import android.view.MotionEvent; import android.view.View; Loading Loading @@ -43,14 +45,14 @@ public class AllAppsTransitionController implements TouchController, VerticalPul private final Interpolator mDecelInterpolator = new DecelerateInterpolator(1f); private static final float ANIMATION_DURATION = 1200; public static final float ALL_APPS_FINAL_ALPHA = .9f; private static final float PARALLAX_COEFFICIENT = .125f; private AllAppsContainerView mAppsView; private int mAllAppsBackgroundColor; private Workspace mWorkspace; private Hotseat mHotseat; private float mHotseatBackgroundAlpha; private int mHotseatBackgroundColor; private ObjectAnimator mCaretAnimator; private final long mCaretAnimationDuration; Loading @@ -60,6 +62,7 @@ public class AllAppsTransitionController implements TouchController, VerticalPul private final Launcher mLauncher; private final VerticalPullDetector mDetector; private final ArgbEvaluator mEvaluator; // Animation in this class is controlled by a single variable {@link mShiftCurrent}. // Visually, it represents top y coordinate of the all apps container. Using the Loading Loading @@ -95,6 +98,8 @@ public class AllAppsTransitionController implements TouchController, VerticalPul R.integer.config_caretAnimationDuration); mCaretInterpolator = AnimationUtils.loadInterpolator(launcher, R.interpolator.caret_animation_interpolator); mEvaluator = new ArgbEvaluator(); mAllAppsBackgroundColor = launcher.getColor(R.color.all_apps_container_color); } @Override Loading Loading @@ -248,17 +253,15 @@ public class AllAppsTransitionController implements TouchController, VerticalPul mStatusBarHeight = mLauncher.getDragLayer().getInsets().top; mHotseat.setVisibility(View.VISIBLE); mHotseat.bringToFront(); if (!mLauncher.isAllAppsVisible()) { mLauncher.tryAndUpdatePredictedApps(); mHotseatBackgroundAlpha = mHotseat.getBackgroundDrawableAlpha() / 255f; mHotseatBackgroundColor = mHotseat.getBackgroundDrawableColor(); mHotseat.setBackgroundTransparent(true /* transparent */); mAppsView.setVisibility(View.VISIBLE); mAppsView.getContentView().setVisibility(View.VISIBLE); mAppsView.getContentView().setBackground(null); mAppsView.getRevealView().setVisibility(View.VISIBLE); mAppsView.getRevealView().setAlpha(mHotseatBackgroundAlpha); mAppsView.setRevealDrawableColor(mHotseatBackgroundColor); } } else { setProgress(mShiftCurrent); Loading Loading @@ -297,8 +300,9 @@ public class AllAppsTransitionController implements TouchController, VerticalPul float alpha = calcAlphaAllApps(progress); float workspaceHotseatAlpha = 1 - alpha; mAppsView.getRevealView().setAlpha(Math.min(ALL_APPS_FINAL_ALPHA, Math.max(mHotseatBackgroundAlpha, mDecelInterpolator.getInterpolation(alpha)))); int color = (Integer) mEvaluator.evaluate(mDecelInterpolator.getInterpolation(alpha), mHotseatBackgroundColor, mAllAppsBackgroundColor); mAppsView.setRevealDrawableColor(color); mAppsView.getContentView().setAlpha(alpha); mAppsView.setTranslationY(progress); mWorkspace.setWorkspaceYTranslationAndAlpha( Loading