diff options
Diffstat (limited to 'java/com/android/dialer/widget')
-rw-r--r-- | java/com/android/dialer/widget/FloatingActionButtonController.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/java/com/android/dialer/widget/FloatingActionButtonController.java b/java/com/android/dialer/widget/FloatingActionButtonController.java index a0c4e6ddd..dde4d44ce 100644 --- a/java/com/android/dialer/widget/FloatingActionButtonController.java +++ b/java/com/android/dialer/widget/FloatingActionButtonController.java @@ -18,7 +18,7 @@ package com.android.dialer.widget; import android.app.Activity; import android.content.res.Resources; -import android.graphics.drawable.Drawable; +import android.support.annotation.DrawableRes; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.FloatingActionButton.OnVisibilityChangedListener; import android.view.View; @@ -39,6 +39,7 @@ public class FloatingActionButtonController { private final int mFloatingActionButtonMarginRight; private final FloatingActionButton mFab; private final Interpolator mFabInterpolator; + private int mFabIconId = -1; private int mScreenWidth; public FloatingActionButtonController(Activity activity, FloatingActionButton fab) { @@ -82,9 +83,12 @@ public class FloatingActionButtonController { } } - public void changeIcon(Drawable icon, String description) { - if (mFab.getDrawable() != icon || !mFab.getContentDescription().equals(description)) { - mFab.setImageDrawable(icon); + public void changeIcon(@DrawableRes int iconId, String description) { + if (this.mFabIconId != iconId) { + mFab.setImageResource(iconId); + this.mFabIconId = iconId; + } + if (!mFab.getContentDescription().equals(description)) { mFab.setContentDescription(description); } } |