[automerger skipped] [automerged blank] Import translations. DO NOT MERGE ANYWHERE 2p: d5de2ec5ae am: fb20f3183b -s ours

am skip reason: subject contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/17801765

Change-Id: I807cf19714d8b4657a48d4102730fc7b210ebf8f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 0ed126f..58ac9b7 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -3319,6 +3319,22 @@
                        android:value="@string/menu_key_notifications"/>
         </activity>
 
+        <!-- Application-level notification settings page, same as above but only accessible
+             internally from system server -->
+        <activity android:name="Settings$NotificationReviewPermissionsActivity"
+                  android:label="@string/app_notifications_title"
+                  android:icon="@drawable/ic_notifications"
+                  android:exported="false">
+            <intent-filter android:priority="1">
+                <action android:name="android.settings.ALL_APPS_NOTIFICATION_SETTINGS_FOR_REVIEW" />
+                <category android:name="android.intent.category.DEFAULT" />
+            </intent-filter>
+            <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
+                       android:value="com.android.settings.applications.manageapplications.ManageApplications" />
+            <meta-data android:name="com.android.settings.HIGHLIGHT_MENU_KEY"
+                       android:value="@string/menu_key_notifications"/>
+        </activity>
+
         <!-- Show application-level notification settings (app passed in as extras) -->
         <activity android:name="Settings$AppNotificationSettingsActivity"
                 android:exported="true">
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 99652ce..cfcb62e 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -13770,12 +13770,6 @@
     <!-- Title for if toggle access is disabled by carrier [CHAR LIMIT=NONE] -->
     <string name="enable_2g_summary_disabled_carrier"><xliff:g id="carrier_name_2g" example="Google Fi">%1$s</xliff:g> requires 2G to be available</string>
 
-
-    <!-- Label for extra app info settings for a specific app [CHAR LIMIT=40] -->
-    <string name="extra_app_info_label" translatable="false"></string>
-    <!-- Summary for extra app info settings for a specific app [CHAR LIMIT=40] -->
-    <string name="extra_app_info_summary" translatable="false"></string>
-
     <!-- Label for All Services preference in App info settings [CHAR LIMIT=40] -->
     <string name="app_info_all_services_label">All Services</string>
 
diff --git a/res/xml/app_info_settings.xml b/res/xml/app_info_settings.xml
index 0726c20..a310af5 100644
--- a/res/xml/app_info_settings.xml
+++ b/res/xml/app_info_settings.xml
@@ -78,12 +78,6 @@
         settings:controller="com.android.settings.applications.appinfo.AppDataUsagePreferenceController" />
 
     <Preference
-        android:key="extra_app_info_settings"
-        android:title="@string/extra_app_info_label"
-        android:summary="@string/extra_app_info_summary"
-        settings:controller="com.android.settings.applications.appinfo.ExtraAppInfoPreferenceController" />
-
-    <Preference
         android:key="time_spent_in_app"
         android:title="@string/time_spent_in_app_pref_title"
         android:summary="@string/summary_placeholder"
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index 553ed19..c7375a3 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -295,6 +295,7 @@
     public static class AppBubbleNotificationSettingsActivity extends SettingsActivity { /* empty */ }
     public static class NotificationAssistantSettingsActivity extends SettingsActivity{ /* empty */ }
     public static class NotificationAppListActivity extends SettingsActivity { /* empty */ }
+    public static class NotificationReviewPermissionsActivity extends SettingsActivity { /* empty */ }
     public static class AppNotificationSettingsActivity extends SettingsActivity { /* empty */ }
     public static class ChannelNotificationSettingsActivity extends SettingsActivity { /* empty */ }
     public static class ChannelGroupNotificationSettingsActivity extends SettingsActivity { /* empty */ }
diff --git a/src/com/android/settings/applications/manageapplications/ManageApplications.java b/src/com/android/settings/applications/manageapplications/ManageApplications.java
index f11aafd..3eae885 100644
--- a/src/com/android/settings/applications/manageapplications/ManageApplications.java
+++ b/src/com/android/settings/applications/manageapplications/ManageApplications.java
@@ -315,16 +315,25 @@
             mListType = LIST_TYPE_WIFI_ACCESS;
         } else if (className.equals(Settings.ManageExternalStorageActivity.class.getName())) {
             mListType = LIST_MANAGE_EXTERNAL_STORAGE;
-        }  else if (className.equals(Settings.MediaManagementAppsActivity.class.getName())) {
+        } else if (className.equals(Settings.MediaManagementAppsActivity.class.getName())) {
             mListType = LIST_TYPE_MEDIA_MANAGEMENT_APPS;
         } else if (className.equals(Settings.AlarmsAndRemindersActivity.class.getName())) {
             mListType = LIST_TYPE_ALARMS_AND_REMINDERS;
-        } else if (className.equals(Settings.NotificationAppListActivity.class.getName())) {
+        } else if (className.equals(Settings.NotificationAppListActivity.class.getName())
+                || className.equals(
+                        Settings.NotificationReviewPermissionsActivity.class.getName())) {
             mListType = LIST_TYPE_NOTIFICATION;
             mUsageStatsManager = IUsageStatsManager.Stub.asInterface(
                     ServiceManager.getService(Context.USAGE_STATS_SERVICE));
             mNotificationBackend = new NotificationBackend();
             mSortOrder = R.id.sort_order_recent_notification;
+            if (className.equals(Settings.NotificationReviewPermissionsActivity.class.getName())) {
+                // Special-case for a case where a user is directed to the all apps notification
+                // preferences page via a notification prompt to review permissions settings.
+                android.provider.Settings.Secure.putInt(getContext().getContentResolver(),
+                        android.provider.Settings.Secure.REVIEW_PERMISSIONS_NOTIFICATION_STATE,
+                        1);  // USER_INTERACTED
+            }
         } else if (className.equals(AppLocaleDetails.class.getName())) {
             mListType = LIST_TYPE_APPS_LOCALE;
         } else {
@@ -915,7 +924,9 @@
             screenTitle = R.string.media_management_apps_title;
         } else if (className.equals(Settings.AlarmsAndRemindersActivity.class.getName())) {
             screenTitle = R.string.alarms_and_reminders_title;
-        } else if (className.equals(Settings.NotificationAppListActivity.class.getName())) {
+        } else if (className.equals(Settings.NotificationAppListActivity.class.getName())
+                || className.equals(
+                        Settings.NotificationReviewPermissionsActivity.class.getName())) {
             screenTitle = R.string.app_notifications_title;
         } else if (className.equals(AppLocaleDetails.class.getName())) {
             screenTitle = R.string.app_locales_picker_menu_title;