Merge "Add getter methods to the line breaker" into main
diff --git a/core/api/current.txt b/core/api/current.txt
index 6c5a5c9..8a99e45a 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -18087,6 +18087,11 @@
 
   public class LineBreaker {
     method @NonNull public android.graphics.text.LineBreaker.Result computeLineBreaks(@NonNull android.graphics.text.MeasuredText, @NonNull android.graphics.text.LineBreaker.ParagraphConstraints, @IntRange(from=0) int);
+    method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getBreakStrategy();
+    method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getHyphenationFrequency();
+    method @FlaggedApi("com.android.text.flags.missing_getter_apis") @Nullable public int[] getIndents();
+    method @FlaggedApi("com.android.text.flags.missing_getter_apis") public int getJustificationMode();
+    method @FlaggedApi("com.android.text.flags.missing_getter_apis") public boolean getUseBoundsForWidth();
     field public static final int BREAK_STRATEGY_BALANCED = 2; // 0x2
     field public static final int BREAK_STRATEGY_HIGH_QUALITY = 1; // 0x1
     field public static final int BREAK_STRATEGY_SIMPLE = 0; // 0x0
diff --git a/core/java/android/text/flags/flags.aconfig b/core/java/android/text/flags/flags.aconfig
index 56df328..70dc300e 100644
--- a/core/java/android/text/flags/flags.aconfig
+++ b/core/java/android/text/flags/flags.aconfig
@@ -181,3 +181,13 @@
     purpose: PURPOSE_BUGFIX
   }
 }
+
+flag {
+  name: "missing_getter_apis"
+  namespace: "text"
+  description: "Fix the lint warning about missing getters."
+  bug: "340875345"
+  metadata {
+    purpose: PURPOSE_BUGFIX
+  }
+}
diff --git a/graphics/java/android/graphics/text/LineBreaker.java b/graphics/java/android/graphics/text/LineBreaker.java
index d8cf21e..94de066 100644
--- a/graphics/java/android/graphics/text/LineBreaker.java
+++ b/graphics/java/android/graphics/text/LineBreaker.java
@@ -18,6 +18,8 @@
 
 import static com.android.text.flags.Flags.FLAG_USE_BOUNDS_FOR_WIDTH;
 import static com.android.text.flags.Flags.FLAG_LETTER_SPACING_JUSTIFICATION;
+import static com.android.text.flags.Flags.FLAG_MISSING_GETTER_APIS;
+
 
 import android.annotation.FlaggedApi;
 import android.annotation.FloatRange;
@@ -488,6 +490,12 @@
 
     private final long mNativePtr;
 
+    private final @BreakStrategy int mBreakStrategy;
+    private final @HyphenationFrequency int mHyphenationFrequency;
+    private final @JustificationMode int mJustificationMode;
+    private final int[] mIndents;
+    private final boolean mUseBoundsForWidth;
+
     /**
      * Use Builder instead.
      */
@@ -497,6 +505,67 @@
         mNativePtr = nInit(breakStrategy, hyphenationFrequency,
                 justify == JUSTIFICATION_MODE_INTER_WORD, indents, useBoundsForWidth);
         NoImagePreloadHolder.sRegistry.registerNativeAllocation(this, mNativePtr);
+
+        mBreakStrategy = breakStrategy;
+        mHyphenationFrequency = hyphenationFrequency;
+        mJustificationMode = justify;
+        mIndents = indents;
+        mUseBoundsForWidth = useBoundsForWidth;
+    }
+
+    /**
+     * Returns the break strategy used for this line breaker.
+     *
+     * @return the break strategy used for this line breaker.
+     * @see Builder#setBreakStrategy(int)
+     */
+    @FlaggedApi(FLAG_MISSING_GETTER_APIS)
+    public @BreakStrategy int getBreakStrategy() {
+        return mBreakStrategy;
+    }
+
+    /**
+     * Returns the hyphenation frequency used for this line breaker.
+     *
+     * @return the hyphenation frequency used for this line breaker.
+     * @see Builder#setHyphenationFrequency(int)
+     */
+    @FlaggedApi(FLAG_MISSING_GETTER_APIS)
+    public @HyphenationFrequency int getHyphenationFrequency() {
+        return mHyphenationFrequency;
+    }
+
+    /**
+     * Returns the justification mode used for this line breaker.
+     *
+     * @return the justification mode used for this line breaker.
+     * @see Builder#setJustificationMode(int)
+     */
+    @FlaggedApi(FLAG_MISSING_GETTER_APIS)
+    public @JustificationMode int getJustificationMode() {
+        return mJustificationMode;
+    }
+
+    /**
+     * Returns the indents used for this line breaker.
+     *
+     * @return the indents used for this line breaker.
+     * @see Builder#setIndents(int[])
+     */
+    @FlaggedApi(FLAG_MISSING_GETTER_APIS)
+    public @Nullable int[] getIndents() {
+        return mIndents;
+    }
+
+    /**
+     * Returns true if this line breaker uses bounds as width for line breaking.
+     *
+     * @return true if this line breaker uses bounds as width for line breaking.
+     * @see Builder#setUseBoundsForWidth(boolean)
+     */
+    @FlaggedApi(FLAG_MISSING_GETTER_APIS)
+    public boolean getUseBoundsForWidth() {
+        return mUseBoundsForWidth;
     }
 
     /**