Merge "Creates an interface, implementation, and fake for UiModeManager" into main
diff --git a/res/layout/color_option_overflow_no_background.xml b/res/layout/color_option_overflow_no_background.xml
index abb9c6b..7a37536 100644
--- a/res/layout/color_option_overflow_no_background.xml
+++ b/res/layout/color_option_overflow_no_background.xml
@@ -24,7 +24,10 @@
android:layout_gravity="center"
android:clipChildren="false"
android:gravity="center"
- android:padding="@dimen/option_tile_grid_tile_padding_min"
+ android:paddingStart="@dimen/option_tile_grid_tile_padding_min"
+ android:paddingEnd="@dimen/option_tile_grid_tile_padding_min"
+ android:paddingTop="@dimen/option_tile_grid_icon_padding_min"
+ android:paddingBottom="@dimen/option_tile_grid_icon_padding_min"
android:layout_weight="1"
app:layout_constraintDimensionRatio="1:1"
app:layout_constraintWidth_max="@dimen/component_color_chip_small_diameter_default">
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index e838ca6..71be3a7 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -38,7 +38,7 @@
<string name="clock_color_teal" msgid="7499223425741344251">"Hijau Kebiruan"</string>
<string name="clock_size" msgid="5028923902364418263">"Ukuran"</string>
<string name="clock_size_dynamic" msgid="1023930312455061642">"Dinamis"</string>
- <string name="clock_size_dynamic_description" msgid="2776620745774561662">"Ukuran jam berubah sesuai dengan konten layar kunci"</string>
+ <string name="clock_size_dynamic_description" msgid="2776620745774561662">"Ukuran jam berubah menurut konten layar kunci"</string>
<string name="clock_size_large" msgid="3143248715744138979">"Besar"</string>
<string name="clock_size_small" msgid="2280449912094164133">"Kecil"</string>
<string name="clock_size_small_description" msgid="4089511196955732480">"Jam kecil ditampilkan di sudut layar Anda"</string>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 01fd0ff..c0d6fd5 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -38,7 +38,7 @@
<string name="clock_color_teal" msgid="7499223425741344251">"蓝绿色"</string>
<string name="clock_size" msgid="5028923902364418263">"大小"</string>
<string name="clock_size_dynamic" msgid="1023930312455061642">"动态"</string>
- <string name="clock_size_dynamic_description" msgid="2776620745774561662">"时钟大小会依据锁定屏幕上的内容而变化"</string>
+ <string name="clock_size_dynamic_description" msgid="2776620745774561662">"时钟大小会随锁屏内容而变化"</string>
<string name="clock_size_large" msgid="3143248715744138979">"大"</string>
<string name="clock_size_small" msgid="2280449912094164133">"小"</string>
<string name="clock_size_small_description" msgid="4089511196955732480">"一个小型时钟显示在界面一角"</string>
diff --git a/src/com/android/customization/model/color/ColorProvider.kt b/src/com/android/customization/model/color/ColorProvider.kt
index eb8d8df..2d7037e 100644
--- a/src/com/android/customization/model/color/ColorProvider.kt
+++ b/src/com/android/customization/model/color/ColorProvider.kt
@@ -42,6 +42,7 @@
import com.android.wallpaper.module.InjectorProvider
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
import kotlinx.coroutines.SupervisorJob
import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
@@ -62,6 +63,7 @@
private const val ALPHA_MASK = 0xFF
}
+ private var loaderJob: Job? = null
private val monetEnabled = ColorUtils.isMonetEnabled(context)
// TODO(b/202145216): Use style method to fetch the list of style.
private var styleList =
@@ -105,19 +107,21 @@
this.homeWallpaperColors = homeWallpaperColors
this.lockWallpaperColors = lockWallpaperColors
}
- if (presetColorBundles == null || reload) {
- scope.launch {
+
+ scope.launch {
+ loaderJob?.join()
+ if (presetColorBundles == null || reload) {
try {
- loadPreset()
+ loaderJob = launch { loadPreset() }
} catch (e: Throwable) {
colorsAvailable = false
callback?.onError(e)
return@launch
}
callback?.onOptionsLoaded(buildFinalList())
+ } else {
+ callback?.onOptionsLoaded(buildFinalList())
}
- } else {
- callback?.onOptionsLoaded(buildFinalList())
}
}
@@ -367,6 +371,7 @@
}
presetColorBundles = bundles
+ loaderJob = null
}
private fun buildPreset(