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

Commit ba90fc54 authored by Seigo Nonaka's avatar Seigo Nonaka
Browse files

Remove flag performance workaround

The performance of obtaining flag state looks like resolved.
Removing TextFlags and ClientFlags classes which was added for
workaround of poor performance of flag access.

Bug: N/A
Test: N/A
Flag: EXEMPT refactor
Change-Id: I148e095a5f4f961af90e3a4fbee7bf1c6c2656c4
parent b07f334c
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -30,6 +30,8 @@ import android.graphics.RectF;
import android.graphics.text.LineBreakConfig;
import android.text.style.ParagraphStyle;

import com.android.text.flags.Flags;

/**
 * A BoringLayout is a very simple Layout implementation for text that
 * fits on a single line and is all left-to-right characters.
@@ -589,7 +591,7 @@ public class BoringLayout extends Layout implements TextUtils.EllipsizeCallback
            fm.reset();
        }

        if (ClientFlags.fixLineHeightForLocale()) {
        if (Flags.fixLineHeightForLocale()) {
            if (minimumFontMetrics != null) {
                fm.set(minimumFontMetrics);
                // Because the font metrics is provided by public APIs, adjust the top/bottom with
+5 −3
Original line number Diff line number Diff line
@@ -42,6 +42,8 @@ import android.text.style.MetricAffectingSpan;
import android.text.style.ReplacementSpan;
import android.util.Pools.SynchronizedPool;

import com.android.text.flags.Flags;

import java.util.Arrays;

/**
@@ -199,7 +201,7 @@ public class MeasuredParagraph {
     * @hide
     */
    public @Layout.Direction int getParagraphDir() {
        if (ClientFlags.icuBidiMigration()) {
        if (Flags.icuBidiMigration()) {
            if (mBidi == null) {
                return Layout.DIR_LEFT_TO_RIGHT;
            }
@@ -217,7 +219,7 @@ public class MeasuredParagraph {
     */
    public Directions getDirections(@IntRange(from = 0) int start,  // inclusive
                                    @IntRange(from = 0) int end) {  // exclusive
        if (ClientFlags.icuBidiMigration()) {
        if (Flags.icuBidiMigration()) {
            // Easy case: mBidi == null means the text is all LTR and no bidi suppot is needed.
            if (mBidi == null) {
                return Layout.DIRS_ALL_LEFT_TO_RIGHT;
@@ -679,7 +681,7 @@ public class MeasuredParagraph {
            }
        }

        if (ClientFlags.icuBidiMigration()) {
        if (Flags.icuBidiMigration()) {
            if ((textDir == TextDirectionHeuristics.LTR
                    || textDir == TextDirectionHeuristics.FIRSTSTRONG_LTR
                    || textDir == TextDirectionHeuristics.ANYRTL_LTR)
+2 −1
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ import android.util.Pools.SynchronizedPool;

import com.android.internal.util.ArrayUtils;
import com.android.internal.util.GrowingArrayUtils;
import com.android.text.flags.Flags;

import java.util.Arrays;

@@ -803,7 +804,7 @@ public class StaticLayout extends Layout {
        final int defaultAscent;
        final int defaultDescent;
        int defaultBottom;
        if (ClientFlags.fixLineHeightForLocale() && b.mMinimumFontMetrics != null) {
        if (Flags.fixLineHeightForLocale() && b.mMinimumFontMetrics != null) {
            defaultTop = (int) Math.floor(b.mMinimumFontMetrics.top);
            defaultAscent = Math.round(b.mMinimumFontMetrics.ascent);
            defaultDescent = Math.round(b.mMinimumFontMetrics.descent);
+12 −28
Original line number Diff line number Diff line
@@ -76,7 +76,6 @@ import android.text.SpannableStringBuilder;
import android.text.Spanned;
import android.text.SpannedString;
import android.text.StaticLayout;
import android.text.TextFlags;
import android.text.TextUtils;
import android.text.method.InsertModeTransformationMethod;
import android.text.method.KeyListener;
@@ -471,7 +470,6 @@ public class Editor {
    private static final int LINE_CHANGE_SLOP_MIN_DP = 8;
    private int mLineChangeSlopMax;
    private int mLineChangeSlopMin;
    private boolean mUseNewContextMenu;

    private final AccessibilitySmartActions mA11ySmartActions;
    private InsertModeController mInsertModeController;
@@ -502,9 +500,6 @@ public class Editor {
        mLineSlopRatio = AppGlobals.getFloatCoreSetting(
                WidgetFlags.KEY_LINE_SLOP_RATIO,
                WidgetFlags.LINE_SLOP_RATIO_DEFAULT);
        mUseNewContextMenu = AppGlobals.getIntCoreSetting(
                TextFlags.KEY_ENABLE_NEW_CONTEXT_MENU,
                TextFlags.ENABLE_NEW_CONTEXT_MENU_DEFAULT ? 1 : 0) != 0;
        if (TextView.DEBUG_CURSOR) {
            logCursor("Editor", "Cursor drag from anywhere is %s.",
                    mFlagCursorDragFromAnywhereEnabled ? "enabled" : "disabled");
@@ -3216,15 +3211,10 @@ public class Editor {
        final int menuItemOrderCut = 4;
        final int menuItemOrderCopy = 5;
        final int menuItemOrderPaste = 6;
        final int menuItemOrderPasteAsPlainText;
        final int menuItemOrderSelectAll;
        final int menuItemOrderShare;
        final int menuItemOrderAutofill;
        if (mUseNewContextMenu) {
            menuItemOrderPasteAsPlainText = 7;
            menuItemOrderSelectAll = 8;
            menuItemOrderShare = 9;
            menuItemOrderAutofill = 10;
        final int menuItemOrderPasteAsPlainText = 7;
        final int menuItemOrderSelectAll = 8;
        final int menuItemOrderShare = 9;
        final int menuItemOrderAutofill = 10;

        menu.setOptionalIconsVisible(true);
        menu.setGroupDividerEnabled(true);
@@ -3233,12 +3223,6 @@ public class Editor {

        final int keyboard = mTextView.getResources().getConfiguration().keyboard;
        menu.setQwertyMode(keyboard == Configuration.KEYBOARD_QWERTY);
        } else {
            menuItemOrderShare = 7;
            menuItemOrderSelectAll = 8;
            menuItemOrderAutofill = 10;
            menuItemOrderPasteAsPlainText = 11;
        }

        final TypedArray a = mTextView.getContext().obtainStyledAttributes(new int[] {
                // TODO: Make Undo/Redo be public attribute.
+2 −3
Original line number Diff line number Diff line
@@ -105,7 +105,6 @@ import android.os.SystemClock;
import android.os.UserHandle;
import android.provider.Settings;
import android.text.BoringLayout;
import android.text.ClientFlags;
import android.text.DynamicLayout;
import android.text.Editable;
import android.text.GetChars;
@@ -1659,7 +1658,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
        if (!hasUseBoundForWidthValue) {
            if (CompatChanges.isChangeEnabled(USE_BOUNDS_FOR_WIDTH)) {
                mUseBoundsForWidth = ClientFlags.useBoundsForWidth();
                mUseBoundsForWidth = Flags.useBoundsForWidth();
            } else {
                mUseBoundsForWidth = false;
            }
@@ -9732,7 +9731,7 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
                break;
            case KeyEvent.KEYCODE_ESCAPE:
                if (com.android.text.flags.Flags.escapeClearsFocus() && event.hasNoModifiers()) {
                if (Flags.escapeClearsFocus() && event.hasNoModifiers()) {
                    if (mEditor != null && mEditor.getTextActionMode() != null) {
                        stopTextActionMode();
                        return KEY_EVENT_HANDLED;
Loading