Merge "WidgetPicker - enable enterprise string cache in standalone activity." into main

This commit is contained in:
Treehugger Robot
2024-09-10 00:10:01 +00:00
committed by Android (Google) Code Review

View File

@@ -41,6 +41,7 @@ import androidx.annotation.NonNull;
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;
@@ -107,6 +108,7 @@ public class WidgetPickerActivity extends BaseActivity {
private SimpleDragLayer<WidgetPickerActivity> mDragLayer;
private WidgetsModel mModel;
private LauncherAppState mApp;
private StringCache mStringCache;
private WidgetPredictionsRequester mWidgetPredictionsRequester;
private final WidgetPickerDataProvider mWidgetPickerDataProvider =
new WidgetPickerDataProvider();
@@ -287,6 +289,11 @@ public class WidgetPickerActivity extends BaseActivity {
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.
@@ -299,6 +306,10 @@ public class WidgetPickerActivity extends BaseActivity {
});
}
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());
@@ -336,6 +347,12 @@ public class WidgetPickerActivity extends BaseActivity {
}
}
@Nullable
@Override
public StringCache getStringCache() {
return mStringCache;
}
/**
* Animation callback for different predictive back animation states for the widget picker.
*/