From 4c88f24af3d4a91b679b88d99d0c5e15d1144667 Mon Sep 17 00:00:00 2001 From: Kieran W <41634689+FredHappyface@users.noreply.github.com> Date: Sat, 8 Feb 2025 16:53:02 +0000 Subject: [PATCH] Add shortcut as google language (en_US), added subset of settings to backup --- .../fredhappyface/ewesticker/ImageKeyboard.kt | 21 +++++++++++-------- .../fredhappyface/ewesticker/MainActivity.kt | 13 +++++++----- .../main/res/xml/data_extraction_rules.xml | 15 ++++++++++--- app/src/main/res/xml/full_backup_content.xml | 8 +++++-- app/src/main/res/xml/method.xml | 10 ++++++++- 5 files changed, 47 insertions(+), 20 deletions(-) diff --git a/app/src/main/java/com/fredhappyface/ewesticker/ImageKeyboard.kt b/app/src/main/java/com/fredhappyface/ewesticker/ImageKeyboard.kt index d6fb6cf..f99b5ba 100644 --- a/app/src/main/java/com/fredhappyface/ewesticker/ImageKeyboard.kt +++ b/app/src/main/java/com/fredhappyface/ewesticker/ImageKeyboard.kt @@ -1,5 +1,6 @@ package com.fredhappyface.ewesticker +import android.content.Context import android.content.SharedPreferences import android.inputmethodservice.InputMethodService import android.os.Build @@ -47,6 +48,7 @@ class ImageKeyboard : InputMethodService(), StickerClickListener { // onCreate // Shared Preferences private lateinit var sharedPreferences: SharedPreferences + private lateinit var backupSharedPreferences: SharedPreferences private var restoreOnClose = false private var vertical = false private var scroll = false @@ -107,13 +109,14 @@ class ImageKeyboard : InputMethodService(), StickerClickListener { Coil.setImageLoader(imageLoader) // Shared Preferences this.sharedPreferences = PreferenceManager.getDefaultSharedPreferences(baseContext) - this.restoreOnClose = this.sharedPreferences.getBoolean("restoreOnClose", false) - this.vertical = this.sharedPreferences.getBoolean("vertical", false) - this.scroll = this.sharedPreferences.getBoolean("scroll", false) - this.vibrate = this.sharedPreferences.getBoolean("vibrate", true) - this.insensitiveSort = this.sharedPreferences.getBoolean("insensitiveSort", false) + this.backupSharedPreferences = this.getSharedPreferences("backup_prefs", Context.MODE_PRIVATE) + this.restoreOnClose = this.backupSharedPreferences.getBoolean("restoreOnClose", false) + this.vertical = this.backupSharedPreferences.getBoolean("vertical", false) + this.scroll = this.backupSharedPreferences.getBoolean("scroll", false) + this.vibrate = this.backupSharedPreferences.getBoolean("vibrate", true) + this.insensitiveSort = this.backupSharedPreferences.getBoolean("insensitiveSort", false) - this.iconsPerX = this.sharedPreferences.getInt("iconsPerX", 3) + this.iconsPerX = this.backupSharedPreferences.getInt("iconsPerX", 3) this.totalIconPadding = (resources.getDimension(R.dimen.sticker_padding) * 2 * (this.iconsPerX + 1)).toInt() // Constants @@ -123,7 +126,7 @@ class ImageKeyboard : InputMethodService(), StickerClickListener { if (this.vertical) { (resources.displayMetrics.widthPixels - this.totalIconPadding) / this.iconsPerX.toFloat() } else { - (this.sharedPreferences.getInt("iconSize", 80) * scale) + (this.backupSharedPreferences.getInt("iconSize", 80) * scale) } ).toInt() this.toaster = Toaster(baseContext) @@ -419,7 +422,7 @@ class ImageKeyboard : InputMethodService(), StickerClickListener { private fun createPackIcons() { this.packsList.removeAllViewsInLayout() // Back button - if (this.sharedPreferences.getBoolean("showBackButton", true)) { + if (this.backupSharedPreferences.getBoolean("showBackButton", true)) { val backButton = addPackButton("__back__") backButton.load(getDrawable(R.drawable.arrow_back_circle)) backButton.setOnClickListener { @@ -428,7 +431,7 @@ class ImageKeyboard : InputMethodService(), StickerClickListener { } // Search - if (this.sharedPreferences.getBoolean("showSearchButton", true)) { + if (this.backupSharedPreferences.getBoolean("showSearchButton", true)) { val searchButton = addPackButton("__search__") searchButton.load(getDrawable(R.drawable.search_circle)) searchButton.setOnClickListener { diff --git a/app/src/main/java/com/fredhappyface/ewesticker/MainActivity.kt b/app/src/main/java/com/fredhappyface/ewesticker/MainActivity.kt index 0ebb7a9..0749af4 100644 --- a/app/src/main/java/com/fredhappyface/ewesticker/MainActivity.kt +++ b/app/src/main/java/com/fredhappyface/ewesticker/MainActivity.kt @@ -1,6 +1,7 @@ package com.fredhappyface.ewesticker import android.app.Activity +import android.content.Context import android.content.Intent import android.content.SharedPreferences import android.content.pm.PackageManager @@ -28,6 +29,7 @@ import java.util.Calendar class MainActivity : AppCompatActivity() { // onCreate private lateinit var sharedPreferences: SharedPreferences + private lateinit var backupSharedPreferences: SharedPreferences private lateinit var contextView: View private lateinit var toaster: Toaster @@ -50,6 +52,7 @@ class MainActivity : AppCompatActivity() { // Set late-init attrs this.sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this) + this.backupSharedPreferences = this.getSharedPreferences("backup_prefs", Context.MODE_PRIVATE) this.contextView = findViewById(R.id.activityMainRoot) this.toaster = Toaster(baseContext) refreshStickerDirPath() @@ -194,12 +197,12 @@ class MainActivity : AppCompatActivity() { callback: (Boolean) -> Unit, ) { compoundButton.isChecked = - this.sharedPreferences.getBoolean(sharedPrefKey, sharedPrefDefault) + this.backupSharedPreferences.getBoolean(sharedPrefKey, sharedPrefDefault) callback(compoundButton.isChecked) compoundButton.setOnCheckedChangeListener { _: CompoundButton?, isChecked: Boolean -> showChangedPrefText() callback(compoundButton.isChecked) - val editor = this.sharedPreferences.edit() + val editor = this.backupSharedPreferences.edit() editor.putBoolean(sharedPrefKey, isChecked) editor.apply() } @@ -223,9 +226,9 @@ class MainActivity : AppCompatActivity() { multiplier: Int = 1, ) { seekBarLabel.text = - this.sharedPreferences.getInt(sharedPrefKey, sharedPrefDefault).toString() + this.backupSharedPreferences.getInt(sharedPrefKey, sharedPrefDefault).toString() seekBar.progress = - this.sharedPreferences.getInt(sharedPrefKey, sharedPrefDefault) / multiplier + this.backupSharedPreferences.getInt(sharedPrefKey, sharedPrefDefault) / multiplier seekBar.setOnSeekBarChangeListener( object : OnSeekBarChangeListener { var progressMultiplier = sharedPrefDefault @@ -236,7 +239,7 @@ class MainActivity : AppCompatActivity() { override fun onStartTrackingTouch(seekBar: SeekBar) {} override fun onStopTrackingTouch(seekBar: SeekBar) { - val editor = sharedPreferences.edit() + val editor = backupSharedPreferences.edit() editor.putInt(sharedPrefKey, progressMultiplier) editor.apply() showChangedPrefText() diff --git a/app/src/main/res/xml/data_extraction_rules.xml b/app/src/main/res/xml/data_extraction_rules.xml index eed4582..65d9de0 100644 --- a/app/src/main/res/xml/data_extraction_rules.xml +++ b/app/src/main/res/xml/data_extraction_rules.xml @@ -3,9 +3,18 @@ See https://developer.android.com/about/versions/12/backup-restore#xml-changes for details. --> - +\ - + + + + + + + + --> - + + + + + + diff --git a/app/src/main/res/xml/method.xml b/app/src/main/res/xml/method.xml index 803afbe..fa34c97 100644 --- a/app/src/main/res/xml/method.xml +++ b/app/src/main/res/xml/method.xml @@ -1,2 +1,10 @@ - + + +