Release GPS2Audio v2.5.44 POI category fix
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
package de.waypointaudio.data
|
||||
|
||||
import android.content.Context
|
||||
import androidx.datastore.preferences.core.edit
|
||||
import androidx.datastore.preferences.core.longPreferencesKey
|
||||
import androidx.datastore.preferences.preferencesDataStore
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import kotlinx.coroutines.flow.map
|
||||
|
||||
/**
|
||||
* Speichert den letzten versionCode, für den der Versionshinweis-Dialog
|
||||
* vom Nutzer ausgeblendet wurde. Steigt der versionCode, erscheint der
|
||||
* Dialog automatisch erneut – auch wenn er zuvor deaktiviert wurde.
|
||||
*/
|
||||
private val Context.versionNoticeDataStore by preferencesDataStore(name = "version_notice_settings")
|
||||
|
||||
class VersionNoticeStore(private val context: Context) {
|
||||
|
||||
private companion object {
|
||||
val KEY_DISMISSED_VERSION_CODE = longPreferencesKey("dismissed_version_code")
|
||||
}
|
||||
|
||||
/** Letzter ausgeblendeter versionCode, oder 0 falls noch nie ausgeblendet. */
|
||||
val dismissedVersionCode: Flow<Long> = context.versionNoticeDataStore.data
|
||||
.map { it[KEY_DISMISSED_VERSION_CODE] ?: 0L }
|
||||
|
||||
suspend fun setDismissedVersionCode(code: Long) {
|
||||
context.versionNoticeDataStore.edit { prefs ->
|
||||
prefs[KEY_DISMISSED_VERSION_CODE] = code
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user