Clean up in-code preference controllers from accessibility

Bug: 135056871
Test: manual, robotests
Change-Id: I0c1358657d3f57ddae2b8f2b12ee610e7363f41f
This commit is contained in:
Mill Chen
2019-07-02 14:44:32 +08:00
parent 68aa24d365
commit 6f3b222ca5
4 changed files with 20 additions and 68 deletions

View File

@@ -31,9 +31,6 @@ import android.util.Log;
import androidx.annotation.VisibleForTesting;
import androidx.fragment.app.FragmentManager;
import androidx.lifecycle.Lifecycle.Event;
import androidx.lifecycle.LifecycleObserver;
import androidx.lifecycle.OnLifecycleEvent;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
@@ -43,6 +40,9 @@ import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.SubSettingLauncher;
import com.android.settingslib.bluetooth.CachedBluetoothDevice;
import com.android.settingslib.bluetooth.LocalBluetoothManager;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
import java.util.Iterator;
import java.util.List;
@@ -53,7 +53,7 @@ import java.util.concurrent.FutureTask;
* Controller that shows and updates the bluetooth device name
*/
public class AccessibilityHearingAidPreferenceController extends BasePreferenceController
implements LifecycleObserver {
implements LifecycleObserver, OnStart, OnStop {
private static final String TAG = "AccessibilityHearingAidPreferenceController";
private Preference mHearingAidPreference;
@@ -104,8 +104,8 @@ public class AccessibilityHearingAidPreferenceController extends BasePreferenceC
return mHearingAidProfileSupported ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
}
@OnLifecycleEvent(Event.ON_RESUME)
public void onResume() {
@Override
public void onStart() {
if (mHearingAidProfileSupported) {
IntentFilter filter = new IntentFilter();
filter.addAction(BluetoothHearingAid.ACTION_CONNECTION_STATE_CHANGED);
@@ -114,8 +114,8 @@ public class AccessibilityHearingAidPreferenceController extends BasePreferenceC
}
}
@OnLifecycleEvent(Event.ON_PAUSE)
public void onPause() {
@Override
public void onStop() {
if (mHearingAidProfileSupported) {
mContext.unregisterReceiver(mHearingAidChangedReceiver);
}

View File

@@ -94,17 +94,10 @@ public class AccessibilitySettings extends DashboardFragment {
private static final String TOGGLE_LARGE_POINTER_ICON =
"toggle_large_pointer_icon";
private static final String TOGGLE_DISABLE_ANIMATIONS = "toggle_disable_animations";
private static final String HEARING_AID_PREFERENCE =
"hearing_aid_preference";
private static final String DISPLAY_MAGNIFICATION_PREFERENCE_SCREEN =
"magnification_preference_screen";
private static final String DISPLAY_DALTONIZER_PREFERENCE_SCREEN =
"daltonizer_preference";
private static final String DARK_UI_MODE_PREFERENCE =
"dark_ui_mode_accessibility";
private static final String LIVE_CAPTION_PREFERENCE_KEY =
"live_caption";
// Extras passed to sub-fragments.
static final String EXTRA_PREFERENCE_KEY = "preference_key";
@@ -178,13 +171,7 @@ public class AccessibilitySettings extends DashboardFragment {
private SwitchPreference mToggleDisableAnimationsPreference;
private Preference mDisplayMagnificationPreferenceScreen;
private Preference mDisplayDaltonizerPreferenceScreen;
private Preference mHearingAidPreference;
private Preference mLiveCaptionPreference;
private SwitchPreference mToggleInversionPreference;
private AccessibilityHearingAidPreferenceController mHearingAidPreferenceController;
private SwitchPreference mDarkUIModePreference;
private DarkUIPreferenceController mDarkUIPreferenceController;
private LiveCaptionPreferenceController mLiveCaptionPreferenceController;
private DevicePolicyManager mDpm;
@@ -236,13 +223,9 @@ public class AccessibilitySettings extends DashboardFragment {
@Override
public void onAttach(Context context) {
super.onAttach(context);
mHearingAidPreferenceController = new AccessibilityHearingAidPreferenceController
(context, HEARING_AID_PREFERENCE);
mHearingAidPreferenceController.setFragmentManager(getFragmentManager());
getLifecycle().addObserver(mHearingAidPreferenceController);
mLiveCaptionPreferenceController = new LiveCaptionPreferenceController(context,
LIVE_CAPTION_PREFERENCE_KEY);
use(DarkUIPreferenceController.class).setParentFragment(this);
use(AccessibilityHearingAidPreferenceController.class)
.setFragmentManager(getFragmentManager());
}
@Override
@@ -261,14 +244,6 @@ public class AccessibilitySettings extends DashboardFragment {
super.onStop();
}
@Override
public boolean onPreferenceTreeClick(Preference preference) {
if (mHearingAidPreferenceController.handlePreferenceTreeClick(preference)) {
return true;
}
return super.onPreferenceTreeClick(preference);
}
@Override
protected int getPreferenceScreenResId() {
return R.xml.accessibility_settings;
@@ -318,27 +293,12 @@ public class AccessibilitySettings extends DashboardFragment {
mToggleDisableAnimationsPreference =
(SwitchPreference) findPreference(TOGGLE_DISABLE_ANIMATIONS);
// Hearing Aid.
mHearingAidPreference = findPreference(HEARING_AID_PREFERENCE);
mHearingAidPreferenceController.displayPreference(getPreferenceScreen());
// Live caption
mLiveCaptionPreference = findPreference(LIVE_CAPTION_PREFERENCE_KEY);
mLiveCaptionPreferenceController.displayPreference(getPreferenceScreen());
// Display magnification.
mDisplayMagnificationPreferenceScreen = findPreference(
DISPLAY_MAGNIFICATION_PREFERENCE_SCREEN);
// Display color adjustments.
mDisplayDaltonizerPreferenceScreen = findPreference(DISPLAY_DALTONIZER_PREFERENCE_SCREEN);
// Dark Mode.
mDarkUIModePreference = findPreference(DARK_UI_MODE_PREFERENCE);
mDarkUIPreferenceController = new DarkUIPreferenceController(getContext(),
DARK_UI_MODE_PREFERENCE);
mDarkUIPreferenceController.setParentFragment(this);
mDarkUIPreferenceController.displayPreference(getPreferenceScreen());
}
private void updateAllPreferences() {
@@ -544,13 +504,6 @@ public class AccessibilitySettings extends DashboardFragment {
displayCategory.addPreference(mToggleInversionPreference);
displayCategory.addPreference(mDisplayDaltonizerPreferenceScreen);
}
// Dark Mode
mDarkUIPreferenceController.updateState(mDarkUIModePreference);
mHearingAidPreferenceController.updateState(mHearingAidPreference);
mLiveCaptionPreferenceController.updateState(mLiveCaptionPreference);
}
public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =