diff --git a/app/src/main/java/me/zobrist/tichucounter/MainActivity.kt b/app/src/main/java/me/zobrist/tichucounter/MainActivity.kt
index 7da4264..c528d15 100644
--- a/app/src/main/java/me/zobrist/tichucounter/MainActivity.kt
+++ b/app/src/main/java/me/zobrist/tichucounter/MainActivity.kt
@@ -6,6 +6,7 @@ import android.os.Bundle
import android.text.InputType
import android.view.Menu
import android.view.MenuItem
+import android.view.WindowManager
import android.widget.ScrollView
import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.app.AppCompatDelegate
@@ -31,6 +32,12 @@ class MainActivity : AppCompatActivity() {
inputTeamA.requestFocus()
disableSubmitButton()
updateTheme(this.getSharedPreferences("Settings", Context.MODE_PRIVATE).getInt("Theme", 2))
+ keepScreenOn(
+ this.getSharedPreferences("Settings", Context.MODE_PRIVATE)
+ .getBoolean("Screen_On", false)
+ )
+
+
history = savedInstanceState?.getParcelable("history") ?: History()
updateView()
@@ -265,9 +272,14 @@ class MainActivity : AppCompatActivity() {
override fun onCreateOptionsMenu(menu: Menu): Boolean {
// Inflate the menu; this adds items to the action bar if it is present.
menuInflater.inflate(R.menu.menu_main, menu)
+
+ menu.findItem(R.id.action_screenOn).isChecked =
+ this.getSharedPreferences("Settings", Context.MODE_PRIVATE)
+ .getBoolean("Screen_On", false)
return true
}
+
override fun onOptionsItemSelected(item: MenuItem): Boolean {
return when (item.itemId) {
R.id.action_clear -> {
@@ -282,6 +294,11 @@ class MainActivity : AppCompatActivity() {
chooseThemeDialog()
true
}
+ R.id.action_screenOn -> {
+ item.isChecked = !item.isChecked
+ keepScreenOn(item.isChecked)
+ true
+ }
else -> super.onOptionsItemSelected(item)
}
}
@@ -381,4 +398,16 @@ class MainActivity : AppCompatActivity() {
}
delegate.applyDayNight()
}
+
+ private fun keepScreenOn(keepOn: Boolean) {
+ if (keepOn) {
+ window.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
+ } else {
+ window.clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
+ }
+
+ val prefs = this.getSharedPreferences("Settings", Context.MODE_PRIVATE).edit()
+ prefs.putBoolean("Screen_On", keepOn)
+ prefs.apply()
+ }
}
\ No newline at end of file
diff --git a/app/src/main/res/menu/menu_main.xml b/app/src/main/res/menu/menu_main.xml
index 779bead..dd7f051 100644
--- a/app/src/main/res/menu/menu_main.xml
+++ b/app/src/main/res/menu/menu_main.xml
@@ -17,4 +17,9 @@
android:id="@+id/action_theme"
android:orderInCategory="15"
android:title="@string/choose_theme_text" />
+
\ No newline at end of file
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 560610f..d7fc65a 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -3,4 +3,5 @@
Neues Spiel Starten
Letzte Runde Löschen
Theme auswählen
+ Bildschirm eingeschaltet lassen
\ No newline at end of file
diff --git a/app/src/main/res/values-gsw-rCH/strings.xml b/app/src/main/res/values-gsw-rCH/strings.xml
index c8d4afd..b6bd626 100644
--- a/app/src/main/res/values-gsw-rCH/strings.xml
+++ b/app/src/main/res/values-gsw-rCH/strings.xml
@@ -3,4 +3,5 @@
Neus Spil Starte
Letschti Rundi Lösche
Usgsehe ändere
+ Bildschirm igschalted la
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 0e770fb..2ecf4a7 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -7,4 +7,5 @@
Start New Game
Undo Last Round
Choose theme
+ Keep screen on
\ No newline at end of file