tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 18f1c9065773bdacb94113d1196782eb14ba18c7
parent 521937312e7e3ef894ab4c8377d6b835770ab7db
Author: Gabriel Luong <gabriel.luong@gmail.com>
Date:   Fri, 21 Nov 2025 05:25:59 +0000

Bug 1998021 - Part 7: Migrate TranslationsDialogBottomSheet to M3 Acorn color tokens r=android-reviewers,007

Dropdown: https://www.figma.com/design/MjufE1X5fvkxZ0YneX4kRd/Android-Library--2025-?node-id=67176-63106&m=dev
Translations: https://www.figma.com/design/ctk1Pw1TBxUwVgTTOvjHb4/2025-Android-Fundamentals?node-id=975-21038&m=dev

Differential Revision: https://phabricator.services.mozilla.com/D271172

Diffstat:
Mmobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBottomSheet.kt | 95+++++++++++++++++++++++++++++++++++++++++++++++++++++--------------------------
1 file changed, 64 insertions(+), 31 deletions(-)

diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBottomSheet.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/translations/TranslationsDialogBottomSheet.kt @@ -5,7 +5,6 @@ package org.mozilla.fenix.translations import android.content.res.Configuration -import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column @@ -19,6 +18,8 @@ import androidx.compose.foundation.layout.width import androidx.compose.foundation.layout.wrapContentSize import androidx.compose.material3.Icon import androidx.compose.material3.IconButton +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment @@ -32,6 +33,7 @@ import androidx.compose.ui.semantics.semantics import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.rememberTextMeasurer import androidx.compose.ui.text.style.TextDecoration +import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewLightDark import androidx.compose.ui.unit.Dp import androidx.compose.ui.unit.dp @@ -48,6 +50,7 @@ import org.mozilla.fenix.compose.InfoType import org.mozilla.fenix.compose.LinkText import org.mozilla.fenix.compose.LinkTextState import org.mozilla.fenix.theme.FirefoxTheme +import org.mozilla.fenix.theme.Theme import java.util.Locale import mozilla.components.ui.icons.R as iconsR @@ -94,6 +97,7 @@ fun TranslationsDialogBottomSheet( if (showFirstTimeFlow) { Spacer(modifier = Modifier.height(8.dp)) + TranslationsDialogInfoMessage( learnMoreUrl = learnMoreUrl, onLearnMoreClicked = onLearnMoreClicked, @@ -299,7 +303,7 @@ private fun TranslationsDialogContent( translateFromLanguages?.let { addAll(it) } } - val longestLanguageSize = getLongestLanguageWidth(allLanguagesList, FirefoxTheme.typography.subtitle1) + val longestLanguageSize = getLongestLanguageWidth(allLanguagesList, FirefoxTheme.typography.body1) when (LocalConfiguration.current.orientation) { Configuration.ORIENTATION_LANDSCAPE -> { @@ -472,7 +476,6 @@ private fun TranslationsDialogHeader( contentDescription = stringResource( id = R.string.translation_option_bottom_sheet_title_heading, ), - tint = FirefoxTheme.colors.iconPrimary, ) } } @@ -480,14 +483,19 @@ private fun TranslationsDialogHeader( Row( verticalAlignment = Alignment.CenterVertically, - modifier = Modifier.padding(top = if (showPageSettings) { 12.dp } else { 0.dp }), + modifier = Modifier.padding( + top = if (showPageSettings) { + 12.dp + } else { + 0.dp + }, + ), ) { Text( text = title, modifier = Modifier .weight(1f) .semantics { heading() }, - color = FirefoxTheme.colors.textPrimary, style = FirefoxTheme.typography.headline7, ) } @@ -561,7 +569,7 @@ private fun TranslationsDialogInfoMessage( ), linkTextStates = listOf(learnMoreState), style = FirefoxTheme.typography.body2.copy( - color = FirefoxTheme.colors.textPrimary, + color = MaterialTheme.colorScheme.onSurfaceVariant, ), linkTextDecoration = TextDecoration.Underline, ) @@ -664,31 +672,6 @@ private fun getLongestLanguageWidth(languages: List<Language>, style: TextStyle) } @Composable -@PreviewLightDark -private fun TranslationsDialogBottomSheetPreview() { - FirefoxTheme { - Column(modifier = Modifier.background(color = FirefoxTheme.colors.layer1)) { - TranslationsDialogBottomSheet( - translationsDialogState = TranslationsDialogState( - positiveButtonType = PositiveButtonType.Enabled, - toLanguages = getTranslateToLanguageList(), - fromLanguages = getTranslateFromLanguageList(), - ), - learnMoreUrl = "", - showPageSettings = true, - showFirstTimeFlow = true, - onSettingClicked = {}, - onLearnMoreClicked = {}, - onPositiveButtonClicked = {}, - onNegativeButtonClicked = {}, - onFromDropdownSelected = {}, - onToDropdownSelected = {}, - ) - } - } -} - -@Composable internal fun getTranslateFromLanguageList(): List<Language> { return mutableListOf<Language>().apply { add( @@ -747,3 +730,53 @@ internal fun getTranslateToLanguageList(): List<Language> { ) } } + +@Composable +@PreviewLightDark +private fun TranslationsDialogBottomSheetPreview() { + FirefoxTheme { + Surface { + TranslationsDialogBottomSheet( + translationsDialogState = TranslationsDialogState( + positiveButtonType = PositiveButtonType.Enabled, + toLanguages = getTranslateToLanguageList(), + fromLanguages = getTranslateFromLanguageList(), + ), + learnMoreUrl = "", + showPageSettings = true, + showFirstTimeFlow = true, + onSettingClicked = {}, + onLearnMoreClicked = {}, + onPositiveButtonClicked = {}, + onNegativeButtonClicked = {}, + onFromDropdownSelected = {}, + onToDropdownSelected = {}, + ) + } + } +} + +@Composable +@Preview +private fun TranslationsDialogBottomSheetPrivatePreview() { + FirefoxTheme(theme = Theme.Private) { + Surface { + TranslationsDialogBottomSheet( + translationsDialogState = TranslationsDialogState( + positiveButtonType = PositiveButtonType.Enabled, + toLanguages = getTranslateToLanguageList(), + fromLanguages = getTranslateFromLanguageList(), + ), + learnMoreUrl = "", + showPageSettings = true, + showFirstTimeFlow = true, + onSettingClicked = {}, + onLearnMoreClicked = {}, + onPositiveButtonClicked = {}, + onNegativeButtonClicked = {}, + onFromDropdownSelected = {}, + onToDropdownSelected = {}, + ) + } + } +}