diff --git a/vector/src/main/java/im/vector/app/core/utils/TextUtils.kt b/vector/src/main/java/im/vector/app/core/utils/TextUtils.kt index 463bbb6090..d6af3f5afb 100644 --- a/vector/src/main/java/im/vector/app/core/utils/TextUtils.kt +++ b/vector/src/main/java/im/vector/app/core/utils/TextUtils.kt @@ -86,12 +86,12 @@ object TextUtils { } } - fun formatDurationWithUnits(context: Context, duration: Duration): String { - return formatDurationWithUnits(duration, context::getString) + fun formatDurationWithUnits(context: Context, duration: Duration, appendSeconds: Boolean = true): String { + return formatDurationWithUnits(duration, context::getString, appendSeconds) } - fun formatDurationWithUnits(stringProvider: StringProvider, duration: Duration): String { - return formatDurationWithUnits(duration, stringProvider::getString) + fun formatDurationWithUnits(stringProvider: StringProvider, duration: Duration, appendSeconds: Boolean = true): String { + return formatDurationWithUnits(duration, stringProvider::getString, appendSeconds) } /** @@ -99,9 +99,10 @@ object TextUtils { * So we can pass the getString function either from Context or the StringProvider. * @param duration duration to be formatted * @param getString getString method from Context or StringProvider + * @param appendSeconds if false than formatter will not append seconds * @return formatted duration with a localized form like "10h 30min 5sec" */ - private fun formatDurationWithUnits(duration: Duration, getString: ((Int) -> String)): String { + private fun formatDurationWithUnits(duration: Duration, getString: ((Int) -> String), appendSeconds: Boolean = true): String { val hours = getHours(duration) val minutes = getMinutes(duration) val seconds = getSeconds(duration) @@ -113,14 +114,14 @@ object TextUtils { builder.append(" ") appendMinutes(getString, builder, minutes) } - if (seconds > 0) { + if (appendSeconds && seconds > 0) { builder.append(" ") appendSeconds(getString, builder, seconds) } } minutes > 0 -> { appendMinutes(getString, builder, minutes) - if (seconds > 0) { + if (appendSeconds && seconds > 0) { builder.append(" ") appendSeconds(getString, builder, seconds) } diff --git a/vector/src/main/java/im/vector/app/features/location/live/map/LiveLocationUserItem.kt b/vector/src/main/java/im/vector/app/features/location/live/map/LiveLocationUserItem.kt index 4fc73b0ce9..336f688434 100644 --- a/vector/src/main/java/im/vector/app/features/location/live/map/LiveLocationUserItem.kt +++ b/vector/src/main/java/im/vector/app/features/location/live/map/LiveLocationUserItem.kt @@ -106,7 +106,8 @@ abstract class LiveLocationUserItem : VectorEpoxyModel mapStyle = style this@LocationLiveMapViewFragment.mapboxMap = WeakReference(mapboxMap) - symbolManager = SymbolManager(mapFragment.view as MapView, mapboxMap, style) + symbolManager = SymbolManager(mapFragment.view as MapView, mapboxMap, style).apply { + iconAllowOverlap = true + } pendingLiveLocations .takeUnless { it.isEmpty() } ?.let { updateMap(it) } @@ -109,7 +111,7 @@ class LocationLiveMapViewFragment @Inject constructor( ?: run { val options = MapboxMapOptions.createFromAttributes(requireContext(), null) SupportMapFragment.newInstance(options) - .also { addChildFragment(R.id.fragmentContainer, it, tag = MAP_FRAGMENT_TAG) } + .also { addChildFragment(R.id.liveLocationMapFragmentContainer, it, tag = MAP_FRAGMENT_TAG) } } override fun invalidate() = withState(viewModel) { viewState -> diff --git a/vector/src/main/res/layout/fragment_location_live_map_view.xml b/vector/src/main/res/layout/fragment_location_live_map_view.xml index 05990744c6..9b576c6485 100644 --- a/vector/src/main/res/layout/fragment_location_live_map_view.xml +++ b/vector/src/main/res/layout/fragment_location_live_map_view.xml @@ -7,7 +7,7 @@ android:background="@drawable/bg_live_location_users_bottom_sheet"> @@ -21,7 +21,7 @@ app:layout_behavior="com.google.android.material.bottomsheet.BottomSheetBehavior"> diff --git a/vector/src/main/res/layout/item_live_location_users_bottom_sheet.xml b/vector/src/main/res/layout/item_live_location_users_bottom_sheet.xml index 318db3feb5..73023ceae5 100644 --- a/vector/src/main/res/layout/item_live_location_users_bottom_sheet.xml +++ b/vector/src/main/res/layout/item_live_location_users_bottom_sheet.xml @@ -3,7 +3,8 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" - android:layout_height="80dp"> + android:layout_height="80dp" + android:background="?selectableItemBackground"> + app:layout_constraintTop_toTopOf="parent" />