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

Commit f48e83b3 authored by Gilles Debunne's avatar Gilles Debunne
Browse files

Fix for Blink in TextView.

The callback is removed when the window is detached. Prevents weak references to
the TextView from being kept.

No longer created for non editable texts (!).

Hiding the cursor handle when cursor is hidden.

Change-Id: Ic92f6cfc5b6ef6460f1edc6b9a564e4153d9c40f
parent 9aa6ea83
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -3933,6 +3933,9 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
            hideError();
        }

        if (mBlink != null) {
            mBlink.cancel();
        }
        hideControllers();
    }

@@ -6282,11 +6285,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
        mCursorVisible = visible;
        invalidate();

        if (visible) {
        makeBlink();
        } else if (mBlink != null) {
            mBlink.removeCallbacks(mBlink);
        }

        // InsertionPointCursorController depends on mCursorVisible
        prepareCursorControllers();
@@ -6782,7 +6781,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
    }

    private void makeBlink() {
        if (!mCursorVisible) {
        if (!mCursorVisible || !isTextEditable()) {
            if (mBlink != null) {
                mBlink.removeCallbacks(mBlink);
            }
@@ -7134,6 +7133,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
                mLayout != null;

        if (!mInsertionControllerEnabled) {
            hideInsertionPointCursorController();
            mInsertionPointCursorController = null;
        }