Merge "[Notif] Disable "Customize" for blocking helper" into pi-dev

This commit is contained in:
TreeHugger Robot
2018-03-30 20:03:11 +00:00
committed by Android (Google) Code Review
2 changed files with 27 additions and 4 deletions

View File

@@ -308,15 +308,15 @@ public class NotificationInfo extends LinearLayout implements NotificationGuts.G
minimize.setVisibility(GONE);
}
// Set up app settings link
// Set up app settings link (i.e. Customize)
TextView settingsLinkView = findViewById(R.id.app_settings);
Intent settingsIntent = getAppSettingsIntent(mPm, mPkg, mSingleNotificationChannel,
mSbn.getId(), mSbn.getTag());
if (settingsIntent != null
if (!mIsForBlockingHelper
&& settingsIntent != null
&& !TextUtils.isEmpty(mSbn.getNotification().getSettingsText())) {
settingsLinkView.setVisibility(VISIBLE);
settingsLinkView.setText(mContext.getString(R.string.notification_app_settings,
mSbn.getNotification().getSettingsText()));
settingsLinkView.setText(mContext.getString(R.string.notification_app_settings));
settingsLinkView.setOnClickListener((View view) -> {
mAppSettingsClickListener.onClick(view, settingsIntent);
});

View File

@@ -696,6 +696,29 @@ public class NotificationInfoTest extends SysuiTestCase {
assertEquals(GONE, settingsLink.getVisibility());
}
@Test
public void testBindHeader_noSettingsLinkWhenIsForBlockingHelper() throws Exception {
final String settingsText = "work chats";
final ResolveInfo ri = new ResolveInfo();
ri.activityInfo = new ActivityInfo();
ri.activityInfo.packageName = TEST_PACKAGE_NAME;
ri.activityInfo.name = "something";
List<ResolveInfo> ris = new ArrayList<>();
ris.add(ri);
when(mMockPackageManager.queryIntentActivities(any(), anyInt())).thenReturn(ris);
mNotificationChannel.setImportance(IMPORTANCE_LOW);
Notification n = new Notification.Builder(mContext, mNotificationChannel.getId())
.setSettingsText(settingsText).build();
StatusBarNotification sbn = new StatusBarNotification(TEST_PACKAGE_NAME, TEST_PACKAGE_NAME,
0, null, 0, 0, n, UserHandle.CURRENT, null, 0);
mNotificationInfo.bindNotification(mMockPackageManager, mMockINotificationManager,
TEST_PACKAGE_NAME, mNotificationChannel, 1, sbn, null, null, null, null, true,
true);
final TextView settingsLink = mNotificationInfo.findViewById(R.id.app_settings);
assertEquals(GONE, settingsLink.getVisibility());
}
@Test
public void testWillBeRemovedReturnsFalseBeforeBind() throws Exception {