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

Commit 5a7bf6e0 authored by Haoyu Zhang's avatar Haoyu Zhang
Browse files

Fix insert mode draws extra rectangle at the end of the first line

Bug: 276784691
Test: manually tested
Change-Id: If0433c9bb3744d4bd0385c11b6d5c37d299af196
parent 7b888dcc
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -8095,12 +8095,14 @@ public class Editor {
        private boolean mIsInsertModeActive;
        private InsertModeTransformationMethod mInsertModeTransformationMethod;
        private final Paint mHighlightPaint;
        private final Path mHighlightPath;

        InsertModeController(@NonNull TextView textView) {
            mTextView = Objects.requireNonNull(textView);
            mIsInsertModeActive = false;
            mInsertModeTransformationMethod = null;
            mHighlightPaint = new Paint();
            mHighlightPath = new Path();

            // The highlight color is supposed to be 12% of the color primary40. We can't
            // directly access Material 3 theme. But because Material 3 sets the colorPrimary to
@@ -8168,10 +8170,8 @@ public class Editor {
                        ((InsertModeTransformationMethod.TransformedText) transformedText);
                final int highlightStart = insertModeTransformedText.getHighlightStart();
                final int highlightEnd = insertModeTransformedText.getHighlightEnd();
                final Layout.SelectionRectangleConsumer consumer =
                        (left, top, right, bottom, textSelectionLayout) ->
                                canvas.drawRect(left, top, right, bottom, mHighlightPaint);
                layout.getSelection(highlightStart, highlightEnd, consumer);
                layout.getSelectionPath(highlightStart, highlightEnd, mHighlightPath);
                canvas.drawPath(mHighlightPath, mHighlightPaint);
            }
        }