Remove "State<T> as a parameter" of Text.kt
Bug: 292036686 Test: m Settings Test: unit test Change-Id: I99b25bca087a81eb527fccc6028b5913f5c3b307
This commit is contained in:
@@ -45,11 +45,10 @@ internal fun BasePreference(
|
||||
BaseLayout(
|
||||
title = title,
|
||||
subTitle = {
|
||||
if (singleLineSummary) {
|
||||
SettingsBody(body = summary, maxLines = 1)
|
||||
} else {
|
||||
SettingsBody(body = summary)
|
||||
}
|
||||
SettingsBody(
|
||||
body = summary.value,
|
||||
maxLines = if (singleLineSummary) 1 else Int.MAX_VALUE,
|
||||
)
|
||||
},
|
||||
modifier = modifier,
|
||||
icon = icon,
|
||||
|
||||
@@ -24,7 +24,6 @@ import androidx.compose.foundation.layout.width
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.Text
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.State
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.text.style.TextOverflow
|
||||
@@ -34,11 +33,6 @@ import com.android.settingslib.spa.framework.theme.SettingsDimension
|
||||
import com.android.settingslib.spa.framework.theme.SettingsTheme
|
||||
import com.android.settingslib.spa.framework.theme.toMediumWeight
|
||||
|
||||
@Composable
|
||||
fun SettingsTitle(title: State<String>, useMediumWeight: Boolean = false) {
|
||||
SettingsTitle(title.value, useMediumWeight)
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun SettingsTitle(title: String, useMediumWeight: Boolean = false) {
|
||||
Text(
|
||||
@@ -53,14 +47,6 @@ fun SettingsTitle(title: String, useMediumWeight: Boolean = false) {
|
||||
)
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun SettingsBody(
|
||||
body: State<String>,
|
||||
maxLines: Int = Int.MAX_VALUE,
|
||||
) {
|
||||
SettingsBody(body = body.value, maxLines = maxLines)
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun SettingsBody(
|
||||
body: String,
|
||||
|
||||
@@ -20,7 +20,6 @@ import androidx.compose.ui.test.assertIsDisplayed
|
||||
import androidx.compose.ui.test.junit4.createComposeRule
|
||||
import androidx.compose.ui.test.onNodeWithText
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4
|
||||
import com.android.settingslib.spa.framework.compose.toState
|
||||
import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.junit.runner.RunWith
|
||||
@@ -31,14 +30,17 @@ class TextTest {
|
||||
val composeTestRule = createComposeRule()
|
||||
|
||||
@Test
|
||||
fun testTitle() {
|
||||
fun settingsTitle() {
|
||||
composeTestRule.setContent {
|
||||
SettingsTitle(title = "myTitleValue")
|
||||
SettingsTitle(title = "myTitleState".toState())
|
||||
}
|
||||
composeTestRule.onNodeWithText("myTitleValue").assertIsDisplayed()
|
||||
}
|
||||
|
||||
fun placeholderTitle() {
|
||||
composeTestRule.setContent {
|
||||
PlaceholderTitle(title = "myTitlePlaceholder")
|
||||
}
|
||||
composeTestRule.onNodeWithText("myTitleState").assertIsDisplayed()
|
||||
composeTestRule.onNodeWithText("myTitleValue").assertIsDisplayed()
|
||||
composeTestRule.onNodeWithText("myTitlePlaceholder").assertIsDisplayed()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -122,5 +122,5 @@ internal fun AppIcon(app: ApplicationInfo, size: Dp) {
|
||||
@Composable
|
||||
internal fun AppLabel(app: ApplicationInfo, isClonedAppPage: Boolean = false) {
|
||||
val appRepository = rememberAppRepository()
|
||||
SettingsTitle(title = appRepository.produceLabel(app, isClonedAppPage), useMediumWeight = true)
|
||||
SettingsTitle(appRepository.produceLabel(app, isClonedAppPage).value, useMediumWeight = true)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user