Loading src/com/android/wallpaper/picker/common/preview/ui/binder/ThemePickerWorkspaceCallbackBinder.kt +128 −107 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ import com.android.wallpaper.picker.customization.ui.viewmodel.ColorUpdateViewMo import com.android.wallpaper.picker.customization.ui.viewmodel.CustomizationOptionsViewModel import javax.inject.Inject import javax.inject.Singleton import kotlinx.coroutines.Job import kotlinx.coroutines.flow.combine import kotlinx.coroutines.launch Loading @@ -57,6 +58,9 @@ constructor( private val materialColorsGenerator: MaterialColorsGenerator, ) : WorkspaceCallbackBinder { private var lockScreenJob: Job? = null private var homeScreenJob: Job? = null override fun bind( workspaceCallback: Message, viewModel: CustomizationOptionsViewModel, Loading @@ -81,7 +85,9 @@ constructor( } when (screen) { Screen.LOCK_SCREEN -> Screen.LOCK_SCREEN -> { lockScreenJob?.cancel() lockScreenJob = lifecycleOwner.lifecycleScope.launch { lifecycleOwner.repeatOnLifecycle(Lifecycle.State.CREATED) { launch { Loading Loading @@ -152,7 +158,10 @@ constructor( } } } Screen.HOME_SCREEN -> } Screen.HOME_SCREEN -> { homeScreenJob?.cancel() homeScreenJob = lifecycleOwner.lifecycleScope.launch { lifecycleOwner.repeatOnLifecycle(Lifecycle.State.CREATED) { launch { Loading Loading @@ -197,12 +206,16 @@ constructor( putBoolean(KEY_DARK_MODE, darkMode) } } workspaceCallback.sendMessage(MESSAGE_ID_UPDATE_COLOR, bundle) workspaceCallback.sendMessage( MESSAGE_ID_UPDATE_COLOR, bundle, ) } } launch { viewModel.appIconPickerViewModel.previewingIsThemeIconEnabled.collect { viewModel.appIconPickerViewModel.previewingIsThemeIconEnabled .collect { workspaceCallback.sendMessage( MESSAGE_ID_UPDATE_ICON_THEMED, Bundle().apply { putBoolean(KEY_BOOLEAN_VALUE, it) }, Loading @@ -213,6 +226,14 @@ constructor( } } } } override fun unbind() { lockScreenJob?.cancel() lockScreenJob = null homeScreenJob?.cancel() homeScreenJob = null } companion object { const val MESSAGE_ID_UPDATE_SHAPE = 2586 Loading Loading
src/com/android/wallpaper/picker/common/preview/ui/binder/ThemePickerWorkspaceCallbackBinder.kt +128 −107 Original line number Diff line number Diff line Loading @@ -46,6 +46,7 @@ import com.android.wallpaper.picker.customization.ui.viewmodel.ColorUpdateViewMo import com.android.wallpaper.picker.customization.ui.viewmodel.CustomizationOptionsViewModel import javax.inject.Inject import javax.inject.Singleton import kotlinx.coroutines.Job import kotlinx.coroutines.flow.combine import kotlinx.coroutines.launch Loading @@ -57,6 +58,9 @@ constructor( private val materialColorsGenerator: MaterialColorsGenerator, ) : WorkspaceCallbackBinder { private var lockScreenJob: Job? = null private var homeScreenJob: Job? = null override fun bind( workspaceCallback: Message, viewModel: CustomizationOptionsViewModel, Loading @@ -81,7 +85,9 @@ constructor( } when (screen) { Screen.LOCK_SCREEN -> Screen.LOCK_SCREEN -> { lockScreenJob?.cancel() lockScreenJob = lifecycleOwner.lifecycleScope.launch { lifecycleOwner.repeatOnLifecycle(Lifecycle.State.CREATED) { launch { Loading Loading @@ -152,7 +158,10 @@ constructor( } } } Screen.HOME_SCREEN -> } Screen.HOME_SCREEN -> { homeScreenJob?.cancel() homeScreenJob = lifecycleOwner.lifecycleScope.launch { lifecycleOwner.repeatOnLifecycle(Lifecycle.State.CREATED) { launch { Loading Loading @@ -197,12 +206,16 @@ constructor( putBoolean(KEY_DARK_MODE, darkMode) } } workspaceCallback.sendMessage(MESSAGE_ID_UPDATE_COLOR, bundle) workspaceCallback.sendMessage( MESSAGE_ID_UPDATE_COLOR, bundle, ) } } launch { viewModel.appIconPickerViewModel.previewingIsThemeIconEnabled.collect { viewModel.appIconPickerViewModel.previewingIsThemeIconEnabled .collect { workspaceCallback.sendMessage( MESSAGE_ID_UPDATE_ICON_THEMED, Bundle().apply { putBoolean(KEY_BOOLEAN_VALUE, it) }, Loading @@ -213,6 +226,14 @@ constructor( } } } } override fun unbind() { lockScreenJob?.cancel() lockScreenJob = null homeScreenJob?.cancel() homeScreenJob = null } companion object { const val MESSAGE_ID_UPDATE_SHAPE = 2586 Loading