From a8e9bcd9eba466d20065aa504b5d2e55a3fd68bb Mon Sep 17 00:00:00 2001 From: johan12345 Date: Mon, 31 Oct 2022 22:23:56 +0100 Subject: [PATCH] improve bottomSheetExpanded LiveData --- .../net/vonforst/evmap/viewmodel/MapViewModel.kt | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/net/vonforst/evmap/viewmodel/MapViewModel.kt b/app/src/main/java/net/vonforst/evmap/viewmodel/MapViewModel.kt index 2eb17a52..5d6c1097 100644 --- a/app/src/main/java/net/vonforst/evmap/viewmodel/MapViewModel.kt +++ b/app/src/main/java/net/vonforst/evmap/viewmodel/MapViewModel.kt @@ -72,8 +72,19 @@ class MapViewModel(application: Application, private val state: SavedStateHandle state.getLiveData("bottomSheetState") } - val bottomSheetExpanded = bottomSheetState.map { - it != BottomSheetBehaviorGoogleMapsLike.STATE_COLLAPSED && it != BottomSheetBehaviorGoogleMapsLike.STATE_HIDDEN + val bottomSheetExpanded = MediatorLiveData().apply { + addSource(bottomSheetState) { + when (it) { + BottomSheetBehaviorGoogleMapsLike.STATE_COLLAPSED, + BottomSheetBehaviorGoogleMapsLike.STATE_HIDDEN -> { + value = false + } + BottomSheetBehaviorGoogleMapsLike.STATE_EXPANDED, + BottomSheetBehaviorGoogleMapsLike.STATE_ANCHOR_POINT -> { + value = true + } + } + } }.distinctUntilChanged() val mapPosition: MutableLiveData by lazy {