Skip to content

Commit 9a06a7a

Browse files
committed
Add link to brand guidelines, remove redundant R
1 parent f3ea285 commit 9a06a7a

File tree

3 files changed

+41
-10
lines changed

3 files changed

+41
-10
lines changed

feature/settings/src/androidTest/java/com/google/samples/apps/nowinandroid/feature/settings/SettingsDialogTest.kt

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,4 +80,25 @@ class SettingsDialogTest {
8080
composeTestRule.onNodeWithText(getString(R.string.brand_android)).assertIsSelected()
8181
composeTestRule.onNodeWithText(getString(R.string.dark_mode_config_dark)).assertIsSelected()
8282
}
83+
84+
@Test
85+
fun whenStateIsSuccess_allLegalLinksAreDisplayed() {
86+
composeTestRule.setContent {
87+
SettingsDialog(
88+
settingsUiState = Success(
89+
UserEditableSettings(
90+
brand = ANDROID,
91+
darkThemeConfig = DARK
92+
)
93+
),
94+
onDismiss = { },
95+
onChangeThemeBrand = {},
96+
onChangeDarkThemeConfig = {}
97+
)
98+
}
99+
100+
composeTestRule.onNodeWithText(getString(R.string.privacy_policy)).assertExists()
101+
composeTestRule.onNodeWithText(getString(R.string.licenses)).assertExists()
102+
composeTestRule.onNodeWithText(getString(R.string.brand_guidelines)).assertExists()
103+
}
83104
}

feature/settings/src/main/java/com/google/samples/apps/nowinandroid/feature/settings/SettingsDialog.kt

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import androidx.compose.foundation.layout.Column
2323
import androidx.compose.foundation.layout.Row
2424
import androidx.compose.foundation.layout.Spacer
2525
import androidx.compose.foundation.layout.fillMaxWidth
26+
import androidx.compose.foundation.layout.height
2627
import androidx.compose.foundation.layout.padding
2728
import androidx.compose.foundation.layout.width
2829
import androidx.compose.foundation.rememberScrollState
@@ -86,7 +87,7 @@ fun SettingsDialog(
8687
onDismissRequest = { onDismiss() },
8788
title = {
8889
Text(
89-
text = stringResource(R.string.settings_title),
90+
text = stringResource(string.settings_title),
9091
style = MaterialTheme.typography.titleLarge
9192
)
9293
},
@@ -96,7 +97,7 @@ fun SettingsDialog(
9697
when (settingsUiState) {
9798
Loading -> {
9899
Text(
99-
text = stringResource(R.string.loading),
100+
text = stringResource(string.loading),
100101
modifier = Modifier.padding(vertical = 16.dp)
101102
)
102103
}
@@ -131,33 +132,33 @@ private fun SettingsPanel(
131132
onChangeThemeBrand: (themeBrand: ThemeBrand) -> Unit,
132133
onChangeDarkThemeConfig: (darkThemeConfig: DarkThemeConfig) -> Unit
133134
) {
134-
SettingsDialogSectionTitle(text = stringResource(R.string.theme))
135+
SettingsDialogSectionTitle(text = stringResource(string.theme))
135136
Column(Modifier.selectableGroup()) {
136137
SettingsDialogThemeChooserRow(
137-
text = stringResource(R.string.brand_default),
138+
text = stringResource(string.brand_default),
138139
selected = settings.brand == DEFAULT,
139140
onClick = { onChangeThemeBrand(DEFAULT) }
140141
)
141142
SettingsDialogThemeChooserRow(
142-
text = stringResource(R.string.brand_android),
143+
text = stringResource(string.brand_android),
143144
selected = settings.brand == ANDROID,
144145
onClick = { onChangeThemeBrand(ANDROID) }
145146
)
146147
}
147148
SettingsDialogSectionTitle(text = "Dark mode preference")
148149
Column(Modifier.selectableGroup()) {
149150
SettingsDialogThemeChooserRow(
150-
text = stringResource(R.string.dark_mode_config_system_default),
151+
text = stringResource(string.dark_mode_config_system_default),
151152
selected = settings.darkThemeConfig == FOLLOW_SYSTEM,
152153
onClick = { onChangeDarkThemeConfig(FOLLOW_SYSTEM) }
153154
)
154155
SettingsDialogThemeChooserRow(
155-
text = stringResource(R.string.dark_mode_config_light),
156+
text = stringResource(string.dark_mode_config_light),
156157
selected = settings.darkThemeConfig == LIGHT,
157158
onClick = { onChangeDarkThemeConfig(LIGHT) }
158159
)
159160
SettingsDialogThemeChooserRow(
160-
text = stringResource(R.string.dark_mode_config_dark),
161+
text = stringResource(string.dark_mode_config_dark),
161162
selected = settings.darkThemeConfig == DARK,
162163
onClick = { onChangeDarkThemeConfig(DARK) }
163164
)
@@ -210,15 +211,22 @@ private fun LegalPanel() {
210211
) {
211212
Row {
212213
TextLink(
213-
text = stringResource(R.string.privacy_policy),
214+
text = stringResource(string.privacy_policy),
214215
url = PRIVACY_POLICY_URL
215216
)
216217
Spacer(Modifier.width(16.dp))
217218
TextLink(
218-
text = stringResource(R.string.licenses),
219+
text = stringResource(string.licenses),
219220
url = LICENSES_URL
220221
)
221222
}
223+
Spacer(Modifier.height(16.dp))
224+
Row {
225+
TextLink(
226+
text = stringResource(string.brand_guidelines),
227+
url = BRAND_GUIDELINES_URL
228+
)
229+
}
222230
}
223231
}
224232
}
@@ -274,3 +282,4 @@ fun PreviewSettingsDialogLoading() {
274282
/* ktlint-disable max-line-length */
275283
private const val PRIVACY_POLICY_URL = "https://policies.google.com/privacy"
276284
private const val LICENSES_URL = "https://github.com/android/nowinandroid/blob/main/app/LICENSES.md#open-source-licenses-and-copyright-notices"
285+
private const val BRAND_GUIDELINES_URL = "https://developer.android.com/distribute/marketing-tools/brand-guidelines"

feature/settings/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
<string name="loading">Loading...</string>
2121
<string name="privacy_policy">Privacy policy</string>
2222
<string name="licenses">Licenses</string>
23+
<string name="brand_guidelines">Brand Guidelines</string>
2324
<string name="theme">Theme</string>
2425
<string name="brand_default">Default</string>
2526
<string name="brand_android">Android</string>

0 commit comments

Comments
 (0)