Started contacts filter button

This commit is contained in:
Sylvain Berfini 2023-08-29 13:31:03 +02:00
parent 728fa279dd
commit cb48f73fd9
5 changed files with 50 additions and 10 deletions

View file

@ -139,6 +139,11 @@ class ContactsListFragment : GenericFragment() {
binding.setOnNewContactClicked {
sharedViewModel.showNewContactEvent.value = Event(true)
}
binding.setFilterClickListener {
// TODO FIXME: show context menu first to let user decides which filter to use
listViewModel.toggleContactsFilter()
}
}
private fun configureAdapter(adapter: ContactsListAdapter) {

View file

@ -110,6 +110,12 @@ class ContactsListViewModel @UiThread constructor() : ViewModel() {
super.onCleared()
}
@UiThread
fun toggleContactsFilter() {
limitSearchToLinphoneAccounts = !limitSearchToLinphoneAccounts
applyFilter(currentFilter)
}
@UiThread
fun toggleFavouritesVisibility() {
showFavourites.value = showFavourites.value == false

View file

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="96dp"
android:height="96dp"
android:viewportWidth="256"
android:viewportHeight="256">
<path
android:pathData="M230.6,49.53A15.81,15.81 0,0 0,216 40L40,40A16,16 0,0 0,28.19 66.76l0.08,0.09L96,139.17L96,216a16,16 0,0 0,24.87 13.32l32,-21.34A16,16 0,0 0,160 194.66L160,139.17l67.74,-72.32 0.08,-0.09A15.8,15.8 0,0 0,230.6 49.53ZM40,56h0ZM148.34,128.28A15.92,15.92 0,0 0,144 139.17v55.49L112,216L112,139.17a15.92,15.92 0,0 0,-4.32 -10.94L40,56L216,56Z"
android:fillColor="#4e6074"/>
</vector>

View file

@ -9,10 +9,7 @@
name="onNewContactClicked"
type="View.OnClickListener" />
<variable
name="onConversationsClicked"
type="View.OnClickListener" />
<variable
name="onCallsClicked"
name="filterClickListener"
type="View.OnClickListener" />
<variable
name="viewModel"
@ -45,10 +42,23 @@
android:name="org.linphone.ui.main.fragment.TopBarFragment"
android:layout_width="0dp"
android:layout_height="@dimen/top_bar_height"
android:layout_marginEnd="9dp"
bind:layout="@layout/top_search_bar"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toEndOf="@id/bottom_nav_bar"
app:layout_constraintEnd_toEndOf="parent"/>
app:layout_constraintEnd_toStartOf="@id/filter"/>
<ImageView
android:onClick="@{filterClickListener}"
android:id="@+id/filter"
android:layout_width="24dp"
android:layout_height="0dp"
android:layout_marginEnd="9dp"
android:src="@drawable/funnel"
app:tint="@color/white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/top_bar"
app:layout_constraintBottom_toBottomOf="@id/top_bar" />
<ImageView
android:id="@+id/background"

View file

@ -9,10 +9,7 @@
name="onNewContactClicked"
type="View.OnClickListener" />
<variable
name="onConversationsClicked"
type="View.OnClickListener" />
<variable
name="onCallsClicked"
name="filterClickListener"
type="View.OnClickListener" />
<variable
name="viewModel"
@ -35,10 +32,23 @@
android:name="org.linphone.ui.main.fragment.TopBarFragment"
android:layout_width="0dp"
android:layout_height="@dimen/top_bar_height"
android:layout_marginEnd="9dp"
bind:layout="@layout/top_search_bar"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"/>
app:layout_constraintEnd_toStartOf="@id/filter"/>
<ImageView
android:onClick="@{filterClickListener}"
android:id="@+id/filter"
android:layout_width="24dp"
android:layout_height="0dp"
android:layout_marginEnd="9dp"
android:src="@drawable/funnel"
app:tint="@color/white"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@id/top_bar"
app:layout_constraintBottom_toBottomOf="@id/top_bar" />
<ImageView
android:id="@+id/background"