From 7952721ffee2792ff0ffaccb89449fd9506de3f9 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 25 Aug 2026 10:09:09 +0200 Subject: [PATCH] `DeveloperSettingsEvents` -> `DeveloperSettingsEvent` --- ...ingsEvents.kt => DeveloperSettingsEvent.kt} | 14 +++++++------- .../developer/DeveloperSettingsPresenter.kt | 14 +++++++------- .../impl/developer/DeveloperSettingsState.kt | 2 +- .../DeveloperSettingsStatePreviewParam.kt | 2 +- .../impl/developer/DeveloperSettingsView.kt | 18 +++++++++--------- .../DeveloperSettingsPresenterTest.kt | 16 ++++++++-------- .../developer/DeveloperSettingsViewTest.kt | 10 +++++----- 7 files changed, 38 insertions(+), 38 deletions(-) rename features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/{DeveloperSettingsEvents.kt => DeveloperSettingsEvent.kt} (73%) diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvents.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvent.kt similarity index 73% rename from features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvents.kt rename to features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvent.kt index 2d6c2b0904..e0ad208fc1 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvents.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsEvent.kt @@ -10,11 +10,11 @@ package io.element.android.features.preferences.impl.developer import androidx.compose.ui.graphics.Color -sealed interface DeveloperSettingsEvents { - data class SetShowColorPicker(val show: Boolean) : DeveloperSettingsEvents - data class ChangeBrandColor(val color: Color?) : DeveloperSettingsEvents - data object ClearCache : DeveloperSettingsEvents - data object VacuumStores : DeveloperSettingsEvents - data class MarkAllRoomsAsRead(val needsConfirmation: Boolean) : DeveloperSettingsEvents - data object DismissMarkAllRoomsAsReadConfirmation : DeveloperSettingsEvents +sealed interface DeveloperSettingsEvent { + data class SetShowColorPicker(val show: Boolean) : DeveloperSettingsEvent + data class ChangeBrandColor(val color: Color?) : DeveloperSettingsEvent + data object ClearCache : DeveloperSettingsEvent + data object VacuumStores : DeveloperSettingsEvent + data class MarkAllRoomsAsRead(val needsConfirmation: Boolean) : DeveloperSettingsEvent + data object DismissMarkAllRoomsAsReadConfirmation : DeveloperSettingsEvent } diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt index c5a9b430ee..c925433608 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenter.kt @@ -79,10 +79,10 @@ class DeveloperSettingsPresenter( computeCacheSize(cacheSize) } - fun handleEvent(event: DeveloperSettingsEvents) { + fun handleEvent(event: DeveloperSettingsEvent) { when (event) { - DeveloperSettingsEvents.ClearCache -> coroutineScope.clearCache(clearCacheAction) - is DeveloperSettingsEvents.ChangeBrandColor -> coroutineScope.launch { + DeveloperSettingsEvent.ClearCache -> coroutineScope.clearCache(clearCacheAction) + is DeveloperSettingsEvent.ChangeBrandColor -> coroutineScope.launch { showColorPicker = false val color = event.color ?.toArgb() @@ -91,13 +91,13 @@ class DeveloperSettingsPresenter( ?.padStart(7, '#') enterpriseService.overrideBrandColor(sessionId, color) } - is DeveloperSettingsEvents.SetShowColorPicker -> { + is DeveloperSettingsEvent.SetShowColorPicker -> { showColorPicker = event.show } - DeveloperSettingsEvents.VacuumStores -> coroutineScope.launch { + DeveloperSettingsEvent.VacuumStores -> coroutineScope.launch { vacuumStoresUseCase() } - is DeveloperSettingsEvents.MarkAllRoomsAsRead -> { + is DeveloperSettingsEvent.MarkAllRoomsAsRead -> { if (event.needsConfirmation) { markAllRoomsAsReadAction.value = AsyncAction.ConfirmingNoParams } else { @@ -106,7 +106,7 @@ class DeveloperSettingsPresenter( ) } } - DeveloperSettingsEvents.DismissMarkAllRoomsAsReadConfirmation -> { + DeveloperSettingsEvent.DismissMarkAllRoomsAsReadConfirmation -> { markAllRoomsAsReadAction.value = AsyncAction.Uninitialized } } diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsState.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsState.kt index 700c989bfa..3a859f14bb 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsState.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsState.kt @@ -23,7 +23,7 @@ data class DeveloperSettingsState( val isEnterpriseBuild: Boolean, val showColorPicker: Boolean, val deviceId: DeviceId, - val eventSink: (DeveloperSettingsEvents) -> Unit + val eventSink: (DeveloperSettingsEvent) -> Unit ) { val showLoader = clearCacheAction is AsyncAction.Loading || markAllRoomsAsReadAction is AsyncAction.Loading } diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsStatePreviewParam.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsStatePreviewParam.kt index 8cc6ad7dce..cbe95d6b20 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsStatePreviewParam.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsStatePreviewParam.kt @@ -42,7 +42,7 @@ fun aDeveloperSettingsState( isEnterpriseBuild: Boolean = false, showColorPicker: Boolean = false, deviceId: DeviceId = DeviceId("ILAKNDNASDLK"), - eventSink: (DeveloperSettingsEvents) -> Unit = {}, + eventSink: (DeveloperSettingsEvent) -> Unit = {}, ) = DeveloperSettingsState( appDeveloperSettingsState = appDeveloperSettingsState, cacheSize = AsyncData.Success("1.2 MB"), diff --git a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt index 66a478a4e5..e143f42b0b 100644 --- a/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt +++ b/features/preferences/impl/src/main/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsView.kt @@ -56,8 +56,8 @@ fun DeveloperSettingsView( title = "Are you sure you want to mark all the rooms as read?", content = "", submitText = stringResource(CommonStrings.action_yes), - onSubmitClick = { state.eventSink(DeveloperSettingsEvents.MarkAllRoomsAsRead(needsConfirmation = false)) }, - onDismiss = { state.eventSink(DeveloperSettingsEvents.DismissMarkAllRoomsAsReadConfirmation) }, + onSubmitClick = { state.eventSink(DeveloperSettingsEvent.MarkAllRoomsAsRead(needsConfirmation = false)) }, + onDismiss = { state.eventSink(DeveloperSettingsEvent.DismissMarkAllRoomsAsReadConfirmation) }, ) } BackHandler( @@ -89,7 +89,7 @@ fun DeveloperSettingsView( Text("Change brand color") }, onClick = { - state.eventSink(DeveloperSettingsEvents.SetShowColorPicker(true)) + state.eventSink(DeveloperSettingsEvent.SetShowColorPicker(true)) } ) ListItem( @@ -97,7 +97,7 @@ fun DeveloperSettingsView( Text("Reset brand color") }, onClick = { - state.eventSink(DeveloperSettingsEvents.ChangeBrandColor(null)) + state.eventSink(DeveloperSettingsEvent.ChangeBrandColor(null)) } ) } @@ -131,7 +131,7 @@ fun DeveloperSettingsView( Text("Vacuum stores") }, onClick = { - state.eventSink(DeveloperSettingsEvents.VacuumStores) + state.eventSink(DeveloperSettingsEvent.VacuumStores) } ) ListItem( @@ -152,7 +152,7 @@ fun DeveloperSettingsView( }, onClick = { if (state.clearCacheAction.isLoading().not()) { - state.eventSink(DeveloperSettingsEvents.ClearCache) + state.eventSink(DeveloperSettingsEvent.ClearCache) } } ) @@ -164,10 +164,10 @@ fun DeveloperSettingsView( showAlphaBar = false, ), onDismissRequest = { - state.eventSink(DeveloperSettingsEvents.SetShowColorPicker(false)) + state.eventSink(DeveloperSettingsEvent.SetShowColorPicker(false)) }, onPickedColor = { - state.eventSink(DeveloperSettingsEvents.ChangeBrandColor(it)) + state.eventSink(DeveloperSettingsEvent.ChangeBrandColor(it)) }, ) } @@ -210,7 +210,7 @@ private fun MarkAllRoomsAsReadCategory(state: DeveloperSettingsState) { }, enabled = !state.showLoader, onClick = { - state.eventSink(DeveloperSettingsEvents.MarkAllRoomsAsRead(needsConfirmation = true)) + state.eventSink(DeveloperSettingsEvent.MarkAllRoomsAsRead(needsConfirmation = true)) }, ) } diff --git a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt index 3b2645783f..753d89da95 100644 --- a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt +++ b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsPresenterTest.kt @@ -88,7 +88,7 @@ class DeveloperSettingsPresenterTest { skipItems(2) assertThat(clearCacheUseCase.executeHasBeenCalled).isFalse() awaitItem().also { state -> - state.eventSink(DeveloperSettingsEvents.ClearCache) + state.eventSink(DeveloperSettingsEvent.ClearCache) } awaitItem().also { state -> assertThat(state.clearCacheAction).isInstanceOf(AsyncAction.Loading::class.java) @@ -117,13 +117,13 @@ class DeveloperSettingsPresenterTest { skipItems(1) val initialState = awaitItem() assertThat(initialState.isEnterpriseBuild).isTrue() - initialState.eventSink(DeveloperSettingsEvents.SetShowColorPicker(true)) + initialState.eventSink(DeveloperSettingsEvent.SetShowColorPicker(true)) assertThat(awaitItem().showColorPicker).isTrue() - initialState.eventSink(DeveloperSettingsEvents.SetShowColorPicker(false)) + initialState.eventSink(DeveloperSettingsEvent.SetShowColorPicker(false)) assertThat(awaitItem().showColorPicker).isFalse() - initialState.eventSink(DeveloperSettingsEvents.SetShowColorPicker(true)) + initialState.eventSink(DeveloperSettingsEvent.SetShowColorPicker(true)) assertThat(awaitItem().showColorPicker).isTrue() - initialState.eventSink(DeveloperSettingsEvents.ChangeBrandColor(Color.Green)) + initialState.eventSink(DeveloperSettingsEvent.ChangeBrandColor(Color.Green)) assertThat(awaitItem().showColorPicker).isFalse() skipItems(1) overrideBrandColorResult.assertions().isCalledOnce() @@ -138,10 +138,10 @@ class DeveloperSettingsPresenterTest { presenter.test { skipItems(2) val initialState = awaitItem() - initialState.eventSink(DeveloperSettingsEvents.MarkAllRoomsAsRead(needsConfirmation = true)) + initialState.eventSink(DeveloperSettingsEvent.MarkAllRoomsAsRead(needsConfirmation = true)) val stateWithConfirmation = awaitItem() assertThat(stateWithConfirmation.markAllRoomsAsReadAction.isConfirming()).isTrue() - stateWithConfirmation.eventSink(DeveloperSettingsEvents.MarkAllRoomsAsRead(needsConfirmation = false)) + stateWithConfirmation.eventSink(DeveloperSettingsEvent.MarkAllRoomsAsRead(needsConfirmation = false)) awaitItem().also { state -> assertThat(state.markAllRoomsAsReadAction.isConfirming()).isFalse() assertThat(state.markAllRoomsAsReadAction).isInstanceOf(AsyncAction.Loading::class.java) @@ -164,7 +164,7 @@ class DeveloperSettingsPresenterTest { presenter.test { val state = awaitItem() assertThat(vacuumCalled).isFalse() - state.eventSink(DeveloperSettingsEvents.VacuumStores) + state.eventSink(DeveloperSettingsEvent.VacuumStores) skipItems(1) assertThat(vacuumCalled).isTrue() } diff --git a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsViewTest.kt b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsViewTest.kt index a16ad77d48..f1151bd3e1 100644 --- a/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsViewTest.kt +++ b/features/preferences/impl/src/test/kotlin/io/element/android/features/preferences/impl/developer/DeveloperSettingsViewTest.kt @@ -30,7 +30,7 @@ import org.robolectric.annotation.Config class DeveloperSettingsViewTest : RobolectricTest() { @Test fun `clicking on back invokes the expected callback`() = runAndroidComposeUiTest { - val eventsRecorder = EventsRecorder(expectEvents = false) + val eventsRecorder = EventsRecorder(expectEvents = false) ensureCalledOnce { setDeveloperSettingsView( state = aDeveloperSettingsState( @@ -45,7 +45,7 @@ class DeveloperSettingsViewTest : RobolectricTest() { @Config(qualifiers = "h2400dp") @Test fun `clicking on push history notification invokes the expected callback`() = runAndroidComposeUiTest { - val eventsRecorder = EventsRecorder(expectEvents = false) + val eventsRecorder = EventsRecorder(expectEvents = false) ensureCalledOnce { setDeveloperSettingsView( state = aDeveloperSettingsState( @@ -60,7 +60,7 @@ class DeveloperSettingsViewTest : RobolectricTest() { @Config(qualifiers = "h2000dp") @Test fun `clicking on open showkase invokes the expected callback`() = runAndroidComposeUiTest { - val eventsRecorder = EventsRecorder(expectEvents = false) + val eventsRecorder = EventsRecorder(expectEvents = false) ensureCalledOnce { setDeveloperSettingsView( state = aDeveloperSettingsState( @@ -75,14 +75,14 @@ class DeveloperSettingsViewTest : RobolectricTest() { @Config(qualifiers = "h2400dp") @Test fun `clicking on clear cache emits the expected event`() = runAndroidComposeUiTest { - val eventsRecorder = EventsRecorder() + val eventsRecorder = EventsRecorder() setDeveloperSettingsView( state = aDeveloperSettingsState( eventSink = eventsRecorder ), ) onNodeWithText("Clear cache").performScrollTo().performClick() - eventsRecorder.assertSingle(DeveloperSettingsEvents.ClearCache) + eventsRecorder.assertSingle(DeveloperSettingsEvent.ClearCache) } }