From df03bdd7f967525a90e54e306dd84aa81583c26d Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sun, 15 Jul 2018 17:10:38 +0530 Subject: [PATCH] android: QuickTileService: Do not use slashed icon on Android P Android P features circle masked QS tiles which make use of colors to denote STATE_ACTIVE/STATE_INACTIVE rather than a slash across the drawable as seen on Android Oreo. Signed-off-by: Harsh Shandilya --- .../com/wireguard/android/QuickTileService.java | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/wireguard/android/QuickTileService.java b/app/src/main/java/com/wireguard/android/QuickTileService.java index 8630ccfd..fba8f57e 100644 --- a/app/src/main/java/com/wireguard/android/QuickTileService.java +++ b/app/src/main/java/com/wireguard/android/QuickTileService.java @@ -55,12 +55,17 @@ public class QuickTileService extends TileService { icon.setBounds(0, 0, c.getWidth(), c.getHeight()); icon.draw(c); iconOn = Icon.createWithBitmap(b); - icon.setSlashed(true); - b = Bitmap.createBitmap(icon.getIntrinsicWidth(), icon.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); - c = new Canvas(b); - icon.setBounds(0, 0, c.getWidth(), c.getHeight()); - icon.draw(c); - iconOff = Icon.createWithBitmap(b); + /* TODO(msf): Change this to an explicit test for P when we start targetting SDK 28 */ + if (Build.VERSION.SDK_INT > Build.VERSION_CODES.O_MR1) { + iconOff = iconOn; + } else { + icon.setSlashed(true); + b = Bitmap.createBitmap(icon.getIntrinsicWidth(), icon.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); + c = new Canvas(b); + icon.setBounds(0, 0, c.getWidth(), c.getHeight()); + icon.draw(c); + iconOff = Icon.createWithBitmap(b); + } } @Override