From ea0e094c5c7860925e3fa1e19c31cc11ff6b1f42 Mon Sep 17 00:00:00 2001 From: Finn M Glas Date: Fri, 15 May 2020 16:59:48 +0200 Subject: [PATCH] Add option to reset settings and to go to homescreen --- .../com/finnmglas/launcher/MainActivity.kt | 25 +++---------- .../java/com/finnmglas/launcher/Settings.kt | 27 ++++++++++++++ .../finnmglas/launcher/SettingsActivity.kt | 36 +++++++++++-------- app/src/main/res/layout/activity_settings.xml | 32 ++++++++++++++++- 4 files changed, 83 insertions(+), 37 deletions(-) create mode 100644 app/src/main/java/com/finnmglas/launcher/Settings.kt diff --git a/app/src/main/java/com/finnmglas/launcher/MainActivity.kt b/app/src/main/java/com/finnmglas/launcher/MainActivity.kt index 4c5f929..ecf0fd3 100644 --- a/app/src/main/java/com/finnmglas/launcher/MainActivity.kt +++ b/app/src/main/java/com/finnmglas/launcher/MainActivity.kt @@ -3,6 +3,7 @@ package com.finnmglas.launcher import android.annotation.SuppressLint import android.content.Context import android.content.Intent +import android.content.SharedPreferences import android.content.SharedPreferences.Editor import android.os.Bundle import android.util.DisplayMetrics @@ -113,28 +114,10 @@ GestureDetector.OnDoubleTapListener { getString(R.string.preference_file_key), Context.MODE_PRIVATE) // First Startup - if (!sharedPref.getBoolean("startedBefore", false)){ - val editor: Editor = sharedPref.edit() + if (!sharedPref.getBoolean("startedBefore", false)) + resetSettings(sharedPref) - // Set Defaults - editor.putString("action_upApp", "org.mozilla.firefox") - editor.putString("action_downApp", "com.samsung.android.app.galaxyfinder") - editor.putString("action_rightApp", "com.samsung.android.email.provider") - editor.putString("action_leftApp", "com.google.android.calendar") - editor.putString("action_volumeUpApp", "com.whatsapp") - editor.putString("action_volumeDownApp", "com.sec.android.app.popupcalculator") - - editor.putBoolean("startedBefore", true) // never run this again - editor.apply() - } - - // Load settings - upApp = sharedPref.getString("action_upApp", "").toString() - downApp = sharedPref.getString("action_downApp", "").toString() - rightApp = sharedPref.getString("action_rightApp", "").toString() - leftApp = sharedPref.getString("action_leftApp", "").toString() - volumeUpApp = sharedPref.getString("action_volumeUpApp", "").toString() - volumeDownApp = sharedPref.getString("action_volumeDownApp", "").toString() + loadSettings(sharedPref) // Flags diff --git a/app/src/main/java/com/finnmglas/launcher/Settings.kt b/app/src/main/java/com/finnmglas/launcher/Settings.kt new file mode 100644 index 0000000..82c9595 --- /dev/null +++ b/app/src/main/java/com/finnmglas/launcher/Settings.kt @@ -0,0 +1,27 @@ +package com.finnmglas.launcher + +import android.content.SharedPreferences + +fun resetSettings(sharedPref : SharedPreferences){ + val editor: SharedPreferences.Editor = sharedPref.edit() + + // Set Defaults + editor.putString("action_upApp", "org.mozilla.firefox") + editor.putString("action_downApp", "com.samsung.android.app.galaxyfinder") + editor.putString("action_rightApp", "com.samsung.android.email.provider") + editor.putString("action_leftApp", "com.google.android.calendar") + editor.putString("action_volumeUpApp", "com.whatsapp") + editor.putString("action_volumeDownApp", "com.sec.android.app.popupcalculator") + + editor.putBoolean("startedBefore", true) // never run this again + editor.apply() +} + +fun loadSettings(sharedPref : SharedPreferences){ + upApp = sharedPref.getString("action_upApp", "").toString() + downApp = sharedPref.getString("action_downApp", "").toString() + rightApp = sharedPref.getString("action_rightApp", "").toString() + leftApp = sharedPref.getString("action_leftApp", "").toString() + volumeUpApp = sharedPref.getString("action_volumeUpApp", "").toString() + volumeDownApp = sharedPref.getString("action_volumeDownApp", "").toString() +} \ No newline at end of file diff --git a/app/src/main/java/com/finnmglas/launcher/SettingsActivity.kt b/app/src/main/java/com/finnmglas/launcher/SettingsActivity.kt index 7b25553..01ce2d2 100644 --- a/app/src/main/java/com/finnmglas/launcher/SettingsActivity.kt +++ b/app/src/main/java/com/finnmglas/launcher/SettingsActivity.kt @@ -1,29 +1,16 @@ package com.finnmglas.launcher import android.annotation.SuppressLint +import android.app.AlertDialog import android.content.Context +import android.content.DialogInterface import android.content.Intent import android.content.SharedPreferences -import android.content.pm.PackageManager -import android.content.pm.ResolveInfo import android.net.Uri import android.os.Bundle -import android.text.Html -import android.util.DisplayMetrics -import android.view.KeyEvent -import android.view.MotionEvent import android.view.View import android.view.WindowManager -import android.widget.TextView -import android.widget.Toast import androidx.appcompat.app.AppCompatActivity -import androidx.core.view.MotionEventCompat -import kotlinx.android.synthetic.main.activity_main.* -import kotlinx.android.synthetic.main.activity_settings.* -import kotlin.math.abs -import java.text.SimpleDateFormat -import java.util.* -import kotlin.concurrent.fixedRateTimer class SettingsActivity : AppCompatActivity() { @@ -86,6 +73,25 @@ class SettingsActivity : AppCompatActivity() { openNewTabWindow("https://github.com/finnmglas/Launcher", this) } + fun backHome(view: View) { + finish() + } + + // Show a dialog prompting for confirmation + fun resetSettingsClick(view: View) { + AlertDialog.Builder(this) + .setTitle("Reset Settings") + .setMessage("This will discard all your App Choices. Sure you want to continue?") + .setPositiveButton(android.R.string.yes, + DialogInterface.OnClickListener { dialog, which -> + resetSettings(this.getSharedPreferences(getString(R.string.preference_file_key), Context.MODE_PRIVATE)) + finish() + }) + .setNegativeButton(android.R.string.no, null) + .setIcon(android.R.drawable.ic_dialog_alert) + .show() + } + @SuppressLint("SetTextI18n") // I do not care override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml index 3968a78..5bfde93 100644 --- a/app/src/main/res/layout/activity_settings.xml +++ b/app/src/main/res/layout/activity_settings.xml @@ -171,10 +171,40 @@ + - enter image description here + + +