Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4525e903 authored by Catherine Liang's avatar Catherine Liang Committed by Android (Google) Code Review
Browse files

Merge "Rename WallpaperColorsViewModel to Repository (2/3)" into main

parents bce856e6 e956175f
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ import com.android.customization.picker.color.domain.interactor.ColorPickerInter
import com.android.customization.picker.color.ui.viewmodel.ColorPickerViewModel
import com.android.customization.picker.quickaffordance.domain.interactor.KeyguardQuickAffordancePickerInteractor
import com.android.systemui.shared.clocks.ClockRegistry
import com.android.wallpaper.model.WallpaperColorsViewModel
import com.android.wallpaper.model.WallpaperColorsRepository
import com.android.wallpaper.module.Injector

interface CustomizationInjector : Injector {
@@ -59,12 +59,12 @@ interface CustomizationInjector : Injector {

    fun getColorPickerInteractor(
        context: Context,
        wallpaperColorsViewModel: WallpaperColorsViewModel,
        wallpaperColorsRepository: WallpaperColorsRepository,
    ): ColorPickerInteractor

    fun getColorPickerViewModelFactory(
        context: Context,
        wallpaperColorsViewModel: WallpaperColorsViewModel,
        wallpaperColorsRepository: WallpaperColorsRepository,
    ): ColorPickerViewModel.Factory

    fun getClockCarouselViewModelFactory(
@@ -75,7 +75,7 @@ interface CustomizationInjector : Injector {

    fun getClockSettingsViewModelFactory(
        context: Context,
        wallpaperColorsViewModel: WallpaperColorsViewModel,
        wallpaperColorsRepository: WallpaperColorsRepository,
        clockViewFactory: ClockViewFactory,
    ): ClockSettingsViewModel.Factory

+4 −4
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@ import com.android.wallpaper.config.BaseFlags;
import com.android.wallpaper.model.CustomizationSectionController;
import com.android.wallpaper.model.CustomizationSectionController.CustomizationSectionNavigationController;
import com.android.wallpaper.model.PermissionRequester;
import com.android.wallpaper.model.WallpaperColorsViewModel;
import com.android.wallpaper.model.WallpaperColorsRepository;
import com.android.wallpaper.model.WallpaperPreviewNavigator;
import com.android.wallpaper.module.CurrentWallpaperInfoFactory;
import com.android.wallpaper.module.CustomizationSections;
@@ -93,7 +93,7 @@ public final class DefaultCustomizationSections implements CustomizationSections
            Screen screen,
            FragmentActivity activity,
            LifecycleOwner lifecycleOwner,
            WallpaperColorsViewModel wallpaperColorsViewModel,
            WallpaperColorsRepository wallpaperColorsRepository,
            PermissionRequester permissionRequester,
            WallpaperPreviewNavigator wallpaperPreviewNavigator,
            CustomizationSectionNavigationController sectionNavigationController,
@@ -114,7 +114,7 @@ public final class DefaultCustomizationSections implements CustomizationSections
                        lifecycleOwner,
                        screen,
                        wallpaperInfoFactory,
                        wallpaperColorsViewModel,
                        wallpaperColorsRepository,
                        displayUtils,
                        mClockCarouselViewModelFactory,
                        mClockViewFactory,
@@ -131,7 +131,7 @@ public final class DefaultCustomizationSections implements CustomizationSections
                                lifecycleOwner,
                                screen,
                                wallpaperInfoFactory,
                                wallpaperColorsViewModel,
                                wallpaperColorsRepository,
                                displayUtils,
                                wallpaperPreviewNavigator,
                                wallpaperInteractor,
+13 −13
Original line number Diff line number Diff line
@@ -71,7 +71,7 @@ import com.android.systemui.shared.customization.data.content.CustomizationProvi
import com.android.wallpaper.config.BaseFlags
import com.android.wallpaper.dispatchers.BackgroundDispatcher
import com.android.wallpaper.dispatchers.MainDispatcher
import com.android.wallpaper.model.WallpaperColorsViewModel
import com.android.wallpaper.model.WallpaperColorsRepository
import com.android.wallpaper.module.CustomizationSections
import com.android.wallpaper.module.FragmentFactory
import com.android.wallpaper.module.UserEventLogger
@@ -134,7 +134,7 @@ internal constructor(
            ?: DefaultCustomizationSections(
                    getColorPickerViewModelFactory(
                        context = activity,
                        wallpaperColorsViewModel = getWallpaperColorsViewModel(),
                        wallpaperColorsRepository = getWallpaperColorsRepository(),
                    ),
                    getKeyguardQuickAffordancePickerInteractor(activity),
                    getKeyguardQuickAffordancePickerViewModelFactory(activity),
@@ -149,7 +149,7 @@ internal constructor(
                    getDarkModeSnapshotRestorer(activity),
                    getThemedIconSnapshotRestorer(activity),
                    getThemedIconInteractor(),
                    getColorPickerInteractor(activity, getWallpaperColorsViewModel()),
                    getColorPickerInteractor(activity, getWallpaperColorsRepository()),
                )
                .also { customizationSections = it }
    }
@@ -195,7 +195,7 @@ internal constructor(
            this[KEY_THEMED_ICON_SNAPSHOT_RESTORER] = getThemedIconSnapshotRestorer(context)
            this[KEY_APP_GRID_SNAPSHOT_RESTORER] = getGridSnapshotRestorer(context)
            this[KEY_COLOR_PICKER_SNAPSHOT_RESTORER] =
                getColorPickerSnapshotRestorer(context, getWallpaperColorsViewModel())
                getColorPickerSnapshotRestorer(context, getWallpaperColorsRepository())
            this[KEY_CLOCKS_SNAPSHOT_RESTORER] = getClockPickerSnapshotRestorer(context)
        }
    }
@@ -417,18 +417,18 @@ internal constructor(

    override fun getColorPickerInteractor(
        context: Context,
        wallpaperColorsViewModel: WallpaperColorsViewModel,
        wallpaperColorsRepository: WallpaperColorsRepository,
    ): ColorPickerInteractor {
        val appContext = context.applicationContext
        return colorPickerInteractor
            ?: ColorPickerInteractor(
                    repository =
                        ColorPickerRepositoryImpl(
                            wallpaperColorsViewModel,
                            wallpaperColorsRepository,
                            getColorCustomizationManager(appContext)
                        ),
                    snapshotRestorer = {
                        getColorPickerSnapshotRestorer(appContext, wallpaperColorsViewModel)
                        getColorPickerSnapshotRestorer(appContext, wallpaperColorsRepository)
                    }
                )
                .also { colorPickerInteractor = it }
@@ -436,23 +436,23 @@ internal constructor(

    override fun getColorPickerViewModelFactory(
        context: Context,
        wallpaperColorsViewModel: WallpaperColorsViewModel,
        wallpaperColorsRepository: WallpaperColorsRepository,
    ): ColorPickerViewModel.Factory {
        return colorPickerViewModelFactory
            ?: ColorPickerViewModel.Factory(
                    context.applicationContext,
                    getColorPickerInteractor(context, wallpaperColorsViewModel),
                    getColorPickerInteractor(context, wallpaperColorsRepository),
                )
                .also { colorPickerViewModelFactory = it }
    }

    private fun getColorPickerSnapshotRestorer(
        context: Context,
        wallpaperColorsViewModel: WallpaperColorsViewModel,
        wallpaperColorsRepository: WallpaperColorsRepository,
    ): ColorPickerSnapshotRestorer {
        return colorPickerSnapshotRestorer
            ?: ColorPickerSnapshotRestorer(
                    getColorPickerInteractor(context, wallpaperColorsViewModel)
                    getColorPickerInteractor(context, wallpaperColorsRepository)
                )
                .also { colorPickerSnapshotRestorer = it }
    }
@@ -502,7 +502,7 @@ internal constructor(

    override fun getClockSettingsViewModelFactory(
        context: Context,
        wallpaperColorsViewModel: WallpaperColorsViewModel,
        wallpaperColorsRepository: WallpaperColorsRepository,
        clockViewFactory: ClockViewFactory,
    ): ClockSettingsViewModel.Factory {
        return clockSettingsViewModelFactory
@@ -511,7 +511,7 @@ internal constructor(
                    getClockPickerInteractor(context),
                    getColorPickerInteractor(
                        context,
                        wallpaperColorsViewModel,
                        wallpaperColorsRepository,
                    ),
                ) { clockId ->
                    clockId?.let { clockViewFactory.getController(clockId).config.isReactiveToTone }
+3 −3
Original line number Diff line number Diff line
@@ -68,7 +68,7 @@ class ClockSettingsFragment : AppbarFragment() {
        val injector = InjectorProvider.getInjector() as ThemePickerInjector

        val lockScreenView: CardView = view.requireViewById(R.id.lock_preview)
        val colorViewModel = injector.getWallpaperColorsViewModel()
        val wallpaperColorsRepository = injector.getWallpaperColorsRepository()
        val displayUtils = injector.getDisplayUtils(context)
        ScreenPreviewBinder.bind(
            activity = activity,
@@ -99,7 +99,7 @@ class ClockSettingsFragment : AppbarFragment() {
                        }
                    },
                    onWallpaperColorChanged = { colors ->
                        colorViewModel.setLockWallpaperColors(colors)
                        wallpaperColorsRepository.setLockWallpaperColors(colors)
                    },
                    initialExtrasProvider = {
                        Bundle().apply {
@@ -125,7 +125,7 @@ class ClockSettingsFragment : AppbarFragment() {
                    this,
                    injector.getClockSettingsViewModelFactory(
                        context,
                        injector.getWallpaperColorsViewModel(),
                        injector.getWallpaperColorsRepository(),
                        injector.getClockViewFactory(activity),
                    ),
                )
+4 −4
Original line number Diff line number Diff line
@@ -25,7 +25,7 @@ import com.android.customization.picker.color.shared.model.ColorOptionModel
import com.android.customization.picker.color.shared.model.ColorType
import com.android.systemui.monet.Style
import com.android.wallpaper.model.WallpaperColorsModel
import com.android.wallpaper.model.WallpaperColorsViewModel
import com.android.wallpaper.model.WallpaperColorsRepository
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow
@@ -37,14 +37,14 @@ import kotlinx.coroutines.suspendCancellableCoroutine
// TODO (b/262924623): refactor to remove dependency on ColorCustomizationManager & ColorOption
// TODO (b/268203200): Create test for ColorPickerRepositoryImpl
class ColorPickerRepositoryImpl(
    wallpaperColorsViewModel: WallpaperColorsViewModel,
    wallpaperColorsRepository: WallpaperColorsRepository,
    private val colorManager: ColorCustomizationManager,
) : ColorPickerRepository {

    private val homeWallpaperColors: StateFlow<WallpaperColorsModel?> =
        wallpaperColorsViewModel.homeWallpaperColors
        wallpaperColorsRepository.homeWallpaperColors
    private val lockWallpaperColors: StateFlow<WallpaperColorsModel?> =
        wallpaperColorsViewModel.lockWallpaperColors
        wallpaperColorsRepository.lockWallpaperColors
    private var selectedColorOption: MutableStateFlow<ColorOptionModel> =
        MutableStateFlow(getCurrentColorOption())

Loading