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

Commit e6d82b8d authored by Julia Reynolds's avatar Julia Reynolds Committed by Android (Google) Code Review
Browse files

Merge "Clarify notification blocking in notification app list."

parents 42320452 e07f385a
Loading
Loading
Loading
Loading
+3 −1
Original line number Original line Diff line number Diff line
@@ -6334,7 +6334,9 @@
   <!-- App notification summary with notifications enabled [CHAR LIMIT=40] -->
   <!-- App notification summary with notifications enabled [CHAR LIMIT=40] -->
   <string name="notifications_enabled">Normal</string>
   <string name="notifications_enabled">Normal</string>
   <!-- App notification summary with notifications disabled [CHAR LIMIT=40] -->
   <!-- App notification summary with notifications disabled [CHAR LIMIT=40] -->
   <string name="notifications_disabled">Block</string>
   <string name="notifications_disabled">Fully Blocked</string>
   <!-- App notification summary with notifications disabled [CHAR LIMIT=40] -->
   <string name="notifications_partially_disabled">Partially Blocked</string>
   <!-- App notification summary with 2 items [CHAR LIMIT=15] -->
   <!-- App notification summary with 2 items [CHAR LIMIT=15] -->
   <string name="notifications_two_items"><xliff:g id="notif_state" example="Priority">%1$s</xliff:g> / <xliff:g id="notif_state" example="Priority">%2$s</xliff:g></string>
   <string name="notifications_two_items"><xliff:g id="notif_state" example="Priority">%1$s</xliff:g> / <xliff:g id="notif_state" example="Priority">%2$s</xliff:g></string>
   <!-- App notification summary with 3 items [CHAR LIMIT=15] -->
   <!-- App notification summary with 3 items [CHAR LIMIT=15] -->
+5 −1
Original line number Original line Diff line number Diff line
@@ -63,7 +63,11 @@ public class AppStateNotificationBridge extends AppStateBaseBridge {


        @Override
        @Override
        public boolean filterApp(AppEntry info) {
        public boolean filterApp(AppEntry info) {
            return info.extraInfo != null && ((AppRow) info.extraInfo).banned;
            if (info == null) {
                return false;
            }
            AppRow row = (AppRow) info.extraInfo;
            return row.banned || row.bannedTopics;
        }
        }
    };
    };
}
}
+2 −0
Original line number Original line Diff line number Diff line
@@ -821,6 +821,8 @@ public class InstalledAppDetails extends AppInfoBase
    public static CharSequence getNotificationSummary(AppRow appRow, Context context) {
    public static CharSequence getNotificationSummary(AppRow appRow, Context context) {
        if (appRow.banned) {
        if (appRow.banned) {
            return context.getString(R.string.notifications_disabled);
            return context.getString(R.string.notifications_disabled);
        } else if (appRow.bannedTopics) {
            return context.getString(R.string.notifications_partially_disabled);
        }
        }
        return context.getString(R.string.notifications_enabled);
        return context.getString(R.string.notifications_enabled);
    }
    }
+11 −0
Original line number Original line Diff line number Diff line
@@ -54,6 +54,7 @@ public class NotificationBackend {
        row.appImportance = getImportance(row.pkg, row.uid, null);
        row.appImportance = getImportance(row.pkg, row.uid, null);
        row.appBypassDnd = getBypassZenMode(row.pkg, row.uid, null);
        row.appBypassDnd = getBypassZenMode(row.pkg, row.uid, null);
        row.appSensitive = getSensitive(row.pkg, row.uid, null);
        row.appSensitive = getSensitive(row.pkg, row.uid, null);
        row.bannedTopics = hasBannedTopics(row.pkg, row.uid);
        return row;
        return row;
    }
    }


@@ -170,6 +171,15 @@ public class NotificationBackend {
        }
        }
    }
    }


    public boolean hasBannedTopics(String pkg, int uid) {
        try {
            return sINM.hasBannedTopics(pkg, uid);
        } catch (Exception e) {
            Log.w(TAG, "Error calling NoMan", e);
            return false;
        }
    }

    static class Row {
    static class Row {
        public String section;
        public String section;
    }
    }
@@ -186,6 +196,7 @@ public class NotificationBackend {
        public int appImportance;
        public int appImportance;
        public boolean appBypassDnd;
        public boolean appBypassDnd;
        public boolean appSensitive;
        public boolean appSensitive;
        public boolean bannedTopics;
    }
    }


    public static class TopicRow extends AppRow {
    public static class TopicRow extends AppRow {