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

Commit 935dc32e authored by Tyler Gunn's avatar Tyler Gunn Committed by Android Git Automerger
Browse files

am 97d15c72: Merge "Fixing overlap pane offset when shortcut card disappears." into lmp-mr1-dev

* commit '97d15c72':
  Fixing overlap pane offset when shortcut card disappears.
parents 375de525 97d15c72
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -90,6 +90,7 @@ public class ListsFragment extends Fragment implements CallLogQueryHandler.Liste
    private ShortcutCardsAdapter mMergedAdapter;
    private CallLogAdapter mCallLogAdapter;
    private CallLogQueryHandler mCallLogQueryHandler;
    private OverlappingPaneLayout mOverlappingPaneLayout;

    private boolean mIsPanelOpen = true;

@@ -302,6 +303,7 @@ public class ListsFragment extends Fragment implements CallLogQueryHandler.Liste
        mRemoveViewContent = parentView.findViewById(R.id.remove_view_content);

        setupPaneLayout((OverlappingPaneLayout) parentView);
        mOverlappingPaneLayout = (OverlappingPaneLayout) parentView;

        return parentView;
    }
@@ -322,6 +324,11 @@ public class ListsFragment extends Fragment implements CallLogQueryHandler.Liste

        mCallLogAdapter.changeCursor(cursor);
        mMergedAdapter.notifyDataSetChanged();

        // Refresh the overlapping pane to ensure that any changes in the shortcut card height
        // are appropriately reflected in the overlap position.
        mOverlappingPaneLayout.refresh();

        // Return true; took ownership of cursor
        return true;
    }
+16 −0
Original line number Diff line number Diff line
@@ -717,6 +717,22 @@ public class OverlappingPaneLayout extends ViewGroup {
        return wantTouchEvents;
    }

    /**
     * Refreshes the {@link OverlappingPaneLayout} be attempting to re-open or re-close the pane.
     * This ensures that the overlapping pane is repositioned based on any changes to the view
     * which is being overlapped.
     * <p>
     * The {@link #openPane()} and {@link #closePane()} methods do not perform any animation if the
     * pane has already been positioned appropriately.
     */
    public void refresh() {
        if (isOpen()) {
            openPane();
        } else {
            closePane();
        }
    }

    private boolean closePane(View pane, int initialVelocity) {
        if (mFirstLayout || smoothSlideTo(0.f, initialVelocity)) {
            mPreservedOpenState = false;