Loading quickstep/res/values/colors.xml +4 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,10 @@ <!-- Taskbar --> <color name="taskbar_nav_icon_selection_ripple">#E0E0E0</color> <color name="taskbar_nav_icon_light_color_on_home">#ffffff</color> <!-- The dark navigation button color is only used in the rare cases that taskbar isn't drawing its background and the underlying app has requested dark buttons. --> <color name="taskbar_nav_icon_dark_color_on_home">#99000000</color> <color name="taskbar_stashed_handle_light_color">#EBffffff</color> <color name="taskbar_stashed_handle_dark_color">#99000000</color> Loading quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +2 −0 Original line number Diff line number Diff line Loading @@ -312,6 +312,8 @@ public class LauncherTaskbarUIController extends TaskbarUIController { .getTaskbarNavButtonTranslationYForInAppDisplay() .updateValue(mLauncher.getDeviceProfile().getTaskbarOffsetY() * mTaskbarInAppDisplayProgress.value); mControllers.navbarButtonsViewController .getOnTaskbarBackgroundNavButtonColorOverride().updateValue(progress); } } Loading quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java +21 −11 Original line number Diff line number Diff line Loading @@ -148,8 +148,8 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT // Used for IME+A11Y buttons private final ViewGroup mEndContextualContainer; private final ViewGroup mStartContextualContainer; private final int mLightIconColor; private final int mDarkIconColor; private final int mLightIconColorOnHome; private final int mDarkIconColorOnHome; /** Color to use for navigation bar buttons, if they are on on a Taskbar surface background. */ private final int mOnBackgroundIconColor; Loading Loading @@ -205,9 +205,11 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT mEndContextualContainer = mNavButtonsView.findViewById(R.id.end_contextual_buttons); mStartContextualContainer = mNavButtonsView.findViewById(R.id.start_contextual_buttons); mLightIconColor = context.getColor(R.color.taskbar_nav_icon_light_color); mDarkIconColor = context.getColor(R.color.taskbar_nav_icon_dark_color); mOnBackgroundIconColor = Utilities.isDarkTheme(context) ? mLightIconColor : mDarkIconColor; mLightIconColorOnHome = context.getColor(R.color.taskbar_nav_icon_light_color_on_home); mDarkIconColorOnHome = context.getColor(R.color.taskbar_nav_icon_dark_color_on_home); mOnBackgroundIconColor = Utilities.isDarkTheme(context) ? context.getColor(R.color.taskbar_nav_icon_light_color) : context.getColor(R.color.taskbar_nav_icon_dark_color); } /** Loading Loading @@ -630,18 +632,20 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT private void updateNavButtonColor() { final ArgbEvaluator argbEvaluator = ArgbEvaluator.getInstance(); final int sysUiNavButtonIconColor = (int) argbEvaluator.evaluate( final int sysUiNavButtonIconColorOnHome = (int) argbEvaluator.evaluate( mTaskbarNavButtonDarkIntensity.value, mLightIconColor, mDarkIconColor); mLightIconColorOnHome, mDarkIconColorOnHome); // Override the color from framework if nav buttons are over an opaque Taskbar surface. final int iconColor = (int) argbEvaluator.evaluate( mOnBackgroundNavButtonColorOverrideMultiplier.value * Math.max( mOnTaskbarBackgroundNavButtonColorOverride.value, mSlideInViewVisibleNavButtonColorOverride.value), sysUiNavButtonIconColor, sysUiNavButtonIconColorOnHome, mOnBackgroundIconColor); for (ImageView button : mAllButtons) { button.setImageTintList(ColorStateList.valueOf(iconColor)); } Loading Loading @@ -928,8 +932,6 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT pw.println(prefix + "NavbarButtonsViewController:"); pw.println(prefix + "\tmState=" + getStateString(mState)); pw.println(prefix + "\tmLightIconColor=" + Integer.toHexString(mLightIconColor)); pw.println(prefix + "\tmDarkIconColor=" + Integer.toHexString(mDarkIconColor)); pw.println(prefix + "\tmFloatingRotationButtonBounds=" + mFloatingRotationButtonBounds); pw.println(prefix + "\tmSysuiStateFlags=" + QuickStepContract.getSystemUiStateString( mSysuiStateFlags)); Loading @@ -940,6 +942,14 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT + mTaskbarNavButtonTranslationYForInAppDisplay.value); pw.println(prefix + "\t\tmTaskbarNavButtonTranslationYForIme=" + mTaskbarNavButtonTranslationYForIme.value); pw.println(prefix + "\t\tmTaskbarNavButtonDarkIntensity=" + mTaskbarNavButtonDarkIntensity.value); pw.println(prefix + "\t\tmSlideInViewVisibleNavButtonColorOverride=" + mSlideInViewVisibleNavButtonColorOverride.value); pw.println(prefix + "\t\tmOnTaskbarBackgroundNavButtonColorOverride=" + mOnTaskbarBackgroundNavButtonColorOverride.value); pw.println(prefix + "\t\tmOnBackgroundNavButtonColorOverrideMultiplier=" + mOnBackgroundNavButtonColorOverrideMultiplier.value); } private static String getStateString(int flags) { Loading Loading
quickstep/res/values/colors.xml +4 −0 Original line number Diff line number Diff line Loading @@ -25,6 +25,10 @@ <!-- Taskbar --> <color name="taskbar_nav_icon_selection_ripple">#E0E0E0</color> <color name="taskbar_nav_icon_light_color_on_home">#ffffff</color> <!-- The dark navigation button color is only used in the rare cases that taskbar isn't drawing its background and the underlying app has requested dark buttons. --> <color name="taskbar_nav_icon_dark_color_on_home">#99000000</color> <color name="taskbar_stashed_handle_light_color">#EBffffff</color> <color name="taskbar_stashed_handle_dark_color">#99000000</color> Loading
quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +2 −0 Original line number Diff line number Diff line Loading @@ -312,6 +312,8 @@ public class LauncherTaskbarUIController extends TaskbarUIController { .getTaskbarNavButtonTranslationYForInAppDisplay() .updateValue(mLauncher.getDeviceProfile().getTaskbarOffsetY() * mTaskbarInAppDisplayProgress.value); mControllers.navbarButtonsViewController .getOnTaskbarBackgroundNavButtonColorOverride().updateValue(progress); } } Loading
quickstep/src/com/android/launcher3/taskbar/NavbarButtonsViewController.java +21 −11 Original line number Diff line number Diff line Loading @@ -148,8 +148,8 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT // Used for IME+A11Y buttons private final ViewGroup mEndContextualContainer; private final ViewGroup mStartContextualContainer; private final int mLightIconColor; private final int mDarkIconColor; private final int mLightIconColorOnHome; private final int mDarkIconColorOnHome; /** Color to use for navigation bar buttons, if they are on on a Taskbar surface background. */ private final int mOnBackgroundIconColor; Loading Loading @@ -205,9 +205,11 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT mEndContextualContainer = mNavButtonsView.findViewById(R.id.end_contextual_buttons); mStartContextualContainer = mNavButtonsView.findViewById(R.id.start_contextual_buttons); mLightIconColor = context.getColor(R.color.taskbar_nav_icon_light_color); mDarkIconColor = context.getColor(R.color.taskbar_nav_icon_dark_color); mOnBackgroundIconColor = Utilities.isDarkTheme(context) ? mLightIconColor : mDarkIconColor; mLightIconColorOnHome = context.getColor(R.color.taskbar_nav_icon_light_color_on_home); mDarkIconColorOnHome = context.getColor(R.color.taskbar_nav_icon_dark_color_on_home); mOnBackgroundIconColor = Utilities.isDarkTheme(context) ? context.getColor(R.color.taskbar_nav_icon_light_color) : context.getColor(R.color.taskbar_nav_icon_dark_color); } /** Loading Loading @@ -630,18 +632,20 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT private void updateNavButtonColor() { final ArgbEvaluator argbEvaluator = ArgbEvaluator.getInstance(); final int sysUiNavButtonIconColor = (int) argbEvaluator.evaluate( final int sysUiNavButtonIconColorOnHome = (int) argbEvaluator.evaluate( mTaskbarNavButtonDarkIntensity.value, mLightIconColor, mDarkIconColor); mLightIconColorOnHome, mDarkIconColorOnHome); // Override the color from framework if nav buttons are over an opaque Taskbar surface. final int iconColor = (int) argbEvaluator.evaluate( mOnBackgroundNavButtonColorOverrideMultiplier.value * Math.max( mOnTaskbarBackgroundNavButtonColorOverride.value, mSlideInViewVisibleNavButtonColorOverride.value), sysUiNavButtonIconColor, sysUiNavButtonIconColorOnHome, mOnBackgroundIconColor); for (ImageView button : mAllButtons) { button.setImageTintList(ColorStateList.valueOf(iconColor)); } Loading Loading @@ -928,8 +932,6 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT pw.println(prefix + "NavbarButtonsViewController:"); pw.println(prefix + "\tmState=" + getStateString(mState)); pw.println(prefix + "\tmLightIconColor=" + Integer.toHexString(mLightIconColor)); pw.println(prefix + "\tmDarkIconColor=" + Integer.toHexString(mDarkIconColor)); pw.println(prefix + "\tmFloatingRotationButtonBounds=" + mFloatingRotationButtonBounds); pw.println(prefix + "\tmSysuiStateFlags=" + QuickStepContract.getSystemUiStateString( mSysuiStateFlags)); Loading @@ -940,6 +942,14 @@ public class NavbarButtonsViewController implements TaskbarControllers.LoggableT + mTaskbarNavButtonTranslationYForInAppDisplay.value); pw.println(prefix + "\t\tmTaskbarNavButtonTranslationYForIme=" + mTaskbarNavButtonTranslationYForIme.value); pw.println(prefix + "\t\tmTaskbarNavButtonDarkIntensity=" + mTaskbarNavButtonDarkIntensity.value); pw.println(prefix + "\t\tmSlideInViewVisibleNavButtonColorOverride=" + mSlideInViewVisibleNavButtonColorOverride.value); pw.println(prefix + "\t\tmOnTaskbarBackgroundNavButtonColorOverride=" + mOnTaskbarBackgroundNavButtonColorOverride.value); pw.println(prefix + "\t\tmOnBackgroundNavButtonColorOverrideMultiplier=" + mOnBackgroundNavButtonColorOverrideMultiplier.value); } private static String getStateString(int flags) { Loading