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

Commit d986cfd6 authored by dongwan0605.kim's avatar dongwan0605.kim Committed by android-build-merger
Browse files

Fix RTL issue of ImageFloatingTextView am: dd8611fc

am: 4d590a91

Change-Id: I6a563e996bc93dd8f3a53b48c185319fdd1886de
parents b70c68f3 4d590a91
Loading
Loading
Loading
Loading
+17 −1
Original line number Diff line number Diff line
@@ -40,6 +40,9 @@ public class ImageFloatingTextView extends TextView {
    /** Number of lines from the top to indent */
    private int mIndentLines;

    /** Resolved layout direction */
    private int mResolvedDirection = LAYOUT_DIRECTION_UNDEFINED;

    public ImageFloatingTextView(Context context) {
        this(context, null);
    }
@@ -82,7 +85,7 @@ public class ImageFloatingTextView extends TextView {
                margins[i] = endMargin;
            }
        }
        if (getLayoutDirection() == LAYOUT_DIRECTION_RTL) {
        if (mResolvedDirection == LAYOUT_DIRECTION_RTL) {
            builder.setIndents(margins, null);
        } else {
            builder.setIndents(null, margins);
@@ -91,6 +94,19 @@ public class ImageFloatingTextView extends TextView {
        return builder.build();
    }

    @Override
    public void onRtlPropertiesChanged(int layoutDirection) {
        super.onRtlPropertiesChanged(layoutDirection);

        if (layoutDirection != mResolvedDirection && isLayoutDirectionResolved()) {
            mResolvedDirection = layoutDirection;
            if (mIndentLines > 0) {
                // Invalidate layout.
                setHint(getHint());
            }
        }
    }

    @RemotableViewMethod
    public void setHasImage(boolean hasImage) {
        setNumIndentLines(hasImage ? 2 : 0);