From cedada2531584cad9e607fad62e4f25f2e98ed2b Mon Sep 17 00:00:00 2001 From: Howard Wu Date: Sun, 20 Aug 2023 02:58:32 +0800 Subject: [PATCH] Only set taskDescription when manager is parasitic (#2698) --- .../lsposed/manager/ui/activity/base/BaseActivity.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/lsposed/manager/ui/activity/base/BaseActivity.java b/app/src/main/java/org/lsposed/manager/ui/activity/base/BaseActivity.java index bbf9f816..8e0e2530 100644 --- a/app/src/main/java/org/lsposed/manager/ui/activity/base/BaseActivity.java +++ b/app/src/main/java/org/lsposed/manager/ui/activity/base/BaseActivity.java @@ -25,6 +25,7 @@ import android.content.res.Resources; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; +import android.graphics.drawable.AdaptiveIconDrawable; import android.graphics.drawable.BitmapDrawable; import android.os.Bundle; import android.view.Window; @@ -32,6 +33,7 @@ import android.view.Window; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import org.lsposed.manager.App; import org.lsposed.manager.R; import org.lsposed.manager.util.Telemetry; import org.lsposed.manager.util.ThemeUtil; @@ -39,7 +41,6 @@ import org.lsposed.manager.util.ThemeUtil; import rikka.material.app.MaterialActivity; public class BaseActivity extends MaterialActivity { - private static Bitmap icon = null; @Override @@ -51,6 +52,7 @@ public class BaseActivity extends MaterialActivity { @Override protected void onStart() { super.onStart(); + if (!App.isParasitic) return; for (var task : getSystemService(ActivityManager.class).getAppTasks()) { task.setExcludeFromRecents(false); } @@ -58,14 +60,14 @@ public class BaseActivity extends MaterialActivity { var drawable = getApplicationInfo().loadIcon(getPackageManager()); if (drawable instanceof BitmapDrawable) { icon = ((BitmapDrawable) drawable).getBitmap(); - } else { + } else if (drawable instanceof AdaptiveIconDrawable) { icon = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); final Canvas canvas = new Canvas(icon); drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight()); drawable.draw(canvas); } } - setTaskDescription(new ActivityManager.TaskDescription(getTitle().toString(), icon)); + setTaskDescription(new ActivityManager.TaskDescription(getTitle().toString(), icon, getColor(R.color.ic_launcher_background))); } @Override