From d316081d945f80304effdc036de3ad2fdc65d8d0 Mon Sep 17 00:00:00 2001 From: stom79 Date: Wed, 5 Dec 2018 09:35:38 +0100 Subject: [PATCH] Fix animation issue --- .../drawers/NotificationsListAdapter.java | 30 +++++++++++-------- .../mastodon/drawers/StatusListAdapter.java | 11 +++++-- 2 files changed, 26 insertions(+), 15 deletions(-) diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/NotificationsListAdapter.java b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/NotificationsListAdapter.java index 3559f7302..71ef9390e 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/NotificationsListAdapter.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/NotificationsListAdapter.java @@ -384,6 +384,11 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On } else { holder.spark_button_fav.setChecked(false); } + }else { + status.setFavAnimated(false); + holder.spark_button_fav.setChecked(true); + holder.spark_button_fav.setAnimationSpeed(1.0f); + holder.spark_button_fav.playAnimation(); } if( !status.isBoostAnimated()){ if( status.isReblogged()|| (status.getReblog() != null && status.getReblog().isReblogged())) { @@ -391,7 +396,16 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On }else { holder.spark_button_reblog.setChecked(false); } + }else { + status.setBoostAnimated(false); + holder.spark_button_reblog.setChecked(true); + holder.spark_button_reblog.setAnimationSpeed(1.0f); + holder.spark_button_reblog.playAnimation(); + } + + + if( theme == THEME_DARK) changeDrawableColor(context, R.drawable.ic_reply,R.color.action_dark); else if(theme == THEME_BLACK) @@ -483,19 +497,6 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On } } - - if( status.isFavAnimated()){ - holder.spark_button_fav.setAnimationSpeed(1.0f); - holder.spark_button_fav.playAnimation(); - status.setFavAnimated(false); - } - - if( status.isBoostAnimated()){ - holder.spark_button_reblog.setAnimationSpeed(1.0f); - holder.spark_button_reblog.playAnimation(); - status.setBoostAnimated(false); - } - holder.spark_button_fav.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -549,13 +550,16 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On case "direct": case "private": holder.status_reblog_count.setVisibility(View.GONE); + holder.spark_button_reblog.setVisibility(View.GONE); break; case "public": case "unlisted": holder.status_reblog_count.setVisibility(View.VISIBLE); + holder.spark_button_reblog.setVisibility(View.VISIBLE); break; default: holder.status_reblog_count.setVisibility(View.VISIBLE); + holder.spark_button_reblog.setVisibility(View.VISIBLE); } diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/StatusListAdapter.java b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/StatusListAdapter.java index 130badfa1..aea92fcc4 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/StatusListAdapter.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/StatusListAdapter.java @@ -1179,20 +1179,26 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct switch (status.getVisibility()){ case "direct": holder.status_reblog_count.setVisibility(View.GONE); + holder.spark_button_reblog.setVisibility(View.GONE); break; case "private": boolean isOwner = status.getAccount().getId().equals(userId); - if( isOwner) + if( isOwner) { holder.status_reblog_count.setVisibility(View.VISIBLE); - else + holder.spark_button_reblog.setVisibility(View.VISIBLE); + }else { holder.status_reblog_count.setVisibility(View.GONE); + holder.spark_button_reblog.setVisibility(View.GONE); + } break; case "public": case "unlisted": holder.status_reblog_count.setVisibility(View.VISIBLE); + holder.spark_button_reblog.setVisibility(View.VISIBLE); break; default: holder.status_reblog_count.setVisibility(View.VISIBLE); + holder.spark_button_reblog.setVisibility(View.VISIBLE); } switch (status.getVisibility()){ @@ -1233,6 +1239,7 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct } else { status.setBoostAnimated(false); + holder.spark_button_reblog.setChecked(true); holder.spark_button_reblog.setAnimationSpeed(1.0f); holder.spark_button_reblog.playAnimation(); }