Add option to reset settings and to go to homescreen

This commit is contained in:
Finn M Glas 2020-05-15 16:59:48 +02:00
parent 6cb06b3095
commit ea0e094c5c
4 changed files with 83 additions and 37 deletions

View file

@ -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

View file

@ -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()
}

View file

@ -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)

View file

@ -171,10 +171,40 @@
</TableLayout>
<TableLayout
android:id="@+id/buttons"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/actionschooser">
enter image description here
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center">
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="resetSettingsClick"
android:text="Reset" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="backHome"
android:text="Back Home" />
</TableRow>
</TableLayout>
<TableLayout
android:id="@+id/about_footer"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"