Recreate HomeCardModule to update UI colors on UI mode change
Bug: 259609698
Test: manual
Change-Id: I37f29ef781e1265b009073c015c94ff939fb5e34
diff --git a/car_product/car_ui_portrait/apps/CarUiPortraitLauncher/src/com/android/car/portraitlauncher/homeactivities/CarUiPortraitHomeScreen.java b/car_product/car_ui_portrait/apps/CarUiPortraitLauncher/src/com/android/car/portraitlauncher/homeactivities/CarUiPortraitHomeScreen.java
index 6d8ea37..26bc3fb 100644
--- a/car_product/car_ui_portrait/apps/CarUiPortraitLauncher/src/com/android/car/portraitlauncher/homeactivities/CarUiPortraitHomeScreen.java
+++ b/car_product/car_ui_portrait/apps/CarUiPortraitLauncher/src/com/android/car/portraitlauncher/homeactivities/CarUiPortraitHomeScreen.java
@@ -536,26 +536,24 @@
}
private void initializeCards() {
- if (mHomeCardModules == null) {
- mHomeCardModules = new androidx.collection.ArraySet<>();
- for (String providerClassName : getResources().getStringArray(
- R.array.config_homeCardModuleClasses)) {
- try {
- long reflectionStartTime = System.currentTimeMillis();
- HomeCardModule cardModule = (HomeCardModule) Class.forName(
- providerClassName).newInstance();
- cardModule.setViewModelProvider(new ViewModelProvider(/* owner= */this));
- mHomeCardModules.add(cardModule);
- if (DBG) {
- long reflectionTime = System.currentTimeMillis() - reflectionStartTime;
- logIfDebuggable(
- "Initialization of HomeCardModule class " + providerClassName
- + " took " + reflectionTime + " ms");
- }
- } catch (IllegalAccessException | InstantiationException
- | ClassNotFoundException e) {
- Log.w(TAG, "Unable to create HomeCardProvider class " + providerClassName, e);
+ mHomeCardModules = new androidx.collection.ArraySet<>();
+ for (String providerClassName : getResources().getStringArray(
+ R.array.config_homeCardModuleClasses)) {
+ try {
+ long reflectionStartTime = System.currentTimeMillis();
+ HomeCardModule cardModule = (HomeCardModule) Class.forName(
+ providerClassName).newInstance();
+ cardModule.setViewModelProvider(new ViewModelProvider(/* owner= */this));
+ mHomeCardModules.add(cardModule);
+ if (DBG) {
+ long reflectionTime = System.currentTimeMillis() - reflectionStartTime;
+ logIfDebuggable(
+ "Initialization of HomeCardModule class " + providerClassName
+ + " took " + reflectionTime + " ms");
}
+ } catch (IllegalAccessException | InstantiationException
+ | ClassNotFoundException e) {
+ Log.w(TAG, "Unable to create HomeCardProvider class " + providerClassName, e);
}
}
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();