summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2017-04-06 05:20:11 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2017-04-06 05:20:18 +0000
commit0c5dfd90b8d403383b8fbb800fd637b6fc09fbfa (patch)
tree27d013a18cc18638a4e4e74b8f9aa14e2000cea5
parent0b7d43c98506fad5ea37db4f969db5c61b2ab4e2 (diff)
parentadf08d4eb9de23a3f5ebff681f48bce6ab5b645a (diff)
Merge "Fix anchor overlap handling in ListPopupWindow" into oc-dev
-rw-r--r--core/java/android/widget/ListPopupWindow.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/core/java/android/widget/ListPopupWindow.java b/core/java/android/widget/ListPopupWindow.java
index ab4cce479005..2e8faeec6f13 100644
--- a/core/java/android/widget/ListPopupWindow.java
+++ b/core/java/android/widget/ListPopupWindow.java
@@ -76,6 +76,7 @@ public class ListPopupWindow implements ShowableListMenu {
private boolean mDropDownVerticalOffsetSet;
private boolean mIsAnimatedFromAnchor = true;
private boolean mOverlapAnchor;
+ private boolean mOverlapAnchorSet;
private int mDropDownGravity = Gravity.NO_GRAVITY;
@@ -681,7 +682,9 @@ public class ListPopupWindow implements ShowableListMenu {
mPopup.setOutsideTouchable(!mForceIgnoreOutsideTouch && !mDropDownAlwaysVisible);
mPopup.setTouchInterceptor(mTouchInterceptor);
mPopup.setEpicenterBounds(mEpicenterBounds);
- mPopup.setOverlapAnchor(mOverlapAnchor);
+ if (mOverlapAnchorSet) {
+ mPopup.setOverlapAnchor(mOverlapAnchor);
+ }
mPopup.showAsDropDown(getAnchorView(), mDropDownHorizontalOffset,
mDropDownVerticalOffset, mDropDownGravity);
mDropDownList.setSelection(ListView.INVALID_POSITION);
@@ -1259,6 +1262,7 @@ public class ListPopupWindow implements ShowableListMenu {
* @hide
*/
public void setOverlapAnchor(boolean overlap) {
+ mOverlapAnchorSet = true;
mOverlapAnchor = overlap;
}