From 2f54a1625ae031ffbb2a99a00c7b25de3c677828 Mon Sep 17 00:00:00 2001 From: Tony Wickham Date: Mon, 3 Apr 2017 14:27:04 -0700 Subject: [PATCH] Small UI fix for widgets/app info shortcuts - Switch order of widgets & more and app info. - Start binding widgets after starting to update these shortcuts on the UI thread, so that they will show up without waiting for the bind logic, which can take a while. We already have a callback mechanism for enabling widgets & more after widgets are bound, so this was how it was supposed to work already. Change-Id: I5f702f9c0814d30acf6298be309c6dc30727316e --- src/com/android/launcher3/popup/PopupDataProvider.java | 2 +- src/com/android/launcher3/popup/PopupPopulator.java | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/com/android/launcher3/popup/PopupDataProvider.java b/src/com/android/launcher3/popup/PopupDataProvider.java index b101bc5ae4..c1a9ba1bc6 100644 --- a/src/com/android/launcher3/popup/PopupDataProvider.java +++ b/src/com/android/launcher3/popup/PopupDataProvider.java @@ -50,8 +50,8 @@ public class PopupDataProvider implements NotificationListener.NotificationsChan /** Note that these are in order of priority. */ public static final SystemShortcut[] SYSTEM_SHORTCUTS = new SystemShortcut[] { - new SystemShortcut.Widgets(), new SystemShortcut.AppInfo(), + new SystemShortcut.Widgets(), }; private final Launcher mLauncher; diff --git a/src/com/android/launcher3/popup/PopupPopulator.java b/src/com/android/launcher3/popup/PopupPopulator.java index a9f219b384..838b9b1db8 100644 --- a/src/com/android/launcher3/popup/PopupPopulator.java +++ b/src/com/android/launcher3/popup/PopupPopulator.java @@ -211,12 +211,17 @@ public class PopupPopulator { // This ensures that mLauncher.getWidgetsForPackageUser() // doesn't return null (it puts all the widgets in memory). - launcher.notifyWidgetProvidersChanged(true /* force */); for (int i = 0; i < PopupDataProvider.SYSTEM_SHORTCUTS.length; i++) { final SystemShortcut systemShortcut = PopupDataProvider.SYSTEM_SHORTCUTS[i]; uiHandler.post(new UpdateSystemShortcutChild(container, systemShortcutViews.get(i), systemShortcut, launcher, originalInfo)); } + uiHandler.post(new Runnable() { + @Override + public void run() { + launcher.notifyWidgetProvidersChanged(true /* force */); + } + }); } }; }