fixed #401
This commit is contained in:
parent
3cf014976d
commit
dbca8e96c5
|
@ -1,6 +1,7 @@
|
|||
package org.mariotaku.twidere.menu.support;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.PorterDuff;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import android.support.v4.content.ContextCompat;
|
||||
import android.support.v4.view.ActionProvider;
|
||||
|
@ -71,6 +72,15 @@ public class FavoriteItemProvider extends ActionProvider {
|
|||
item.setIcon(drawable);
|
||||
}
|
||||
|
||||
public void setIsFavorite(MenuItem item, boolean isFavorite) {
|
||||
if (MenuItemCompat.getActionProvider(item) != this) throw new IllegalArgumentException();
|
||||
final Drawable icon = item.getIcon();
|
||||
if (icon instanceof LikeAnimationDrawable) {
|
||||
icon.mutate();
|
||||
icon.setColorFilter(isFavorite ? mActivatedColor : mDefaultColor, PorterDuff.Mode.SRC_ATOP);
|
||||
}
|
||||
}
|
||||
|
||||
private static class ViewCallback implements Drawable.Callback {
|
||||
private final WeakReference<View> mViewRef;
|
||||
|
||||
|
|
|
@ -138,13 +138,13 @@ import org.mariotaku.twidere.api.twitter.model.UserMentionEntity;
|
|||
import org.mariotaku.twidere.fragment.iface.IBaseFragment.SystemWindowsInsetsCallback;
|
||||
import org.mariotaku.twidere.fragment.support.AbsStatusesFragment.DefaultOnLikedListener;
|
||||
import org.mariotaku.twidere.fragment.support.AccountsManagerFragment;
|
||||
import org.mariotaku.twidere.fragment.support.InteractionsTimelineFragment;
|
||||
import org.mariotaku.twidere.fragment.support.AddStatusFilterDialogFragment;
|
||||
import org.mariotaku.twidere.fragment.support.DestroyStatusDialogFragment;
|
||||
import org.mariotaku.twidere.fragment.support.DirectMessagesFragment;
|
||||
import org.mariotaku.twidere.fragment.support.DraftsFragment;
|
||||
import org.mariotaku.twidere.fragment.support.FiltersFragment;
|
||||
import org.mariotaku.twidere.fragment.support.IncomingFriendshipsFragment;
|
||||
import org.mariotaku.twidere.fragment.support.InteractionsTimelineFragment;
|
||||
import org.mariotaku.twidere.fragment.support.ListsFragment;
|
||||
import org.mariotaku.twidere.fragment.support.MessagesConversationFragment;
|
||||
import org.mariotaku.twidere.fragment.support.MutesUsersListFragment;
|
||||
|
@ -2256,8 +2256,7 @@ public final class Utils implements Constants {
|
|||
ActionProvider provider = MenuItemCompat.getActionProvider(favorite);
|
||||
final boolean useStar = preferences.getBoolean(KEY_I_WANT_MY_STARS_BACK);
|
||||
if (provider instanceof FavoriteItemProvider) {
|
||||
|
||||
|
||||
((FavoriteItemProvider) provider).setIsFavorite(favorite, isFavorite);
|
||||
} else {
|
||||
if (useStar) {
|
||||
final Drawable oldIcon = favorite.getIcon();
|
||||
|
|
Loading…
Reference in New Issue