summaryrefslogtreecommitdiff
path: root/app/src
diff options
context:
space:
mode:
authorTanuj <thetanuj@hotmail.com>2026-03-10 17:54:06 +0530
committerTanuj <thetanuj@hotmail.com>2026-03-10 17:54:06 +0530
commit891a2c74137774a4986ba9a5e5ac38d015e37b9c (patch)
treeface54e90159c707f549a990d619f82a2d03db47 /app/src
parent50414a0c8c5922c2220ddb5e1183beac285858fa (diff)
downloadSidePhOnelauncher-891a2c74137774a4986ba9a5e5ac38d015e37b9c.tar.gz
SidePhOnelauncher-891a2c74137774a4986ba9a5e5ac38d015e37b9c.tar.bz2
SidePhOnelauncher-891a2c74137774a4986ba9a5e5ac38d015e37b9c.zip
Long press screen time to select which app to open
Diffstat (limited to 'app/src')
-rw-r--r--app/src/main/java/app/olauncher/MainViewModel.kt9
-rw-r--r--app/src/main/java/app/olauncher/data/Constants.kt1
-rw-r--r--app/src/main/java/app/olauncher/data/Prefs.kt15
-rw-r--r--app/src/main/java/app/olauncher/ui/HomeFragment.kt17
4 files changed, 42 insertions, 0 deletions
diff --git a/app/src/main/java/app/olauncher/MainViewModel.kt b/app/src/main/java/app/olauncher/MainViewModel.kt
index c511939..e2c42e2 100644
--- a/app/src/main/java/app/olauncher/MainViewModel.kt
+++ b/app/src/main/java/app/olauncher/MainViewModel.kt
@@ -79,6 +79,7 @@ class MainViewModel(application: Application) : AndroidViewModel(application) {
Constants.FLAG_SET_SWIPE_RIGHT_APP -> saveSwipeApp(appModel, isLeft = false)
Constants.FLAG_SET_CLOCK_APP -> saveClockApp(appModel)
Constants.FLAG_SET_CALENDAR_APP -> saveCalendarApp(appModel)
+ Constants.FLAG_SET_SCREEN_TIME_APP -> saveScreenTimeApp(appModel)
}
}
@@ -307,6 +308,14 @@ class MainViewModel(application: Application) : AndroidViewModel(application) {
}
}
+ private fun saveScreenTimeApp(appModel: AppModel) {
+ if (appModel is AppModel.App) {
+ prefs.screenTimeAppPackage = appModel.appPackage
+ prefs.screenTimeAppUser = appModel.user.toString()
+ prefs.screenTimeAppClassName = appModel.activityClassName
+ }
+ }
+
fun firstOpen(value: Boolean) {
firstOpen.postValue(value)
}
diff --git a/app/src/main/java/app/olauncher/data/Constants.kt b/app/src/main/java/app/olauncher/data/Constants.kt
index 2c9a4ba..918750b 100644
--- a/app/src/main/java/app/olauncher/data/Constants.kt
+++ b/app/src/main/java/app/olauncher/data/Constants.kt
@@ -81,6 +81,7 @@ object Constants {
const val FLAG_SET_SWIPE_RIGHT_APP = 12
const val FLAG_SET_CLOCK_APP = 13
const val FLAG_SET_CALENDAR_APP = 14
+ const val FLAG_SET_SCREEN_TIME_APP = 15
const val REQUEST_CODE_ENABLE_ADMIN = 666
const val REQUEST_CODE_LAUNCHER_SELECTOR = 678
diff --git a/app/src/main/java/app/olauncher/data/Prefs.kt b/app/src/main/java/app/olauncher/data/Prefs.kt
index 056b585..b7de0b5 100644
--- a/app/src/main/java/app/olauncher/data/Prefs.kt
+++ b/app/src/main/java/app/olauncher/data/Prefs.kt
@@ -90,6 +90,9 @@ class Prefs(context: Context) {
private val CALENDAR_APP_PACKAGE = "CALENDAR_APP_PACKAGE"
private val CALENDAR_APP_USER = "CALENDAR_APP_USER"
private val CALENDAR_APP_CLASS_NAME = "CALENDAR_APP_CLASS_NAME"
+ private val SCREEN_TIME_APP_PACKAGE = "SCREEN_TIME_APP_PACKAGE"
+ private val SCREEN_TIME_APP_USER = "SCREEN_TIME_APP_USER"
+ private val SCREEN_TIME_APP_CLASS_NAME = "SCREEN_TIME_APP_CLASS_NAME"
private val IS_SHORTCUT_1 = "IS_SHORTCUT_1"
private val SHORTCUT_ID_1 = "SHORTCUT_ID_1"
@@ -431,6 +434,18 @@ class Prefs(context: Context) {
get() = prefs.getString(CALENDAR_APP_CLASS_NAME, "").toString()
set(value) = prefs.edit { putString(CALENDAR_APP_CLASS_NAME, value).apply() }
+ var screenTimeAppPackage: String
+ get() = prefs.getString(SCREEN_TIME_APP_PACKAGE, "").toString()
+ set(value) = prefs.edit { putString(SCREEN_TIME_APP_PACKAGE, value).apply() }
+
+ var screenTimeAppUser: String
+ get() = prefs.getString(SCREEN_TIME_APP_USER, "").toString()
+ set(value) = prefs.edit { putString(SCREEN_TIME_APP_USER, value).apply() }
+
+ var screenTimeAppClassName: String?
+ get() = prefs.getString(SCREEN_TIME_APP_CLASS_NAME, "").toString()
+ set(value) = prefs.edit { putString(SCREEN_TIME_APP_CLASS_NAME, value).apply() }
+
var isShortcut1: Boolean
get() = prefs.getBoolean(IS_SHORTCUT_1, false)
set(value) = prefs.edit().putBoolean(IS_SHORTCUT_1, value).apply()
diff --git a/app/src/main/java/app/olauncher/ui/HomeFragment.kt b/app/src/main/java/app/olauncher/ui/HomeFragment.kt
index b39ff22..088a4a7 100644
--- a/app/src/main/java/app/olauncher/ui/HomeFragment.kt
+++ b/app/src/main/java/app/olauncher/ui/HomeFragment.kt
@@ -153,6 +153,13 @@ class HomeFragment : Fragment(), View.OnClickListener, View.OnLongClickListener
prefs.calendarAppUser = ""
}
+ R.id.tvScreenTime -> {
+ showAppList(Constants.FLAG_SET_SCREEN_TIME_APP)
+ prefs.screenTimeAppPackage = ""
+ prefs.screenTimeAppClassName = ""
+ prefs.screenTimeAppUser = ""
+ }
+
R.id.setDefaultLauncher -> {
prefs.hideSetDefaultLauncher = true
binding.setDefaultLauncher.visibility = View.GONE
@@ -221,6 +228,7 @@ class HomeFragment : Fragment(), View.OnClickListener, View.OnLongClickListener
binding.setDefaultLauncher.setOnClickListener(this)
binding.setDefaultLauncher.setOnLongClickListener(this)
binding.tvScreenTime.setOnClickListener(this)
+ binding.tvScreenTime.setOnLongClickListener(this)
}
private fun setHomeAlignment(horizontalGravity: Int = prefs.homeAlignment) {
@@ -571,6 +579,15 @@ class HomeFragment : Fragment(), View.OnClickListener, View.OnLongClickListener
}
private fun openScreenTimeDigitalWellbeing() {
+ if (prefs.screenTimeAppPackage.isNotBlank()) {
+ launchApp(
+ "Screen Time",
+ prefs.screenTimeAppPackage,
+ prefs.screenTimeAppClassName,
+ prefs.screenTimeAppUser
+ )
+ return
+ }
val intent = Intent()
try {
intent.setClassName(