From d62853c9790a63c8a0a5f6c540b1280b67e8f8c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timi=20Rautam=C3=A4ki?= Date: Fri, 5 Nov 2021 13:10:22 +0000 Subject: [PATCH] SystemUI: res array for statusbar blocked icons MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Create an array in packages/SystemUI/res/values/config.xml for statusbar blocked icons to make it easier to overlay wanted options instead of having to change them in code. Test: m, verify vibrate-icon is not visible in collapsed statusbar on keyguard or launcher. Signed-off-by: Timi Rautamäki Change-Id: I9a04a67a9c0914989d34c8c53ceee97788e7ba6c Merged-In: I9a04a67a9c0914989d34c8c53ceee97788e7ba6c --- packages/SystemUI/res/values/config.xml | 13 ++++++++++++ .../KeyguardStatusBarViewController.java | 7 ++----- .../fragment/CollapsedStatusBarFragment.java | 21 +++++++++++++++---- 3 files changed, 32 insertions(+), 9 deletions(-) diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml index e00b9410a8a78..6f46b709566eb 100644 --- a/packages/SystemUI/res/values/config.xml +++ b/packages/SystemUI/res/values/config.xml @@ -664,4 +664,17 @@ true + + + @*android:string/status_bar_volume + @*android:string/status_bar_alarm_clock + @*android:string/status_bar_call_strength + + + + + @*android:string/status_bar_volume + @*android:string/status_bar_alarm_clock + @*android:string/status_bar_call_strength + diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarViewController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarViewController.java index e7d5724fa9bf1..32aa899eff230 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarViewController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardStatusBarViewController.java @@ -54,7 +54,6 @@ import com.android.systemui.util.ViewController; import java.io.FileDescriptor; import java.io.PrintWriter; import java.util.Arrays; -import java.util.Collections; import java.util.List; import javax.inject.Inject; @@ -263,10 +262,8 @@ public class KeyguardStatusBarViewController extends ViewController blockList = Arrays.asList(getResources().getStringArray( + R.array.config_collapsed_statusbar_icon_blocklist)); + String vibrateIconSlot = getString(com.android.internal.R.string.status_bar_volume); + boolean showVibrateIcon = + mSecureSettings.getInt(Settings.Secure.STATUS_BAR_SHOW_VIBRATE_ICON, 0) == 0; + + // Filter out vibrate icon from the blocklist if the setting is on + for (int i = 0; i < blockList.size(); i++) { + if (blockList.get(i).equals(vibrateIconSlot)) { + if (showVibrateIcon) { + mBlockedIcons.add(blockList.get(i)); + } + } else { + mBlockedIcons.add(blockList.get(i)); + } } - mBlockedIcons.add(getString(com.android.internal.R.string.status_bar_alarm_clock)); - mBlockedIcons.add(getString(com.android.internal.R.string.status_bar_call_strength)); mMainExecutor.execute(() -> mDarkIconManager.setBlockList(mBlockedIcons)); }