Merge "Enable some settings pages to use paralleled-loading method" into rvc-dev

This commit is contained in:
TreeHugger Robot
2020-05-05 09:23:13 +00:00
committed by Android (Google) Code Review
9 changed files with 40 additions and 7 deletions

View File

@@ -65,6 +65,7 @@
<Preference <Preference
android:key="connection_preferences" android:key="connection_preferences"
android:title="@string/connected_device_connections_title" android:title="@string/connected_device_connections_title"
android:summary="@string/summary_placeholder"
android:fragment="com.android.settings.connecteddevice.AdvancedConnectedDeviceDashboardFragment" android:fragment="com.android.settings.connecteddevice.AdvancedConnectedDeviceDashboardFragment"
settings:allowDividerAbove="true" settings:allowDividerAbove="true"
settings:controller="com.android.settings.connecteddevice.AdvancedConnectedDeviceController"/> settings:controller="com.android.settings.connecteddevice.AdvancedConnectedDeviceController"/>

View File

@@ -38,6 +38,7 @@
<Preference <Preference
android:key="bug_report_handler" android:key="bug_report_handler"
android:title="@string/bug_report_handler_title" android:title="@string/bug_report_handler_title"
android:summary="@string/summary_placeholder"
android:fragment="com.android.settings.bugreporthandler.BugReportHandlerPicker" /> android:fragment="com.android.settings.bugreporthandler.BugReportHandlerPicker" />
<Preference <Preference
@@ -64,6 +65,7 @@
<ListPreference <ListPreference
android:key="hdcp_checking" android:key="hdcp_checking"
android:title="@string/hdcp_checking_title" android:title="@string/hdcp_checking_title"
android:summary="@string/summary_placeholder"
android:dialogTitle="@string/hdcp_checking_dialog_title" android:dialogTitle="@string/hdcp_checking_dialog_title"
android:entries="@array/hdcp_checking_titles" android:entries="@array/hdcp_checking_titles"
android:entryValues="@array/hdcp_checking_values" /> android:entryValues="@array/hdcp_checking_values" />

View File

@@ -138,7 +138,10 @@ public class AppInfoDashboardFragment extends DashboardFragment
public void onAttach(Context context) { public void onAttach(Context context) {
super.onAttach(context); super.onAttach(context);
final String packageName = getPackageName(); final String packageName = getPackageName();
use(TimeSpentInAppPreferenceController.class).setPackageName(packageName); final TimeSpentInAppPreferenceController timeSpentInAppPreferenceController = use(
TimeSpentInAppPreferenceController.class);
timeSpentInAppPreferenceController.setPackageName(packageName);
timeSpentInAppPreferenceController.initLifeCycleOwner(this);
use(AppDataUsagePreferenceController.class).setParentFragment(this); use(AppDataUsagePreferenceController.class).setParentFragment(this);
final AppInstallerInfoPreferenceController installer = final AppInstallerInfoPreferenceController installer =
@@ -285,6 +288,11 @@ public class AppInfoDashboardFragment extends DashboardFragment
return controllers; return controllers;
} }
@Override
protected boolean isParalleledControllers() {
return true;
}
void addToCallbackList(Callback callback) { void addToCallbackList(Callback callback) {
if (callback != null) { if (callback != null) {
mCallbacks.add(callback); mCallbacks.add(callback);

View File

@@ -29,13 +29,15 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceScreen; import androidx.preference.PreferenceScreen;
import com.android.settings.applications.ApplicationFeatureProvider; import com.android.settings.applications.ApplicationFeatureProvider;
import com.android.settings.core.BasePreferenceController; import com.android.settings.core.LiveDataController;
import com.android.settings.overlay.FeatureFactory; import com.android.settings.overlay.FeatureFactory;
import java.util.List; import java.util.List;
public class TimeSpentInAppPreferenceController extends BasePreferenceController { /**
* To Retrieve the time consumption of the application.
*/
public class TimeSpentInAppPreferenceController extends LiveDataController {
@VisibleForTesting @VisibleForTesting
static final Intent SEE_TIME_IN_APP_TEMPLATE = new Intent(Settings.ACTION_APP_USAGE_SETTINGS); static final Intent SEE_TIME_IN_APP_TEMPLATE = new Intent(Settings.ACTION_APP_USAGE_SETTINGS);
@@ -85,7 +87,7 @@ public class TimeSpentInAppPreferenceController extends BasePreferenceController
} }
@Override @Override
public CharSequence getSummary() { protected CharSequence getSummaryTextInBackground() {
return mAppFeatureProvider.getTimeSpentInApp(mPackageName); return mAppFeatureProvider.getTimeSpentInApp(mPackageName);
} }

View File

@@ -49,6 +49,11 @@ public class ConnectedDeviceDashboardFragment extends DashboardFragment {
return TAG; return TAG;
} }
@Override
protected boolean isParalleledControllers() {
return true;
}
@Override @Override
public int getHelpResource() { public int getHelpResource() {
return R.string.help_url_connected_devices; return R.string.help_url_connected_devices;

View File

@@ -361,6 +361,11 @@ public class DevelopmentSettingsDashboardFragment extends RestrictedDashboardFra
return mPreferenceControllers; return mPreferenceControllers;
} }
@Override
protected boolean isParalleledControllers() {
return true;
}
private void registerReceivers() { private void registerReceivers() {
LocalBroadcastManager.getInstance(getContext()) LocalBroadcastManager.getInstance(getContext())
.registerReceiver(mEnableAdbReceiver, new IntentFilter( .registerReceiver(mEnableAdbReceiver, new IntentFilter(

View File

@@ -86,6 +86,11 @@ public class NetworkDashboardFragment extends DashboardFragment implements
this /* fragment */, this /* mobilePlanHost */); this /* fragment */, this /* mobilePlanHost */);
} }
@Override
protected boolean isParalleledControllers() {
return true;
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context, private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
Lifecycle lifecycle, MetricsFeatureProvider metricsFeatureProvider, Fragment fragment, Lifecycle lifecycle, MetricsFeatureProvider metricsFeatureProvider, Fragment fragment,
MobilePlanPreferenceHost mobilePlanHost) { MobilePlanPreferenceHost mobilePlanHost) {

View File

@@ -90,6 +90,11 @@ public class ConfigureNotificationSettings extends DashboardFragment implements
return buildPreferenceControllers(context, app, this); return buildPreferenceControllers(context, app, this);
} }
@Override
protected boolean isParalleledControllers() {
return true;
}
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context, private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
Application app, Fragment host) { Application app, Fragment host) {
final List<AbstractPreferenceController> controllers = new ArrayList<>(); final List<AbstractPreferenceController> controllers = new ArrayList<>();

View File

@@ -119,8 +119,8 @@ public class TimeSpentInAppPreferenceControllerTest {
} }
@Test @Test
public void getSummary_shouldQueryAppFeatureProvider() { public void getSummaryTextInBackground_shouldQueryAppFeatureProvider() {
mController.getSummary(); mController.getSummaryTextInBackground();
verify(mFeatureFactory.applicationFeatureProvider).getTimeSpentInApp( verify(mFeatureFactory.applicationFeatureProvider).getTimeSpentInApp(
nullable(String.class)); nullable(String.class));