Add ability to handle onActivityResult for AbstractPreferenceController in DashboardFragment
* AbstractPreferenceController now can implement OnActivityResultListener to receive callback from DashboardFragment#onActivityResult() Bug: 270096758 Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.dashboard.DashboardFragmentTest Change-Id: Ib734287c6fe06fcdde3b2fe6ae9f4b778020b60b
This commit is contained in:
@@ -19,12 +19,15 @@ import android.app.Activity;
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.ContentResolver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.preference.PreferenceManager.OnActivityResultListener;
|
||||
import android.text.TextUtils;
|
||||
import android.util.ArrayMap;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.CallSuper;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.lifecycle.LifecycleObserver;
|
||||
import androidx.preference.Preference;
|
||||
@@ -265,6 +268,19 @@ public abstract class DashboardFragment extends SettingsPreferenceFragment
|
||||
getMetricsCategory(), null, 0);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
|
||||
for (List<AbstractPreferenceController> controllerList : mPreferenceControllers.values()) {
|
||||
for (AbstractPreferenceController controller : controllerList) {
|
||||
if (controller instanceof OnActivityResultListener) {
|
||||
((OnActivityResultListener) controller).onActivityResult(
|
||||
requestCode, resultCode, data);
|
||||
}
|
||||
}
|
||||
}
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
}
|
||||
|
||||
protected boolean shouldForceRoundedIcon() {
|
||||
return false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user