diff --git a/app/src/main/java/com/kunzisoft/keepass/activities/GroupActivity.kt b/app/src/main/java/com/kunzisoft/keepass/activities/GroupActivity.kt index 722df3b44..c5b309489 100644 --- a/app/src/main/java/com/kunzisoft/keepass/activities/GroupActivity.kt +++ b/app/src/main/java/com/kunzisoft/keepass/activities/GroupActivity.kt @@ -90,6 +90,8 @@ class GroupActivity : DatabaseLockActivity(), private var databaseColorView: ImageView? = null private var databaseNameView: TextView? = null private var searchContainer: ViewGroup? = null + private var searchAdvanceFiltersContainer: ViewGroup? = null + private var searchExpandButton: ImageView? = null private var searchNumbers: TextView? = null private var searchView: SearchView? = null private var toolbarBreadcrumb: Toolbar? = null @@ -121,12 +123,16 @@ class GroupActivity : DatabaseLockActivity(), private val mOnSearchActionExpandListener = object : MenuItem.OnActionExpandListener { override fun onMenuItemActionExpand(p0: MenuItem?): Boolean { + toolbarBreadcrumb?.visibility = View.GONE + searchAdvanceFiltersContainer?.visibility = View.GONE searchContainer?.visibility = View.VISIBLE return true } override fun onMenuItemActionCollapse(p0: MenuItem?): Boolean { searchContainer?.visibility = View.GONE + searchAdvanceFiltersContainer?.visibility = View.GONE + toolbarBreadcrumb?.visibility = View.VISIBLE mSearchGroup = null loadGroup(mDatabase) return true @@ -170,6 +176,8 @@ class GroupActivity : DatabaseLockActivity(), databaseColorView = findViewById(R.id.database_color) databaseNameView = findViewById(R.id.database_name) searchContainer = findViewById(R.id.search_container) + searchAdvanceFiltersContainer = findViewById(R.id.search_advance_filters) + searchExpandButton = findViewById(R.id.search_expand) searchNumbers = findViewById(R.id.search_numbers) toolbarBreadcrumb = findViewById(R.id.toolbar_breadcrumb) breadcrumbListView = findViewById(R.id.breadcrumb_list) @@ -248,6 +256,20 @@ class GroupActivity : DatabaseLockActivity(), savedInstanceState.remove(PREVIOUS_GROUPS_IDS_KEY) } + // Expand menu with button + searchExpandButton?.setOnClickListener { + searchAdvanceFiltersContainer?.let { advanceSearch -> + val isVisible = advanceSearch.visibility == View.VISIBLE + if (isVisible) + advanceSearch.collapse() + else { + advanceSearch.expand(true, + resources.getDimension(R.dimen.advanced_search_height).toInt() + ) + } + } + } + // Initialize the fragment with the list mGroupFragment = supportFragmentManager.findFragmentByTag(GROUP_FRAGMENT_TAG) as GroupFragment? @@ -582,10 +604,8 @@ class GroupActivity : DatabaseLockActivity(), // Assign title if (group?.isVirtual == true) { searchNumbers?.text = group.numberOfChildEntries.toString() - databaseNameContainer?.visibility = View.GONE toolbarBreadcrumb?.navigationIcon = null } else { - databaseNameContainer?.visibility = View.VISIBLE // Add breadcrumb setBreadcrumbNode(group) invalidateOptionsMenu() diff --git a/app/src/main/res/layout/activity_group.xml b/app/src/main/res/layout/activity_group.xml index f459fcd77..c135ce64a 100644 --- a/app/src/main/res/layout/activity_group.xml +++ b/app/src/main/res/layout/activity_group.xml @@ -102,7 +102,7 @@ android:minHeight="?attr/actionBarSize" android:background="?attr/colorPrimary" android:orientation="vertical" - android:visibility="visible"> + android:visibility="gone"> @@ -146,76 +146,83 @@ android:layout_height="wrap_content" android:text="@string/entry_expires" /> - - - + - - - - - - - - + android:layout_gravity="center" + app:chipSpacingVertical="16dp" + android:paddingTop="12dp" + android:paddingStart="@dimen/default_margin" + android:paddingLeft="@dimen/default_margin" + android:paddingEnd="@dimen/default_margin" + android:paddingRight="@dimen/default_margin" + android:paddingBottom="@dimen/default_margin"> + + + + + + + + + + diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml index 6e50fcb2f..ea57e63b1 100644 --- a/app/src/main/res/values/dimens.xml +++ b/app/src/main/res/values/dimens.xml @@ -34,5 +34,6 @@ 0dp 1 160dp + 160dp 260 \ No newline at end of file