Merge "Reset support for themed icons (2/3)." into tm-qpr-dev
diff --git a/src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt b/src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt
index 56dd310..d6657a8 100644
--- a/src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt
+++ b/src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt
@@ -24,7 +24,9 @@
import androidx.lifecycle.get
import androidx.lifecycle.lifecycleScope
import com.android.customization.module.ThemePickerInjector
+import com.android.customization.picker.clock.ui.binder.ClockCarouselViewBinder
import com.android.customization.picker.clock.ui.binder.ClockSettingsBinder
+import com.android.customization.picker.clock.ui.view.ClockCarouselView
import com.android.customization.picker.clock.ui.viewmodel.ClockSettingsViewModel
import com.android.wallpaper.R
import com.android.wallpaper.model.WallpaperColorsViewModel
@@ -107,14 +109,23 @@
)
.show()
+ val carouselView: ClockCarouselView = view.requireViewById(R.id.clock_carousel_view)
lifecycleScope.launch {
- val clockRegistry =
+ val registry =
withContext(Dispatchers.IO) { injector.getClockRegistryProvider(context).get() }
+ val clockViewFactory = injector.getClockViewFactory(context, registry)
+ ClockCarouselViewBinder.bind(
+ view = carouselView,
+ viewModel = injector.getClockCarouselViewModel(context, registry),
+ clockViewFactory = { clockId -> clockViewFactory.getView(clockId) },
+ lifecycleOwner = this@ClockSettingsFragment,
+ )
+ .show()
ClockSettingsBinder.bind(
view,
ClockSettingsViewModel(
context,
- injector.getClockPickerInteractor(context, clockRegistry)
+ injector.getClockPickerInteractor(context, registry)
),
this@ClockSettingsFragment,
)
diff --git a/src/com/android/customization/picker/clock/ui/section/ClockSectionController.kt b/src/com/android/customization/picker/clock/ui/section/ClockSectionController.kt
index bd81719..e1982d7 100644
--- a/src/com/android/customization/picker/clock/ui/section/ClockSectionController.kt
+++ b/src/com/android/customization/picker/clock/ui/section/ClockSectionController.kt
@@ -22,7 +22,7 @@
import com.android.customization.module.ThemePickerInjector
import com.android.customization.picker.clock.data.repository.ClockRegistryProvider
import com.android.customization.picker.clock.ui.binder.ClockSectionViewBinder
-import com.android.customization.picker.clock.ui.fragment.ClockCustomDemoFragment
+import com.android.customization.picker.clock.ui.fragment.ClockSettingsFragment
import com.android.customization.picker.clock.ui.view.ClockSectionView
import com.android.wallpaper.R
import com.android.wallpaper.config.BaseFlags
@@ -60,7 +60,7 @@
(InjectorProvider.getInjector() as ThemePickerInjector)
.getClockSectionViewModel(context, registry),
lifecycleOwner = lifecycleOwner
- ) { navigationController.navigateTo(ClockCustomDemoFragment()) }
+ ) { navigationController.navigateTo(ClockSettingsFragment()) }
}
return view
}
diff --git a/src/com/android/customization/picker/preview/ui/section/PreviewWithClockCarouselSectionController.kt b/src/com/android/customization/picker/preview/ui/section/PreviewWithClockCarouselSectionController.kt
index f1319c6..6522d84 100644
--- a/src/com/android/customization/picker/preview/ui/section/PreviewWithClockCarouselSectionController.kt
+++ b/src/com/android/customization/picker/preview/ui/section/PreviewWithClockCarouselSectionController.kt
@@ -20,6 +20,7 @@
import android.app.Activity
import android.content.Context
import android.view.ViewStub
+import androidx.core.view.isGone
import androidx.lifecycle.LifecycleOwner
import androidx.lifecycle.lifecycleScope
import com.android.customization.picker.clock.data.repository.ClockRegistryProvider
@@ -67,6 +68,7 @@
val carouselViewStub: ViewStub = view.requireViewById(R.id.clock_carousel_view_stub)
carouselViewStub.layoutResource = R.layout.clock_carousel_view
val carouselView: ClockCarouselView = carouselViewStub.inflate() as ClockCarouselView
+ carouselView.isGone = true
lifecycleOwner.lifecycleScope.launch {
val registry = withContext(Dispatchers.IO) { clockRegistryProvider.get() }
val clockViewFactory = clockViewFactoryProvider.get(registry)