diff options
3 files changed, 50 insertions, 15 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/volume/dagger/AudioModule.kt b/packages/SystemUI/src/com/android/systemui/volume/dagger/AudioModule.kt index 8431fbcd8bad..9dedf5c70da1 100644 --- a/packages/SystemUI/src/com/android/systemui/volume/dagger/AudioModule.kt +++ b/packages/SystemUI/src/com/android/systemui/volume/dagger/AudioModule.kt @@ -18,9 +18,6 @@ package com.android.systemui.volume.dagger import android.content.Context import android.media.AudioManager -import com.android.settingslib.media.data.repository.SpatializerRepository -import com.android.settingslib.media.data.repository.SpatializerRepositoryImpl -import com.android.settingslib.media.domain.interactor.SpatializerInteractor import com.android.settingslib.statusbar.notification.domain.interactor.NotificationsSoundPolicyInteractor import com.android.settingslib.volume.data.repository.AudioRepository import com.android.settingslib.volume.data.repository.AudioRepositoryImpl @@ -66,16 +63,5 @@ interface AudioModule { notificationsSoundPolicyInteractor: NotificationsSoundPolicyInteractor, ): AudioVolumeInteractor = AudioVolumeInteractor(audioRepository, notificationsSoundPolicyInteractor) - - @Provides - fun provdieSpatializerRepository( - audioManager: AudioManager, - @Background backgroundContext: CoroutineContext, - ): SpatializerRepository = - SpatializerRepositoryImpl(audioManager.spatializer, backgroundContext) - - @Provides - fun provideSpatializerInetractor(repository: SpatializerRepository): SpatializerInteractor = - SpatializerInteractor(repository) } } diff --git a/packages/SystemUI/src/com/android/systemui/volume/dagger/SpatializerModule.kt b/packages/SystemUI/src/com/android/systemui/volume/dagger/SpatializerModule.kt new file mode 100644 index 000000000000..18a9161ac0e3 --- /dev/null +++ b/packages/SystemUI/src/com/android/systemui/volume/dagger/SpatializerModule.kt @@ -0,0 +1,48 @@ +/* + * Copyright (C) 2024 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.volume.dagger + +import android.media.AudioManager +import android.media.Spatializer +import com.android.settingslib.media.data.repository.SpatializerRepository +import com.android.settingslib.media.data.repository.SpatializerRepositoryImpl +import com.android.settingslib.media.domain.interactor.SpatializerInteractor +import com.android.systemui.dagger.qualifiers.Background +import dagger.Module +import dagger.Provides +import kotlin.coroutines.CoroutineContext + +/** Spatializer module. */ +@Module +interface SpatializerModule { + companion object { + @Provides + fun provideSpatializer( + audioManager: AudioManager, + ): Spatializer = audioManager.spatializer + + @Provides + fun provdieSpatializerRepository( + spatializer: Spatializer, + @Background backgroundContext: CoroutineContext, + ): SpatializerRepository = SpatializerRepositoryImpl(spatializer, backgroundContext) + + @Provides + fun provideSpatializerInetractor(repository: SpatializerRepository): SpatializerInteractor = + SpatializerInteractor(repository) + } +} diff --git a/packages/SystemUI/src/com/android/systemui/volume/dagger/VolumeModule.java b/packages/SystemUI/src/com/android/systemui/volume/dagger/VolumeModule.java index c6aee428ce6a..64a5644bc452 100644 --- a/packages/SystemUI/src/com/android/systemui/volume/dagger/VolumeModule.java +++ b/packages/SystemUI/src/com/android/systemui/volume/dagger/VolumeModule.java @@ -59,7 +59,8 @@ import dagger.multibindings.IntoSet; AudioModule.class, AncModule.class, CaptioningModule.class, - MediaDevicesModule.class + MediaDevicesModule.class, + SpatializerModule.class, }, subcomponents = { VolumePanelComponent.class |