Merge "Navigate more App List to SPA"
This commit is contained in:
@@ -36,7 +36,6 @@ import static com.android.settings.applications.manageapplications.AppFilterRegi
|
||||
import static com.android.settings.applications.manageapplications.AppFilterRegistry.FILTER_APPS_WORK;
|
||||
import static com.android.settings.search.actionbar.SearchMenuController.MENU_SEARCH;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.annotation.StringRes;
|
||||
import android.app.Activity;
|
||||
import android.app.ActivityManager;
|
||||
@@ -78,6 +77,7 @@ import android.widget.SearchView;
|
||||
import android.widget.Spinner;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.annotation.WorkerThread;
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
@@ -87,10 +87,16 @@ import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.android.internal.compat.IPlatformCompat;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Settings;
|
||||
import com.android.settings.Settings.AlarmsAndRemindersActivity;
|
||||
import com.android.settings.Settings.AppBatteryUsageActivity;
|
||||
import com.android.settings.Settings.ChangeWifiStateActivity;
|
||||
import com.android.settings.Settings.GamesStorageActivity;
|
||||
import com.android.settings.Settings.HighPowerApplicationsActivity;
|
||||
import com.android.settings.Settings.ManageExternalSourcesActivity;
|
||||
import com.android.settings.Settings.ManageExternalStorageActivity;
|
||||
import com.android.settings.Settings.MediaManagementAppsActivity;
|
||||
import com.android.settings.Settings.NotificationAppListActivity;
|
||||
import com.android.settings.Settings.NotificationReviewPermissionsActivity;
|
||||
import com.android.settings.Settings.OverlaySettingsActivity;
|
||||
import com.android.settings.Settings.StorageUseActivity;
|
||||
import com.android.settings.Settings.UsageAccessSettingsActivity;
|
||||
@@ -133,7 +139,14 @@ import com.android.settings.notification.ConfigureNotificationSettings;
|
||||
import com.android.settings.notification.NotificationBackend;
|
||||
import com.android.settings.notification.app.AppNotificationSettings;
|
||||
import com.android.settings.spa.SpaActivity;
|
||||
import com.android.settings.spa.app.AllAppListPageProvider;
|
||||
import com.android.settings.spa.app.specialaccess.AllFilesAccessAppListProvider;
|
||||
import com.android.settings.spa.app.specialaccess.DisplayOverOtherAppsAppListProvider;
|
||||
import com.android.settings.spa.app.specialaccess.InstallUnknownAppsListProvider;
|
||||
import com.android.settings.spa.app.specialaccess.MediaManagementAppsAppListProvider;
|
||||
import com.android.settings.spa.app.specialaccess.ModifySystemSettingsAppListProvider;
|
||||
import com.android.settings.spa.notification.AppListNotificationsPageProvider;
|
||||
import com.android.settings.spa.system.AppLanguagesPageProvider;
|
||||
import com.android.settings.widget.LoadingViewController;
|
||||
import com.android.settings.wifi.AppStateChangeWifiStateBridge;
|
||||
import com.android.settings.wifi.ChangeWifiStateDetails;
|
||||
@@ -279,12 +292,43 @@ public class ManageApplications extends InstrumentedFragment
|
||||
if (!FeatureFlagUtils.isEnabled(context, FeatureFlagUtils.SETTINGS_ENABLE_SPA)) {
|
||||
return;
|
||||
}
|
||||
Activity activity = getActivity();
|
||||
final String className = getClassName(activity.getIntent(), getArguments());
|
||||
if (className.equals(ManageExternalSourcesActivity.class.getName())) {
|
||||
SpaActivity.startSpaActivity(
|
||||
context, InstallUnknownAppsListProvider.INSTANCE.getAppListRoute());
|
||||
activity.finish();
|
||||
final String spaDestination = getSpaDestination();
|
||||
if (spaDestination != null) {
|
||||
SpaActivity.startSpaActivity(context, spaDestination);
|
||||
getActivity().finish();
|
||||
}
|
||||
}
|
||||
|
||||
@Nullable
|
||||
private String getSpaDestination() {
|
||||
final String className = getClassName(getActivity().getIntent(), getArguments());
|
||||
if (className.equals(UsageAccessSettingsActivity.class.getName())) {
|
||||
return null;
|
||||
} else if (className.equals(HighPowerApplicationsActivity.class.getName())) {
|
||||
return null;
|
||||
} else if (className.equals(OverlaySettingsActivity.class.getName())) {
|
||||
return DisplayOverOtherAppsAppListProvider.INSTANCE.getAppListRoute();
|
||||
} else if (className.equals(WriteSettingsActivity.class.getName())) {
|
||||
return ModifySystemSettingsAppListProvider.INSTANCE.getAppListRoute();
|
||||
} else if (className.equals(ManageExternalSourcesActivity.class.getName())) {
|
||||
return InstallUnknownAppsListProvider.INSTANCE.getAppListRoute();
|
||||
} else if (className.equals(ChangeWifiStateActivity.class.getName())) {
|
||||
return null;
|
||||
} else if (className.equals(ManageExternalStorageActivity.class.getName())) {
|
||||
return AllFilesAccessAppListProvider.INSTANCE.getAppListRoute();
|
||||
} else if (className.equals(MediaManagementAppsActivity.class.getName())) {
|
||||
return MediaManagementAppsAppListProvider.INSTANCE.getAppListRoute();
|
||||
} else if (className.equals(AlarmsAndRemindersActivity.class.getName())) {
|
||||
return null;
|
||||
} else if (className.equals(NotificationAppListActivity.class.getName())
|
||||
|| className.equals(NotificationReviewPermissionsActivity.class.getName())) {
|
||||
return AppListNotificationsPageProvider.INSTANCE.getName();
|
||||
} else if (className.equals(AppLocaleDetails.class.getName())) {
|
||||
return AppLanguagesPageProvider.INSTANCE.getName();
|
||||
} else if (className.equals(AppBatteryUsageActivity.class.getName())) {
|
||||
return null;
|
||||
} else {
|
||||
return AllAppListPageProvider.INSTANCE.getName();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -330,23 +374,22 @@ public class ManageApplications extends InstrumentedFragment
|
||||
} else if (className.equals(GamesStorageActivity.class.getName())) {
|
||||
mListType = LIST_TYPE_GAMES;
|
||||
mSortOrder = R.id.sort_order_size;
|
||||
} else if (className.equals(Settings.ChangeWifiStateActivity.class.getName())) {
|
||||
} else if (className.equals(ChangeWifiStateActivity.class.getName())) {
|
||||
mListType = LIST_TYPE_WIFI_ACCESS;
|
||||
} else if (className.equals(Settings.ManageExternalStorageActivity.class.getName())) {
|
||||
} else if (className.equals(ManageExternalStorageActivity.class.getName())) {
|
||||
mListType = LIST_MANAGE_EXTERNAL_STORAGE;
|
||||
} else if (className.equals(Settings.MediaManagementAppsActivity.class.getName())) {
|
||||
} else if (className.equals(MediaManagementAppsActivity.class.getName())) {
|
||||
mListType = LIST_TYPE_MEDIA_MANAGEMENT_APPS;
|
||||
} else if (className.equals(Settings.AlarmsAndRemindersActivity.class.getName())) {
|
||||
} else if (className.equals(AlarmsAndRemindersActivity.class.getName())) {
|
||||
mListType = LIST_TYPE_ALARMS_AND_REMINDERS;
|
||||
} else if (className.equals(Settings.NotificationAppListActivity.class.getName())
|
||||
|| className.equals(
|
||||
Settings.NotificationReviewPermissionsActivity.class.getName())) {
|
||||
} else if (className.equals(NotificationAppListActivity.class.getName())
|
||||
|| className.equals(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())) {
|
||||
if (className.equals(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.Global.putInt(getContext().getContentResolver(),
|
||||
@@ -355,17 +398,17 @@ public class ManageApplications extends InstrumentedFragment
|
||||
}
|
||||
} else if (className.equals(AppLocaleDetails.class.getName())) {
|
||||
mListType = LIST_TYPE_APPS_LOCALE;
|
||||
} else if (className.equals(Settings.AppBatteryUsageActivity.class.getName())) {
|
||||
} else if (className.equals(AppBatteryUsageActivity.class.getName())) {
|
||||
mListType = LIST_TYPE_BATTERY_OPTIMIZATION;
|
||||
} else {
|
||||
mListType = LIST_TYPE_MAIN;
|
||||
}
|
||||
final AppFilterRegistry appFilterRegistry = AppFilterRegistry.getInstance();
|
||||
mFilter = appFilterRegistry.get(appFilterRegistry.getDefaultFilterType(mListType));
|
||||
mIsPersonalOnly = args != null ? args.getInt(ProfileSelectFragment.EXTRA_PROFILE)
|
||||
== ProfileSelectFragment.ProfileType.PERSONAL : false;
|
||||
mIsWorkOnly = args != null ? args.getInt(ProfileSelectFragment.EXTRA_PROFILE)
|
||||
== ProfileSelectFragment.ProfileType.WORK : false;
|
||||
mIsPersonalOnly = args != null && args.getInt(ProfileSelectFragment.EXTRA_PROFILE)
|
||||
== ProfileSelectFragment.ProfileType.PERSONAL;
|
||||
mIsWorkOnly = args != null && args.getInt(ProfileSelectFragment.EXTRA_PROFILE)
|
||||
== ProfileSelectFragment.ProfileType.WORK;
|
||||
mWorkUserId = args != null ? args.getInt(EXTRA_WORK_ID) : UserHandle.myUserId();
|
||||
if (mIsWorkOnly && mWorkUserId == UserHandle.myUserId()) {
|
||||
mWorkUserId = Utils.getManagedProfileId(mUserManager, UserHandle.myUserId());
|
||||
@@ -958,31 +1001,31 @@ public class ManageApplications extends InstrumentedFragment
|
||||
int screenTitle = intent.getIntExtra(
|
||||
SettingsActivity.EXTRA_SHOW_FRAGMENT_TITLE_RESID, R.string.all_apps);
|
||||
String className = getClassName(intent, args);
|
||||
if (className.equals(Settings.UsageAccessSettingsActivity.class.getName())) {
|
||||
if (className.equals(UsageAccessSettingsActivity.class.getName())) {
|
||||
screenTitle = R.string.usage_access;
|
||||
} else if (className.equals(Settings.HighPowerApplicationsActivity.class.getName())) {
|
||||
} else if (className.equals(HighPowerApplicationsActivity.class.getName())) {
|
||||
screenTitle = R.string.high_power_apps;
|
||||
} else if (className.equals(Settings.OverlaySettingsActivity.class.getName())) {
|
||||
} else if (className.equals(OverlaySettingsActivity.class.getName())) {
|
||||
screenTitle = R.string.system_alert_window_settings;
|
||||
} else if (className.equals(Settings.WriteSettingsActivity.class.getName())) {
|
||||
} else if (className.equals(WriteSettingsActivity.class.getName())) {
|
||||
screenTitle = R.string.write_settings;
|
||||
} else if (className.equals(Settings.ManageExternalSourcesActivity.class.getName())) {
|
||||
} else if (className.equals(ManageExternalSourcesActivity.class.getName())) {
|
||||
screenTitle = R.string.install_other_apps;
|
||||
} else if (className.equals(Settings.ChangeWifiStateActivity.class.getName())) {
|
||||
} else if (className.equals(ChangeWifiStateActivity.class.getName())) {
|
||||
screenTitle = R.string.change_wifi_state_title;
|
||||
} else if (className.equals(Settings.ManageExternalStorageActivity.class.getName())) {
|
||||
} else if (className.equals(ManageExternalStorageActivity.class.getName())) {
|
||||
screenTitle = R.string.manage_external_storage_title;
|
||||
} else if (className.equals(Settings.MediaManagementAppsActivity.class.getName())) {
|
||||
} else if (className.equals(MediaManagementAppsActivity.class.getName())) {
|
||||
screenTitle = R.string.media_management_apps_title;
|
||||
} else if (className.equals(Settings.AlarmsAndRemindersActivity.class.getName())) {
|
||||
} else if (className.equals(AlarmsAndRemindersActivity.class.getName())) {
|
||||
screenTitle = R.string.alarms_and_reminders_title;
|
||||
} else if (className.equals(Settings.NotificationAppListActivity.class.getName())
|
||||
} else if (className.equals(NotificationAppListActivity.class.getName())
|
||||
|| className.equals(
|
||||
Settings.NotificationReviewPermissionsActivity.class.getName())) {
|
||||
NotificationReviewPermissionsActivity.class.getName())) {
|
||||
screenTitle = R.string.app_notifications_title;
|
||||
} else if (className.equals(AppLocaleDetails.class.getName())) {
|
||||
screenTitle = R.string.app_locales_picker_menu_title;
|
||||
} else if (className.equals(Settings.AppBatteryUsageActivity.class.getName())) {
|
||||
} else if (className.equals(AppBatteryUsageActivity.class.getName())) {
|
||||
screenTitle = R.string.app_battery_usage_title;
|
||||
} else {
|
||||
if (screenTitle == -1) {
|
||||
|
Reference in New Issue
Block a user