summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2015-03-16 02:46:01 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2015-03-16 02:46:01 -0700
commitaafc7280e82fed4ac85c4d76fc8bde01a8d4dd16 (patch)
treed56b30c54a0c90141dfe1f8c15860b7e8bfecf68
parent4df6769ff26b55b79b7be0ddd7aa684bf2ec9797 (diff)
parentcb11520577f0c1e9c6e765e54488bf64684f36be (diff)
downloadandroid_packages_apps_Dialer-aafc7280e82fed4ac85c4d76fc8bde01a8d4dd16.tar.gz
android_packages_apps_Dialer-aafc7280e82fed4ac85c4d76fc8bde01a8d4dd16.tar.bz2
android_packages_apps_Dialer-aafc7280e82fed4ac85c4d76fc8bde01a8d4dd16.zip
Merge "Fixing overlap pane offset when shortcut card disappears."
-rw-r--r--src/com/android/dialer/list/ListsFragment.java7
-rw-r--r--src/com/android/dialer/widget/OverlappingPaneLayout.java16
2 files changed, 23 insertions, 0 deletions
diff --git a/src/com/android/dialer/list/ListsFragment.java b/src/com/android/dialer/list/ListsFragment.java
index 024e3d914..734c0b9ed 100644
--- a/src/com/android/dialer/list/ListsFragment.java
+++ b/src/com/android/dialer/list/ListsFragment.java
@@ -90,6 +90,7 @@ public class ListsFragment extends AnalyticsFragment implements CallLogQueryHand
private ShortcutCardsAdapter mMergedAdapter;
private CallLogAdapter mCallLogAdapter;
private CallLogQueryHandler mCallLogQueryHandler;
+ private OverlappingPaneLayout mOverlappingPaneLayout;
private boolean mIsPanelOpen = true;
@@ -303,6 +304,7 @@ public class ListsFragment extends AnalyticsFragment implements CallLogQueryHand
mRemoveViewContent = parentView.findViewById(R.id.remove_view_content);
setupPaneLayout((OverlappingPaneLayout) parentView);
+ mOverlappingPaneLayout = (OverlappingPaneLayout) parentView;
return parentView;
}
@@ -323,6 +325,11 @@ public class ListsFragment extends AnalyticsFragment implements CallLogQueryHand
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;
}
diff --git a/src/com/android/dialer/widget/OverlappingPaneLayout.java b/src/com/android/dialer/widget/OverlappingPaneLayout.java
index 8f911c2da..167b849f2 100644
--- a/src/com/android/dialer/widget/OverlappingPaneLayout.java
+++ b/src/com/android/dialer/widget/OverlappingPaneLayout.java
@@ -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;