Commit f7818421 authored by Thomas's avatar Thomas
Browse files

Fix an issue when following/unfollowing in a list of accounts

parent 89851a68
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -54,7 +54,6 @@ import es.dmoral.toasty.Toasty;

public class AccountAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {

    private static ProfileActivity.action doAction;
    private final List<Account> accountList;
    private Context context;

@@ -82,7 +81,7 @@ public class AccountAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder

        if (account.relationShip != null) {

            doAction = ProfileActivity.action.FOLLOW;
            ProfileActivity.action doAction = ProfileActivity.action.FOLLOW;
            accountViewHolder.binding.followAction.setContentDescription(context.getString(R.string.action_follow));
            accountViewHolder.binding.followAction.setVisibility(View.VISIBLE);
            accountViewHolder.binding.followAction.setEnabled(true);
@@ -188,17 +187,18 @@ public class AccountAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder


            accountViewHolder.binding.followAction.setOnClickListener(null);
            ProfileActivity.action finalDoAction = doAction;
            accountViewHolder.binding.followAction.setOnClickListener(v -> {
                if (doAction == ProfileActivity.action.NOTHING) {
                if (finalDoAction == ProfileActivity.action.NOTHING) {
                    Toasty.info(context, context.getString(R.string.nothing_to_do), Toast.LENGTH_LONG).show();
                } else if (doAction == ProfileActivity.action.FOLLOW) {
                } else if (finalDoAction == ProfileActivity.action.FOLLOW) {
                    accountViewHolder.binding.followAction.setEnabled(false);
                    accountsVM.follow(BaseMainActivity.currentInstance, BaseMainActivity.currentToken, account.id, true, false)
                            .observe((LifecycleOwner) context, relationShip -> {
                                account.relationShip = relationShip;
                                adapter.notifyItemChanged(position);
                            });
                } else if (doAction == ProfileActivity.action.UNFOLLOW) {
                } else if (finalDoAction == ProfileActivity.action.UNFOLLOW) {
                    boolean confirm_unfollow = sharedpreferences.getBoolean(context.getString(R.string.SET_UNFOLLOW_VALIDATION), true);
                    if (confirm_unfollow) {
                        AlertDialog.Builder unfollowConfirm = new AlertDialog.Builder(context, Helper.dialogStyle());