Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2aa31b8f authored by Tony Wickham's avatar Tony Wickham Committed by Android (Google) Code Review
Browse files

Merge "Fix some issues with shortcut containers opened inside folders." into ub-launcher3-calgary

parents 80f5787b 2f2104cc
Loading
Loading
Loading
Loading
+22 −19
Original line number Diff line number Diff line
@@ -230,6 +230,28 @@ public class DragLayer extends InsettableFrameLayout {
            }
        }

        // Remove the shortcuts container when touching outside of it.
        DeepShortcutsContainer deepShortcutsContainer = (DeepShortcutsContainer)
                findViewById(R.id.deep_shortcuts_container);
        if (deepShortcutsContainer != null) {
            if (isEventOverView(deepShortcutsContainer, ev)) {
                // Let the container handle the event.
                return false;
            } else {
                if (isInAccessibleDrag()) {
                    // Do not close the container if in drag and drop.
                    if (!isEventOverDropTargetBar(ev)) {
                        return true;
                    }
                } else {
                    removeView(deepShortcutsContainer);
                    // We let touches on the original icon go through so that users can launch
                    // the app with one tap if they don't find a shortcut they want.
                    return !isEventOverView(deepShortcutsContainer.getDeferredDragIcon(), ev);
                }
            }
        }

        Folder currentFolder = mLauncher.getWorkspace().getOpenFolder();
        if (currentFolder != null && intercept) {
            if (currentFolder.isEditingName()) {
@@ -251,25 +273,6 @@ public class DragLayer extends InsettableFrameLayout {
                }
            }
        }

        // Remove the shortcuts container when touching outside of it.
        DeepShortcutsContainer deepShortcutsContainer = (DeepShortcutsContainer)
                findViewById(R.id.deep_shortcuts_container);
        if (deepShortcutsContainer != null) {
            if (!isEventOverView(deepShortcutsContainer, ev)) {
                if (isInAccessibleDrag()) {
                    // Do not close the container if in drag and drop.
                    if (!isEventOverDropTargetBar(ev)) {
                        return true;
                    }
                } else {
                    removeView(deepShortcutsContainer);
                    // We let touches on the original icon go through so that users can launch
                    // the app with one tap if they don't find a shortcut they want.
                    return !isEventOverView(deepShortcutsContainer.getDeferredDragIcon(), ev);
                }
            }
        }
        return false;
    }

+2 −0
Original line number Diff line number Diff line
@@ -359,6 +359,8 @@ public class DeepShortcutsContainer extends LinearLayout implements View.OnClic
        mLauncher.getDragLayer().setController(mLauncher.getDragController());
        mLauncher.getWorkspace().beginDragShared(v, mIconLastTouchPos, this, false);
        ((DragLayer) getParent()).removeView(this);
        // TODO: support dragging from within folder without having to close it
        mLauncher.closeFolder();
        return false;
    }