diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-10-10 23:17:19 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2023-10-10 23:17:19 +0000 |
commit | 3cc68260bf5367ff502c46322e5673e4b3ad84be (patch) | |
tree | bba514fb9c0823137d44bcafd1c628b0ad0fe18b /src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt | |
parent | 2b928f6a737cd73c67b809125040c5e4e1a5ab23 (diff) | |
parent | 2585ebb7fa1f2fb73dfe2970311b5335311d14d1 (diff) | |
download | ThemePicker-3cc68260bf5367ff502c46322e5673e4b3ad84be.tar.gz |
Snap for 10929834 from 2585ebb7fa1f2fb73dfe2970311b5335311d14d1 to sdk-release
Change-Id: I1035e5616f20b1a338f99eeac0a354c1d286c0fc
Diffstat (limited to 'src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt')
-rw-r--r-- | src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt | 102 |
1 files changed, 55 insertions, 47 deletions
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 c5cde530..f4684d88 100644 --- a/src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt +++ b/src/com/android/customization/picker/clock/ui/fragment/ClockSettingsFragment.kt @@ -26,6 +26,7 @@ import com.android.customization.module.ThemePickerInjector import com.android.customization.picker.clock.ui.binder.ClockSettingsBinder import com.android.systemui.shared.clocks.shared.model.ClockPreviewConstants import com.android.wallpaper.R +import com.android.wallpaper.module.CustomizationSections import com.android.wallpaper.module.InjectorProvider import com.android.wallpaper.picker.AppbarFragment import com.android.wallpaper.picker.customization.ui.binder.ScreenPreviewBinder @@ -66,70 +67,77 @@ class ClockSettingsFragment : AppbarFragment() { val colorViewModel = injector.getWallpaperColorsViewModel() val displayUtils = injector.getDisplayUtils(context) ScreenPreviewBinder.bind( - activity = activity, - previewView = lockScreenView, - viewModel = - ScreenPreviewViewModel( - previewUtils = - PreviewUtils( - context = context, - authority = - resources.getString( - R.string.lock_screen_preview_provider_authority, - ), - ), - wallpaperInfoProvider = { - suspendCancellableCoroutine { continuation -> - injector - .getCurrentWallpaperInfoFactory(context) - .createCurrentWallpaperInfos( - { homeWallpaper, lockWallpaper, _ -> - continuation.resume( - homeWallpaper ?: lockWallpaper, - null, - ) - }, - /* forceRefresh= */ true, - ) - } - }, - onWallpaperColorChanged = { colors -> - colorViewModel.setLockWallpaperColors(colors) - }, - initialExtrasProvider = { - Bundle().apply { - // Hide the clock from the system UI rendered preview so we can - // place the carousel on top of it. - putBoolean( - ClockPreviewConstants.KEY_HIDE_CLOCK, - true, + activity = activity, + previewView = lockScreenView, + viewModel = + ScreenPreviewViewModel( + previewUtils = + PreviewUtils( + context = context, + authority = + resources.getString( + R.string.lock_screen_preview_provider_authority, + ), + ), + wallpaperInfoProvider = { forceReload -> + suspendCancellableCoroutine { continuation -> + injector + .getCurrentWallpaperInfoFactory(context) + .createCurrentWallpaperInfos( + { homeWallpaper, lockWallpaper, _ -> + continuation.resume( + lockWallpaper ?: homeWallpaper, + null, + ) + }, + forceReload, ) - } - }, - ), - lifecycleOwner = this, - offsetToStart = displayUtils.isSingleDisplayOrUnfoldedHorizontalHinge(activity), - ) - .show() + } + }, + onWallpaperColorChanged = { colors -> + colorViewModel.setLockWallpaperColors(colors) + }, + initialExtrasProvider = { + Bundle().apply { + // Hide the clock from the system UI rendered preview so we can + // place the carousel on top of it. + putBoolean( + ClockPreviewConstants.KEY_HIDE_CLOCK, + true, + ) + } + }, + wallpaperInteractor = injector.getWallpaperInteractor(requireContext()), + screen = CustomizationSections.Screen.LOCK_SCREEN, + ), + lifecycleOwner = this, + offsetToStart = displayUtils.isSingleDisplayOrUnfoldedHorizontalHinge(activity), + onWallpaperPreviewDirty = { activity.recreate() }, + ) ClockSettingsBinder.bind( view, ViewModelProvider( - requireActivity(), + this, injector.getClockSettingsViewModelFactory( context, injector.getWallpaperColorsViewModel(), + injector.getClockViewFactory(activity), ), ) .get(), injector.getClockViewFactory(activity), - this@ClockSettingsFragment, + viewLifecycleOwner, ) return view } override fun getDefaultTitle(): CharSequence { - return requireContext().getString(R.string.clock_settings_title) + return requireContext().getString(R.string.clock_color_and_size_title) + } + + override fun getToolbarColorId(): Int { + return android.R.color.transparent } } |