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

Commit 2ccac2e7 authored by Bob Yang's avatar Bob Yang Committed by Android (Google) Code Review
Browse files

Merge "Show toast if the theme is uninstalled" into main

parents 1e992a37 77166b07
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -21,7 +21,7 @@ import kotlinx.coroutines.flow.StateFlow


/** Repository for accessing pack theme data settings. */
/** Repository for accessing pack theme data settings. */
interface PackThemeRepository {
interface PackThemeRepository {
    val packThemeData: StateFlow<PackThemeData?>
    val packThemeData: StateFlow<PackThemeData>


    fun refetchPackTheme()
    fun refetchPackTheme()
}
}
+30 −2
Original line number Original line Diff line number Diff line
@@ -25,6 +25,7 @@ import android.view.View
import android.view.ViewGroup
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.ImageView
import android.widget.TextView
import android.widget.TextView
import android.widget.Toast
import androidx.compose.ui.platform.ComposeView
import androidx.compose.ui.platform.ComposeView
import androidx.constraintlayout.widget.ConstraintSet
import androidx.constraintlayout.widget.ConstraintSet
import androidx.core.graphics.drawable.DrawableCompat
import androidx.core.graphics.drawable.DrawableCompat
@@ -528,8 +529,20 @@ constructor(private val defaultCustomizationOptionsBinder: DefaultCustomizationO
                                    navigateToPackThemeActivity.invoke(intent)
                                    navigateToPackThemeActivity.invoke(intent)
                                }
                                }
                            } else {
                            } else {
                                optionPackThemeHome?.setOnClickListener(null)
                                optionPackThemeHome?.setOnClickListener({
                                optionPackThemeLock?.setOnClickListener(null)
                                    showNoPackThemeIntentErrorMessage(
                                        lifecycleOwner,
                                        view,
                                        optionsViewModel,
                                    )
                                })
                                optionPackThemeLock?.setOnClickListener({
                                    showNoPackThemeIntentErrorMessage(
                                        lifecycleOwner,
                                        view,
                                        optionsViewModel,
                                    )
                                })
                            }
                            }
                        }
                        }
                    }
                    }
@@ -611,6 +624,21 @@ constructor(private val defaultCustomizationOptionsBinder: DefaultCustomizationO
    // Track the current show clock flag. If it turns from false to true, animate fade-in.
    // Track the current show clock flag. If it turns from false to true, animate fade-in.
    private var isClockCurrentlyShown: Boolean? = null
    private var isClockCurrentlyShown: Boolean? = null


    private fun showNoPackThemeIntentErrorMessage(
        lifecycleOwner: LifecycleOwner,
        view: View,
        optionsViewModel: ThemePickerCustomizationOptionsViewModel,
    ) {
        lifecycleOwner.lifecycleScope.launch {
            Toast.makeText(
                    view.context,
                    optionsViewModel.packThemeViewModel.noAppErrorMessage,
                    Toast.LENGTH_SHORT,
                )
                .show()
        }
    }

    override fun bindClockPreview(
    override fun bindClockPreview(
        context: Context,
        context: Context,
        rootView: View,
        rootView: View,
+1 −0
Original line number Original line Diff line number Diff line
@@ -61,6 +61,7 @@ class PackThemeViewModel @Inject constructor(private val interactor: PackThemeIn
            }
            }
        }
        }
    val packThemeData: Flow<PackThemeData> = interactor.packThemeData
    val packThemeData: Flow<PackThemeData> = interactor.packThemeData
    val noAppErrorMessage: String = interactor.noAppErrorMessage


    fun refetchPackTheme() {
    fun refetchPackTheme() {
        interactor.refetchPackTheme()
        interactor.refetchPackTheme()
+2 −0
Original line number Original line Diff line number Diff line
@@ -27,4 +27,6 @@ interface PackThemeInteractor {
    val packThemeData: Flow<PackThemeData>
    val packThemeData: Flow<PackThemeData>


    fun refetchPackTheme()
    fun refetchPackTheme()

    val noAppErrorMessage: String
}
}
+2 −0
Original line number Original line Diff line number Diff line
@@ -28,4 +28,6 @@ class ThemePickerPackThemeInteractor @Inject constructor() : PackThemeInteractor
    override val packThemeData: Flow<PackThemeData> = emptyFlow()
    override val packThemeData: Flow<PackThemeData> = emptyFlow()


    override fun refetchPackTheme() {}
    override fun refetchPackTheme() {}

    override val noAppErrorMessage: String = ""
}
}