Add link to wikipedia settings to integration settings page

This commit is contained in:
MM20
2025-09-06 23:09:07 +02:00
parent 97d2668ddc
commit 081d63510e
2 changed files with 30 additions and 19 deletions

View File

@@ -11,6 +11,7 @@ import de.mm20.launcher2.icons.BreezyWeather
import de.mm20.launcher2.icons.Google
import de.mm20.launcher2.icons.Nextcloud
import de.mm20.launcher2.icons.Owncloud
import de.mm20.launcher2.icons.Wikipedia
import de.mm20.launcher2.ui.R
import de.mm20.launcher2.ui.component.preferences.Preference
import de.mm20.launcher2.ui.component.preferences.PreferenceCategory
@@ -57,6 +58,13 @@ fun IntegrationsSettingsScreen() {
navController?.navigate("settings/integrations/owncloud")
}
)
Preference(
title = stringResource(R.string.preference_search_wikipedia),
icon = Icons.Rounded.Wikipedia,
onClick = {
navController?.navigate("settings/search/wikipedia")
}
)
Preference(
title = stringResource(R.string.preference_tasks_integration),
icon = Icons.Default.Check,

View File

@@ -6,6 +6,7 @@ import androidx.compose.runtime.getValue
import androidx.compose.ui.res.stringResource
import androidx.lifecycle.viewmodel.compose.viewModel
import de.mm20.launcher2.ui.R
import de.mm20.launcher2.ui.component.preferences.PreferenceCategory
import de.mm20.launcher2.ui.component.preferences.PreferenceScreen
import de.mm20.launcher2.ui.component.preferences.SwitchPreference
import de.mm20.launcher2.ui.component.preferences.TextPreference
@@ -15,25 +16,27 @@ fun WikipediaSettingsScreen() {
val viewModel: WikipediaSettingsScreenVM = viewModel()
PreferenceScreen(title = stringResource(R.string.preference_search_wikipedia)) {
item {
val wikipedia by viewModel.wikipedia.collectAsState()
SwitchPreference(
title = stringResource(R.string.preference_search_wikipedia),
summary = stringResource(R.string.preference_search_wikipedia_summary),
value = wikipedia == true,
onValueChanged = {
viewModel.setWikipedia(it)
}
)
val customUrl by viewModel.customUrl.collectAsState()
TextPreference(
title = stringResource(R.string.preference_wikipedia_customurl),
value = customUrl ?: "",
placeholder = stringResource(id = R.string.wikipedia_url),
summary = customUrl.takeIf { !it.isNullOrBlank() }
?: stringResource(id = R.string.wikipedia_url),
onValueChanged = {
viewModel.setCustomUrl(it)
})
PreferenceCategory {
val wikipedia by viewModel.wikipedia.collectAsState()
SwitchPreference(
title = stringResource(R.string.preference_search_wikipedia),
summary = stringResource(R.string.preference_search_wikipedia_summary),
value = wikipedia == true,
onValueChanged = {
viewModel.setWikipedia(it)
}
)
val customUrl by viewModel.customUrl.collectAsState()
TextPreference(
title = stringResource(R.string.preference_wikipedia_customurl),
value = customUrl ?: "",
placeholder = stringResource(id = R.string.wikipedia_url),
summary = customUrl.takeIf { !it.isNullOrBlank() }
?: stringResource(id = R.string.wikipedia_url),
onValueChanged = {
viewModel.setCustomUrl(it)
})
}
}
}
}