public void showIndicator(View parent, Point point) {
        if (isShowing()) {
            mPopupView.mMarker.animateOpen();
            return;
        }

        IBinder windowToken = parent.getWindowToken();
        if (windowToken != null) {
            WindowManager.LayoutParams p = createPopupLayout(windowToken);

            /** Raw bit controlling whether the layout direction is relative or not (START/END instead of
             * absolute LEFT/RIGHT).
             */
            int RELATIVE_LAYOUT_DIRECTION = 0x00800000;

            /** Push object to x-axis position at the start of its container, not changing its size. */
            int START = RELATIVE_LAYOUT_DIRECTION | Gravity.LEFT;

            p.gravity = Gravity.TOP | START;
            updateLayoutParamsForPosition(parent, p, point.y);
            mShowing = true;

            translateViewIntoPosition(point.x);
            invokePopup(p);
        }
    }
We want the Floater to be full-width because the contents will be moved from side to side.
We may/should change this in the future to use just the PARENT View width and/or pass it in the constructor
caprice/ui/src/main/java/net/qiujuer/genius/ui/widget/popup/PopupIndicator.java