Skip to content

Commit 355096c

Browse files
refactor: Cleaned up a few functions
1 parent bfc2d4f commit 355096c

File tree

1 file changed

+23
-8
lines changed
  • app/src/main/java/com/github/droidworksstudio/launcher/helper

1 file changed

+23
-8
lines changed

app/src/main/java/com/github/droidworksstudio/launcher/helper/AppHelper.kt

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,31 +42,47 @@ class AppHelper @Inject constructor() {
4242
try {
4343
val packageManager = context.packageManager
4444
val componentName = ComponentName(context, FakeHomeActivity::class.java)
45+
4546
packageManager.setComponentEnabledSetting(
4647
componentName,
4748
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
4849
PackageManager.DONT_KILL_APP
4950
)
51+
5052
val selector = Intent(Intent.ACTION_MAIN)
5153
selector.addCategory(Intent.CATEGORY_HOME)
5254
context.startActivity(selector)
55+
5356
packageManager.setComponentEnabledSetting(
5457
componentName,
5558
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
5659
PackageManager.DONT_KILL_APP
5760
)
5861
} catch (e: Exception) {
5962
e.printStackTrace()
63+
// Additional step to open the launcher settings if the first method fails
64+
try {
65+
val intent = Intent("android.settings.HOME_SETTINGS")
66+
context.startActivity(intent)
67+
} catch (e: ActivityNotFoundException) {
68+
// Fallback to general settings if specific launcher settings are not found
69+
try {
70+
val intent = Intent(Settings.ACTION_SETTINGS)
71+
context.startActivity(intent)
72+
} catch (e: Exception) {
73+
e.printStackTrace()
74+
}
75+
}
6076
}
6177
}
6278

79+
6380
@SuppressLint("WrongConstant", "PrivateApi")
6481
fun expandNotificationDrawer(context: Context) {
6582
try {
66-
val statusBarService = context.getSystemService(Constants.NOTIFICATION_SERVICE)
67-
val statusBarManager = Class.forName(Constants.NOTIFICATION_MANAGER)
68-
val method = statusBarManager.getMethod(Constants.NOTIFICATION_METHOD)
69-
method.invoke(statusBarService)
83+
Class.forName(Constants.NOTIFICATION_MANAGER)
84+
.getMethod(Constants.NOTIFICATION_METHOD)
85+
.invoke(context.getSystemService(Constants.NOTIFICATION_SERVICE))
7086
} catch (exception: Exception) {
7187
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
7288
MyAccessibilityService.runAccessibilityMode(context)
@@ -79,10 +95,9 @@ class AppHelper @Inject constructor() {
7995
@SuppressLint("WrongConstant", "PrivateApi")
8096
private fun expandQuickSettings(context: Context) {
8197
try {
82-
val statusBarService = context.getSystemService(Constants.QUICKSETTINGS_SERVICE)
83-
val statusBarManager = Class.forName(Constants.QUICKSETTINGS_MANAGER)
84-
val method = statusBarManager.getMethod(Constants.QUICKSETTINGS_METHOD)
85-
method.invoke(statusBarService)
98+
Class.forName(Constants.QUICKSETTINGS_MANAGER)
99+
.getMethod(Constants.QUICKSETTINGS_METHOD)
100+
.invoke(context.getSystemService(Constants.QUICKSETTINGS_SERVICE))
86101
} catch (exception: Exception) {
87102
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
88103
MyAccessibilityService.runAccessibilityMode(context)

0 commit comments

Comments
 (0)