From 081d63510e18fae8a7a21c1418d67867d178224e Mon Sep 17 00:00:00 2001 From: MM20 <15646950+MM2-0@users.noreply.github.com> Date: Sat, 6 Sep 2025 23:09:07 +0200 Subject: [PATCH] Add link to wikipedia settings to integration settings page --- .../IntegrationsSettingsScreen.kt | 8 ++++ .../wikipedia/WikipediaSettingsScreen.kt | 41 ++++++++++--------- 2 files changed, 30 insertions(+), 19 deletions(-) diff --git a/app/ui/src/main/java/de/mm20/launcher2/ui/settings/integrations/IntegrationsSettingsScreen.kt b/app/ui/src/main/java/de/mm20/launcher2/ui/settings/integrations/IntegrationsSettingsScreen.kt index 81f747981..48ed13fc0 100644 --- a/app/ui/src/main/java/de/mm20/launcher2/ui/settings/integrations/IntegrationsSettingsScreen.kt +++ b/app/ui/src/main/java/de/mm20/launcher2/ui/settings/integrations/IntegrationsSettingsScreen.kt @@ -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, diff --git a/app/ui/src/main/java/de/mm20/launcher2/ui/settings/wikipedia/WikipediaSettingsScreen.kt b/app/ui/src/main/java/de/mm20/launcher2/ui/settings/wikipedia/WikipediaSettingsScreen.kt index 686050a97..c3986e950 100644 --- a/app/ui/src/main/java/de/mm20/launcher2/ui/settings/wikipedia/WikipediaSettingsScreen.kt +++ b/app/ui/src/main/java/de/mm20/launcher2/ui/settings/wikipedia/WikipediaSettingsScreen.kt @@ -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) + }) + } } } } \ No newline at end of file