Loading packages/SystemUI/src/com/android/systemui/accessibility/qs/QSAccessibilityModule.kt +15 −0 Original line number Diff line number Diff line Loading @@ -112,6 +112,7 @@ interface QSAccessibilityModule { const val COLOR_INVERSION_TILE_SPEC = "inversion" const val FONT_SCALING_TILE_SPEC = "font_scaling" const val REDUCE_BRIGHTNESS_TILE_SPEC = "reduce_brightness" const val ONE_HANDED_TILE_SPEC = "onehanded" @Provides @IntoMap Loading Loading @@ -241,5 +242,19 @@ interface QSAccessibilityModule { mapper, ) else StubQSTileViewModel @Provides @IntoMap @StringKey(ONE_HANDED_TILE_SPEC) fun provideOneHandedTileConfig(uiEventLogger: QsEventLogger): QSTileConfig = QSTileConfig( tileSpec = TileSpec.create(ONE_HANDED_TILE_SPEC), uiConfig = QSTileUIConfig.Resource( iconRes = com.android.internal.R.drawable.ic_qs_one_handed_mode, labelRes = R.string.quick_settings_onehanded_label, ), instanceId = uiEventLogger.getNewInstanceId(), ) } } packages/SystemUI/src/com/android/systemui/controls/dagger/ControlsModule.kt +22 −2 Original line number Diff line number Diff line Loading @@ -20,8 +20,6 @@ import android.app.Activity import android.content.pm.PackageManager import com.android.systemui.controls.ControlsMetricsLogger import com.android.systemui.controls.ControlsMetricsLoggerImpl import com.android.systemui.controls.settings.ControlsSettingsRepository import com.android.systemui.controls.settings.ControlsSettingsRepositoryImpl import com.android.systemui.controls.controller.ControlsBindingController import com.android.systemui.controls.controller.ControlsBindingControllerImpl import com.android.systemui.controls.controller.ControlsController Loading @@ -40,14 +38,20 @@ import com.android.systemui.controls.panels.SelectedComponentRepository import com.android.systemui.controls.panels.SelectedComponentRepositoryImpl import com.android.systemui.controls.settings.ControlsSettingsDialogManager import com.android.systemui.controls.settings.ControlsSettingsDialogManagerImpl import com.android.systemui.controls.settings.ControlsSettingsRepository import com.android.systemui.controls.settings.ControlsSettingsRepositoryImpl import com.android.systemui.controls.ui.ControlActionCoordinator import com.android.systemui.controls.ui.ControlActionCoordinatorImpl import com.android.systemui.controls.ui.ControlsActivity import com.android.systemui.controls.ui.ControlsUiController import com.android.systemui.controls.ui.ControlsUiControllerImpl import com.android.systemui.dagger.SysUISingleton import com.android.systemui.qs.QsEventLogger import com.android.systemui.qs.pipeline.shared.TileSpec import com.android.systemui.qs.tileimpl.QSTileImpl import com.android.systemui.qs.tiles.DeviceControlsTile import com.android.systemui.qs.tiles.viewmodel.QSTileConfig import com.android.systemui.qs.tiles.viewmodel.QSTileUIConfig import dagger.Binds import dagger.BindsOptionalOf import dagger.Module Loading Loading @@ -75,6 +79,22 @@ abstract class ControlsModule { fun providesControlsFeatureEnabled(pm: PackageManager): Boolean { return pm.hasSystemFeature(PackageManager.FEATURE_CONTROLS) } const val DEVICE_CONTROLS_SPEC = "controls" @Provides @IntoMap @StringKey(DEVICE_CONTROLS_SPEC) fun provideDeviceControlsTileConfig(uiEventLogger: QsEventLogger): QSTileConfig = QSTileConfig( tileSpec = TileSpec.create(DEVICE_CONTROLS_SPEC), uiConfig = QSTileUIConfig.Resource( iconRes = com.android.systemui.res.R.drawable.controls_icon, labelRes = com.android.systemui.res.R.string.quick_controls_title ), instanceId = uiEventLogger.getNewInstanceId(), ) } @Binds Loading packages/SystemUI/src/com/android/systemui/dreams/dagger/DreamModule.java +24 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,11 @@ import com.android.systemui.dreams.complication.dagger.ComplicationComponent; import com.android.systemui.dreams.homecontrols.DreamActivityProvider; import com.android.systemui.dreams.homecontrols.DreamActivityProviderImpl; import com.android.systemui.dreams.homecontrols.HomeControlsDreamService; import com.android.systemui.qs.QsEventLogger; import com.android.systemui.qs.pipeline.shared.TileSpec; import com.android.systemui.qs.tiles.viewmodel.QSTileConfig; import com.android.systemui.qs.tiles.viewmodel.QSTilePolicy; import com.android.systemui.qs.tiles.viewmodel.QSTileUIConfig; import com.android.systemui.res.R; import com.android.systemui.touch.TouchInsetManager; Loading @@ -44,6 +49,7 @@ import dagger.Module; import dagger.Provides; import dagger.multibindings.ClassKey; import dagger.multibindings.IntoMap; import dagger.multibindings.StringKey; import java.util.Optional; import java.util.concurrent.Executor; Loading @@ -70,6 +76,7 @@ public interface DreamModule { String DREAM_SUPPORTED = "dream_supported"; String DREAM_OVERLAY_WINDOW_TITLE = "dream_overlay_window_title"; String HOME_CONTROL_PANEL_DREAM_COMPONENT = "home_control_panel_dream_component"; String DREAM_TILE_SPEC = "dream"; /** * Provides the dream component Loading Loading @@ -178,6 +185,23 @@ public interface DreamModule { return resources.getString(R.string.app_label); } /** Provides config for the dream tile */ @Provides @IntoMap @StringKey(DREAM_TILE_SPEC) static QSTileConfig provideDreamTileConfig(QsEventLogger uiEventLogger) { TileSpec tileSpec = TileSpec.create(DREAM_TILE_SPEC); return new QSTileConfig(tileSpec, new QSTileUIConfig.Resource( R.drawable.ic_qs_screen_saver, R.string.quick_settings_screensaver_label), uiEventLogger.getNewInstanceId(), tileSpec.getSpec(), QSTilePolicy.NoRestrictions.INSTANCE ); } /** Provides activity for dream service */ @Binds DreamActivityProvider bindActivityProvider(DreamActivityProviderImpl impl); Loading packages/SystemUI/src/com/android/systemui/qrcodescanner/dagger/QRCodeScannerModule.kt +24 −0 Original line number Diff line number Diff line Loading @@ -16,10 +16,16 @@ package com.android.systemui.qrcodescanner.dagger import com.android.systemui.qs.QsEventLogger import com.android.systemui.qs.pipeline.shared.TileSpec import com.android.systemui.qs.tileimpl.QSTileImpl import com.android.systemui.qs.tiles.QRCodeScannerTile import com.android.systemui.qs.tiles.viewmodel.QSTileConfig import com.android.systemui.qs.tiles.viewmodel.QSTileUIConfig import com.android.systemui.res.R import dagger.Binds import dagger.Module import dagger.Provides import dagger.multibindings.IntoMap import dagger.multibindings.StringKey Loading @@ -31,4 +37,22 @@ interface QRCodeScannerModule { @IntoMap @StringKey(QRCodeScannerTile.TILE_SPEC) fun bindQRCodeScannerTile(qrCodeScannerTile: QRCodeScannerTile): QSTileImpl<*> companion object { const val QR_CODE_SCANNER_TILE_SPEC = "qr_code_scanner" @Provides @IntoMap @StringKey(QR_CODE_SCANNER_TILE_SPEC) fun provideQRCodeScannerTileConfig(uiEventLogger: QsEventLogger): QSTileConfig = QSTileConfig( tileSpec = TileSpec.create(QR_CODE_SCANNER_TILE_SPEC), uiConfig = QSTileUIConfig.Resource( iconRes = R.drawable.ic_qr_code_scanner, labelRes = R.string.qr_code_scanner_title, ), instanceId = uiEventLogger.getNewInstanceId(), ) } } packages/SystemUI/src/com/android/systemui/qs/pipeline/shared/TileSpec.kt +1 −0 Original line number Diff line number Diff line Loading @@ -60,6 +60,7 @@ sealed class TileSpec private constructor(open val spec: String) { companion object { /** Create a [TileSpec] from the string [spec]. */ @JvmStatic fun create(spec: String): TileSpec { return if (TextUtils.isEmpty(spec)) { Invalid Loading Loading
packages/SystemUI/src/com/android/systemui/accessibility/qs/QSAccessibilityModule.kt +15 −0 Original line number Diff line number Diff line Loading @@ -112,6 +112,7 @@ interface QSAccessibilityModule { const val COLOR_INVERSION_TILE_SPEC = "inversion" const val FONT_SCALING_TILE_SPEC = "font_scaling" const val REDUCE_BRIGHTNESS_TILE_SPEC = "reduce_brightness" const val ONE_HANDED_TILE_SPEC = "onehanded" @Provides @IntoMap Loading Loading @@ -241,5 +242,19 @@ interface QSAccessibilityModule { mapper, ) else StubQSTileViewModel @Provides @IntoMap @StringKey(ONE_HANDED_TILE_SPEC) fun provideOneHandedTileConfig(uiEventLogger: QsEventLogger): QSTileConfig = QSTileConfig( tileSpec = TileSpec.create(ONE_HANDED_TILE_SPEC), uiConfig = QSTileUIConfig.Resource( iconRes = com.android.internal.R.drawable.ic_qs_one_handed_mode, labelRes = R.string.quick_settings_onehanded_label, ), instanceId = uiEventLogger.getNewInstanceId(), ) } }
packages/SystemUI/src/com/android/systemui/controls/dagger/ControlsModule.kt +22 −2 Original line number Diff line number Diff line Loading @@ -20,8 +20,6 @@ import android.app.Activity import android.content.pm.PackageManager import com.android.systemui.controls.ControlsMetricsLogger import com.android.systemui.controls.ControlsMetricsLoggerImpl import com.android.systemui.controls.settings.ControlsSettingsRepository import com.android.systemui.controls.settings.ControlsSettingsRepositoryImpl import com.android.systemui.controls.controller.ControlsBindingController import com.android.systemui.controls.controller.ControlsBindingControllerImpl import com.android.systemui.controls.controller.ControlsController Loading @@ -40,14 +38,20 @@ import com.android.systemui.controls.panels.SelectedComponentRepository import com.android.systemui.controls.panels.SelectedComponentRepositoryImpl import com.android.systemui.controls.settings.ControlsSettingsDialogManager import com.android.systemui.controls.settings.ControlsSettingsDialogManagerImpl import com.android.systemui.controls.settings.ControlsSettingsRepository import com.android.systemui.controls.settings.ControlsSettingsRepositoryImpl import com.android.systemui.controls.ui.ControlActionCoordinator import com.android.systemui.controls.ui.ControlActionCoordinatorImpl import com.android.systemui.controls.ui.ControlsActivity import com.android.systemui.controls.ui.ControlsUiController import com.android.systemui.controls.ui.ControlsUiControllerImpl import com.android.systemui.dagger.SysUISingleton import com.android.systemui.qs.QsEventLogger import com.android.systemui.qs.pipeline.shared.TileSpec import com.android.systemui.qs.tileimpl.QSTileImpl import com.android.systemui.qs.tiles.DeviceControlsTile import com.android.systemui.qs.tiles.viewmodel.QSTileConfig import com.android.systemui.qs.tiles.viewmodel.QSTileUIConfig import dagger.Binds import dagger.BindsOptionalOf import dagger.Module Loading Loading @@ -75,6 +79,22 @@ abstract class ControlsModule { fun providesControlsFeatureEnabled(pm: PackageManager): Boolean { return pm.hasSystemFeature(PackageManager.FEATURE_CONTROLS) } const val DEVICE_CONTROLS_SPEC = "controls" @Provides @IntoMap @StringKey(DEVICE_CONTROLS_SPEC) fun provideDeviceControlsTileConfig(uiEventLogger: QsEventLogger): QSTileConfig = QSTileConfig( tileSpec = TileSpec.create(DEVICE_CONTROLS_SPEC), uiConfig = QSTileUIConfig.Resource( iconRes = com.android.systemui.res.R.drawable.controls_icon, labelRes = com.android.systemui.res.R.string.quick_controls_title ), instanceId = uiEventLogger.getNewInstanceId(), ) } @Binds Loading
packages/SystemUI/src/com/android/systemui/dreams/dagger/DreamModule.java +24 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,11 @@ import com.android.systemui.dreams.complication.dagger.ComplicationComponent; import com.android.systemui.dreams.homecontrols.DreamActivityProvider; import com.android.systemui.dreams.homecontrols.DreamActivityProviderImpl; import com.android.systemui.dreams.homecontrols.HomeControlsDreamService; import com.android.systemui.qs.QsEventLogger; import com.android.systemui.qs.pipeline.shared.TileSpec; import com.android.systemui.qs.tiles.viewmodel.QSTileConfig; import com.android.systemui.qs.tiles.viewmodel.QSTilePolicy; import com.android.systemui.qs.tiles.viewmodel.QSTileUIConfig; import com.android.systemui.res.R; import com.android.systemui.touch.TouchInsetManager; Loading @@ -44,6 +49,7 @@ import dagger.Module; import dagger.Provides; import dagger.multibindings.ClassKey; import dagger.multibindings.IntoMap; import dagger.multibindings.StringKey; import java.util.Optional; import java.util.concurrent.Executor; Loading @@ -70,6 +76,7 @@ public interface DreamModule { String DREAM_SUPPORTED = "dream_supported"; String DREAM_OVERLAY_WINDOW_TITLE = "dream_overlay_window_title"; String HOME_CONTROL_PANEL_DREAM_COMPONENT = "home_control_panel_dream_component"; String DREAM_TILE_SPEC = "dream"; /** * Provides the dream component Loading Loading @@ -178,6 +185,23 @@ public interface DreamModule { return resources.getString(R.string.app_label); } /** Provides config for the dream tile */ @Provides @IntoMap @StringKey(DREAM_TILE_SPEC) static QSTileConfig provideDreamTileConfig(QsEventLogger uiEventLogger) { TileSpec tileSpec = TileSpec.create(DREAM_TILE_SPEC); return new QSTileConfig(tileSpec, new QSTileUIConfig.Resource( R.drawable.ic_qs_screen_saver, R.string.quick_settings_screensaver_label), uiEventLogger.getNewInstanceId(), tileSpec.getSpec(), QSTilePolicy.NoRestrictions.INSTANCE ); } /** Provides activity for dream service */ @Binds DreamActivityProvider bindActivityProvider(DreamActivityProviderImpl impl); Loading
packages/SystemUI/src/com/android/systemui/qrcodescanner/dagger/QRCodeScannerModule.kt +24 −0 Original line number Diff line number Diff line Loading @@ -16,10 +16,16 @@ package com.android.systemui.qrcodescanner.dagger import com.android.systemui.qs.QsEventLogger import com.android.systemui.qs.pipeline.shared.TileSpec import com.android.systemui.qs.tileimpl.QSTileImpl import com.android.systemui.qs.tiles.QRCodeScannerTile import com.android.systemui.qs.tiles.viewmodel.QSTileConfig import com.android.systemui.qs.tiles.viewmodel.QSTileUIConfig import com.android.systemui.res.R import dagger.Binds import dagger.Module import dagger.Provides import dagger.multibindings.IntoMap import dagger.multibindings.StringKey Loading @@ -31,4 +37,22 @@ interface QRCodeScannerModule { @IntoMap @StringKey(QRCodeScannerTile.TILE_SPEC) fun bindQRCodeScannerTile(qrCodeScannerTile: QRCodeScannerTile): QSTileImpl<*> companion object { const val QR_CODE_SCANNER_TILE_SPEC = "qr_code_scanner" @Provides @IntoMap @StringKey(QR_CODE_SCANNER_TILE_SPEC) fun provideQRCodeScannerTileConfig(uiEventLogger: QsEventLogger): QSTileConfig = QSTileConfig( tileSpec = TileSpec.create(QR_CODE_SCANNER_TILE_SPEC), uiConfig = QSTileUIConfig.Resource( iconRes = R.drawable.ic_qr_code_scanner, labelRes = R.string.qr_code_scanner_title, ), instanceId = uiEventLogger.getNewInstanceId(), ) } }
packages/SystemUI/src/com/android/systemui/qs/pipeline/shared/TileSpec.kt +1 −0 Original line number Diff line number Diff line Loading @@ -60,6 +60,7 @@ sealed class TileSpec private constructor(open val spec: String) { companion object { /** Create a [TileSpec] from the string [spec]. */ @JvmStatic fun create(spec: String): TileSpec { return if (TextUtils.isEmpty(spec)) { Invalid Loading