Change print setting from a dynamic tile to static pref
...because dynamic tile is a lot harder to index correctly. - Removed metadata that makes PrintSettings a dynamic tile. - Added PrintSettings into connected_device xml. - Added a new PreferenceController - all summary updating logic is copied from PrintSettingsFragment Change-Id: I41e7c9d23e97ecd5a043ac7c33f2d404260c92e7 Fixes: 73128944 Test: robotests
This commit is contained in:
@@ -29,6 +29,7 @@ import com.android.settings.connecteddevice.usb.UsbModePreferenceController;
|
||||
import com.android.settings.dashboard.DashboardFragment;
|
||||
import com.android.settings.nfc.NfcPreferenceController;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settings.print.PrintSettingPreferenceController;
|
||||
import com.android.settings.search.BaseSearchIndexProvider;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
@@ -43,7 +44,6 @@ import java.util.List;
|
||||
public class AdvancedConnectedDeviceDashboardFragment extends DashboardFragment {
|
||||
|
||||
private static final String TAG = "AdvancedConnectedDeviceFrag";
|
||||
private UsbModePreferenceController mUsbPrefController;
|
||||
|
||||
@Override
|
||||
public int getMetricsCategory() {
|
||||
@@ -67,22 +67,32 @@ public class AdvancedConnectedDeviceDashboardFragment extends DashboardFragment
|
||||
|
||||
@Override
|
||||
protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
|
||||
return buildControllers(context, getLifecycle());
|
||||
}
|
||||
|
||||
private static List<AbstractPreferenceController> buildControllers(Context context,
|
||||
Lifecycle lifecycle) {
|
||||
final List<AbstractPreferenceController> controllers = new ArrayList<>();
|
||||
final Lifecycle lifecycle = getLifecycle();
|
||||
final NfcPreferenceController nfcPreferenceController =
|
||||
new NfcPreferenceController(context);
|
||||
lifecycle.addObserver(nfcPreferenceController);
|
||||
controllers.add(nfcPreferenceController);
|
||||
mUsbPrefController = new UsbModePreferenceController(context, new UsbBackend(context));
|
||||
lifecycle.addObserver(mUsbPrefController);
|
||||
controllers.add(mUsbPrefController);
|
||||
controllers.add(new UsbModePreferenceController(
|
||||
context, new UsbBackend(context), lifecycle));
|
||||
final BluetoothSwitchPreferenceController bluetoothPreferenceController =
|
||||
new BluetoothSwitchPreferenceController(context);
|
||||
lifecycle.addObserver(bluetoothPreferenceController);
|
||||
controllers.add(bluetoothPreferenceController);
|
||||
|
||||
controllers.add(new BluetoothFilesPreferenceController(context));
|
||||
controllers.add(new BluetoothOnWhileDrivingPreferenceController(context));
|
||||
final PrintSettingPreferenceController printerController =
|
||||
new PrintSettingPreferenceController(context);
|
||||
if (lifecycle != null) {
|
||||
lifecycle.addObserver(printerController);
|
||||
lifecycle.addObserver(nfcPreferenceController);
|
||||
lifecycle.addObserver(bluetoothPreferenceController);
|
||||
}
|
||||
controllers.add(printerController);
|
||||
|
||||
return controllers;
|
||||
}
|
||||
|
||||
@@ -111,5 +121,11 @@ public class AdvancedConnectedDeviceDashboardFragment extends DashboardFragment
|
||||
|
||||
return keys;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AbstractPreferenceController> getPreferenceControllers(
|
||||
Context context) {
|
||||
return buildControllers(context, null /* lifecycle */);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
Reference in New Issue
Block a user