Add CoreStartable and basic module for keyboard
Adds empty KeyboardModule and KeyboardCoreStartable that will be used to trigger all keyboard listeners/interactions Bug: 268638504 Test: project builds Change-Id: I17be22f372e6e0454b95f032fe042817466700cd
This commit is contained in:
@@ -30,6 +30,7 @@ import com.android.systemui.controls.dagger.StartControlsStartableModule
|
||||
import com.android.systemui.dagger.qualifiers.PerUser
|
||||
import com.android.systemui.dreams.DreamMonitor
|
||||
import com.android.systemui.globalactions.GlobalActionsComponent
|
||||
import com.android.systemui.keyboard.PhysicalKeyboardCoreStartable
|
||||
import com.android.systemui.keyboard.KeyboardUI
|
||||
import com.android.systemui.keyguard.KeyguardViewMediator
|
||||
import com.android.systemui.keyguard.data.quickaffordance.MuteQuickAffordanceCoreStartable
|
||||
@@ -286,6 +287,11 @@ abstract class SystemUICoreStartableModule {
|
||||
@ClassKey(StylusUsiPowerStartable::class)
|
||||
abstract fun bindStylusUsiPowerStartable(sysui: StylusUsiPowerStartable): CoreStartable
|
||||
|
||||
@Binds
|
||||
@IntoMap
|
||||
@ClassKey(PhysicalKeyboardCoreStartable::class)
|
||||
abstract fun bindKeyboardCoreStartable(listener: PhysicalKeyboardCoreStartable): CoreStartable
|
||||
|
||||
/** Inject into MuteQuickAffordanceCoreStartable*/
|
||||
@Binds
|
||||
@IntoMap
|
||||
|
||||
@@ -47,6 +47,7 @@ import com.android.systemui.dump.DumpManager;
|
||||
import com.android.systemui.flags.FeatureFlags;
|
||||
import com.android.systemui.flags.FlagsModule;
|
||||
import com.android.systemui.fragments.FragmentService;
|
||||
import com.android.systemui.keyboard.KeyboardModule;
|
||||
import com.android.systemui.keyguard.data.BouncerViewModule;
|
||||
import com.android.systemui.log.dagger.LogModule;
|
||||
import com.android.systemui.mediaprojection.appselector.MediaProjectionModule;
|
||||
@@ -150,6 +151,7 @@ import dagger.Provides;
|
||||
SystemPropertiesFlagsModule.class,
|
||||
FooterActionsModule.class,
|
||||
GarbageMonitorModule.class,
|
||||
KeyboardModule.class,
|
||||
LogModule.class,
|
||||
MediaProjectionModule.class,
|
||||
MotionToolModule.class,
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
package com.android.systemui.keyboard
|
||||
|
||||
import dagger.Module
|
||||
|
||||
@Module abstract class KeyboardModule
|
||||
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
* Copyright (C) 2023 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*/
|
||||
|
||||
package com.android.systemui.keyboard
|
||||
|
||||
import com.android.systemui.CoreStartable
|
||||
import com.android.systemui.dagger.SysUISingleton
|
||||
import com.android.systemui.flags.FeatureFlags
|
||||
import com.android.systemui.flags.Flags
|
||||
import javax.inject.Inject
|
||||
|
||||
/** A [CoreStartable] that launches components interested in physical keyboard interaction. */
|
||||
@SysUISingleton
|
||||
class PhysicalKeyboardCoreStartable
|
||||
@Inject
|
||||
constructor(
|
||||
private val featureFlags: FeatureFlags,
|
||||
) : CoreStartable {
|
||||
override fun start() {
|
||||
if (featureFlags.isEnabled(Flags.KEYBOARD_BACKLIGHT_INDICATOR)) {
|
||||
// TODO(b/268645743) start listening for keyboard backlight brightness
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user