Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e663986c authored by Chaohui Wang's avatar Chaohui Wang
Browse files

Upgrade Compose version to 1.3 for SpaLib

- Use Switch instead of Checkbox
- Disable user scroll for Pager so, current scroll behavior is not
  supported.

Bug: 235727273
Test: Unit test & Manual with Gallery App
Change-Id: I0a5cbf011432c7c1f4545c249f7f75bb239a47c0
parent 94fc6ed4
Loading
Loading
Loading
Loading
+1 −2
Original line number Original line Diff line number Diff line
@@ -18,9 +18,8 @@ buildscript {
    ext {
    ext {
        spa_min_sdk = 21
        spa_min_sdk = 21
        spa_target_sdk = 33
        spa_target_sdk = 33
        jetpack_compose_version = '1.2.0-alpha04'
        jetpack_compose_version = '1.3.0'
        jetpack_compose_compiler_version = '1.3.2'
        jetpack_compose_compiler_version = '1.3.2'
        jetpack_compose_material3_version = '1.0.0-alpha06'
    }
    }
}
}
plugins {
plugins {
+8 −3
Original line number Original line Diff line number Diff line
@@ -17,7 +17,10 @@
package com.android.settingslib.spa.gallery.page
package com.android.settingslib.spa.gallery.page


import android.os.Bundle
import android.os.Bundle
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.padding
import androidx.compose.runtime.Composable
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.Preview
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
import com.android.settingslib.spa.framework.common.SettingsPage
import com.android.settingslib.spa.framework.common.SettingsPage
@@ -48,13 +51,15 @@ object SettingsPagerPageProvider : SettingsPageProvider {


    @Composable
    @Composable
    override fun Page(arguments: Bundle?) {
    override fun Page(arguments: Bundle?) {
        SettingsScaffold(title = TITLE) {
        SettingsScaffold(title = TITLE) { paddingValues ->
            Box(Modifier.padding(paddingValues)) {
                SettingsPager(listOf("Personal", "Work")) {
                SettingsPager(listOf("Personal", "Work")) {
                    PlaceholderTitle("Page $it")
                    PlaceholderTitle("Page $it")
                }
                }
            }
            }
        }
        }
    }
    }
}


@Preview(showBackground = true)
@Preview(showBackground = true)
@Composable
@Composable
+1 −1
Original line number Original line Diff line number Diff line
@@ -55,7 +55,7 @@ android {


dependencies {
dependencies {
    api "androidx.appcompat:appcompat:1.7.0-alpha01"
    api "androidx.appcompat:appcompat:1.7.0-alpha01"
    api "androidx.compose.material3:material3:$jetpack_compose_material3_version"
    api "androidx.compose.material3:material3:1.1.0-alpha01"
    api "androidx.compose.material:material-icons-extended:$jetpack_compose_version"
    api "androidx.compose.material:material-icons-extended:$jetpack_compose_version"
    api "androidx.compose.runtime:runtime-livedata:$jetpack_compose_version"
    api "androidx.compose.runtime:runtime-livedata:$jetpack_compose_version"
    api "androidx.compose.ui:ui-tooling-preview:$jetpack_compose_version"
    api "androidx.compose.ui:ui-tooling-preview:$jetpack_compose_version"
+2 −1
Original line number Original line Diff line number Diff line
@@ -40,7 +40,6 @@ import androidx.compose.ui.platform.LocalLayoutDirection
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.Velocity
import androidx.compose.ui.unit.Velocity
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.dp
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.distinctUntilChanged
import kotlinx.coroutines.flow.drop
import kotlinx.coroutines.flow.drop
import kotlinx.coroutines.flow.filter
import kotlinx.coroutines.flow.filter
@@ -214,6 +213,7 @@ internal fun Pager(
            horizontalAlignment = horizontalAlignment,
            horizontalAlignment = horizontalAlignment,
            reverseLayout = reverseLayout,
            reverseLayout = reverseLayout,
            contentPadding = contentPadding,
            contentPadding = contentPadding,
            userScrollEnabled = false,
            modifier = modifier,
            modifier = modifier,
        ) {
        ) {
            items(
            items(
@@ -241,6 +241,7 @@ internal fun Pager(
            horizontalArrangement = Arrangement.spacedBy(itemSpacing, horizontalAlignment),
            horizontalArrangement = Arrangement.spacedBy(itemSpacing, horizontalAlignment),
            reverseLayout = reverseLayout,
            reverseLayout = reverseLayout,
            contentPadding = contentPadding,
            contentPadding = contentPadding,
            userScrollEnabled = false,
            modifier = modifier,
            modifier = modifier,
        ) {
        ) {
            items(
            items(
+3 −3
Original line number Original line Diff line number Diff line
@@ -21,8 +21,8 @@ import androidx.compose.foundation.layout.RowScope
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Scaffold
import androidx.compose.material3.SmallTopAppBar
import androidx.compose.material3.Text
import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar
import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.runtime.Composable
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.Modifier
@@ -43,7 +43,7 @@ fun SettingsScaffold(
) {
) {
    Scaffold(
    Scaffold(
        topBar = {
        topBar = {
            SmallTopAppBar(
            TopAppBar(
                title = {
                title = {
                    Text(
                    Text(
                        text = title,
                        text = title,
@@ -63,7 +63,7 @@ fun SettingsScaffold(


@OptIn(ExperimentalMaterial3Api::class)
@OptIn(ExperimentalMaterial3Api::class)
@Composable
@Composable
internal fun settingsTopAppBarColors() = TopAppBarDefaults.largeTopAppBarColors(
private fun settingsTopAppBarColors() = TopAppBarDefaults.smallTopAppBarColors(
    containerColor = SettingsTheme.colorScheme.surfaceHeader,
    containerColor = SettingsTheme.colorScheme.surfaceHeader,
    scrolledContainerColor = SettingsTheme.colorScheme.surfaceHeader,
    scrolledContainerColor = SettingsTheme.colorScheme.surfaceHeader,
)
)
Loading