[Android] prevent checkbox from being checked for ERC721 in registry

This commit is contained in:
wchen342
2022-12-02 17:07:28 +02:00
parent f4a981b75c
commit 606cff95b7
2 changed files with 23 additions and 16 deletions
@@ -173,8 +173,13 @@ public class WalletCoinAdapter extends RecyclerView.Adapter<WalletCoinAdapter.Vi
break;
}
}
onWalletListItemClick.onAssetCheckedChanged(
walletListItemModel, holder.assetCheck, isChecked);
if ("noOnClickListener".equals(
(String) holder.assetCheck.getTag())) {
holder.assetCheck.setTag(null);
} else {
onWalletListItemClick.onAssetCheckedChanged(
walletListItemModel, holder.assetCheck, isChecked);
}
}
});
}
@@ -625,6 +625,7 @@ public class EditVisibleAssetsBottomSheetDialogFragment extends BottomSheetDialo
showAddAssetDialog();
walletListItemModel.setIsUserSelected(
false); // The added token is different from the listed one
itemCheckboxConsistency(walletListItemModel, assetCheck, isChecked);
} else {
BraveWalletService braveWalletService = getBraveWalletService();
// TODO: all the asserts need to be removed. Shall do proper
@@ -636,20 +637,16 @@ public class EditVisibleAssetsBottomSheetDialogFragment extends BottomSheetDialo
if (success) {
walletListItemModel.setIsUserSelected(true);
}
if (isChecked != walletListItemModel.getIsUserSelected()) {
assetCheck.setChecked(
walletListItemModel.getIsUserSelected());
}
itemCheckboxConsistency(
walletListItemModel, assetCheck, isChecked);
});
} else {
braveWalletService.removeUserAsset(thisToken, (success) -> {
if (success) {
walletListItemModel.setIsUserSelected(false);
}
if (isChecked != walletListItemModel.getIsUserSelected()) {
assetCheck.setChecked(
walletListItemModel.getIsUserSelected());
}
itemCheckboxConsistency(
walletListItemModel, assetCheck, isChecked);
});
}
} else {
@@ -658,16 +655,21 @@ public class EditVisibleAssetsBottomSheetDialogFragment extends BottomSheetDialo
if (success) {
walletListItemModel.setIsUserSelected(isChecked);
}
if (isChecked
!= walletListItemModel.getIsUserSelected()) {
assetCheck.setChecked(
walletListItemModel.getIsUserSelected());
}
itemCheckboxConsistency(
walletListItemModel, assetCheck, isChecked);
});
}
mIsAssetsListChanged = true;
}
});
});
};
}
private void itemCheckboxConsistency(
WalletListItemModel walletListItemModel, CheckBox assetCheck, boolean isChecked) {
if (isChecked != walletListItemModel.getIsUserSelected()) {
assetCheck.setTag("noOnClickListener");
assetCheck.setChecked(walletListItemModel.getIsUserSelected());
}
}
}