Hide conversation bubble switch if app bubbles are off

Fixes: 159340745

Test: BubblePreferenceControllerTest

Test: priority conversation bubble
=> app bubbles OFF => toggle hidden
=> selected bubbles ON => toggle checked
=> app bubbles ON => toggle checked

Test: default/silent conversation bubble
=> app bubbles OFF => toggle hidden
=> selected bubbles ON => toggle NOT checked
=> app bubbles ON => toggle NOT checked

Change-Id: Ia5759c2a06c1da4d84b3dafed95e52c3aa30ad56
This commit is contained in:
Lyn Han
2020-08-12 12:17:41 -07:00
parent 6af0342084
commit 9af95dae7d
2 changed files with 3 additions and 3 deletions

View File

@@ -77,7 +77,7 @@ public class BubblePreferenceController extends NotificationPreferenceController
if (isDefaultChannel()) {
return true;
} else {
return mAppRow != null;
return mAppRow != null && mAppRow.bubblePreference != BUBBLE_PREFERENCE_NONE;
}
}
return true;

View File

@@ -137,7 +137,7 @@ public class BubblePreferenceControllerTest {
}
@Test
public void isAvailable_channel_yesIfAppOff() {
public void isAvailable_channel_notIfAppOff() {
Settings.Global.putInt(mContext.getContentResolver(), NOTIFICATION_BUBBLES, SYSTEM_WIDE_ON);
NotificationBackend.AppRow appRow = new NotificationBackend.AppRow();
appRow.bubblePreference = BUBBLE_PREFERENCE_NONE;
@@ -145,7 +145,7 @@ public class BubblePreferenceControllerTest {
when(channel.getImportance()).thenReturn(IMPORTANCE_HIGH);
mController.onResume(appRow, channel, null, null, null, null);
assertTrue(mController.isAvailable());
assertFalse(mController.isAvailable());
}
@Test