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

Commit c8392ea8 authored by Sebastian Franco's avatar Sebastian Franco
Browse files

Return the right radius to start reorder when dragging a Widget

Currently the radius is only one cell but in the case of a widget
we want the radius of the whole widget.

Fix: 255421400
Test: this case only happens when dagging comming from outside of the cell layuot in the corners dragging a widget
Change-Id: I3fe294d18283dbecb27df1a2d4748dd44db9b956
parent 4972822c
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -941,7 +941,7 @@ public class CellLayout extends ViewGroup {
        cellToRect(targetCell[0], targetCell[1], spanX, spanY, cellBoundsWithSpacing);
        cellBoundsWithSpacing.inset(-mBorderSpace.x / 2, -mBorderSpace.y / 2);

        if (canCreateFolder(getChildAt(targetCell[0], targetCell[1]))) {
        if (canCreateFolder(getChildAt(targetCell[0], targetCell[1])) && spanX == 1 && spanY == 1) {
            // Take only the circle in the smaller dimension, to ensure we don't start reordering
            // too soon before accepting a folder drop.
            int minRadius = centerPoint[0] - cellBoundsWithSpacing.left;
@@ -951,8 +951,9 @@ public class CellLayout extends ViewGroup {
            return minRadius;
        }
        // Take up the entire cell, including space between this cell and the adjacent ones.
        return (float) Math.hypot(cellBoundsWithSpacing.width() / 2f,
                cellBoundsWithSpacing.height() / 2f);
        // Multiply by span to scale radius
        return (float) Math.hypot(spanX * cellBoundsWithSpacing.width() / 2f,
                spanY * cellBoundsWithSpacing.height() / 2f);
    }

    public int getCellWidth() {