commit e52ddeb1c7ec05dea3e1596acab1494697ce1b17
parent a8bc656b8280a3d43db5dc413d5918bd1489f72e
Author: Gabriel Luong <gabriel.luong@gmail.com>
Date: Fri, 21 Nov 2025 09:03:41 +0000
Bug 1998073 - Part 1: Migrate UnlockScreen to use M3 Acorn color tokens r=android-reviewers,007
Differential Revision: https://phabricator.services.mozilla.com/D271183
Diffstat:
1 file changed, 21 insertions(+), 32 deletions(-)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/biometric/ui/UnlockScreen.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/biometric/ui/UnlockScreen.kt
@@ -6,7 +6,6 @@ package org.mozilla.fenix.settings.biometric.ui
import android.content.res.Configuration
import androidx.compose.foundation.Image
-import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
@@ -15,6 +14,7 @@ import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.padding
+import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
@@ -25,6 +25,7 @@ import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
+import mozilla.components.compose.base.annotation.FlexibleWindowLightDarkPreview
import mozilla.components.compose.base.button.FilledButton
import mozilla.components.compose.base.button.TextButton
import mozilla.components.compose.base.utils.getResolvedAttrResId
@@ -53,19 +54,20 @@ internal fun UnlockScreen(
onUnlockClicked: () -> Unit,
onLeaveClicked: () -> Unit,
) {
- Column(
- modifier = Modifier
- .fillMaxSize()
- .background(FirefoxTheme.colors.layer1)
- .padding(bottom = 24.dp),
- horizontalAlignment = Alignment.CenterHorizontally,
- verticalArrangement = Arrangement.SpaceBetween,
- ) {
- Spacer(modifier = Modifier.height(32.dp))
-
- Header(title)
-
- Footer(onUnlockClicked, onLeaveClicked)
+ Surface {
+ Column(
+ modifier = Modifier
+ .fillMaxSize()
+ .padding(bottom = 24.dp),
+ horizontalAlignment = Alignment.CenterHorizontally,
+ verticalArrangement = Arrangement.SpaceBetween,
+ ) {
+ Spacer(modifier = Modifier.height(32.dp))
+
+ Header(title)
+
+ Footer(onUnlockClicked, onLeaveClicked)
+ }
}
}
@@ -81,7 +83,6 @@ private fun Header(title: String) {
Text(
text = title,
- color = FirefoxTheme.colors.textPrimary,
textAlign = TextAlign.Center,
style = FirefoxTheme.typography.headline6,
maxLines = 1,
@@ -140,32 +141,20 @@ private fun Footer(onUnlockClicked: () -> Unit, onLeaveClicked: () -> Unit) {
}
}
-@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO, widthDp = PHONE_WIDTH, heightDp = PHONE_HEIGHT)
-@Composable
-private fun ScreenPreviewLightPhone() = ScreenPreview(Theme.Light)
-
-@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES, widthDp = PHONE_WIDTH, heightDp = PHONE_HEIGHT)
+@FlexibleWindowLightDarkPreview
@Composable
-private fun ScreenPreviewDarkPhone() = ScreenPreview(Theme.Dark)
+private fun UnlockLoginsScreenPreview() = UnlockLoginsScreenContent(Theme.getTheme())
@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES, widthDp = PHONE_WIDTH, heightDp = PHONE_HEIGHT)
@Composable
-private fun ScreenPreviewPrivatePhone() = ScreenPreview(Theme.Private)
-
-@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO, widthDp = TABLET_WIDTH, heightDp = TABLET_HEIGHT)
-@Composable
-private fun ScreenPreviewLightTablet() = ScreenPreview(Theme.Light)
-
-@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES, widthDp = TABLET_WIDTH, heightDp = TABLET_HEIGHT)
-@Composable
-private fun ScreenPreviewDarkTablet() = ScreenPreview(Theme.Dark)
+private fun UnlockLoginsScreenPreviewPrivatePhone() = UnlockLoginsScreenContent(Theme.Private)
@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES, widthDp = TABLET_WIDTH, heightDp = TABLET_HEIGHT)
@Composable
-private fun ScreenPreviewPrivateTablet() = ScreenPreview(Theme.Private)
+private fun UnlockLoginsScreenPreviewPrivateTablet() = UnlockLoginsScreenContent(Theme.Private)
@Composable
-private fun ScreenPreview(theme: Theme) {
+private fun UnlockLoginsScreenContent(theme: Theme) {
FirefoxTheme(theme) {
UnlockScreen(
title = "Unlock to view your secure feature",