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

Commit 8f288aac authored by Winson's avatar Winson
Browse files

Ensure that we update the preview layout rule when not animating.

Bug: 28166173
Change-Id: Ibf0245f2dd667216ccabb23a1b279b1801d60cac
parent 76acffce
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -2584,6 +2584,7 @@ public class Workspace extends PagedView
                fi.performCreateAnimation(destInfo, v, sourceInfo, dragView, folderLocation, scale,
                        postAnimationRunnable);
            } else {
                fi.prepareCreate(v);
                fi.addItem(destInfo);
                fi.addItem(sourceInfo);
            }
+8 −3
Original line number Diff line number Diff line
@@ -262,14 +262,19 @@ public class FolderIcon extends FrameLayout implements FolderListener {
        }
    };

    public Drawable prepareCreate(final View destView) {
        Drawable animateDrawable = getTopDrawable((TextView) destView);
        computePreviewDrawingParams(animateDrawable.getIntrinsicWidth(),
                destView.getMeasuredWidth());
        return animateDrawable;
    }

    public void performCreateAnimation(final ShortcutInfo destInfo, final View destView,
            final ShortcutInfo srcInfo, final DragView srcView, Rect dstRect,
            float scaleRelativeToDragLayer, Runnable postAnimationRunnable) {

        // These correspond two the drawable and view that the icon was dropped _onto_
        Drawable animateDrawable = getTopDrawable((TextView) destView);
        computePreviewDrawingParams(animateDrawable.getIntrinsicWidth(),
                destView.getMeasuredWidth());
        Drawable animateDrawable = prepareCreate(destView);

        mReferenceDrawable = animateDrawable;

+1 −1
Original line number Diff line number Diff line
@@ -197,7 +197,7 @@ public class FolderPagedView extends PagedView {
     */
    public int allocateRankForNewItem(ShortcutInfo info) {
        int rank = getItemCount();
        ArrayList<View> views = new ArrayList<View>(mFolder.getItemsInReadingOrder());
        ArrayList<View> views = new ArrayList<>(mFolder.getItemsInReadingOrder());
        views.add(rank, null);
        arrangeChildren(views, views.size(), false);
        setCurrentPage(rank / mMaxItemsPerPage);