diff --git a/app/src/main/java/com/github/droidworksstudio/launcher/helper/PreferenceHelper.kt b/app/src/main/java/com/github/droidworksstudio/launcher/helper/PreferenceHelper.kt index 1826b7b..51aa771 100644 --- a/app/src/main/java/com/github/droidworksstudio/launcher/helper/PreferenceHelper.kt +++ b/app/src/main/java/com/github/droidworksstudio/launcher/helper/PreferenceHelper.kt @@ -24,6 +24,7 @@ class PreferenceHelper @Inject constructor(@ApplicationContext context: Context) var showStatusBar: Boolean get() = prefs.getBoolean(Constants.SHOW_STATUS_BAR, true) set(value) = prefs.edit().putBoolean(Constants.SHOW_STATUS_BAR, value).apply() + var showTime: Boolean get() = prefs.getBoolean(Constants.SHOW_TIME, true) set(value) = prefs.edit().putBoolean(Constants.SHOW_TIME, value).apply() @@ -268,22 +269,26 @@ class PreferenceHelper @Inject constructor(@ApplicationContext context: Context) fun loadFromString(json: String) { val editor = prefs.edit() - val all: HashMap = - Gson().fromJson(json, object : TypeToken>() {}.type) + val all: HashMap = Gson().fromJson(json, object : TypeToken>() {}.type) for ((key, value) in all) { when (value) { is String -> editor.putString(key, value) is Boolean -> editor.putBoolean(key, value) - is Int -> editor.putInt(key, value) - is Double -> editor.putInt(key, value.toInt()) // we store everything as int - is Float -> editor.putInt(key, value.toInt()) + is Number -> { + if (value.toDouble() == value.toInt().toDouble()) { + editor.putInt(key, value.toInt()) + } else { + editor.putFloat(key, value.toFloat()) + } + } + is MutableSet<*> -> { val list = value.filterIsInstance().toSet() editor.putStringSet(key, list) } else -> { - Log.d("backup error", "$value") + Log.d("backup error", "$key | $value") } } } diff --git a/app/src/main/java/com/github/droidworksstudio/launcher/ui/home/HomeFragment.kt b/app/src/main/java/com/github/droidworksstudio/launcher/ui/home/HomeFragment.kt index dd3fdd3..afe01de 100644 --- a/app/src/main/java/com/github/droidworksstudio/launcher/ui/home/HomeFragment.kt +++ b/app/src/main/java/com/github/droidworksstudio/launcher/ui/home/HomeFragment.kt @@ -5,6 +5,7 @@ import android.content.BroadcastReceiver import android.content.Context import android.content.Intent import android.content.IntentFilter +import android.content.SharedPreferences import android.content.pm.PackageManager import android.os.BatteryManager import android.os.Build @@ -113,6 +114,10 @@ class HomeFragment : Fragment(), observeSwipeTouchListener() observeUserInterfaceSettings() + val prefs: SharedPreferences = context.getSharedPreferences(Constants.PACKAGE_PREFS, 0) + + Log.d("preferenceHelper", prefs.all.toString()) + if (context.hasInternetPermission()) { updateManager = UpdateManagerHelper(this) updateManager.checkForUpdates() diff --git a/app/src/main/java/com/github/droidworksstudio/launcher/ui/settings/SettingsFragment.kt b/app/src/main/java/com/github/droidworksstudio/launcher/ui/settings/SettingsFragment.kt index ca1342d..20ffd72 100644 --- a/app/src/main/java/com/github/droidworksstudio/launcher/ui/settings/SettingsFragment.kt +++ b/app/src/main/java/com/github/droidworksstudio/launcher/ui/settings/SettingsFragment.kt @@ -117,8 +117,8 @@ class SettingsFragment : Fragment(), appPackageName: String?, textView: TextView ) { - val appName = appPackageName?.let { context.getAppNameFromPackageName(it) } val actionText = if (action == Constants.Action.OpenApp) { + val appName = appPackageName?.let { context.getAppNameFromPackageName(it) } context.getString(R.string.settings_actions_open_app_run, appName) } else { action.getString(context)