WidgetPicker - enable enterprise string cache in standalone activity.
The WidgetPickerActivity wasn't exposing a string cache for enterprise
overrideable strings, meaning that default fallback messages were showing
when the picker was in standalone (not in the launcher) mode.
Bug: 358002534
Test: Manual
Flag: EXEMPT bug fix
Change-Id: I67ccd46370708fb70a3a5233929a9c3b33c312f7
diff --git a/quickstep/src/com/android/launcher3/WidgetPickerActivity.java b/quickstep/src/com/android/launcher3/WidgetPickerActivity.java
index e925af6..036568e 100644
--- a/quickstep/src/com/android/launcher3/WidgetPickerActivity.java
+++ b/quickstep/src/com/android/launcher3/WidgetPickerActivity.java
@@ -42,6 +42,7 @@
import androidx.annotation.Nullable;
import com.android.launcher3.dragndrop.SimpleDragLayer;
+import com.android.launcher3.model.StringCache;
import com.android.launcher3.model.WidgetItem;
import com.android.launcher3.model.WidgetPredictionsRequester;
import com.android.launcher3.model.WidgetsModel;
@@ -108,6 +109,7 @@
private SimpleDragLayer<WidgetPickerActivity> mDragLayer;
private WidgetsModel mModel;
private LauncherAppState mApp;
+ private StringCache mStringCache;
private WidgetPredictionsRequester mWidgetPredictionsRequester;
private final WidgetPickerDataProvider mWidgetPickerDataProvider =
new WidgetPickerDataProvider();
@@ -293,6 +295,11 @@
MODEL_EXECUTOR.execute(() -> {
LauncherAppState app = LauncherAppState.getInstance(this);
mModel.update(app, null);
+
+ StringCache stringCache = new StringCache();
+ stringCache.loadStrings(this);
+
+ bindStringCache(stringCache);
bindWidgets(mModel.getWidgetsByPackageItem());
// Open sheet once widgets are available, so that it doesn't interrupt the open
// animation.
@@ -305,6 +312,10 @@
});
}
+ private void bindStringCache(final StringCache stringCache) {
+ MAIN_EXECUTOR.execute(() -> mStringCache = stringCache);
+ }
+
private void bindWidgets(Map<PackageItemInfo, List<WidgetItem>> widgets) {
WidgetsListBaseEntriesBuilder builder = new WidgetsListBaseEntriesBuilder(
mApp.getContext());
@@ -342,6 +353,12 @@
}
}
+ @Nullable
+ @Override
+ public StringCache getStringCache() {
+ return mStringCache;
+ }
+
/**
* Animation callback for different predictive back animation states for the widget picker.
*/