diff --git a/res/layout/manage_applications_item.xml b/res/layout/manage_applications_item.xml
index 042d518d7af..90555c8f25b 100755
--- a/res/layout/manage_applications_item.xml
+++ b/res/layout/manage_applications_item.xml
@@ -59,13 +59,15 @@
android:duplicateParentState="true" />
Block
- Sensitive
+ Sensitive content hidden
Priority
-
- Priority & Sensitive
+
+ No peeking
+
+ %1$s / %2$s
+
+ %1$s / %2$s / %3$s
+
@@ -6459,7 +6464,9 @@
Priority
- Sensitive
+ Sensitive content hidden
+
+ No peeking
With domain URLs
diff --git a/src/com/android/settings/applications/AppOpsDetails.java b/src/com/android/settings/applications/AppOpsDetails.java
index 88591d77678..0643b566fa1 100644
--- a/src/com/android/settings/applications/AppOpsDetails.java
+++ b/src/com/android/settings/applications/AppOpsDetails.java
@@ -71,7 +71,7 @@ public class AppOpsDetails extends InstrumentedFragment {
TextView label = (TextView) appSnippet.findViewById(R.id.app_name);
label.setText(mPm.getApplicationLabel(pkgInfo.applicationInfo));
// Version number of application
- mAppVersion = (TextView) appSnippet.findViewById(R.id.app_size);
+ mAppVersion = (TextView) appSnippet.findViewById(R.id.app_summary);
if (pkgInfo.versionName != null) {
mAppVersion.setVisibility(View.VISIBLE);
diff --git a/src/com/android/settings/applications/AppStateNotificationBridge.java b/src/com/android/settings/applications/AppStateNotificationBridge.java
index 1aa7ebf123a..4ac86506794 100644
--- a/src/com/android/settings/applications/AppStateNotificationBridge.java
+++ b/src/com/android/settings/applications/AppStateNotificationBridge.java
@@ -87,4 +87,15 @@ public class AppStateNotificationBridge extends AppStateBaseBridge {
return info.extraInfo != null && ((AppRow) info.extraInfo).sensitive;
}
};
+
+ public static final AppFilter FILTER_APP_NOTIFICATION_NO_PEEK = new AppFilter() {
+ @Override
+ public void init() {
+ }
+
+ @Override
+ public boolean filterApp(AppEntry info) {
+ return info.extraInfo != null && !((AppRow) info.extraInfo).peekable;
+ }
+ };
}
diff --git a/src/com/android/settings/applications/AppViewHolder.java b/src/com/android/settings/applications/AppViewHolder.java
index 92aa87a7bad..34c99524532 100644
--- a/src/com/android/settings/applications/AppViewHolder.java
+++ b/src/com/android/settings/applications/AppViewHolder.java
@@ -45,7 +45,7 @@ public class AppViewHolder {
holder.rootView = convertView;
holder.appName = (TextView) convertView.findViewById(R.id.app_name);
holder.appIcon = (ImageView) convertView.findViewById(R.id.app_icon);
- holder.summary = (TextView) convertView.findViewById(R.id.app_size);
+ holder.summary = (TextView) convertView.findViewById(R.id.app_summary);
holder.disabled = (TextView) convertView.findViewById(R.id.app_disabled);
holder.checkBox = (CheckBox) convertView.findViewById(R.id.app_on_sdcard);
convertView.setTag(holder);
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
index 33a74282c5a..ffd4959abf9 100755
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ b/src/com/android/settings/applications/InstalledAppDetails.java
@@ -364,7 +364,7 @@ public class InstalledAppDetails extends AppInfoBase
TextView label = (TextView) appSnippet.findViewById(R.id.app_name);
label.setText(mAppEntry.label);
// Version number of application
- mAppVersion = (TextView) appSnippet.findViewById(R.id.app_size);
+ mAppVersion = (TextView) appSnippet.findViewById(R.id.app_summary);
if (pkgInfo != null && pkgInfo.versionName != null) {
mAppVersion.setVisibility(View.VISIBLE);
@@ -675,15 +675,29 @@ public class InstalledAppDetails extends AppInfoBase
public static CharSequence getNotificationSummary(AppRow appRow, Context context) {
if (appRow.banned) {
return context.getString(R.string.notifications_disabled);
- } else if (appRow.priority) {
- if (appRow.sensitive) {
- return context.getString(R.string.notifications_priority_sensitive);
- }
- return context.getString(R.string.notifications_priority);
- } else if (appRow.sensitive) {
- return context.getString(R.string.notifications_sensitive);
}
- return context.getString(R.string.notifications_enabled);
+ ArrayList notifSummary = new ArrayList<>();
+ if (appRow.priority) {
+ notifSummary.add(context.getString(R.string.notifications_priority));
+ }
+ if (appRow.sensitive) {
+ notifSummary.add(context.getString(R.string.notifications_sensitive));
+ }
+ if (!appRow.peekable) {
+ notifSummary.add(context.getString(R.string.notifications_no_peeking));
+ }
+ switch (notifSummary.size()) {
+ case 3:
+ return context.getString(R.string.notifications_three_items,
+ notifSummary.get(0), notifSummary.get(1), notifSummary.get(2));
+ case 2:
+ return context.getString(R.string.notifications_two_items,
+ notifSummary.get(0), notifSummary.get(1));
+ case 1:
+ return notifSummary.get(0);
+ default:
+ return context.getString(R.string.notifications_enabled);
+ }
}
static class DisableChanger extends AsyncTask