Skip to content

Commit ded7c9a

Browse files
Bug 2035772 - Add vertical scroll modifier to Page Summaries Settings Screen r=matt-tighe
Pull request: #309
1 parent b9b3c5a commit ded7c9a

1 file changed

Lines changed: 33 additions & 1 deletion

File tree

  • mobile/android/android-components/components/feature/summarize/src/main/java/mozilla/components/feature/summarize/settings

mobile/android/android-components/components/feature/summarize/src/main/java/mozilla/components/feature/summarize/settings/SummarizeSettingsScreen.kt

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,16 @@ package mozilla.components.feature.summarize.settings
66

77
import androidx.compose.foundation.background
88
import androidx.compose.foundation.clickable
9+
import androidx.compose.foundation.layout.Box
910
import androidx.compose.foundation.layout.Column
1011
import androidx.compose.foundation.layout.Row
1112
import androidx.compose.foundation.layout.Spacer
1213
import androidx.compose.foundation.layout.fillMaxWidth
1314
import androidx.compose.foundation.layout.height
1415
import androidx.compose.foundation.layout.padding
16+
import androidx.compose.foundation.rememberScrollState
1517
import androidx.compose.foundation.selection.toggleable
18+
import androidx.compose.foundation.verticalScroll
1619
import androidx.compose.material3.Icon
1720
import androidx.compose.material3.LocalMinimumInteractiveComponentSize
1821
import androidx.compose.material3.MaterialTheme
@@ -21,13 +24,17 @@ import androidx.compose.runtime.Composable
2124
import androidx.compose.runtime.CompositionLocalProvider
2225
import androidx.compose.runtime.LaunchedEffect
2326
import androidx.compose.runtime.getValue
27+
import androidx.compose.runtime.mutableStateOf
28+
import androidx.compose.runtime.remember
29+
import androidx.compose.runtime.setValue
2430
import androidx.compose.ui.Alignment
2531
import androidx.compose.ui.Modifier
2632
import androidx.compose.ui.res.painterResource
2733
import androidx.compose.ui.res.stringResource
2834
import androidx.compose.ui.semantics.Role
2935
import androidx.compose.ui.semantics.clearAndSetSemantics
3036
import androidx.compose.ui.text.style.TextDecoration
37+
import androidx.compose.ui.tooling.preview.PreviewLightDark
3138
import androidx.compose.ui.unit.dp
3239
import androidx.lifecycle.compose.collectAsStateWithLifecycle
3340
import 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

228236
private 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

Comments
 (0)