Index: chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarPhone.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarPhone.java b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarPhone.java |
index 2be0cc815059499bf1a59d7287dbc0aa58c24977..4a984d057dab900c149c1ff2183983bd3ea28672 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarPhone.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/toolbar/ToolbarPhone.java |
@@ -12,7 +12,6 @@ import android.animation.ValueAnimator; |
import android.animation.ValueAnimator.AnimatorUpdateListener; |
import android.annotation.SuppressLint; |
import android.content.Context; |
-import android.content.res.ColorStateList; |
import android.content.res.Resources; |
import android.graphics.Canvas; |
import android.graphics.Color; |
@@ -163,6 +162,9 @@ public class ToolbarPhone extends ToolbarLayout |
private TabSwitcherDrawable mTabSwitcherButtonDrawable; |
private TabSwitcherDrawable mTabSwitcherButtonDrawableLight; |
+ private final int mLightModeDefaultColor; |
+ private final int mDarkModeDefaultColor; |
+ |
private final Rect mUrlViewportBounds = new Rect(); |
private final Rect mUrlBackgroundPadding = new Rect(); |
private final Rect mBackgroundOverlayBounds = new Rect(); |
@@ -239,6 +241,10 @@ public class ToolbarPhone extends ToolbarLayout |
// Insets used for the PhoneLocatioBar background drawable. |
mLocationBarInsets = getResources().getDimensionPixelSize(R.dimen.location_bar_margin_top) |
+ getResources().getDimensionPixelSize(R.dimen.location_bar_margin_bottom); |
+ mLightModeDefaultColor = |
+ ApiCompatibilityUtils.getColor(getResources(), R.color.light_mode_tint); |
+ mDarkModeDefaultColor = |
+ ApiCompatibilityUtils.getColor(getResources(), R.color.dark_mode_tint); |
} |
@Override |
@@ -936,8 +942,8 @@ public class ToolbarPhone extends ToolbarLayout |
translateCanvasToView(mToolbarButtonsContainer, mMenuButton, canvas); |
mTabSwitcherAnimationMenuDrawable.setAlpha(rgbAlpha); |
int color = mUseLightToolbarDrawables |
- ? ApiCompatibilityUtils.getColor(getResources(), R.color.light_mode_tint) |
- : ApiCompatibilityUtils.getColor(getResources(), R.color.dark_mode_tint); |
+ ? mLightModeDefaultColor |
+ : mDarkModeDefaultColor; |
mTabSwitcherAnimationMenuDrawable.setColorFilter(color, PorterDuff.Mode.SRC_IN); |
mTabSwitcherAnimationMenuDrawable.draw(canvas); |
} |
@@ -1366,8 +1372,8 @@ public class ToolbarPhone extends ToolbarLayout |
Resources res = getResources(); |
mTabSwitcherAnimationMenuDrawable = ApiCompatibilityUtils.getDrawable( |
res, R.drawable.btn_menu).mutate(); |
- mTabSwitcherAnimationMenuDrawable.setColorFilter(isIncognito() ? Color.WHITE |
- : ApiCompatibilityUtils.getColor(res, R.color.light_normal_color), |
+ mTabSwitcherAnimationMenuDrawable.setColorFilter( |
+ isIncognito() ? mLightModeDefaultColor : mDarkModeDefaultColor, |
PorterDuff.Mode.SRC_IN); |
((BitmapDrawable) mTabSwitcherAnimationMenuDrawable).setGravity(Gravity.CENTER); |
} |
@@ -1860,25 +1866,21 @@ public class ToolbarPhone extends ToolbarLayout |
getProgressBar().setBackgroundColor( |
ApiCompatibilityUtils.getColor(getResources(), progressBarBackgroundColorResource)); |
- ColorStateList dark = |
- ApiCompatibilityUtils.getColorStateList(getResources(), R.color.dark_mode_tint); |
- ColorStateList white = |
- ApiCompatibilityUtils.getColorStateList(getResources(), R.color.light_mode_tint); |
if (mToggleTabStackButton != null) { |
mToggleTabStackButton.setImageDrawable(mUseLightToolbarDrawables |
? mTabSwitcherButtonDrawableLight : mTabSwitcherButtonDrawable); |
if (mTabSwitcherAnimationTabStackDrawable != null) { |
mTabSwitcherAnimationTabStackDrawable.setTint( |
- mUseLightToolbarDrawables ? white : dark); |
Yusuf
2015/09/28 17:20:26
setTint(int color) is API 21+. There is a Drawable
aurimas (slooooooooow)
2015/09/28 20:32:56
Filed a bug for investigating that crbug.com/53692
|
+ mUseLightToolbarDrawables ? mLightModeTint : mDarkModeTint); |
} |
} |
if (shouldShowMenuButton()) { |
- mMenuButton.setTint(mUseLightToolbarDrawables ? white : dark); |
+ mMenuButton.setTint(mUseLightToolbarDrawables ? mLightModeTint : mDarkModeTint); |
} |
if (mHomeButton.getVisibility() != GONE) { |
- mHomeButton.setTint(mUseLightToolbarDrawables ? white : dark); |
+ mHomeButton.setTint(mUseLightToolbarDrawables ? mLightModeTint : mDarkModeTint); |
} |
mPhoneLocationBar.updateVisualsForState(); |