From 67e70e5936797eaeb7a58b6d4fef53affa03736e Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sun, 7 Nov 2021 20:50:25 +0530 Subject: Cleanup extra content handling (#1536) * BasicBottomSheet: remove unnecessary custom background Fixes: 88c9a0d487ca ("app: refactor M3 themes and styles") * FieldItemAdapter: fix typo ClipBoard -> Clipboard * FieldItemAdapter: fix RV binding idempotency * app: refactor FieldItemAdapter population logic * DecryptActivityV2: wire in missing 'show password' toggle --- .../msfjarvis/aps/ui/adapters/FieldItemAdapter.kt | 27 +++++++++++----------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'app/src/main/java/dev/msfjarvis/aps/ui/adapters') diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/adapters/FieldItemAdapter.kt b/app/src/main/java/dev/msfjarvis/aps/ui/adapters/FieldItemAdapter.kt index 030f6056..d019bcae 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/adapters/FieldItemAdapter.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/adapters/FieldItemAdapter.kt @@ -19,7 +19,7 @@ import dev.msfjarvis.aps.databinding.ItemFieldBinding class FieldItemAdapter( private var fieldItemList: List, private val showPassword: Boolean, - private val copyTextToClipBoard: (text: String?) -> Unit, + private val copyTextToClipboard: (text: String?) -> Unit, ) : RecyclerView.Adapter() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): FieldItemViewHolder { @@ -28,7 +28,7 @@ class FieldItemAdapter( } override fun onBindViewHolder(holder: FieldItemViewHolder, position: Int) { - holder.bind(fieldItemList[position], showPassword, copyTextToClipBoard) + holder.bind(fieldItemList[position], showPassword, copyTextToClipboard) } override fun getItemCount(): Int { @@ -50,15 +50,10 @@ class FieldItemAdapter( notifyItemChanged(otpItemPosition) } - fun updateItems(itemList: List) { - fieldItemList = itemList - notifyDataSetChanged() - } - class FieldItemViewHolder(itemView: View, val binding: ItemFieldBinding) : RecyclerView.ViewHolder(itemView) { - fun bind(fieldItem: FieldItem, showPassword: Boolean, copyTextToClipBoard: (String?) -> Unit) { + fun bind(fieldItem: FieldItem, showPassword: Boolean, copyTextToClipboard: (String?) -> Unit) { with(binding) { itemText.hint = fieldItem.key itemTextContainer.hint = fieldItem.key @@ -70,19 +65,23 @@ class FieldItemAdapter( endIconDrawable = ContextCompat.getDrawable(itemView.context, R.drawable.ic_content_copy) endIconMode = TextInputLayout.END_ICON_CUSTOM - setEndIconOnClickListener { copyTextToClipBoard(itemText.text.toString()) } + setEndIconOnClickListener { copyTextToClipboard(itemText.text.toString()) } } + itemText.transformationMethod = null } FieldItem.ActionType.HIDE -> { itemTextContainer.apply { endIconMode = TextInputLayout.END_ICON_PASSWORD_TOGGLE - setOnClickListener { copyTextToClipBoard(itemText.text.toString()) } + setOnClickListener { copyTextToClipboard(itemText.text.toString()) } } itemText.apply { - if (!showPassword) { - transformationMethod = PasswordTransformationMethod.getInstance() - } - setOnClickListener { copyTextToClipBoard(itemText.text.toString()) } + transformationMethod = + if (!showPassword) { + PasswordTransformationMethod.getInstance() + } else { + null + } + setOnClickListener { copyTextToClipboard(itemText.text.toString()) } } } } -- cgit v1.2.3