@@ -6,13 +6,16 @@ package mozilla.components.feature.summarize.settings
66
77import androidx.compose.foundation.background
88import androidx.compose.foundation.clickable
9+ import androidx.compose.foundation.layout.Box
910import androidx.compose.foundation.layout.Column
1011import androidx.compose.foundation.layout.Row
1112import androidx.compose.foundation.layout.Spacer
1213import androidx.compose.foundation.layout.fillMaxWidth
1314import androidx.compose.foundation.layout.height
1415import androidx.compose.foundation.layout.padding
16+ import androidx.compose.foundation.rememberScrollState
1517import androidx.compose.foundation.selection.toggleable
18+ import androidx.compose.foundation.verticalScroll
1619import androidx.compose.material3.Icon
1720import androidx.compose.material3.LocalMinimumInteractiveComponentSize
1821import androidx.compose.material3.MaterialTheme
@@ -21,13 +24,17 @@ import androidx.compose.runtime.Composable
2124import androidx.compose.runtime.CompositionLocalProvider
2225import androidx.compose.runtime.LaunchedEffect
2326import androidx.compose.runtime.getValue
27+ import androidx.compose.runtime.mutableStateOf
28+ import androidx.compose.runtime.remember
29+ import androidx.compose.runtime.setValue
2430import androidx.compose.ui.Alignment
2531import androidx.compose.ui.Modifier
2632import androidx.compose.ui.res.painterResource
2733import androidx.compose.ui.res.stringResource
2834import androidx.compose.ui.semantics.Role
2935import androidx.compose.ui.semantics.clearAndSetSemantics
3036import androidx.compose.ui.text.style.TextDecoration
37+ import androidx.compose.ui.tooling.preview.PreviewLightDark
3138import androidx.compose.ui.unit.dp
3239import androidx.lifecycle.compose.collectAsStateWithLifecycle
3340import mozilla.components.compose.base.Switch
@@ -82,7 +89,8 @@ fun SummarizeSettingsContent(
8289 modifier : Modifier = Modifier ,
8390) {
8491 Column (
85- modifier = modifier.fillMaxWidth(),
92+ modifier = modifier.fillMaxWidth()
93+ .verticalScroll(rememberScrollState()),
8694 ) {
8795 SwitchRow (
8896 label = stringResource(id = R .string.mozac_summarize_settings_summarize_pages),
@@ -226,3 +234,27 @@ internal fun SettingsAppBar(
226234}
227235
228236private const val DISABLED_ALPHA = 0.38f
237+
238+ @Composable
239+ @PreviewLightDark
240+ private fun SummarizeSettingsContentPreview () {
241+ AcornTheme {
242+ var isFeatureEnabled by remember { mutableStateOf(true ) }
243+ var isGestureEnabled by remember { mutableStateOf(false ) }
244+
245+ Box (
246+ modifier = Modifier .background(MaterialTheme .colorScheme.background),
247+ ) {
248+ SummarizeSettingsContent (
249+ state = SummarizeSettingsState (
250+ isFeatureEnabled = isFeatureEnabled,
251+ isGestureEnabled = isGestureEnabled,
252+ ),
253+ onSummarizePagesToggled = { isFeatureEnabled = ! isFeatureEnabled },
254+ onShakeToSummarizeToggled = { isGestureEnabled = ! isGestureEnabled },
255+ onLearnMoreClicked = {},
256+ onShakeSensitivityChanged = {},
257+ )
258+ }
259+ }
260+ }
0 commit comments