@@ -1026,6 +1026,7 @@ class DockService : AccessibilityService(), OnSharedPreferenceChangeListener, On
1026
1026
if (! isPinned && sharedPreferences.getBoolean(" auto_pin" , true ))
1027
1027
pinDock()
1028
1028
}
1029
+ updateRunningTasks()
1029
1030
if (Utils .notificationPanelVisible)
1030
1031
toggleNotificationPanel(false )
1031
1032
}
@@ -1487,27 +1488,38 @@ class DockService : AccessibilityService(), OnSharedPreferenceChangeListener, On
1487
1488
1488
1489
private fun updateRunningTasks () {
1489
1490
val now = System .currentTimeMillis()
1490
- if (now - lastUpdate < 500 ) return
1491
+ if (now - lastUpdate < 500 )
1492
+ return
1491
1493
lastUpdate = now
1492
1494
1493
1495
val apps = ArrayList <DockApp >()
1494
- for (pinnedApp in pinnedApps) {
1496
+ pinnedApps.forEach { pinnedApp ->
1495
1497
apps.add(DockApp (pinnedApp.name, pinnedApp.packageName, pinnedApp.icon))
1496
1498
}
1499
+
1497
1500
val gridSize = Utils .dpToPx(context, 52 )
1498
1501
1499
1502
// TODO: We can eliminate another for
1500
1503
// TODO: Don't do anything if tasks has not changed
1501
- tasks = if (systemApp) AppUtils .getRunningTasks(
1502
- activityManager,
1503
- packageManager,
1504
- maxApps
1505
- ) else AppUtils .getRecentTasks(context, maxApps)
1506
- for (j in 1 .. tasks.size) {
1507
- val task = tasks[tasks.size - j]
1508
- val index = AppUtils .containsTask(apps, task)
1509
- if (index != - 1 ) apps[index].addTask(task) else apps.add(DockApp (task))
1504
+ if (systemApp) {
1505
+ tasks = AppUtils .getRunningTasks(activityManager, packageManager, maxApps)
1506
+ for (j in 1 .. tasks.size) {
1507
+ val task = tasks[tasks.size - j]
1508
+ val index = AppUtils .containsTask(apps, task)
1509
+ if (index != - 1 )
1510
+ apps[index].addTask(task)
1511
+ else
1512
+ apps.add(DockApp (task))
1513
+ }
1514
+ } else {
1515
+ tasks = AppUtils .getRecentTasks(context, maxApps)
1516
+ tasks.reversed().forEach { task ->
1517
+ val index = AppUtils .containsTask(apps, task)
1518
+ if (index == - 1 )
1519
+ apps.add(DockApp (task))
1520
+ }
1510
1521
}
1522
+
1511
1523
tasksGv.layoutParams.width = gridSize * apps.size
1512
1524
tasksGv.adapter = DockAppAdapter (context, apps, this , iconPackUtils)
1513
1525
// TODO: Move context outta here
0 commit comments