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

Commit 62a8aa7a authored by Chris Wren's avatar Chris Wren Committed by Android (Google) Code Review
Browse files

Merge "Implement application-level high priority setting." into lmp-dev

parents 97ed6faa a7d0062e
Loading
Loading
Loading
Loading
+20 −6
Original line number Diff line number Diff line
@@ -70,7 +70,7 @@ public class AppNotificationSettings extends ListFragment {
     * Show a checkbox in the per-app notification control dialog to allow the user
     * to promote this app's notifications to higher priority.
     */
    private static final boolean ENABLE_APP_NOTIFICATION_PRIORITY_OPTION = false;
    private static final boolean ENABLE_APP_NOTIFICATION_PRIORITY_OPTION = true;
    /**
     * Show a checkbox in the per-app notification control dialog to allow the user to
     * selectively redact this app's notifications on the lockscreen.
@@ -585,13 +585,27 @@ public class AppNotificationSettings extends ListFragment {
        }

        public boolean getHighPriority(String pkg, int uid) {
            // TODO get high-pri state from NoMan
            INotificationManager nm = INotificationManager.Stub.asInterface(
                    ServiceManager.getService(Context.NOTIFICATION_SERVICE));
            try {
                return nm.getPackagePriority(pkg, uid) == Notification.PRIORITY_MAX;
            } catch (Exception e) {
                Log.w(TAG, "Error calling NoMan", e);
                return false;
            }
        }

        public boolean setHighPriority(String pkg, int uid, boolean priority) {
            // TODO save high-pri state to NoMan
        public boolean setHighPriority(String pkg, int uid, boolean highPriority) {
            INotificationManager nm = INotificationManager.Stub.asInterface(
                    ServiceManager.getService(Context.NOTIFICATION_SERVICE));
            try {
                nm.setPackagePriority(pkg, uid,
                        highPriority ? Notification.PRIORITY_MAX : Notification.PRIORITY_DEFAULT);
                return true;
            } catch (Exception e) {
                Log.w(TAG, "Error calling NoMan", e);
                return false;
            }
        }

        public boolean getSensitive(String pkg, int uid) {