Use SettingsLib's MainSwitchBar to replace SwitchBar in Settings.
To log Settings metrics, the MainSwitch extends MainSwitchBar and replace the SwitchBar in SettingsActivity. Bug: 175181773 Test: Run robotest and apply the widget in Settings and see the ui Change-Id: I3add3702e9058ad9192b5172c7cf0e2ccfb55a70
This commit is contained in:
@@ -39,7 +39,7 @@ import com.android.settings.SettingsActivity;
|
||||
import com.android.settings.core.FeatureFlags;
|
||||
import com.android.settings.dashboard.RestrictedDashboardFragment;
|
||||
import com.android.settings.search.BaseSearchIndexProvider;
|
||||
import com.android.settings.widget.SwitchBar;
|
||||
import com.android.settings.widget.SettingsMainSwitchBar;
|
||||
import com.android.settingslib.TetherUtil;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.search.SearchIndexable;
|
||||
@@ -128,10 +128,8 @@ public class WifiTetherSettings extends RestrictedDashboardFragment
|
||||
// Assume we are in a SettingsActivity. This is only safe because we currently use
|
||||
// SettingsActivity as base for all preference fragments.
|
||||
final SettingsActivity activity = (SettingsActivity) getActivity();
|
||||
final SwitchBar switchBar = activity.getSwitchBar();
|
||||
switchBar.setSwitchBarText(
|
||||
com.android.settingslib.R.string.wifi_hotspot_switch_on_text,
|
||||
com.android.settingslib.R.string.wifi_hotspot_switch_off_text);
|
||||
final SettingsMainSwitchBar switchBar = activity.getSwitchBar();
|
||||
switchBar.setTitle(getContext().getString(R.string.use_wifi_hotsopt_main_switch_title));
|
||||
mSwitchBarController = new WifiTetherSwitchBarController(activity, switchBar);
|
||||
getSettingsLifecycle().addObserver(mSwitchBarController);
|
||||
switchBar.show();
|
||||
|
@@ -32,7 +32,7 @@ import android.widget.Switch;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
|
||||
import com.android.settings.datausage.DataSaverBackend;
|
||||
import com.android.settings.widget.SwitchBar;
|
||||
import com.android.settings.widget.SettingsMainSwitchBar;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||
import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||
@@ -45,7 +45,7 @@ public class WifiTetherSwitchBarController implements
|
||||
private static final IntentFilter WIFI_INTENT_FILTER;
|
||||
|
||||
private final Context mContext;
|
||||
private final SwitchBar mSwitchBar;
|
||||
private final SettingsMainSwitchBar mSwitchBar;
|
||||
private final Switch mSwitch;
|
||||
private final ConnectivityManager mConnectivityManager;
|
||||
private final WifiManager mWifiManager;
|
||||
@@ -67,7 +67,7 @@ public class WifiTetherSwitchBarController implements
|
||||
WIFI_INTENT_FILTER = new IntentFilter(WifiManager.WIFI_AP_STATE_CHANGED_ACTION);
|
||||
}
|
||||
|
||||
WifiTetherSwitchBarController(Context context, SwitchBar switchBar) {
|
||||
WifiTetherSwitchBarController(Context context, SettingsMainSwitchBar switchBar) {
|
||||
mContext = context;
|
||||
mSwitchBar = switchBar;
|
||||
mSwitch = mSwitchBar.getSwitch();
|
||||
|
Reference in New Issue
Block a user