diff --git a/app/src/main/java/com/philkes/notallyx/presentation/activity/main/fragment/SearchFragment.kt b/app/src/main/java/com/philkes/notallyx/presentation/activity/main/fragment/SearchFragment.kt index 477dcb66..49aa1288 100644 --- a/app/src/main/java/com/philkes/notallyx/presentation/activity/main/fragment/SearchFragment.kt +++ b/app/src/main/java/com/philkes/notallyx/presentation/activity/main/fragment/SearchFragment.kt @@ -6,6 +6,7 @@ import android.view.View import androidx.core.os.BundleCompat import androidx.core.view.isVisible import com.philkes.notallyx.R +import com.philkes.notallyx.data.model.BaseNote import com.philkes.notallyx.data.model.Folder class SearchFragment : NotallyFragment() { @@ -44,6 +45,9 @@ class SearchFragment : NotallyFragment() { isVisible = true } } else binding?.ChipGroup?.isVisible = false + getObservable().observe(viewLifecycleOwner) { items -> + model.actionMode.updateSelected(items?.filterIsInstance()?.map { it.id }) + } } override fun getBackground() = R.drawable.search diff --git a/app/src/main/java/com/philkes/notallyx/utils/ActionMode.kt b/app/src/main/java/com/philkes/notallyx/utils/ActionMode.kt index 850ec15f..d8d87142 100644 --- a/app/src/main/java/com/philkes/notallyx/utils/ActionMode.kt +++ b/app/src/main/java/com/philkes/notallyx/utils/ActionMode.kt @@ -44,6 +44,13 @@ class ActionMode { } } + fun updateSelected(availableItemIds: List?) { + selectedNotes.keys + .filter { availableItemIds?.contains(it) == false } + .forEach { selectedNotes.remove(it) } + refresh() + } + fun isEnabled() = enabled.value // We assume selectedNotes.size is 1