diff --git a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/view/ChangeRecordTypeFragment.kt b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/view/ChangeRecordTypeFragment.kt index b4d8c35c..b66d3ea5 100644 --- a/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/view/ChangeRecordTypeFragment.kt +++ b/features/feature_change_record_type/src/main/java/com/example/util/simpletimetracker/feature_change_record_type/view/ChangeRecordTypeFragment.kt @@ -96,7 +96,10 @@ class ChangeRecordTypeFragment : } private val iconCategoriesAdapter: BaseRecyclerAdapter by lazy { BaseRecyclerAdapter( - createChangeRecordTypeIconCategoryAdapterDelegate(viewModel::onIconCategoryClick) + createChangeRecordTypeIconCategoryAdapterDelegate { + viewModel.onIconCategoryClick(it) + binding.rvChangeRecordTypeIcon.stopScroll() + } ) } private val categoriesAdapter: BaseRecyclerAdapter by lazy { @@ -200,6 +203,11 @@ class ChangeRecordTypeFragment : arrowChangeRecordTypeColor.apply { if (opened) rotateDown() else rotateUp() } + + inputChangeRecordTypeName.isVisible = !opened + fieldChangeRecordTypeIcon.isVisible = !opened + fieldChangeRecordTypeCategory.isVisible = !opened + containerChangeRecordTypeGoalTime.isVisible = !opened } flipIconChooser.observe { opened -> containerChangeRecordTypeIcon.isVisible = opened @@ -207,6 +215,11 @@ class ChangeRecordTypeFragment : arrowChangeRecordTypeIcon.apply { if (opened) rotateDown() else rotateUp() } + + inputChangeRecordTypeName.isVisible = !opened + fieldChangeRecordTypeColor.isVisible = !opened + fieldChangeRecordTypeCategory.isVisible = !opened + containerChangeRecordTypeGoalTime.isVisible = !opened } flipCategoryChooser.observe { opened -> rvChangeRecordTypeCategories.isVisible = opened @@ -214,6 +227,11 @@ class ChangeRecordTypeFragment : arrowChangeRecordTypeCategory.apply { if (opened) rotateDown() else rotateUp() } + + inputChangeRecordTypeName.isVisible = !opened + fieldChangeRecordTypeColor.isVisible = !opened + fieldChangeRecordTypeIcon.isVisible = !opened + containerChangeRecordTypeGoalTime.isVisible = !opened } keyboardVisibility.observe { visible -> if (visible) showKeyboard(etChangeRecordTypeName) else hideKeyboard() diff --git a/features/feature_change_record_type/src/main/res/layout/change_record_type_fragment.xml b/features/feature_change_record_type/src/main/res/layout/change_record_type_fragment.xml index 1bea2170..9bee9b1b 100644 --- a/features/feature_change_record_type/src/main/res/layout/change_record_type_fragment.xml +++ b/features/feature_change_record_type/src/main/res/layout/change_record_type_fragment.xml @@ -6,231 +6,256 @@ android:layout_height="match_parent" android:animateLayoutChanges="true"> - - - - - - - - - - - + app:layout_constraintBottom_toTopOf="@id/btnChangeRecordTypeSave" + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintVertical_bias="0"> + android:layout_height="match_parent"> - - - + tools:visibility="visible" /> - - - - - - - - - - - + tools:itemName="Name" /> - + - + - - - + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + app:barrierDirection="bottom" + app:constraint_referenced_ids="fieldChangeRecordTypeIcon, fieldChangeRecordTypeCategory" /> - + + + + + + + + + + + + + + + - + - + @@ -258,10 +283,11 @@ android:visibility="gone" app:layout_constraintBottom_toTopOf="@id/btnChangeRecordTypeSave" app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintTop_toBottomOf="@id/fieldChangeRecordTypeIcon" - tools:visibility="visible"> + app:layout_constraintTop_toBottomOf="@id/containerChangeRecordTypeMain" + tools:visibility="gone"> + app:layout_scrollFlags="scroll|snap" /> @@ -329,7 +355,7 @@ android:visibility="gone" app:layout_constraintBottom_toTopOf="@id/btnChangeRecordTypeSave" app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintTop_toBottomOf="@id/fieldChangeRecordTypeIcon" + app:layout_constraintTop_toBottomOf="@id/containerChangeRecordTypeMain" tools:itemCount="3" tools:listitem="@layout/item_category_layout" tools:visibility="gone" />