[WIP] Add experimental feed support

This commit is contained in:
MM20
2026-01-04 00:58:35 +01:00
parent 720ea787a9
commit 664419b3c4
35 changed files with 876 additions and 15 deletions

View File

@@ -202,6 +202,8 @@ data class LauncherSettingsData internal constructor(
*/
val localeTransliterator: String? = "",
val feedProviderPackage: String? = null
) {
constructor(
@@ -394,6 +396,10 @@ sealed interface GestureAction {
@Serializable
@SerialName("launch_searchable")
data class Launch(val key: String?) : GestureAction
@Serializable
@SerialName("feed")
data object Feed : GestureAction
}

View File

@@ -1,6 +1,7 @@
package de.mm20.launcher2.preferences
import de.mm20.launcher2.backup.Backupable
import de.mm20.launcher2.preferences.feed.FeedSettings
import de.mm20.launcher2.preferences.search.ContactSearchSettings
import de.mm20.launcher2.preferences.media.MediaSettings
import de.mm20.launcher2.preferences.search.CalculatorSearchSettings
@@ -52,4 +53,5 @@ val preferencesModule = module {
factory { LocationSearchSettings(get()) }
factory { SearchFilterSettings(get()) }
factory { LocaleSettings(get()) }
factory { FeedSettings(get()) }
}

View File

@@ -0,0 +1,18 @@
package de.mm20.launcher2.preferences.feed
import de.mm20.launcher2.preferences.LauncherDataStore
import kotlinx.coroutines.flow.map
class FeedSettings internal constructor(
private val launcherDataStore: LauncherDataStore,
) {
val providerPackage
get() = launcherDataStore.data.map { it.feedProviderPackage }
fun setProviderPackage(providerPackage: String?) {
launcherDataStore.update {
it.copy(feedProviderPackage = providerPackage)
}
}
}