diff --git a/appnav/src/main/kotlin/io/element/android/appnav/BackstackExt.kt b/appnav/src/main/kotlin/io/element/android/appnav/BackstackExt.kt index e7bf9f200f..36b267debb 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/BackstackExt.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/BackstackExt.kt @@ -16,12 +16,6 @@ package io.element.android.appnav -import android.content.Context -import android.content.ContextWrapper -import androidx.activity.ComponentActivity -import androidx.activity.compose.BackHandler -import androidx.compose.runtime.Composable -import androidx.compose.ui.platform.LocalContext import com.bumble.appyx.navmodel.backstack.BackStack import com.bumble.appyx.navmodel.backstack.operation.NewRoot import com.bumble.appyx.navmodel.backstack.operation.Remove @@ -47,18 +41,3 @@ fun BackStack.removeLast(element: T) { accept(Remove(lastExpectedNavElement.key)) } -@Composable -fun MoveActivityToBackgroundBackHandler(enabled: Boolean = true) { - - fun Context.findActivity(): ComponentActivity? = when (this) { - is ComponentActivity -> this - is ContextWrapper -> baseContext.findActivity() - else -> null - } - - val context = LocalContext.current - BackHandler(enabled = enabled) { - context.findActivity()?.moveTaskToBack(false) - } -} - diff --git a/appnav/src/main/kotlin/io/element/android/appnav/MoveActivityToBackgroundBackHandler.kt b/appnav/src/main/kotlin/io/element/android/appnav/MoveActivityToBackgroundBackHandler.kt new file mode 100644 index 0000000000..5d959f9464 --- /dev/null +++ b/appnav/src/main/kotlin/io/element/android/appnav/MoveActivityToBackgroundBackHandler.kt @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2023 New Vector Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.element.android.appnav + +import android.content.Context +import android.content.ContextWrapper +import androidx.activity.ComponentActivity +import androidx.activity.compose.BackHandler +import androidx.compose.runtime.Composable +import androidx.compose.ui.platform.LocalContext + +@Composable +fun MoveActivityToBackgroundBackHandler(enabled: Boolean = true) { + + fun Context.findActivity(): ComponentActivity? = when (this) { + is ComponentActivity -> this + is ContextWrapper -> baseContext.findActivity() + else -> null + } + + val context = LocalContext.current + BackHandler(enabled = enabled) { + context.findActivity()?.moveTaskToBack(false) + } +} diff --git a/build.gradle.kts b/build.gradle.kts index fcd67f07fe..704bbe6bbc 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -251,7 +251,9 @@ koverMerged { // Some options can't be tested at the moment excludes += "io.element.android.features.preferences.impl.developer.DeveloperSettingsPresenter$*" // Temporary until we have actually something to test. - excludes += "io.element.android.features.pin.impl.*Presenter" + excludes += "io.element.android.features.pin.impl.auth.PinAuthenticationPresenter" + excludes += "io.element.android.features.pin.impl.auth.PinAuthenticationPresenter$*" + excludes += "io.element.android.features.pin.impl.create.CreatePinPresenter" } bound { minValue = 85 diff --git a/features/pin/impl/src/main/kotlin/io/element/android/features/pin/impl/create/CreatePinView.kt b/features/pin/impl/src/main/kotlin/io/element/android/features/pin/impl/create/CreatePinView.kt index efdbe62bfa..64e5be4091 100644 --- a/features/pin/impl/src/main/kotlin/io/element/android/features/pin/impl/create/CreatePinView.kt +++ b/features/pin/impl/src/main/kotlin/io/element/android/features/pin/impl/create/CreatePinView.kt @@ -43,7 +43,7 @@ fun CreatePinView( @Composable @PreviewsDayNight -internal fun CreatePinViewLightPreview(@PreviewParameter(CreatePinStateProvider::class) state: CreatePinState) { +internal fun CreatePinViewPreview(@PreviewParameter(CreatePinStateProvider::class) state: CreatePinState) { ElementPreview { CreatePinView( state = state, diff --git a/tests/uitests/src/test/snapshots/images/ui_S_t[f.pin.impl.create_null_CreatePinViewLight-D-1_1_null_0,NEXUS_5,1.0,en].png b/tests/uitests/src/test/snapshots/images/ui_S_t[f.pin.impl.create_null_CreatePinView-D-1_1_null_0,NEXUS_5,1.0,en].png similarity index 100% rename from tests/uitests/src/test/snapshots/images/ui_S_t[f.pin.impl.create_null_CreatePinViewLight-D-1_1_null_0,NEXUS_5,1.0,en].png rename to tests/uitests/src/test/snapshots/images/ui_S_t[f.pin.impl.create_null_CreatePinView-D-1_1_null_0,NEXUS_5,1.0,en].png diff --git a/tests/uitests/src/test/snapshots/images/ui_S_t[f.pin.impl.create_null_CreatePinViewLight-N-1_2_null_0,NEXUS_5,1.0,en].png b/tests/uitests/src/test/snapshots/images/ui_S_t[f.pin.impl.create_null_CreatePinView-N-1_2_null_0,NEXUS_5,1.0,en].png similarity index 100% rename from tests/uitests/src/test/snapshots/images/ui_S_t[f.pin.impl.create_null_CreatePinViewLight-N-1_2_null_0,NEXUS_5,1.0,en].png rename to tests/uitests/src/test/snapshots/images/ui_S_t[f.pin.impl.create_null_CreatePinView-N-1_2_null_0,NEXUS_5,1.0,en].png