PermissionsEvents -> PermissionsEvent

This commit is contained in:
Benoit Marty
2026-08-25 09:59:31 +02:00
parent ee30d6aa41
commit e07099f116
8 changed files with 20 additions and 20 deletions
@@ -41,9 +41,9 @@ class DefaultPermissionsPresenter(
permissionsRequested = true
}
fun handleEvent(event: PermissionsEvents) {
fun handleEvent(event: PermissionsEvent) {
when (event) {
PermissionsEvents.RequestPermissions -> {
PermissionsEvent.RequestPermissions -> {
multiplePermissionsState.launchMultiplePermissionRequest()
}
}
@@ -8,6 +8,6 @@
package io.element.android.features.location.impl.common.permissions
sealed interface PermissionsEvents {
data object RequestPermissions : PermissionsEvents
sealed interface PermissionsEvent {
data object RequestPermissions : PermissionsEvent
}
@@ -12,7 +12,7 @@ data class PermissionsState(
val permissions: Permissions,
val shouldShowRationale: Boolean,
val permissionsAlreadyRequested: Boolean,
val eventSink: (PermissionsEvents) -> Unit,
val eventSink: (PermissionsEvent) -> Unit,
) {
sealed interface Permissions {
data object AllGranted : Permissions
@@ -29,7 +29,7 @@ import io.element.android.features.location.impl.common.MapDefaults
import io.element.android.features.location.impl.common.SendLiveLocationPermissions
import io.element.android.features.location.impl.common.actions.LocationActions
import io.element.android.features.location.impl.common.checkLocationConstraints
import io.element.android.features.location.impl.common.permissions.PermissionsEvents
import io.element.android.features.location.impl.common.permissions.PermissionsEvent
import io.element.android.features.location.impl.common.permissions.PermissionsPresenter
import io.element.android.features.location.impl.common.permissions.PermissionsState
import io.element.android.features.location.impl.common.sendLiveLocationPermissions
@@ -111,7 +111,7 @@ class ShareLocationPresenter(
sendLiveLocationPermissions = SendLiveLocationPermissions.GRANTED
)
if (locationConstraints is LocationConstraintsCheck.PermissionShouldBeRequested) {
permissionsState.eventSink(PermissionsEvents.RequestPermissions)
permissionsState.eventSink(PermissionsEvent.RequestPermissions)
}
trackUserPosition = locationConstraints is LocationConstraintsCheck.Success
dialogState = ShareLocationState.Dialog.Constraints(locationConstraints.toDialogState())
@@ -137,7 +137,7 @@ class ShareLocationPresenter(
}
else -> {
if (locationConstraints is LocationConstraintsCheck.PermissionShouldBeRequested) {
permissionsState.eventSink(PermissionsEvents.RequestPermissions)
permissionsState.eventSink(PermissionsEvent.RequestPermissions)
}
dialogState = ShareLocationState.Dialog.Constraints(locationConstraints.toDialogState())
}
@@ -195,7 +195,7 @@ class ShareLocationPresenter(
}
ShareLocationEvent.RequestPermissions -> {
dialogState = ShareLocationState.Dialog.None
permissionsState.eventSink(PermissionsEvents.RequestPermissions)
permissionsState.eventSink(PermissionsEvent.RequestPermissions)
}
}
}
@@ -32,7 +32,7 @@ import io.element.android.features.location.impl.common.MapDefaults
import io.element.android.features.location.impl.common.SendLiveLocationPermissions
import io.element.android.features.location.impl.common.actions.LocationActions
import io.element.android.features.location.impl.common.checkLocationConstraints
import io.element.android.features.location.impl.common.permissions.PermissionsEvents
import io.element.android.features.location.impl.common.permissions.PermissionsEvent
import io.element.android.features.location.impl.common.permissions.PermissionsPresenter
import io.element.android.features.location.impl.common.permissions.PermissionsState
import io.element.android.features.location.impl.common.toDialogState
@@ -99,7 +99,7 @@ class ShowLocationPresenter(
sendLiveLocationPermissions = SendLiveLocationPermissions.GRANTED
)
if (locationConstraints is LocationConstraintsCheck.PermissionShouldBeRequested) {
permissionsState.eventSink(PermissionsEvents.RequestPermissions)
permissionsState.eventSink(PermissionsEvent.RequestPermissions)
}
isTrackMyLocation = locationConstraints is LocationConstraintsCheck.Success
dialogState = locationConstraints.toDialogState()
@@ -130,7 +130,7 @@ class ShowLocationPresenter(
locationActions.openLocationSettings()
dialogState = LocationConstraintsDialogState.None
}
ShowLocationEvent.RequestPermissions -> permissionsState.eventSink(PermissionsEvents.RequestPermissions)
ShowLocationEvent.RequestPermissions -> permissionsState.eventSink(PermissionsEvent.RequestPermissions)
ShowLocationEvent.StopLocationSharing -> coroutineScope.launch {
liveLocationShareManager.stopShare(joinedRoom.roomId)
}
@@ -11,9 +11,9 @@ package io.element.android.features.location.impl.common.permissions
import androidx.compose.runtime.Composable
class FakePermissionsPresenter : PermissionsPresenter {
val events = mutableListOf<PermissionsEvents>()
val events = mutableListOf<PermissionsEvent>()
private fun handleEvent(event: PermissionsEvents) {
private fun handleEvent(event: PermissionsEvent) {
events += event
}
@@ -26,7 +26,7 @@ import io.element.android.features.location.impl.aPermissionsState
import io.element.android.features.location.impl.common.FakeUserLocationStateFactory
import io.element.android.features.location.impl.common.actions.FakeLocationActions
import io.element.android.features.location.impl.common.permissions.FakePermissionsPresenter
import io.element.android.features.location.impl.common.permissions.PermissionsEvents
import io.element.android.features.location.impl.common.permissions.PermissionsEvent
import io.element.android.features.location.impl.common.permissions.PermissionsState
import io.element.android.features.location.impl.common.ui.LocationConstraintsDialogState
import io.element.android.features.location.impl.live.LiveLocationStore
@@ -174,7 +174,7 @@ class ShareLocationPresenterTest {
shareLocationPresenter.test {
skipItems(2)
cancelAndIgnoreRemainingEvents()
assertThat(fakePermissionsPresenter.events).contains(PermissionsEvents.RequestPermissions)
assertThat(fakePermissionsPresenter.events).contains(PermissionsEvent.RequestPermissions)
}
}
@@ -298,7 +298,7 @@ class ShareLocationPresenterTest {
// Wait for dialog to be dismissed
awaitItem()
assertThat(fakePermissionsPresenter.events.last()).isEqualTo(PermissionsEvents.RequestPermissions)
assertThat(fakePermissionsPresenter.events.last()).isEqualTo(PermissionsEvent.RequestPermissions)
cancelAndIgnoreRemainingEvents()
}
}
@@ -20,7 +20,7 @@ import io.element.android.features.location.impl.aPermissionsState
import io.element.android.features.location.impl.common.FakeUserLocationStateFactory
import io.element.android.features.location.impl.common.actions.FakeLocationActions
import io.element.android.features.location.impl.common.permissions.FakePermissionsPresenter
import io.element.android.features.location.impl.common.permissions.PermissionsEvents
import io.element.android.features.location.impl.common.permissions.PermissionsEvent
import io.element.android.features.location.impl.common.permissions.PermissionsState
import io.element.android.features.location.impl.common.ui.LocationConstraintsDialogState
import io.element.android.features.location.test.FakeActiveLiveLocationShareManager
@@ -188,7 +188,7 @@ class ShowLocationPresenterTest {
// Continue the dialog sends permission request to the permissions presenter
trackLocationState.eventSink(ShowLocationEvent.RequestPermissions)
assertThat(fakePermissionsPresenter.events.last()).isEqualTo(PermissionsEvents.RequestPermissions)
assertThat(fakePermissionsPresenter.events.last()).isEqualTo(PermissionsEvent.RequestPermissions)
}
}
@@ -208,7 +208,7 @@ class ShowLocationPresenterTest {
initialState.eventSink(ShowLocationEvent.TrackMyLocation(true))
assertThat(fakePermissionsPresenter.events).contains(PermissionsEvents.RequestPermissions)
assertThat(fakePermissionsPresenter.events).contains(PermissionsEvent.RequestPermissions)
cancelAndIgnoreRemainingEvents()
}
}