[Settings] Fix missing part for refactor
There're 2 missing parts in previous code refactor: 1. The API change for exiting ECM mode dialog 2. The support of onActivityResult() for PreferenceController Bug: 226494641 Test: local Change-Id: I0c2c313a53fbc1b7435f295f190b70653e2f6758
This commit is contained in:
@@ -17,6 +17,7 @@ package com.android.settings.network;
|
||||
|
||||
import static android.provider.SettingsSlicesContract.KEY_AIRPLANE_MODE;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.ContentResolver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
@@ -54,7 +55,6 @@ public class AirplaneModePreferenceController extends TogglePreferenceController
|
||||
.appendPath(SettingsSlicesContract.PATH_SETTING_ACTION)
|
||||
.appendPath(SettingsSlicesContract.KEY_AIRPLANE_MODE)
|
||||
.build();
|
||||
private static final String EXIT_ECM_RESULT = "exit_ecm_result";
|
||||
|
||||
private Fragment mFragment;
|
||||
private AirplaneModeEnabler mAirplaneModeEnabler;
|
||||
@@ -147,7 +147,7 @@ public class AirplaneModePreferenceController extends TogglePreferenceController
|
||||
|
||||
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
if (requestCode == REQUEST_CODE_EXIT_ECM) {
|
||||
final boolean isChoiceYes = data.getBooleanExtra(EXIT_ECM_RESULT, false);
|
||||
final boolean isChoiceYes = (resultCode == Activity.RESULT_OK);
|
||||
// Set Airplane mode based on the return value and checkbox state
|
||||
mAirplaneModeEnabler.setAirplaneModeInECM(isChoiceYes,
|
||||
mAirplaneModePreference.isChecked());
|
||||
|
@@ -20,6 +20,7 @@ import static com.android.settings.network.MobilePlanPreferenceController.MANAGE
|
||||
import android.app.Dialog;
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.provider.SearchIndexableResource;
|
||||
import android.util.Log;
|
||||
@@ -29,6 +30,7 @@ import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.core.OnActivityResultListener;
|
||||
import com.android.settings.dashboard.DashboardFragment;
|
||||
import com.android.settings.network.MobilePlanPreferenceController.MobilePlanPreferenceHost;
|
||||
import com.android.settings.search.BaseSearchIndexProvider;
|
||||
@@ -44,7 +46,7 @@ import java.util.List;
|
||||
|
||||
@SearchIndexable
|
||||
public class NetworkDashboardFragment extends DashboardFragment implements
|
||||
MobilePlanPreferenceHost {
|
||||
MobilePlanPreferenceHost, OnActivityResultListener {
|
||||
|
||||
private static final String TAG = "NetworkDashboardFrag";
|
||||
|
||||
@@ -152,6 +154,17 @@ public class NetworkDashboardFragment extends DashboardFragment implements
|
||||
return 0;
|
||||
}
|
||||
|
||||
public void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
|
||||
switch (requestCode) {
|
||||
case AirplaneModePreferenceController.REQUEST_CODE_EXIT_ECM:
|
||||
use(AirplaneModePreferenceController.class)
|
||||
.onActivityResult(requestCode, resultCode, data);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
||||
new BaseSearchIndexProvider(R.xml.network_provider_internet) {
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user