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

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

Rename feature flag for inter character justification

Bug: 322228767
Test: TreeHugger
Change-Id: Iea07f64362537123a702928aeb0becff8cef9f71
parent e41e4419
Loading
Loading
Loading
Loading
+5 −5
Original line number Original line Diff line number Diff line
@@ -16516,8 +16516,8 @@ package android.graphics {
    field public static final int START_HYPHEN_EDIT_NO_EDIT = 0; // 0x0
    field public static final int START_HYPHEN_EDIT_NO_EDIT = 0; // 0x0
    field public static final int STRIKE_THRU_TEXT_FLAG = 16; // 0x10
    field public static final int STRIKE_THRU_TEXT_FLAG = 16; // 0x10
    field public static final int SUBPIXEL_TEXT_FLAG = 128; // 0x80
    field public static final int SUBPIXEL_TEXT_FLAG = 128; // 0x80
    field @FlaggedApi("com.android.text.flags.inter_character_justification") public static final int TEXT_RUN_FLAG_LEFT_EDGE = 8192; // 0x2000
    field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int TEXT_RUN_FLAG_LEFT_EDGE = 8192; // 0x2000
    field @FlaggedApi("com.android.text.flags.inter_character_justification") public static final int TEXT_RUN_FLAG_RIGHT_EDGE = 16384; // 0x4000
    field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int TEXT_RUN_FLAG_RIGHT_EDGE = 16384; // 0x4000
    field public static final int UNDERLINE_TEXT_FLAG = 8; // 0x8
    field public static final int UNDERLINE_TEXT_FLAG = 8; // 0x8
  }
  }
@@ -17994,7 +17994,7 @@ package android.graphics.text {
    field public static final int HYPHENATION_FREQUENCY_FULL = 2; // 0x2
    field public static final int HYPHENATION_FREQUENCY_FULL = 2; // 0x2
    field public static final int HYPHENATION_FREQUENCY_NONE = 0; // 0x0
    field public static final int HYPHENATION_FREQUENCY_NONE = 0; // 0x0
    field public static final int HYPHENATION_FREQUENCY_NORMAL = 1; // 0x1
    field public static final int HYPHENATION_FREQUENCY_NORMAL = 1; // 0x1
    field @FlaggedApi("com.android.text.flags.inter_character_justification") public static final int JUSTIFICATION_MODE_INTER_CHARACTER = 2; // 0x2
    field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int JUSTIFICATION_MODE_INTER_CHARACTER = 2; // 0x2
    field public static final int JUSTIFICATION_MODE_INTER_WORD = 1; // 0x1
    field public static final int JUSTIFICATION_MODE_INTER_WORD = 1; // 0x1
    field public static final int JUSTIFICATION_MODE_NONE = 0; // 0x0
    field public static final int JUSTIFICATION_MODE_NONE = 0; // 0x0
  }
  }
@@ -47216,7 +47216,7 @@ package android.text {
    method public int getLineForOffset(int);
    method public int getLineForOffset(int);
    method public int getLineForVertical(int);
    method public int getLineForVertical(int);
    method public float getLineLeft(int);
    method public float getLineLeft(int);
    method @FlaggedApi("com.android.text.flags.inter_character_justification") @IntRange(from=0) public int getLineLetterSpacingUnitCount(@IntRange(from=0) int, boolean);
    method @FlaggedApi("com.android.text.flags.letter_spacing_justification") @IntRange(from=0) public int getLineLetterSpacingUnitCount(@IntRange(from=0) int, boolean);
    method public float getLineMax(int);
    method public float getLineMax(int);
    method public float getLineRight(int);
    method public float getLineRight(int);
    method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final float getLineSpacingAmount();
    method @FlaggedApi("com.android.text.flags.use_bounds_for_width") public final float getLineSpacingAmount();
@@ -47267,7 +47267,7 @@ package android.text {
    field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_ANY_OVERLAP;
    field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_ANY_OVERLAP;
    field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_CONTAINS_ALL;
    field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_CONTAINS_ALL;
    field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_CONTAINS_CENTER;
    field @NonNull public static final android.text.Layout.TextInclusionStrategy INCLUSION_STRATEGY_CONTAINS_CENTER;
    field @FlaggedApi("com.android.text.flags.inter_character_justification") public static final int JUSTIFICATION_MODE_INTER_CHARACTER = 2; // 0x2
    field @FlaggedApi("com.android.text.flags.letter_spacing_justification") public static final int JUSTIFICATION_MODE_INTER_CHARACTER = 2; // 0x2
    field public static final int JUSTIFICATION_MODE_INTER_WORD = 1; // 0x1
    field public static final int JUSTIFICATION_MODE_INTER_WORD = 1; // 0x1
    field public static final int JUSTIFICATION_MODE_NONE = 0; // 0x0
    field public static final int JUSTIFICATION_MODE_NONE = 0; // 0x0
  }
  }
+3 −3
Original line number Original line Diff line number Diff line
@@ -18,7 +18,7 @@ package android.text;


import static com.android.text.flags.Flags.FLAG_FIX_LINE_HEIGHT_FOR_LOCALE;
import static com.android.text.flags.Flags.FLAG_FIX_LINE_HEIGHT_FOR_LOCALE;
import static com.android.text.flags.Flags.FLAG_USE_BOUNDS_FOR_WIDTH;
import static com.android.text.flags.Flags.FLAG_USE_BOUNDS_FOR_WIDTH;
import static com.android.text.flags.Flags.FLAG_INTER_CHARACTER_JUSTIFICATION;
import static com.android.text.flags.Flags.FLAG_LETTER_SPACING_JUSTIFICATION;


import android.annotation.FlaggedApi;
import android.annotation.FlaggedApi;
import android.annotation.FloatRange;
import android.annotation.FloatRange;
@@ -172,7 +172,7 @@ public abstract class Layout {
    /**
    /**
     * Value for justification mode indicating the text is justified by stretching letter spacing.
     * Value for justification mode indicating the text is justified by stretching letter spacing.
     */
     */
    @FlaggedApi(FLAG_INTER_CHARACTER_JUSTIFICATION)
    @FlaggedApi(FLAG_LETTER_SPACING_JUSTIFICATION)
    public static final int JUSTIFICATION_MODE_INTER_CHARACTER =
    public static final int JUSTIFICATION_MODE_INTER_CHARACTER =
            LineBreaker.JUSTIFICATION_MODE_INTER_CHARACTER;
            LineBreaker.JUSTIFICATION_MODE_INTER_CHARACTER;


@@ -1831,7 +1831,7 @@ public abstract class Layout {
     * @return the number of cluster count in the line.
     * @return the number of cluster count in the line.
     */
     */
    @IntRange(from = 0)
    @IntRange(from = 0)
    @FlaggedApi(FLAG_INTER_CHARACTER_JUSTIFICATION)
    @FlaggedApi(FLAG_LETTER_SPACING_JUSTIFICATION)
    public int getLineLetterSpacingUnitCount(@IntRange(from = 0) int line,
    public int getLineLetterSpacingUnitCount(@IntRange(from = 0) int line,
            boolean includeTrailingWhitespace) {
            boolean includeTrailingWhitespace) {
        final int start = getLineStart(line);
        final int start = getLineStart(line);
+1 −1
Original line number Original line Diff line number Diff line
@@ -305,7 +305,7 @@ public class TextLine {
            }
            }
            mAddedWordSpacingInPx = (justifyWidth - width) / spaces;
            mAddedWordSpacingInPx = (justifyWidth - width) / spaces;
            mAddedLetterSpacingInPx = 0;
            mAddedLetterSpacingInPx = 0;
        } else {  // justificationMode == Layout.JUSTIFICATION_MODE_INTER_CHARACTER
        } else {  // justificationMode == Layout.JUSTIFICATION_MODE_LETTER_SPACING
            LineInfo lineInfo = new LineInfo();
            LineInfo lineInfo = new LineInfo();
            float width = Math.abs(measure(end, false, null, null, lineInfo));
            float width = Math.abs(measure(end, false, null, null, lineInfo));


+1 −1
Original line number Original line Diff line number Diff line
@@ -77,7 +77,7 @@ flag {
}
}


flag {
flag {
  name: "inter_character_justification"
  name: "letter_spacing_justification"
  namespace: "text"
  namespace: "text"
  description: "A feature flag that implement inter character justification."
  description: "A feature flag that implement inter character justification."
  bug: "283193133"
  bug: "283193133"
+4 −4
Original line number Original line Diff line number Diff line
@@ -21,7 +21,7 @@ import android.platform.test.annotations.RequiresFlagsEnabled
import android.platform.test.flag.junit.DeviceFlagsValueProvider
import android.platform.test.flag.junit.DeviceFlagsValueProvider
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.filters.SmallTest
import androidx.test.filters.SmallTest
import com.android.text.flags.Flags.FLAG_INTER_CHARACTER_JUSTIFICATION
import com.android.text.flags.Flags.FLAG_LETTER_SPACING_JUSTIFICATION
import com.google.common.truth.Truth.assertThat
import com.google.common.truth.Truth.assertThat
import org.junit.Rule
import org.junit.Rule
import org.junit.Test
import org.junit.Test
@@ -40,7 +40,7 @@ class TextLineLetterSpacingTest {
    @JvmField
    @JvmField
    val mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule()
    val mCheckFlagsRule = DeviceFlagsValueProvider.createCheckFlagsRule()


    @RequiresFlagsEnabled(FLAG_INTER_CHARACTER_JUSTIFICATION)
    @RequiresFlagsEnabled(FLAG_LETTER_SPACING_JUSTIFICATION)
    @Test
    @Test
    fun calculateRunFlagTest() {
    fun calculateRunFlagTest() {
        // Only one Bidi run
        // Only one Bidi run
@@ -84,7 +84,7 @@ class TextLineLetterSpacingTest {
                .isEqualTo(LEFT_EDGE)
                .isEqualTo(LEFT_EDGE)
    }
    }


    @RequiresFlagsEnabled(FLAG_INTER_CHARACTER_JUSTIFICATION)
    @RequiresFlagsEnabled(FLAG_LETTER_SPACING_JUSTIFICATION)
    @Test
    @Test
    fun resolveRunFlagForSubSequenceTest() {
    fun resolveRunFlagForSubSequenceTest() {
        val runStart = 5
        val runStart = 5
Loading