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

Commit bdd2c25e authored by Vladislav Kaznacheev's avatar Vladislav Kaznacheev
Browse files

Fix horizontal position of tooltip in a Dialog

When calculating the horizontal offset, use the top level view's width
instead of getWindowVisibleDisplayFrame (which is misleading for Dialog
windows).

Bug: 69911773
Test: manual
Change-Id: I040917d5beb123cc137da5a0c926a45a12e66234
parent dd74774c
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -142,7 +142,7 @@ public class TooltipPopup {
        mTmpAnchorPos[1] -= mTmpAppPos[1];
        // mTmpAnchorPos is now relative to the main app window.

        outParams.x = mTmpAnchorPos[0] + offsetX - mTmpDisplayFrame.width() / 2;
        outParams.x = mTmpAnchorPos[0] + offsetX - appView.getWidth() / 2;

        final int spec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED);
        mContentView.measure(spec, spec);
@@ -157,6 +157,9 @@ public class TooltipPopup {
                outParams.y = yBelow;
            }
        } else {
            // Use mTmpDisplayFrame.height() as the lower boundary instead of appView.getHeight(),
            // as the latter includes the navigation bar, and tooltips do not look good over
            // the navigation bar.
            if (yBelow + tooltipHeight <= mTmpDisplayFrame.height()) {
                outParams.y = yBelow;
            } else {