diff options
author | Steve Kondik <steve@cyngn.com> | 2016-10-26 17:33:59 -0700 |
---|---|---|
committer | Scott Warner <tortel1210@gmail.com> | 2016-10-26 17:54:31 -0700 |
commit | 7517e8058becac2200840cd0c289b236ab04dae2 (patch) | |
tree | ddd73aec248df04c43f3090cbef7d55a22e5530d | |
parent | fc24ab3b6144372427043b8c5f8ab57cfefdc008 (diff) | |
download | android_frameworks_base-cm-14.0.tar.gz android_frameworks_base-cm-14.0.tar.bz2 android_frameworks_base-cm-14.0.zip |
Revert "Add new importance level for blocking lock screen notifications (1/2)"cm-14.0
* Quail star.
This reverts commit a9931cbb6bdbf15845a486299a5bb27ac08c8862.
Change-Id: I695f2f9bb2ff39a183a8d3b695f4cff8ba262351
(cherry picked from commit 38b8a900e81c5d0a910f4788f3e7e2117d8de961)
9 files changed, 54 insertions, 80 deletions
diff --git a/core/java/android/app/NotificationManager.java b/core/java/android/app/NotificationManager.java index 863a39a6e5a..18b72e29e0e 100644 --- a/core/java/android/app/NotificationManager.java +++ b/core/java/android/app/NotificationManager.java @@ -182,7 +182,7 @@ public class NotificationManager /** @hide */ @IntDef({VISIBILITY_NO_OVERRIDE, IMPORTANCE_UNSPECIFIED, IMPORTANCE_NONE, - IMPORTANCE_MIN, IMPORTANCE_VERY_LOW, IMPORTANCE_LOW, IMPORTANCE_DEFAULT, IMPORTANCE_HIGH, + IMPORTANCE_MIN, IMPORTANCE_LOW, IMPORTANCE_DEFAULT, IMPORTANCE_HIGH, IMPORTANCE_MAX}) @Retention(RetentionPolicy.SOURCE) public @interface Importance {} @@ -209,32 +209,26 @@ public class NotificationManager public static final int IMPORTANCE_MIN = 1; /** - * Very low notification importance: shows on the status bar, but never - * on the lock screen and is not intrusive. - */ - public static final int IMPORTANCE_VERY_LOW = 2; - - /** * Low notification importance: shows everywhere, but is not intrusive. */ - public static final int IMPORTANCE_LOW = 3; + public static final int IMPORTANCE_LOW = 2; /** * Default notification importance: shows everywhere, allowed to makes noise, * but does not visually intrude. */ - public static final int IMPORTANCE_DEFAULT = 4; + public static final int IMPORTANCE_DEFAULT = 3; /** * Higher notification importance: shows everywhere, allowed to makes noise and peek. */ - public static final int IMPORTANCE_HIGH = 5; + public static final int IMPORTANCE_HIGH = 4; /** * Highest notification importance: shows everywhere, allowed to makes noise, peek, and * use full screen intents. */ - public static final int IMPORTANCE_MAX = 6; + public static final int IMPORTANCE_MAX = 5; private static INotificationManager sService; diff --git a/core/java/android/service/notification/NotificationListenerService.java b/core/java/android/service/notification/NotificationListenerService.java index 8308cd6fe22..1557a2718b5 100644 --- a/core/java/android/service/notification/NotificationListenerService.java +++ b/core/java/android/service/notification/NotificationListenerService.java @@ -1039,13 +1039,6 @@ public abstract class NotificationListenerService extends Service { public static final int IMPORTANCE_MIN = NotificationManager.IMPORTANCE_MIN; /** - * Very low notification importance: not on lock screen and not intrusive. - * - * @hide - */ - public static final int IMPORTANCE_VERY_LOW = NotificationManager.IMPORTANCE_VERY_LOW; - - /** * Low notification importance: shows everywhere, but is not intrusive. * * @hide @@ -1176,7 +1169,7 @@ public abstract class NotificationListenerService extends Service { CharSequence explanation, String overrideGroupKey) { mKey = key; mRank = rank; - mIsAmbient = importance < IMPORTANCE_VERY_LOW; + mIsAmbient = importance < IMPORTANCE_LOW; mMatchesInterruptionFilter = matchesInterruptionFilter; mVisibilityOverride = visibilityOverride; mSuppressedVisualEffects = suppressedVisualEffects; @@ -1196,8 +1189,6 @@ public abstract class NotificationListenerService extends Service { return "NONE"; case IMPORTANCE_MIN: return "MIN"; - case IMPORTANCE_VERY_LOW: - return "VERY_LOW"; case IMPORTANCE_LOW: return "LOW"; case IMPORTANCE_DEFAULT: diff --git a/packages/SystemUI/res/layout/power_notification_controls_settings.xml b/packages/SystemUI/res/layout/power_notification_controls_settings.xml index cd0149fa673..83c8a51f633 100644 --- a/packages/SystemUI/res/layout/power_notification_controls_settings.xml +++ b/packages/SystemUI/res/layout/power_notification_controls_settings.xml @@ -25,6 +25,6 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:padding="16dp" - android:text="@string/cm_power_notification_controls_description"/> + android:text="@string/power_notification_controls_description"/> </LinearLayout> diff --git a/packages/SystemUI/res/values/cm_strings.xml b/packages/SystemUI/res/values/cm_strings.xml index 611ac1e7fcd..d05dd8059b6 100644 --- a/packages/SystemUI/res/values/cm_strings.xml +++ b/packages/SystemUI/res/values/cm_strings.xml @@ -36,44 +36,6 @@ <string name="quick_settings_tile_flashlight_not_title">Flashlight is on</string> <string name="quick_settings_tile_flashlight_not_summary">Tap to turn off</string> - <!-- [CHAR LIMIT=NONE] Importance Tuner setting title --> - <string name="cm_power_notification_controls_description">With power notification controls, you can set an importance level from 0 to 6 for an app\'s notifications. - \n\n<b>Level 6</b> - \n- Show at the top of the notification list - \n- Allow full screen interruption - \n- Always peek - \n\n<b>Level 5</b> - \n- Prevent full screen interruption - \n- Always peek - \n\n<b>Level 4</b> - \n- Prevent full screen interruption - \n- Never peek - \n\n<b>Level 3</b> - \n- Prevent full screen interruption - \n- Never peek - \n- Never make sound and vibration - \n\n<b>Level 2</b> - \n- Prevent full screen interruption - \n- Never peek - \n- Never make sound or vibrate - \n- Hide from lock screen - \n- Show at the bottom of the notification list - \n\n<b>Level 1</b> - \n- Prevent full screen interruption - \n- Never peek - \n- Never make sound or vibrate - \n- Hide from lock screen and status bar - \n- Show at the bottom of the notification list - \n\n<b>Level 0</b> - \n- Block all notifications from the app - </string> - - <!-- Notification importance level title--> - <string name="importance_level_title">Importance: Level %1$d</string> - - <!-- [CHAR LIMIT=100] Notification Importance slider: very low importance level description --> - <string name="notification_importance_very_low">No full screen interruption, peeking, sound, or vibration. Hide from lock screen.</string> - <!-- Screen pinning dialog description (for devices without navbar) --> <string name="screen_pinning_description_no_navbar">This keeps it in view until you unpin. Touch and hold the Back button to unpin.</string> diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml index de574f8cbe1..e20e09f0e30 100644 --- a/packages/SystemUI/res/values/strings.xml +++ b/packages/SystemUI/res/values/strings.xml @@ -1279,9 +1279,45 @@ <string name="tuner_full_importance_settings">Power notification controls</string> <string name="tuner_full_importance_settings_on">On</string> <string name="tuner_full_importance_settings_off">Off</string> + <string name="power_notification_controls_description">With power notification controls, you can set an importance level from 0 to 5 for an app\'s notifications. + \n\n<b>Level 5</b> + \n- Show at the top of the notification list + \n- Allow full screen interruption + \n- Always peek + \n\n<b>Level 4</b> + \n- Prevent full screen interruption + \n- Always peek + \n\n<b>Level 3</b> + \n- Prevent full screen interruption + \n- Never peek + \n\n<b>Level 2</b> + \n- Prevent full screen interruption + \n- Never peek + \n- Never make sound and vibration + \n\n<b>Level 1</b> + \n- Prevent full screen interruption + \n- Never peek + \n- Never make sound or vibrate + \n- Hide from lock screen and status bar + \n- Show at the bottom of the notification list + \n\n<b>Level 0</b> + \n- Block all notifications from the app + </string> <!-- Notification importance title, user unspecified status--> <string name="user_unspecified_importance">Importance: Automatic</string> + <!-- Notification importance title, blocked status--> + <string name="blocked_importance">Importance: Level 0</string> + <!-- Notification importance title, min status--> + <string name="min_importance">Importance: Level 1</string> + <!-- Notification importance title, low status--> + <string name="low_importance">Importance: Level 2</string> + <!-- Notification importance title, normal status--> + <string name="default_importance">Importance: Level 3</string> + <!-- Notification importance title, high status--> + <string name="high_importance">Importance: Level 4</string> + <!-- Notification importance title, max status--> + <string name="max_importance">Importance: Level 5</string> <!-- [CHAR LIMIT=100] Notification Importance slider: blocked importance level description --> <string name="notification_importance_user_unspecified">App determines importance for each notification.</string> diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java index 32b4b4b3461..d0abc1bb376 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java @@ -118,7 +118,6 @@ import java.util.List; import java.util.Locale; import static android.service.notification.NotificationListenerService.Ranking.IMPORTANCE_HIGH; -import static android.service.notification.NotificationListenerService.Ranking.IMPORTANCE_VERY_LOW; public abstract class BaseStatusBar extends SystemUI implements CommandQueue.Callbacks, ActivatableNotificationView.OnActivatedListener, @@ -2304,8 +2303,7 @@ public abstract class BaseStatusBar extends SystemUI implements } public boolean shouldShowOnKeyguard(StatusBarNotification sbn) { - return mShowLockscreenNotifications && !mNotificationData.isAmbient(sbn.getKey()) - && mNotificationData.getImportance(sbn.getKey()) > IMPORTANCE_VERY_LOW; + return mShowLockscreenNotifications && !mNotificationData.isAmbient(sbn.getKey()); } protected void setZenMode(int mode) { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGuts.java b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGuts.java index 867fce0e55d..b61ef80bc31 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGuts.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/NotificationGuts.java @@ -339,36 +339,36 @@ public class NotificationGuts extends LinearLayout implements TunerService.Tunab } private void updateTitleAndSummary(int progress) { - mImportanceTitle.setText(String.format(mContext.getString( - R.string.importance_level_title), progress)); switch (progress) { case Ranking.IMPORTANCE_NONE: mImportanceSummary.setText(mContext.getString( R.string.notification_importance_blocked)); + mImportanceTitle.setText(mContext.getString(R.string.blocked_importance)); break; case Ranking.IMPORTANCE_MIN: mImportanceSummary.setText(mContext.getString( R.string.notification_importance_min)); - break; - case Ranking.IMPORTANCE_VERY_LOW: - mImportanceSummary.setText(mContext.getString( - R.string.notification_importance_very_low)); + mImportanceTitle.setText(mContext.getString(R.string.min_importance)); break; case Ranking.IMPORTANCE_LOW: mImportanceSummary.setText(mContext.getString( R.string.notification_importance_low)); + mImportanceTitle.setText(mContext.getString(R.string.low_importance)); break; case Ranking.IMPORTANCE_DEFAULT: mImportanceSummary.setText(mContext.getString( R.string.notification_importance_default)); + mImportanceTitle.setText(mContext.getString(R.string.default_importance)); break; case Ranking.IMPORTANCE_HIGH: mImportanceSummary.setText(mContext.getString( R.string.notification_importance_high)); + mImportanceTitle.setText(mContext.getString(R.string.high_importance)); break; case Ranking.IMPORTANCE_MAX: mImportanceSummary.setText(mContext.getString( R.string.notification_importance_max)); + mImportanceTitle.setText(mContext.getString(R.string.max_importance)); break; } } diff --git a/services/core/java/com/android/server/notification/NotificationUsageStats.java b/services/core/java/com/android/server/notification/NotificationUsageStats.java index eaaa4325c2a..34c52833fbf 100644 --- a/services/core/java/com/android/server/notification/NotificationUsageStats.java +++ b/services/core/java/com/android/server/notification/NotificationUsageStats.java @@ -699,9 +699,9 @@ public class NotificationUsageStats { private static class ImportanceHistogram { // TODO define these somewhere else - private static final int NUM_IMPORTANCES = 7; + private static final int NUM_IMPORTANCES = 6; private static final String[] IMPORTANCE_NAMES = - {"none", "min", "very-low", "low", "default", "high", "max"}; + {"none", "min", "low", "default", "high", "max"}; private final Context mContext; private final String[] mCounterNames; private final String mPrefix; diff --git a/services/core/java/com/android/server/notification/RankingHelper.java b/services/core/java/com/android/server/notification/RankingHelper.java index d2b886d8b9d..78b3f4134dd 100644 --- a/services/core/java/com/android/server/notification/RankingHelper.java +++ b/services/core/java/com/android/server/notification/RankingHelper.java @@ -44,9 +44,7 @@ import java.util.Map.Entry; public class RankingHelper implements RankingConfig { private static final String TAG = "RankingHelper"; - private static final int VERSION_INIT = 1; - private static final int VERSION_ADDED_VERY_LOW_IMPORTANCE = 2; - private static final int VERSION_LATEST = VERSION_ADDED_VERY_LOW_IMPORTANCE; + private static final int XML_VERSION = 1; private static final String TAG_RANKING = "ranking"; private static final String TAG_PACKAGE = "package"; @@ -63,7 +61,6 @@ public class RankingHelper implements RankingConfig { private static final int DEFAULT_PRIORITY = Notification.PRIORITY_DEFAULT; private static final int DEFAULT_VISIBILITY = Ranking.VISIBILITY_NO_OVERRIDE; private static final int DEFAULT_IMPORTANCE = Ranking.IMPORTANCE_UNSPECIFIED; - private static final int VERY_LOW_IMPORTANCE = Ranking.IMPORTANCE_VERY_LOW; private final NotificationSignalExtractor[] mSignalExtractors; private final NotificationComparator mPreliminaryComparator = new NotificationComparator(); @@ -135,7 +132,6 @@ public class RankingHelper implements RankingConfig { if (type != XmlPullParser.START_TAG) return; String tag = parser.getName(); if (!TAG_RANKING.equals(tag)) return; - int version = safeInt(parser, ATT_VERSION, VERSION_INIT); mRecords.clear(); mRestoredWithoutUids.clear(); while ((type = parser.next()) != XmlPullParser.END_DOCUMENT) { @@ -168,9 +164,6 @@ public class RankingHelper implements RankingConfig { r = getOrCreateRecord(name, uid); } r.importance = safeInt(parser, ATT_IMPORTANCE, DEFAULT_IMPORTANCE); - if (version < VERSION_ADDED_VERY_LOW_IMPORTANCE - && r.importance >= VERY_LOW_IMPORTANCE) - r.importance++; r.priority = safeInt(parser, ATT_PRIORITY, DEFAULT_PRIORITY); r.visibility = safeInt(parser, ATT_VISIBILITY, DEFAULT_VISIBILITY); } @@ -198,7 +191,7 @@ public class RankingHelper implements RankingConfig { public void writeXml(XmlSerializer out, boolean forBackup) throws IOException { out.startTag(null, TAG_RANKING); - out.attribute(null, ATT_VERSION, Integer.toString(VERSION_LATEST)); + out.attribute(null, ATT_VERSION, Integer.toString(XML_VERSION)); final int N = mRecords.size(); for (int i = 0; i < N; i++) { |