commit f3f4d17b08598019ad8c7e46920547528a9660d5
parent b20332d9188e3380d327f4f226b564a3367f4029
Author: Gabriel Luong <gabriel.luong@gmail.com>
Date: Tue, 2 Dec 2025 07:24:54 +0000
Bug 1993368 - Part 25: Migrate SecretDebugSettingsScreen to use M3 color tokens r=android-reviewers,007
- Migrated SecretDebugSettingsScreen to use M3 color tokens
- Migrated button usage to use the M3 Filled Button
- Added Composable Preview for SecretDebugSettingsScreenContent.
Differential Revision: https://phabricator.services.mozilla.com/D274487
Diffstat:
1 file changed, 37 insertions(+), 24 deletions(-)
diff --git a/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretDebugSettingsFragment.kt b/mobile/android/fenix/app/src/main/java/org/mozilla/fenix/settings/SecretDebugSettingsFragment.kt
@@ -9,7 +9,7 @@ import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.padding
-import androidx.compose.material3.Button
+import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
@@ -18,10 +18,12 @@ import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.tooling.preview.PreviewLightDark
import androidx.compose.ui.unit.dp
import androidx.fragment.app.Fragment
import androidx.fragment.compose.content
import mozilla.components.browser.state.search.RegionState
+import mozilla.components.compose.base.button.FilledButton
import mozilla.components.lib.state.ext.observeAsState
import org.mozilla.fenix.R
import org.mozilla.fenix.components.components
@@ -51,6 +53,7 @@ class SecretDebugSettingsFragment : Fragment() {
@Composable
private fun SecretDebugSettingsScreen() {
+ val context = LocalContext.current
val regionState: RegionState by components.core.store.observeAsState(
initialValue = RegionState.Default,
map = { it.search.region ?: RegionState.Default },
@@ -76,18 +79,24 @@ private fun SecretDebugSettingsScreen() {
)
}
- DebugInfo(
- regionState = regionState,
- distributionId = distributionId,
- playInstallReferrer = playInstallReferrer,
- )
+ Surface {
+ SecretDebugSettingsScreenContent(
+ regionState = regionState,
+ distributionId = distributionId,
+ playInstallReferrer = playInstallReferrer,
+ onQueryProvider = {
+ DefaultDistributionProviderChecker(context).queryProvider()
+ },
+ )
+ }
}
@Composable
-private fun DebugInfo(
+private fun SecretDebugSettingsScreenContent(
regionState: RegionState,
distributionId: String,
playInstallReferrer: String,
+ onQueryProvider: () -> Unit,
) {
Column(
modifier = Modifier
@@ -95,61 +104,65 @@ private fun DebugInfo(
) {
Text(
text = stringResource(R.string.debug_info_region_home),
- color = FirefoxTheme.colors.textPrimary,
style = FirefoxTheme.typography.headline6,
modifier = Modifier.padding(4.dp),
)
+
Text(
text = regionState.home,
- color = FirefoxTheme.colors.textPrimary,
modifier = Modifier.padding(4.dp),
)
+
Text(
text = stringResource(R.string.debug_info_region_current),
- color = FirefoxTheme.colors.textPrimary,
style = FirefoxTheme.typography.headline6,
modifier = Modifier.padding(4.dp),
)
+
Text(
text = regionState.current,
- color = FirefoxTheme.colors.textPrimary,
modifier = Modifier.padding(4.dp),
)
Text(
text = stringResource(R.string.debug_info_distribution_id),
- color = FirefoxTheme.colors.textPrimary,
style = FirefoxTheme.typography.headline6,
modifier = Modifier.padding(4.dp),
)
+
Text(
text = distributionId,
- color = FirefoxTheme.colors.textPrimary,
modifier = Modifier.padding(4.dp),
)
Text(
text = stringResource(R.string.debug_info_play_referrer),
- color = FirefoxTheme.colors.textPrimary,
style = FirefoxTheme.typography.headline6,
modifier = Modifier.padding(4.dp),
)
+
Text(
text = playInstallReferrer,
- color = FirefoxTheme.colors.textPrimary,
modifier = Modifier.padding(4.dp),
)
- val context = LocalContext.current
+ FilledButton(
+ text = stringResource(R.string.debug_info_run_query_provider_test),
+ onClick = onQueryProvider,
+ )
+ }
+}
- Button(
- onClick = {
- DefaultDistributionProviderChecker(context).queryProvider()
- },
- ) {
- Text(
- text = stringResource(R.string.debug_info_run_query_provider_test),
- color = FirefoxTheme.colors.textOnColorPrimary,
+@PreviewLightDark
+@Composable
+private fun SecretDebugSettingsScreenPreview() {
+ FirefoxTheme {
+ Surface {
+ SecretDebugSettingsScreenContent(
+ regionState = RegionState(home = "US", current = "US"),
+ distributionId = "distributionId",
+ playInstallReferrer = "test",
+ onQueryProvider = {},
)
}
}