Prevent odd crash

pull/194/merge
M66B 3 years ago
parent a7b55d5570
commit 9a4933f20e

@ -29,6 +29,7 @@ import android.content.SharedPreferences;
import android.content.res.Configuration; import android.content.res.Configuration;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.Canvas; import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.net.Uri; import android.net.Uri;
import android.os.Build; import android.os.Build;
@ -124,19 +125,29 @@ abstract class ActivityBase extends AppCompatActivity implements SharedPreferenc
int colorPrimaryDark = Helper.resolveColor(this, R.attr.colorPrimaryDark); int colorPrimaryDark = Helper.resolveColor(this, R.attr.colorPrimaryDark);
int colorActionForeground = Helper.resolveColor(this, R.attr.colorActionForeground); int colorActionForeground = Helper.resolveColor(this, R.attr.colorActionForeground);
Drawable d = getDrawable(R.drawable.baseline_mail_24); try {
Bitmap bm = Bitmap.createBitmap( Drawable d = getDrawable(R.drawable.baseline_mail_24);
d.getIntrinsicWidth(), Bitmap bm = Bitmap.createBitmap(
d.getIntrinsicHeight(), d.getIntrinsicWidth(),
Bitmap.Config.ARGB_8888); d.getIntrinsicHeight(),
Canvas canvas = new Canvas(bm); Bitmap.Config.ARGB_8888);
d.setBounds(0, 0, canvas.getWidth(), canvas.getHeight()); Canvas canvas = new Canvas(bm);
d.setTint(colorActionForeground); d.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
d.draw(canvas); d.setTint(colorActionForeground);
d.draw(canvas);
ActivityManager.TaskDescription td = new ActivityManager.TaskDescription(
null, bm, ColorUtils.setAlphaComponent(colorPrimaryDark, 255)); int colorPrimary = colorPrimaryDark;
setTaskDescription(td); if (colorPrimary != 0 && Color.alpha(colorPrimary) != 255) {
Log.e("Task color primary=" + Integer.toHexString(colorPrimary));
colorPrimary = ColorUtils.setAlphaComponent(colorPrimary, 255);
}
ActivityManager.TaskDescription td = new ActivityManager.TaskDescription(
null, bm, colorPrimary);
setTaskDescription(td);
} catch (Throwable ex) {
Log.e(ex);
}
boolean navbar_colorize = prefs.getBoolean("navbar_colorize", false); boolean navbar_colorize = prefs.getBoolean("navbar_colorize", false);
if (navbar_colorize) { if (navbar_colorize) {

Loading…
Cancel
Save