From 4ed231b9bbd1d4ac9421dd738495dbc97e4ea175 Mon Sep 17 00:00:00 2001 From: J-Jamet Date: Mon, 10 Aug 2020 00:03:23 +0200 Subject: [PATCH] Replace and animate database info expand icon --- .../adapters/FileDatabaseHistoryAdapter.kt | 24 ++++++++++--------- app/src/main/res/layout/item_file_row.xml | 6 ++--- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/com/kunzisoft/keepass/adapters/FileDatabaseHistoryAdapter.kt b/app/src/main/java/com/kunzisoft/keepass/adapters/FileDatabaseHistoryAdapter.kt index 98b4b7da6..8452c1d9e 100644 --- a/app/src/main/java/com/kunzisoft/keepass/adapters/FileDatabaseHistoryAdapter.kt +++ b/app/src/main/java/com/kunzisoft/keepass/adapters/FileDatabaseHistoryAdapter.kt @@ -87,9 +87,9 @@ class FileDatabaseHistoryAdapter(context: Context) holder.filePath.text = databaseFile.databaseDecodedPath if (databaseFile.databaseFileExists) { - holder.fileInformation.clearColorFilter() + holder.fileInformationButton.clearColorFilter() } else { - holder.fileInformation.setColorFilter(Color.RED, PorterDuff.Mode.MULTIPLY) + holder.fileInformationButton.setColorFilter(Color.RED, PorterDuff.Mode.MULTIPLY) } // Modification @@ -147,14 +147,16 @@ class FileDatabaseHistoryAdapter(context: Context) if (isExpanded) { mPreviousExpandedDatabaseFile = databaseFile } - - holder.fileInformation.setOnClickListener { - mExpandedDatabaseFile = if (isExpanded) null else databaseFile - // Notify change - val previousExpandedPosition = listDatabaseFiles.indexOf(mPreviousExpandedDatabaseFile) - notifyItemChanged(previousExpandedPosition) - val expandedPosition = listDatabaseFiles.indexOf(mExpandedDatabaseFile) - notifyItemChanged(expandedPosition) + holder.fileInformationButton.apply { + animate().rotation(if (isExpanded) 0F else 180F).start() + setOnClickListener { + mExpandedDatabaseFile = if (isExpanded) null else databaseFile + // Notify change + val previousExpandedPosition = listDatabaseFiles.indexOf(mPreviousExpandedDatabaseFile) + notifyItemChanged(previousExpandedPosition) + val expandedPosition = listDatabaseFiles.indexOf(mExpandedDatabaseFile) + notifyItemChanged(expandedPosition) + } } // Refresh View / Close alias modification if not contains fileAlias @@ -214,7 +216,7 @@ class FileDatabaseHistoryAdapter(context: Context) var fileContainer: ViewGroup = itemView.findViewById(R.id.file_container_basic_info) var fileAlias: TextView = itemView.findViewById(R.id.file_alias) - var fileInformation: ImageView = itemView.findViewById(R.id.file_information) + var fileInformationButton: ImageView = itemView.findViewById(R.id.file_information_button) var fileMainSwitcher: ViewSwitcher = itemView.findViewById(R.id.file_main_switcher) var fileAliasEdit: EditText = itemView.findViewById(R.id.file_alias_edit) diff --git a/app/src/main/res/layout/item_file_row.xml b/app/src/main/res/layout/item_file_row.xml index 8eca6c104..9838e10d5 100644 --- a/app/src/main/res/layout/item_file_row.xml +++ b/app/src/main/res/layout/item_file_row.xml @@ -60,11 +60,11 @@ android:layout_marginRight="24dp" app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="parent" - app:layout_constraintEnd_toStartOf="@+id/file_information" + app:layout_constraintEnd_toStartOf="@+id/file_information_button" android:textColor="?attr/textColorInverse" tools:text="DatabaseAlias" />