diff options
| author | Tanuj <thetanuj@hotmail.com> | 2026-03-10 17:54:06 +0530 |
|---|---|---|
| committer | Tanuj <thetanuj@hotmail.com> | 2026-03-10 17:54:06 +0530 |
| commit | 891a2c74137774a4986ba9a5e5ac38d015e37b9c (patch) | |
| tree | face54e90159c707f549a990d619f82a2d03db47 /app/src | |
| parent | 50414a0c8c5922c2220ddb5e1183beac285858fa (diff) | |
| download | SidePhOnelauncher-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.kt | 9 | ||||
| -rw-r--r-- | app/src/main/java/app/olauncher/data/Constants.kt | 1 | ||||
| -rw-r--r-- | app/src/main/java/app/olauncher/data/Prefs.kt | 15 | ||||
| -rw-r--r-- | app/src/main/java/app/olauncher/ui/HomeFragment.kt | 17 |
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( |
