diff --git a/app/src/main/java/helium314/keyboard/settings/SettingsActivity.kt b/app/src/main/java/helium314/keyboard/settings/SettingsActivity.kt index 498b7293..acb74220 100644 --- a/app/src/main/java/helium314/keyboard/settings/SettingsActivity.kt +++ b/app/src/main/java/helium314/keyboard/settings/SettingsActivity.kt @@ -53,6 +53,7 @@ import java.util.zip.ZipOutputStream class SettingsActivity : ComponentActivity(), SharedPreferences.OnSharedPreferenceChangeListener { private val prefs by lazy { this.prefs() } val prefChanged = MutableStateFlow(0) // simple counter, as the only relevant information is that something changed + fun prefChanged() = prefChanged.value++ private val dictUriFlow = MutableStateFlow(null) private val cachedDictionaryFile by lazy { File(this.cacheDir.path + File.separator + "temp_dict") } private val crashReportFiles = MutableStateFlow>(emptyList()) @@ -236,6 +237,6 @@ class SettingsActivity : ComponentActivity(), SharedPreferences.OnSharedPreferen } override fun onSharedPreferenceChanged(prefereces: SharedPreferences?, key: String?) { - prefChanged.value++ + prefChanged() } } diff --git a/app/src/main/java/helium314/keyboard/settings/dialogs/LayoutEditDialog.kt b/app/src/main/java/helium314/keyboard/settings/dialogs/LayoutEditDialog.kt index 2c561ab6..81a3c045 100644 --- a/app/src/main/java/helium314/keyboard/settings/dialogs/LayoutEditDialog.kt +++ b/app/src/main/java/helium314/keyboard/settings/dialogs/LayoutEditDialog.kt @@ -77,7 +77,7 @@ fun LayoutEditDialog( LayoutUtilsCustom.getLayoutFile(newLayoutName, layoutType, ctx).writeText(it) LayoutUtilsCustom.onLayoutFileChanged() onEdited(newLayoutName) - (ctx.getActivity() as? SettingsActivity)?.prefChanged?.value = 555 + (ctx.getActivity() as? SettingsActivity)?.prefChanged() KeyboardSwitcher.getInstance().setThemeNeedsReload() }, confirmButtonText = stringResource(R.string.save), diff --git a/app/src/main/java/helium314/keyboard/settings/preferences/BackupRestorePreference.kt b/app/src/main/java/helium314/keyboard/settings/preferences/BackupRestorePreference.kt index 675dc2c9..ee771d5b 100644 --- a/app/src/main/java/helium314/keyboard/settings/preferences/BackupRestorePreference.kt +++ b/app/src/main/java/helium314/keyboard/settings/preferences/BackupRestorePreference.kt @@ -168,7 +168,7 @@ fun BackupRestorePreference(setting: Setting) { val newDictBroadcast = Intent(DictionaryPackConstants.NEW_DICTIONARY_INTENT_ACTION) ctx.getActivity()?.sendBroadcast(newDictBroadcast) LayoutUtilsCustom.onLayoutFileChanged() - (ctx.getActivity() as? SettingsActivity)?.prefChanged?.value = 210 // for settings reload + (ctx.getActivity() as? SettingsActivity)?.prefChanged() KeyboardSwitcher.getInstance().setThemeNeedsReload() } Preference(name = setting.title, onClick = { showDialog = true }) diff --git a/app/src/main/java/helium314/keyboard/settings/screens/SubtypeScreen.kt b/app/src/main/java/helium314/keyboard/settings/screens/SubtypeScreen.kt index e2489d9d..a06ab1e2 100644 --- a/app/src/main/java/helium314/keyboard/settings/screens/SubtypeScreen.kt +++ b/app/src/main/java/helium314/keyboard/settings/screens/SubtypeScreen.kt @@ -391,7 +391,7 @@ private fun MainLayoutRow( if (it == currentSubtype.mainLayoutName()) setCurrentSubtype(currentSubtype.withoutLayout(LayoutType.MAIN)) LayoutUtilsCustom.deleteLayout(it, LayoutType.MAIN, ctx) - (ctx.getActivity() as? SettingsActivity)?.prefChanged?.value = 1234 + (ctx.getActivity() as? SettingsActivity)?.prefChanged() } ) }