Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 497bb68f authored by Beverly's avatar Beverly Committed by android-build-merger
Browse files

Merge "DO NOT MERGE Notifs sent from suspended apps should reappear" into pi-dev

am: 0b89c36e

Change-Id: Ibe257d2d0e6fd40b44483c9fa69389d5bd9822af
parents 889f251a 0b89c36e
Loading
Loading
Loading
Loading
+8 −11
Original line number Diff line number Diff line
@@ -4258,13 +4258,6 @@ public class NotificationManagerService extends SystemService {
        final String pkg = r.sbn.getPackageName();
        final int callingUid = r.sbn.getUid();

        final boolean isPackageSuspended = isPackageSuspendedForUser(pkg, callingUid);
        if (isPackageSuspended) {
            Slog.e(TAG, "Suppressing notification from package due to package "
                    + "suspended by administrator.");
            usageStats.registerSuspendedByAdmin(r);
            return isPackageSuspended;
        }
        final boolean isBlocked =
                mRankingHelper.isGroupBlocked(pkg, callingUid, r.getChannel().getGroup())
                || mRankingHelper.getImportance(pkg, callingUid)
@@ -4273,8 +4266,9 @@ public class NotificationManagerService extends SystemService {
        if (isBlocked) {
            Slog.e(TAG, "Suppressing notification from package by user request.");
            usageStats.registerBlocked(r);
            return true;
        }
        return isBlocked;
        return false;
    }

    protected class SnoozeNotificationRunnable implements Runnable {
@@ -4452,7 +4446,11 @@ public class NotificationManagerService extends SystemService {
                        return;
                    }

                    r.setHidden(isPackageSuspendedLocked(r));
                    final boolean isPackageSuspended = isPackageSuspendedLocked(r);
                    r.setHidden(isPackageSuspended);
                    if (isPackageSuspended) {
                        mUsageStats.registerSuspendedByAdmin(r);
                    }
                    NotificationRecord old = mNotificationsByKey.get(key);
                    final StatusBarNotification n = r.sbn;
                    final Notification notification = n.getNotification();
@@ -6618,7 +6616,6 @@ public class NotificationManagerService extends SystemService {
                if (!oldSbnVisible && !sbnVisible) {
                    continue;
                }

                // If the notification is hidden, don't notifyPosted listeners targeting < P.
                // Instead, those listeners will receive notifyPosted when the notification is
                // unhidden.
+3 −2
Original line number Diff line number Diff line
@@ -500,8 +500,9 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
        NotificationChannel channel = new NotificationChannel("id", "name",
                IMPORTANCE_HIGH);
        NotificationRecord r = generateNotificationRecord(channel);
        assertTrue(mService.isBlocked(r, mUsageStats));
        verify(mUsageStats, times(1)).registerSuspendedByAdmin(eq(r));

        // isBlocked is only used for user blocking, not app suspension
        assertFalse(mService.isBlocked(r, mUsageStats));
    }

    @Test