Use FeatureProvider to provide the firmware update category.

1. Add KeyboardSettingsFeatureProvider in FeatureFactory.
2. Use KeyboardSettingsFeatureProvider to add firmware update UI.

Bug: 270114180
Test: manual, atest KeyboardSettingsFeatureProviderImplTest
Change-Id: I62ec7aff71dd5c0d496860363f2c5b3e992503ff
This commit is contained in:
danielwbhuang
2023-05-16 17:09:30 +08:00
parent 2e5bc64514
commit 6189f9fcbd
9 changed files with 191 additions and 0 deletions

View File

@@ -39,6 +39,7 @@ import com.android.settings.fuelgauge.BatteryStatusFeatureProvider;
import com.android.settings.fuelgauge.PowerUsageFeatureProvider;
import com.android.settings.gestures.AssistGestureFeatureProvider;
import com.android.settings.homepage.contextualcards.ContextualCardFeatureProvider;
import com.android.settings.inputmethod.KeyboardSettingsFeatureProvider;
import com.android.settings.localepicker.LocaleFeatureProvider;
import com.android.settings.panel.PanelFeatureProvider;
import com.android.settings.search.SearchFeatureProvider;
@@ -198,6 +199,11 @@ public abstract class FeatureFactory {
*/
public abstract WifiFeatureProvider getWifiFeatureProvider();
/**
* Retrieves implementation for keyboard settings feature.
*/
public abstract KeyboardSettingsFeatureProvider getKeyboardSettingsFeatureProvider();
public static final class FactoryNotFoundException extends RuntimeException {
public FactoryNotFoundException(Throwable throwable) {
super("Unable to create factory. Did you misconfigure Proguard?", throwable);