diff --git a/src/com/android/settings/wifi/tether/WifiTetherAutoOffPreferenceController.java b/src/com/android/settings/wifi/tether/WifiTetherAutoOffPreferenceController.java index b54a80f6b41..5dc5758dc90 100644 --- a/src/com/android/settings/wifi/tether/WifiTetherAutoOffPreferenceController.java +++ b/src/com/android/settings/wifi/tether/WifiTetherAutoOffPreferenceController.java @@ -29,6 +29,7 @@ public class WifiTetherAutoOffPreferenceController extends BasePreferenceControl Preference.OnPreferenceChangeListener { private final WifiManager mWifiManager; + private boolean mSettingsOn; public WifiTetherAutoOffPreferenceController(Context context, String preferenceKey) { super(context, preferenceKey); @@ -43,9 +44,9 @@ public class WifiTetherAutoOffPreferenceController extends BasePreferenceControl @Override public void updateState(Preference preference) { SoftApConfiguration softApConfiguration = mWifiManager.getSoftApConfiguration(); - final boolean settingsOn = softApConfiguration.isAutoShutdownEnabled(); + mSettingsOn = softApConfiguration.isAutoShutdownEnabled(); - ((SwitchPreference) preference).setChecked(settingsOn); + ((SwitchPreference) preference).setChecked(mSettingsOn); } @Override @@ -56,6 +57,11 @@ public class WifiTetherAutoOffPreferenceController extends BasePreferenceControl new SoftApConfiguration.Builder(softApConfiguration) .setAutoShutdownEnabled(settingsOn) .build(); + mSettingsOn = settingsOn; return mWifiManager.setSoftApConfiguration(newSoftApConfiguration); } + + public boolean isEnabled() { + return mSettingsOn; + } } diff --git a/src/com/android/settings/wifi/tether/WifiTetherSettings.java b/src/com/android/settings/wifi/tether/WifiTetherSettings.java index 23601fac5d8..0524ef57d53 100644 --- a/src/com/android/settings/wifi/tether/WifiTetherSettings.java +++ b/src/com/android/settings/wifi/tether/WifiTetherSettings.java @@ -32,7 +32,6 @@ import android.util.FeatureFlagUtils; import android.util.Log; import androidx.annotation.VisibleForTesting; -import androidx.preference.PreferenceGroup; import com.android.settings.R; import com.android.settings.SettingsActivity; @@ -70,6 +69,7 @@ public class WifiTetherSettings extends RestrictedDashboardFragment private WifiTetherPasswordPreferenceController mPasswordPreferenceController; private WifiTetherSecurityPreferenceController mSecurityPreferenceController; private WifiTetherMaximizeCompatibilityPreferenceController mMaxCompatibilityPrefController; + private WifiTetherAutoOffPreferenceController mWifiTetherAutoOffPreferenceController; private WifiManager mWifiManager; private boolean mRestartWifiApAfterConfigChange; @@ -117,6 +117,7 @@ public class WifiTetherSettings extends RestrictedDashboardFragment mPasswordPreferenceController = use(WifiTetherPasswordPreferenceController.class); mMaxCompatibilityPrefController = use(WifiTetherMaximizeCompatibilityPreferenceController.class); + mWifiTetherAutoOffPreferenceController = use(WifiTetherAutoOffPreferenceController.class); } @Override @@ -215,6 +216,8 @@ public class WifiTetherSettings extends RestrictedDashboardFragment securityType); } mMaxCompatibilityPrefController.setupMaximizeCompatibility(configBuilder); + configBuilder.setAutoShutdownEnabled( + mWifiTetherAutoOffPreferenceController.isEnabled()); return configBuilder.build(); }