Skip to content

Commit 6a6451b

Browse files
committed
[RunningApps] Add a sorting option: CPU time
Signed-off-by: Muntashir Al-Islam <muntashirakon@riseup.net>
1 parent 697b390 commit 6a6451b

4 files changed

Lines changed: 17 additions & 6 deletions

File tree

app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsActivity.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ public class RunningAppsActivity extends BaseActivity implements MultiSelectionV
5757
SORT_BY_PROCESS_NAME,
5858
SORT_BY_APPS_FIRST,
5959
SORT_BY_MEMORY_USAGE,
60+
SORT_BY_CPU_TIME,
6061
})
6162
@Retention(RetentionPolicy.SOURCE)
6263
public @interface SortOrder {
@@ -66,6 +67,7 @@ public class RunningAppsActivity extends BaseActivity implements MultiSelectionV
6667
public static final int SORT_BY_PROCESS_NAME = 1;
6768
public static final int SORT_BY_APPS_FIRST = 2;
6869
public static final int SORT_BY_MEMORY_USAGE = 3;
70+
public static final int SORT_BY_CPU_TIME = 4;
6971

7072
@IntDef(value = {
7173
FILTER_NONE,
@@ -85,6 +87,7 @@ public class RunningAppsActivity extends BaseActivity implements MultiSelectionV
8587
R.id.action_sort_by_process_name,
8688
R.id.action_sort_by_apps_first,
8789
R.id.action_sort_by_memory_usage,
90+
R.id.action_sort_by_cpu_time,
8891
};
8992

9093
@Nullable
@@ -271,6 +274,9 @@ public boolean onOptionsItemSelected(@NonNull MenuItem item) {
271274
} else if (id == R.id.action_sort_by_memory_usage) {
272275
model.setSortOrder(SORT_BY_MEMORY_USAGE);
273276
item.setChecked(true);
277+
} else if (id == R.id.action_sort_by_cpu_time) {
278+
model.setSortOrder(SORT_BY_CPU_TIME);
279+
item.setChecked(true);
274280
// Filter
275281
} else if (id == R.id.action_filter_apps) {
276282
if (!item.isChecked()) model.addFilter(FILTER_APPS);

app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsViewModel.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -385,6 +385,8 @@ public void filterAndSort() {
385385
return -Long.compare(p1.rss, p2.rss);
386386
case RunningAppsActivity.SORT_BY_PROCESS_NAME:
387387
return p1.name.compareToIgnoreCase(p2.name);
388+
case RunningAppsActivity.SORT_BY_CPU_TIME:
389+
return -Long.compare(p1.getCpuTimeInMillis(), p1.getCpuTimeInMillis());
388390
case RunningAppsActivity.SORT_BY_PID:
389391
default:
390392
return Integer.compare(p1.pid, p2.pid);

app/src/main/res/menu/activity_running_apps_actions.xml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
<?xml version="1.0" encoding="utf-8"?>
2-
<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
3-
<menu xmlns:app="http://schemas.android.com/apk/res-auto"
4-
xmlns:android="http://schemas.android.com/apk/res/android">
1+
<?xml version="1.0" encoding="utf-8"?><!-- SPDX-License-Identifier: GPL-3.0-or-later -->
2+
<menu xmlns:android="http://schemas.android.com/apk/res/android"
3+
xmlns:app="http://schemas.android.com/apk/res-auto">
54

65
<item
76
android:icon="@drawable/ic_sort"
@@ -27,6 +26,9 @@
2726
<item
2827
android:id="@+id/action_sort_by_memory_usage"
2928
android:title="@string/sort_by_memory_usage" />
29+
<item
30+
android:id="@+id/action_sort_by_cpu_time"
31+
android:title="@string/sort_by_cpu_time" />
3032

3133
</group>
3234
</menu>
@@ -56,7 +58,7 @@
5658
<item
5759
android:id="@+id/action_toggle_kill"
5860
android:icon="@drawable/ic_clear"
59-
app:showAsAction="never"
60-
android:title="@string/toggle_kill_for_system_apps" />
61+
android:title="@string/toggle_kill_for_system_apps"
62+
app:showAsAction="never" />
6163

6264
</menu>

app/src/main/res/values/strings.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1523,4 +1523,5 @@
15231523
<string name="icon">icon</string>
15241524
<string name="preview">Preview</string>
15251525
<string name="debloat_removal_unsafe">Unsafe</string>
1526+
<string name="sort_by_cpu_time">CPU time</string>
15261527
</resources>

0 commit comments

Comments
 (0)