diff --git a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java index 68a6e62f36..ba6ed66bf3 100644 --- a/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java +++ b/src/com/android/launcher3/accessibility/LauncherAccessibilityDelegate.java @@ -24,6 +24,7 @@ import android.view.accessibility.AccessibilityEvent; import androidx.annotation.Nullable; +import com.android.launcher3.AbstractFloatingView; import com.android.launcher3.BubbleTextView; import com.android.launcher3.ButtonDropTarget; import com.android.launcher3.CellLayout; @@ -48,7 +49,6 @@ import com.android.launcher3.model.data.WorkspaceItemFactory; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.popup.ArrowPopup; import com.android.launcher3.popup.PopupContainerWithArrow; -import com.android.launcher3.shortcuts.DeepShortcutTextView; import com.android.launcher3.shortcuts.DeepShortcutView; import com.android.launcher3.touch.ItemLongClickListener; import com.android.launcher3.util.IntArray; @@ -405,6 +405,11 @@ public class LauncherAccessibilityDelegate extends BaseAccessibilityDelegate finishCallback) { + // Dismiss widget resize frame if it is showing. The frame marks its cells as unoccupied + // while it is showing, so findSpaceOnWorkspace may try to use those cells. + AbstractFloatingView.closeOpenViews(mContext, /* animate= */ false, + AbstractFloatingView.TYPE_WIDGET_RESIZE_FRAME); + final int[] coordinates = new int[2]; final int screenId = findSpaceOnWorkspace(item, coordinates); if (screenId == -1) {