From 0780f3a0733ea8ff4e8a93ca1263d92e24a6e9bb Mon Sep 17 00:00:00 2001 From: Abodunrinwa Toki Date: Tue, 3 May 2016 16:25:41 +0100 Subject: [PATCH] Fix FloatingToolbar popup positioning. The FloatingToolbar popup wrongly assumes that the main content panel is wider than the overflow panel. In situations where this assumption fails, the toolbar popup is positioned wrongly within it's container window and items appear truncated. This CL fixes this issue. Bug: 28550367 Change-Id: I41669b1deed7dd34f0b2bd060d14452482d3d36c --- .../java/com/android/internal/widget/FloatingToolbar.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/core/java/com/android/internal/widget/FloatingToolbar.java b/core/java/com/android/internal/widget/FloatingToolbar.java index bc12391a2f79e..8cc8509708915 100644 --- a/core/java/com/android/internal/widget/FloatingToolbar.java +++ b/core/java/com/android/internal/widget/FloatingToolbar.java @@ -909,8 +909,8 @@ public final class FloatingToolbar { mOverflowPanel.setX(0); // align left } else { mContentContainer.setX( // align right - mMarginHorizontal + - mMainPanelSize.getWidth() - containerSize.getWidth()); + mPopupWindow.getWidth() - + containerSize.getWidth() - mMarginHorizontal); mMainPanel.setX(-mContentContainer.getX()); // align right mOverflowButton.setX(0); // align left mOverflowPanel.setX(0); // align left @@ -949,7 +949,9 @@ public final class FloatingToolbar { mOverflowButton.setX(0); // align left mOverflowPanel.setX(0); // align left } else { - mContentContainer.setX(mMarginHorizontal); // align left + mContentContainer.setX( // align right + mPopupWindow.getWidth() - + containerSize.getWidth() - mMarginHorizontal); mMainPanel.setX(0); // align left mOverflowButton.setX( // align right containerSize.getWidth() - mOverflowButtonSize.getWidth());