diff options
35 files changed, 190 insertions, 155 deletions
diff --git a/config/hiddenapi-light-greylist.txt b/config/hiddenapi-light-greylist.txt index 5314cb2117d9..c9d678775c1a 100644 --- a/config/hiddenapi-light-greylist.txt +++ b/config/hiddenapi-light-greylist.txt @@ -3495,160 +3495,6 @@ Landroid/telephony/TelephonyManager;->setSimOperatorNumericForPhone(ILjava/lang/ Landroid/telephony/TelephonyManager;->setSimStateForPhone(ILjava/lang/String;)V Landroid/telephony/TelephonyManager;->setTelephonyProperty(ILjava/lang/String;Ljava/lang/String;)V Landroid/telephony/VoLteServiceState;-><init>(I)V -Landroid/text/AndroidBidi;->bidi(I[C[B)I -Landroid/text/BoringLayout;->isBoring(Ljava/lang/CharSequence;Landroid/text/TextPaint;Landroid/text/TextDirectionHeuristic;Landroid/text/BoringLayout$Metrics;)Landroid/text/BoringLayout$Metrics; -Landroid/text/DynamicLayout;-><init>(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Landroid/text/TextPaint;ILandroid/text/Layout$Alignment;Landroid/text/TextDirectionHeuristic;FFZIIILandroid/text/TextUtils$TruncateAt;I)V -Landroid/text/DynamicLayout;->getBlockEndLines()[I -Landroid/text/DynamicLayout;->getBlockIndices()[I -Landroid/text/DynamicLayout;->getIndexFirstChangedBlock()I -Landroid/text/DynamicLayout;->getNumberOfBlocks()I -Landroid/text/DynamicLayout;->setIndexFirstChangedBlock(I)V -Landroid/text/DynamicLayout;->sStaticLayout:Landroid/text/StaticLayout; -Landroid/text/FontConfig$Family;->getFonts()[Landroid/text/FontConfig$Font; -Landroid/text/FontConfig$Family;->getName()Ljava/lang/String; -Landroid/text/FontConfig$Family;->getVariant()I -Landroid/text/FontConfig$Font;->getAxes()[Landroid/graphics/fonts/FontVariationAxis; -Landroid/text/FontConfig$Font;->getTtcIndex()I -Landroid/text/FontConfig$Font;->getWeight()I -Landroid/text/FontConfig$Font;->isItalic()Z -Landroid/text/FontConfig;->getFamilies()[Landroid/text/FontConfig$Family; -Landroid/text/format/DateFormat;->getTimeFormatString(Landroid/content/Context;)Ljava/lang/String; -Landroid/text/format/DateFormat;->getTimeFormatString(Landroid/content/Context;I)Ljava/lang/String; -Landroid/text/format/DateFormat;->hasDesignator(Ljava/lang/CharSequence;C)Z -Landroid/text/format/DateFormat;->hasSeconds(Ljava/lang/CharSequence;)Z -Landroid/text/format/DateFormat;->is24HourFormat(Landroid/content/Context;I)Z -Landroid/text/format/DateUtils;->formatDuration(J)Ljava/lang/CharSequence; -Landroid/text/format/DateUtils;->formatDuration(JI)Ljava/lang/CharSequence; -Landroid/text/format/Formatter;->formatBytes(Landroid/content/res/Resources;JI)Landroid/text/format/Formatter$BytesResult; -Landroid/text/format/Formatter;->formatShortElapsedTime(Landroid/content/Context;J)Ljava/lang/String; -Landroid/text/format/Formatter;->formatShortElapsedTimeRoundingUpToMinutes(Landroid/content/Context;J)Ljava/lang/String; -Landroid/text/Html;->withinStyle(Ljava/lang/StringBuilder;Ljava/lang/CharSequence;II)V -Landroid/text/InputFilter$LengthFilter;->mMax:I -Landroid/text/Layout$Alignment;->ALIGN_LEFT:Landroid/text/Layout$Alignment; -Landroid/text/Layout$Alignment;->ALIGN_RIGHT:Landroid/text/Layout$Alignment; -Landroid/text/Layout;->DIRS_ALL_LEFT_TO_RIGHT:Landroid/text/Layout$Directions; -Landroid/text/Layout;->DIRS_ALL_RIGHT_TO_LEFT:Landroid/text/Layout$Directions; -Landroid/text/Layout;->DIR_REQUEST_DEFAULT_LTR:I -Landroid/text/Layout;->drawBackground(Landroid/graphics/Canvas;Landroid/graphics/Path;Landroid/graphics/Paint;III)V -Landroid/text/Layout;->drawText(Landroid/graphics/Canvas;II)V -Landroid/text/Layout;->getLineRangeForDraw(Landroid/graphics/Canvas;)J -Landroid/text/Layout;->getPrimaryHorizontal(IZ)F -Landroid/text/Layout;->getSecondaryHorizontal(IZ)F -Landroid/text/Layout;->isLevelBoundary(I)Z -Landroid/text/Layout;->mPaint:Landroid/text/TextPaint; -Landroid/text/Layout;->shouldClampCursor(I)Z -Landroid/text/method/AllCapsTransformationMethod;-><init>(Landroid/content/Context;)V -Landroid/text/method/HideReturnsTransformationMethod;->sInstance:Landroid/text/method/HideReturnsTransformationMethod; -Landroid/text/method/LinkMovementMethod;->sInstance:Landroid/text/method/LinkMovementMethod; -Landroid/text/method/MetaKeyKeyListener;->startSelecting(Landroid/view/View;Landroid/text/Spannable;)V -Landroid/text/method/MetaKeyKeyListener;->stopSelecting(Landroid/view/View;Landroid/text/Spannable;)V -Landroid/text/method/PasswordTransformationMethod;->DOT:C -Landroid/text/method/PasswordTransformationMethod;->sInstance:Landroid/text/method/PasswordTransformationMethod; -Landroid/text/method/TransformationMethod2;->setLengthChangesAllowed(Z)V -Landroid/text/method/WordIterator;-><init>(Ljava/util/Locale;)V -Landroid/text/method/WordIterator;->following(I)I -Landroid/text/method/WordIterator;->getBeginning(I)I -Landroid/text/method/WordIterator;->getEnd(I)I -Landroid/text/method/WordIterator;->getNextWordEndOnTwoWordBoundary(I)I -Landroid/text/method/WordIterator;->getPrevWordBeginningOnTwoWordsBoundary(I)I -Landroid/text/method/WordIterator;->getPunctuationBeginning(I)I -Landroid/text/method/WordIterator;->getPunctuationEnd(I)I -Landroid/text/method/WordIterator;->isAfterPunctuation(I)Z -Landroid/text/method/WordIterator;->isBoundary(I)Z -Landroid/text/method/WordIterator;->isOnPunctuation(I)Z -Landroid/text/method/WordIterator;->nextBoundary(I)I -Landroid/text/method/WordIterator;->preceding(I)I -Landroid/text/method/WordIterator;->prevBoundary(I)I -Landroid/text/method/WordIterator;->setCharSequence(Ljava/lang/CharSequence;II)V -Landroid/text/Selection;->moveToFollowing(Landroid/text/Spannable;Landroid/text/Selection$PositionIterator;Z)Z -Landroid/text/Selection;->moveToPreceding(Landroid/text/Spannable;Landroid/text/Selection$PositionIterator;Z)Z -Landroid/text/SpannableStringBuilder;->getSpans(IILjava/lang/Class;Z)[Ljava/lang/Object; -Landroid/text/SpannableStringBuilder;->mGapLength:I -Landroid/text/SpannableStringBuilder;->mGapStart:I -Landroid/text/SpannableStringBuilder;->mSpanCount:I -Landroid/text/SpannableStringBuilder;->mSpanEnds:[I -Landroid/text/SpannableStringBuilder;->mSpanFlags:[I -Landroid/text/SpannableStringBuilder;->mSpans:[Ljava/lang/Object; -Landroid/text/SpannableStringBuilder;->mSpanStarts:[I -Landroid/text/SpannableStringBuilder;->mText:[C -Landroid/text/SpannableStringBuilder;->sendToSpanWatchers(III)V -Landroid/text/SpannableStringBuilder;->substring(II)Ljava/lang/String; -Landroid/text/SpannableStringInternal;-><init>(Ljava/lang/CharSequence;II)V -Landroid/text/SpannableStringInternal;->checkRange(Ljava/lang/String;II)V -Landroid/text/SpannableStringInternal;->COLUMNS:I -Landroid/text/SpannableStringInternal;->copySpans(Landroid/text/SpannableStringInternal;II)V -Landroid/text/SpannableStringInternal;->copySpans(Landroid/text/Spanned;II)V -Landroid/text/SpannableStringInternal;->EMPTY:[Ljava/lang/Object; -Landroid/text/SpannableStringInternal;->END:I -Landroid/text/SpannableStringInternal;->FLAGS:I -Landroid/text/SpannableStringInternal;->getSpanEnd(Ljava/lang/Object;)I -Landroid/text/SpannableStringInternal;->getSpanFlags(Ljava/lang/Object;)I -Landroid/text/SpannableStringInternal;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; -Landroid/text/SpannableStringInternal;->getSpanStart(Ljava/lang/Object;)I -Landroid/text/SpannableStringInternal;->isIndexFollowsNextLine(I)Z -Landroid/text/SpannableStringInternal;->isOutOfCopyRange(IIII)Z -Landroid/text/SpannableStringInternal;->mSpanCount:I -Landroid/text/SpannableStringInternal;->mSpanData:[I -Landroid/text/SpannableStringInternal;->mSpans:[Ljava/lang/Object; -Landroid/text/SpannableStringInternal;->mText:Ljava/lang/String; -Landroid/text/SpannableStringInternal;->nextSpanTransition(IILjava/lang/Class;)I -Landroid/text/SpannableStringInternal;->region(II)Ljava/lang/String; -Landroid/text/SpannableStringInternal;->removeSpan(Ljava/lang/Object;)V -Landroid/text/SpannableStringInternal;->sendSpanAdded(Ljava/lang/Object;II)V -Landroid/text/SpannableStringInternal;->sendSpanChanged(Ljava/lang/Object;IIII)V -Landroid/text/SpannableStringInternal;->sendSpanRemoved(Ljava/lang/Object;II)V -Landroid/text/SpannableStringInternal;->setSpan(Ljava/lang/Object;III)V -Landroid/text/SpannableStringInternal;->setSpan(Ljava/lang/Object;IIIZ)V -Landroid/text/SpannableStringInternal;->START:I -Landroid/text/SpanSet;->spans:[Ljava/lang/Object; -Landroid/text/StaticLayout$LineBreaks;->ascents:[F -Landroid/text/StaticLayout$LineBreaks;->breaks:[I -Landroid/text/StaticLayout$LineBreaks;->descents:[F -Landroid/text/StaticLayout$LineBreaks;->flags:[I -Landroid/text/StaticLayout$LineBreaks;->widths:[F -Landroid/text/StaticLayout;-><init>(Ljava/lang/CharSequence;IILandroid/text/TextPaint;ILandroid/text/Layout$Alignment;Landroid/text/TextDirectionHeuristic;FFZLandroid/text/TextUtils$TruncateAt;II)V -Landroid/text/StaticLayout;->ELLIPSIS_START:I -Landroid/text/StaticLayout;->getHeight(Z)I -Landroid/text/StaticLayout;->mColumns:I -Landroid/text/StaticLayout;->mLineCount:I -Landroid/text/StaticLayout;->mLineDirections:[Landroid/text/Layout$Directions; -Landroid/text/StaticLayout;->mLines:[I -Landroid/text/StaticLayout;->mMaximumVisibleLineCount:I -Landroid/text/style/BulletSpan;->mColor:I -Landroid/text/style/BulletSpan;->mGapWidth:I -Landroid/text/style/BulletSpan;->mWantColor:Z -Landroid/text/style/DynamicDrawableSpan;->mDrawableRef:Ljava/lang/ref/WeakReference; -Landroid/text/style/EasyEditSpan;->getPendingIntent()Landroid/app/PendingIntent; -Landroid/text/style/EasyEditSpan;->isDeleteEnabled()Z -Landroid/text/style/EasyEditSpan;->setDeleteEnabled(Z)V -Landroid/text/style/ImageSpan;->mDrawable:Landroid/graphics/drawable/Drawable; -Landroid/text/style/SpellCheckSpan;-><init>()V -Landroid/text/style/SpellCheckSpan;-><init>(Landroid/os/Parcel;)V -Landroid/text/style/SpellCheckSpan;->isSpellCheckInProgress()Z -Landroid/text/style/SpellCheckSpan;->setSpellCheckInProgress(Z)V -Landroid/text/style/SuggestionRangeSpan;-><init>()V -Landroid/text/style/SuggestionRangeSpan;-><init>(Landroid/os/Parcel;)V -Landroid/text/style/SuggestionRangeSpan;->setBackgroundColor(I)V -Landroid/text/style/SuggestionSpan;->getNotificationTargetClassName()Ljava/lang/String; -Landroid/text/style/SuggestionSpan;->getUnderlineColor()I -Landroid/text/style/SuggestionSpan;->mEasyCorrectUnderlineColor:I -Landroid/text/style/SuggestionSpan;->mEasyCorrectUnderlineThickness:F -Landroid/text/style/SuggestionSpan;->notifySelection(Landroid/content/Context;Ljava/lang/String;I)V -Landroid/text/TextLine;->mCharacterStyleSpanSet:Landroid/text/SpanSet; -Landroid/text/TextLine;->mMetricAffectingSpanSpanSet:Landroid/text/SpanSet; -Landroid/text/TextLine;->mReplacementSpanSpanSet:Landroid/text/SpanSet; -Landroid/text/TextLine;->mSpanned:Landroid/text/Spanned; -Landroid/text/TextLine;->mText:Ljava/lang/CharSequence; -Landroid/text/TextLine;->obtain()Landroid/text/TextLine; -Landroid/text/TextLine;->sCached:[Landroid/text/TextLine; -Landroid/text/TextPaint;->setUnderlineText(IF)V -Landroid/text/TextPaint;->underlineColor:I -Landroid/text/TextPaint;->underlineThickness:F -Landroid/text/TextUtils$TruncateAt;->END_SMALL:Landroid/text/TextUtils$TruncateAt; -Landroid/text/TextUtils;->packRangeInLong(II)J -Landroid/text/TextUtils;->unpackRangeEndFromLong(J)I -Landroid/text/TextUtils;->unpackRangeStartFromLong(J)I -Landroid/text/util/Linkify;->gatherTelLinks(Ljava/util/ArrayList;Landroid/text/Spannable;Landroid/content/Context;)V Landroid/transition/ChangeBounds;->BOTTOM_RIGHT_ONLY_PROPERTY:Landroid/util/Property; Landroid/transition/ChangeBounds;->POSITION_PROPERTY:Landroid/util/Property; Landroid/transition/Scene;->mEnterAction:Ljava/lang/Runnable; diff --git a/config/hiddenapi-vendor-list.txt b/config/hiddenapi-vendor-list.txt index ed9519799793..e7f04192635f 100644 --- a/config/hiddenapi-vendor-list.txt +++ b/config/hiddenapi-vendor-list.txt @@ -419,7 +419,6 @@ Landroid/telephony/TelephonyManager;->isImsRegistered()Z Landroid/telephony/TelephonyManager;->nvResetConfig(I)Z Landroid/telephony/TelephonyManager;->putIntAtIndex(Landroid/content/ContentResolver;Ljava/lang/String;II)Z Landroid/telephony/TelephonyManager;->setPreferredNetworkType(II)Z -Landroid/text/TextUtils;->isPrintableAsciiOnly(Ljava/lang/CharSequence;)Z Landroid/view/AppTransitionAnimationSpec;-><init>(ILandroid/graphics/GraphicBuffer;Landroid/graphics/Rect;)V Landroid/view/BatchedInputEventReceiver;-><init>(Landroid/view/InputChannel;Landroid/os/Looper;Landroid/view/Choreographer;)V Landroid/view/Choreographer;->getSfInstance()Landroid/view/Choreographer; diff --git a/core/java/android/text/AndroidBidi.java b/core/java/android/text/AndroidBidi.java index 72383cf377e9..bb7fb446d40c 100644 --- a/core/java/android/text/AndroidBidi.java +++ b/core/java/android/text/AndroidBidi.java @@ -16,6 +16,7 @@ package android.text; +import android.annotation.UnsupportedAppUsage; import android.icu.lang.UCharacter; import android.icu.lang.UCharacterDirection; import android.icu.lang.UProperty; @@ -61,6 +62,7 @@ public class AndroidBidi { /** * Runs the bidi algorithm on input text. */ + @UnsupportedAppUsage public static int bidi(int dir, char[] chs, byte[] chInfo) { if (chs == null || chInfo == null) { throw new NullPointerException(); diff --git a/core/java/android/text/BoringLayout.java b/core/java/android/text/BoringLayout.java index ce38ebb9bea7..29f231a0d65b 100644 --- a/core/java/android/text/BoringLayout.java +++ b/core/java/android/text/BoringLayout.java @@ -16,6 +16,7 @@ package android.text; +import android.annotation.UnsupportedAppUsage; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Path; @@ -320,6 +321,7 @@ public class BoringLayout extends Layout implements TextUtils.EllipsizeCallback * if boring. * @hide */ + @UnsupportedAppUsage public static Metrics isBoring(CharSequence text, TextPaint paint, TextDirectionHeuristic textDir, Metrics metrics) { final int textLength = text.length(); diff --git a/core/java/android/text/DynamicLayout.java b/core/java/android/text/DynamicLayout.java index febca7ec9de1..c46c831b2f9d 100644 --- a/core/java/android/text/DynamicLayout.java +++ b/core/java/android/text/DynamicLayout.java @@ -20,6 +20,7 @@ import android.annotation.FloatRange; import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.graphics.Paint; import android.graphics.Rect; import android.text.style.ReplacementSpan; @@ -353,6 +354,7 @@ public class DynamicLayout extends Layout { * @deprecated Use {@link Builder} instead. */ @Deprecated + @UnsupportedAppUsage public DynamicLayout(@NonNull CharSequence base, @NonNull CharSequence display, @NonNull TextPaint paint, @IntRange(from = 0) int width, @@ -944,6 +946,7 @@ public class DynamicLayout extends Layout { /** * @hide */ + @UnsupportedAppUsage public int[] getBlockEndLines() { return mBlockEndLines; } @@ -951,6 +954,7 @@ public class DynamicLayout extends Layout { /** * @hide */ + @UnsupportedAppUsage public int[] getBlockIndices() { return mBlockIndices; } @@ -973,6 +977,7 @@ public class DynamicLayout extends Layout { /** * @hide */ + @UnsupportedAppUsage public int getNumberOfBlocks() { return mNumberOfBlocks; } @@ -980,6 +985,7 @@ public class DynamicLayout extends Layout { /** * @hide */ + @UnsupportedAppUsage public int getIndexFirstChangedBlock() { return mIndexFirstChangedBlock; } @@ -987,6 +993,7 @@ public class DynamicLayout extends Layout { /** * @hide */ + @UnsupportedAppUsage public void setIndexFirstChangedBlock(int i) { mIndexFirstChangedBlock = i; } @@ -1169,6 +1176,7 @@ public class DynamicLayout extends Layout { private Rect mTempRect = new Rect(); + @UnsupportedAppUsage private static StaticLayout sStaticLayout = null; private static StaticLayout.Builder sBuilder = null; diff --git a/core/java/android/text/FontConfig.java b/core/java/android/text/FontConfig.java index 7386e3e88561..9e0fee337bc7 100644 --- a/core/java/android/text/FontConfig.java +++ b/core/java/android/text/FontConfig.java @@ -21,6 +21,7 @@ import static java.lang.annotation.RetentionPolicy.SOURCE; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.graphics.fonts.FontVariationAxis; import android.net.Uri; @@ -43,6 +44,7 @@ public final class FontConfig { /** * Returns the ordered list of families included in the system fonts. */ + @UnsupportedAppUsage public @NonNull Family[] getFamilies() { return mFamilies; } @@ -89,6 +91,7 @@ public final class FontConfig { /** * Returns the index to be used to access this font when accessing a TTC file. */ + @UnsupportedAppUsage public int getTtcIndex() { return mTtcIndex; } @@ -96,6 +99,7 @@ public final class FontConfig { /** * Returns the list of axes associated to this font. */ + @UnsupportedAppUsage public @NonNull FontVariationAxis[] getAxes() { return mAxes; } @@ -103,6 +107,7 @@ public final class FontConfig { /** * Returns the weight value for this font. */ + @UnsupportedAppUsage public int getWeight() { return mWeight; } @@ -110,6 +115,7 @@ public final class FontConfig { /** * Returns whether this font is italic. */ + @UnsupportedAppUsage public boolean isItalic() { return mIsItalic; } @@ -224,6 +230,7 @@ public final class FontConfig { /** * Returns the name given by the system to this font family. */ + @UnsupportedAppUsage public @Nullable String getName() { return mName; } @@ -231,6 +238,7 @@ public final class FontConfig { /** * Returns the list of fonts included in this family. */ + @UnsupportedAppUsage public @Nullable Font[] getFonts() { return mFonts; } @@ -245,6 +253,7 @@ public final class FontConfig { /** * Returns the font variant for this family, e.g. "elegant" or "compact". May be null. */ + @UnsupportedAppUsage public @Variant int getVariant() { return mVariant; } diff --git a/core/java/android/text/Html.java b/core/java/android/text/Html.java index c3aac74d0f32..18f8db23db74 100644 --- a/core/java/android/text/Html.java +++ b/core/java/android/text/Html.java @@ -16,6 +16,7 @@ package android.text; +import android.annotation.UnsupportedAppUsage; import android.app.ActivityThread; import android.app.Application; import android.content.res.Resources; @@ -628,6 +629,7 @@ public class Html { } } + @UnsupportedAppUsage private static void withinStyle(StringBuilder out, CharSequence text, int start, int end) { for (int i = start; i < end; i++) { diff --git a/core/java/android/text/InputFilter.java b/core/java/android/text/InputFilter.java index a507f2b373fc..a9a7b2f2fa7a 100644 --- a/core/java/android/text/InputFilter.java +++ b/core/java/android/text/InputFilter.java @@ -17,6 +17,7 @@ package android.text; import android.annotation.NonNull; +import android.annotation.UnsupportedAppUsage; import com.android.internal.util.Preconditions; @@ -164,6 +165,7 @@ public interface InputFilter * greater than the specified length. */ public static class LengthFilter implements InputFilter { + @UnsupportedAppUsage private final int mMax; public LengthFilter(int max) { diff --git a/core/java/android/text/Layout.java b/core/java/android/text/Layout.java index 09af85db2620..3afa3252c5a3 100644 --- a/core/java/android/text/Layout.java +++ b/core/java/android/text/Layout.java @@ -18,6 +18,7 @@ package android.text; import android.annotation.IntDef; import android.annotation.IntRange; +import android.annotation.UnsupportedAppUsage; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Path; @@ -411,6 +412,7 @@ public abstract class Layout { /** * @hide */ + @UnsupportedAppUsage public void drawText(Canvas canvas, int firstLine, int lastLine) { int previousLineBottom = getLineTop(firstLine); int previousLineEnd = getLineStart(firstLine); @@ -576,6 +578,7 @@ public abstract class Layout { /** * @hide */ + @UnsupportedAppUsage public void drawBackground(Canvas canvas, Path highlight, Paint highlightPaint, int cursorOffsetVertical, int firstLine, int lastLine) { // First, draw LineBackgroundSpans. @@ -656,6 +659,7 @@ public abstract class Layout { * @return The range of lines that need to be drawn, possibly empty. * @hide */ + @UnsupportedAppUsage public long getLineRangeForDraw(Canvas canvas) { int dtop, dbottom; @@ -926,6 +930,7 @@ public abstract class Layout { * @return true if at a level boundary * @hide */ + @UnsupportedAppUsage public boolean isLevelBoundary(int offset) { int line = getLineForOffset(offset); Directions dirs = getLineDirections(line); @@ -1128,6 +1133,7 @@ public abstract class Layout { * optionally clamp it so that it doesn't exceed the width of the layout. * @hide */ + @UnsupportedAppUsage public float getPrimaryHorizontal(int offset, boolean clamped) { boolean trailing = primaryIsTrailingPrevious(offset); return getHorizontal(offset, trailing, clamped); @@ -1147,6 +1153,7 @@ public abstract class Layout { * optionally clamp it so that it doesn't exceed the width of the layout. * @hide */ + @UnsupportedAppUsage public float getSecondaryHorizontal(int offset, boolean clamped) { boolean trailing = primaryIsTrailingPrevious(offset); return getHorizontal(offset, !trailing, clamped); @@ -1771,6 +1778,7 @@ public abstract class Layout { * only robust for left-aligned displays. * @hide */ + @UnsupportedAppUsage public boolean shouldClampCursor(int line) { // Only clamp cursor position in left-aligned displays. switch (getParagraphAlignment(line)) { @@ -2421,6 +2429,7 @@ public abstract class Layout { } private CharSequence mText; + @UnsupportedAppUsage private TextPaint mPaint; private TextPaint mWorkPaint = new TextPaint(); private int mWidth; @@ -2446,6 +2455,7 @@ public abstract class Layout { /* package */ static final int DIR_REQUEST_LTR = 1; /* package */ static final int DIR_REQUEST_RTL = -1; + @UnsupportedAppUsage /* package */ static final int DIR_REQUEST_DEFAULT_LTR = 2; /* package */ static final int DIR_REQUEST_DEFAULT_RTL = -2; @@ -2459,8 +2469,10 @@ public abstract class Layout { ALIGN_OPPOSITE, ALIGN_CENTER, /** @hide */ + @UnsupportedAppUsage ALIGN_LEFT, /** @hide */ + @UnsupportedAppUsage ALIGN_RIGHT, } @@ -2468,11 +2480,13 @@ public abstract class Layout { /** @hide */ @VisibleForTesting(visibility = VisibleForTesting.Visibility.PACKAGE) + @UnsupportedAppUsage public static final Directions DIRS_ALL_LEFT_TO_RIGHT = new Directions(new int[] { 0, RUN_LENGTH_MASK }); /** @hide */ @VisibleForTesting(visibility = VisibleForTesting.Visibility.PACKAGE) + @UnsupportedAppUsage public static final Directions DIRS_ALL_RIGHT_TO_LEFT = new Directions(new int[] { 0, RUN_LENGTH_MASK | RUN_RTL_FLAG }); diff --git a/core/java/android/text/Selection.java b/core/java/android/text/Selection.java index 5256e471e974..68199a4f622e 100644 --- a/core/java/android/text/Selection.java +++ b/core/java/android/text/Selection.java @@ -17,6 +17,7 @@ package android.text; import android.annotation.TestApi; +import android.annotation.UnsupportedAppUsage; import java.text.BreakIterator; @@ -448,6 +449,7 @@ public class Selection { } /** {@hide} */ + @UnsupportedAppUsage public static boolean moveToPreceding( Spannable text, PositionIterator iter, boolean extendSelection) { final int offset = iter.preceding(getSelectionEnd(text)); @@ -462,6 +464,7 @@ public class Selection { } /** {@hide} */ + @UnsupportedAppUsage public static boolean moveToFollowing( Spannable text, PositionIterator iter, boolean extendSelection) { final int offset = iter.following(getSelectionEnd(text)); diff --git a/core/java/android/text/SpanSet.java b/core/java/android/text/SpanSet.java index 00f14939a7ad..362825a005e9 100644 --- a/core/java/android/text/SpanSet.java +++ b/core/java/android/text/SpanSet.java @@ -16,6 +16,7 @@ package android.text; +import android.annotation.UnsupportedAppUsage; import java.lang.reflect.Array; import java.util.Arrays; @@ -32,6 +33,7 @@ public class SpanSet<E> { private final Class<? extends E> classType; int numberOfSpans; + @UnsupportedAppUsage E[] spans; int[] spanStarts; int[] spanEnds; diff --git a/core/java/android/text/SpannableStringBuilder.java b/core/java/android/text/SpannableStringBuilder.java index 41a9c45aed57..9d841e86c9fa 100644 --- a/core/java/android/text/SpannableStringBuilder.java +++ b/core/java/android/text/SpannableStringBuilder.java @@ -17,6 +17,7 @@ package android.text; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.graphics.BaseCanvas; import android.graphics.Paint; import android.util.Log; @@ -595,6 +596,7 @@ public class SpannableStringBuilder implements CharSequence, GetChars, Spannable return false; } + @UnsupportedAppUsage private void sendToSpanWatchers(int replaceStart, int replaceEnd, int nbNewChars) { for (int i = 0; i < mSpanCount; i++) { int spanFlags = mSpanFlags[i]; @@ -861,6 +863,7 @@ public class SpannableStringBuilder implements CharSequence, GetChars, Spannable * * @hide */ + @UnsupportedAppUsage public <T> T[] getSpans(int queryStart, int queryEnd, @Nullable Class<T> kind, boolean sortByInsertionOrder) { if (kind == null) return (T[]) ArrayUtils.emptyArray(Object.class); @@ -1230,6 +1233,7 @@ public class SpannableStringBuilder implements CharSequence, GetChars, Spannable * [start, end[ range. * @hide */ + @UnsupportedAppUsage public String substring(int start, int end) { char[] buf = new char[end - start]; getChars(start, end, buf, 0); @@ -1765,18 +1769,26 @@ public class SpannableStringBuilder implements CharSequence, GetChars, Spannable private InputFilter[] mFilters = NO_FILTERS; + @UnsupportedAppUsage private char[] mText; + @UnsupportedAppUsage private int mGapStart; + @UnsupportedAppUsage private int mGapLength; + @UnsupportedAppUsage private Object[] mSpans; + @UnsupportedAppUsage private int[] mSpanStarts; + @UnsupportedAppUsage private int[] mSpanEnds; private int[] mSpanMax; // see calcMax() for an explanation of what this array stores + @UnsupportedAppUsage private int[] mSpanFlags; private int[] mSpanOrder; // store the order of span insertion private int mSpanInsertCount; // counter for the span insertion + @UnsupportedAppUsage private int mSpanCount; private IdentityHashMap<Object, Integer> mIndexOfSpan; private int mLowWaterMark; // indices below this have not been touched diff --git a/core/java/android/text/SpannableStringInternal.java b/core/java/android/text/SpannableStringInternal.java index bcc2fda86074..7acd5399792c 100644 --- a/core/java/android/text/SpannableStringInternal.java +++ b/core/java/android/text/SpannableStringInternal.java @@ -21,6 +21,7 @@ import com.android.internal.util.GrowingArrayUtils; import libcore.util.EmptyArray; +import android.annotation.UnsupportedAppUsage; import java.lang.reflect.Array; /* package */ abstract class SpannableStringInternal @@ -50,6 +51,7 @@ import java.lang.reflect.Array; * * Due to backward compatibility reasons, we copy even NoCopySpan by default */ + @UnsupportedAppUsage /* package */ SpannableStringInternal(CharSequence source, int start, int end) { this(source, start, end, false /* ignoreNoCopySpan */); } @@ -148,6 +150,7 @@ import java.lang.reflect.Array; * * @return True if excluded, false if included. */ + @UnsupportedAppUsage private final boolean isOutOfCopyRange(int start, int end, int spanStart, int spanEnd) { if (spanStart > end || spanEnd < start) return true; if (spanStart != spanEnd && start != end) { @@ -174,14 +177,17 @@ import java.lang.reflect.Array; mText.getChars(start, end, dest, off); } + @UnsupportedAppUsage /* package */ void setSpan(Object what, int start, int end, int flags) { setSpan(what, start, end, flags, true/*enforceParagraph*/); } + @UnsupportedAppUsage private boolean isIndexFollowsNextLine(int index) { return index != 0 && index != length() && charAt(index - 1) != '\n'; } + @UnsupportedAppUsage private void setSpan(Object what, int start, int end, int flags, boolean enforceParagraph) { int nstart = start; int nend = end; @@ -248,6 +254,7 @@ import java.lang.reflect.Array; sendSpanAdded(what, nstart, nend); } + @UnsupportedAppUsage /* package */ void removeSpan(Object what) { removeSpan(what, 0 /* flags */); } @@ -281,6 +288,7 @@ import java.lang.reflect.Array; } } + @UnsupportedAppUsage public int getSpanStart(Object what) { int count = mSpanCount; Object[] spans = mSpans; @@ -295,6 +303,7 @@ import java.lang.reflect.Array; return -1; } + @UnsupportedAppUsage public int getSpanEnd(Object what) { int count = mSpanCount; Object[] spans = mSpans; @@ -309,6 +318,7 @@ import java.lang.reflect.Array; return -1; } + @UnsupportedAppUsage public int getSpanFlags(Object what) { int count = mSpanCount; Object[] spans = mSpans; @@ -323,6 +333,7 @@ import java.lang.reflect.Array; return 0; } + @UnsupportedAppUsage public <T> T[] getSpans(int queryStart, int queryEnd, Class<T> kind) { int count = 0; @@ -404,6 +415,7 @@ import java.lang.reflect.Array; return (T[]) nret; } + @UnsupportedAppUsage public int nextSpanTransition(int start, int limit, Class kind) { int count = mSpanCount; Object[] spans = mSpans; @@ -426,6 +438,7 @@ import java.lang.reflect.Array; return limit; } + @UnsupportedAppUsage private void sendSpanAdded(Object what, int start, int end) { SpanWatcher[] recip = getSpans(start, end, SpanWatcher.class); int n = recip.length; @@ -435,6 +448,7 @@ import java.lang.reflect.Array; } } + @UnsupportedAppUsage private void sendSpanRemoved(Object what, int start, int end) { SpanWatcher[] recip = getSpans(start, end, SpanWatcher.class); int n = recip.length; @@ -444,6 +458,7 @@ import java.lang.reflect.Array; } } + @UnsupportedAppUsage private void sendSpanChanged(Object what, int s, int e, int st, int en) { SpanWatcher[] recip = getSpans(Math.min(s, st), Math.max(e, en), SpanWatcher.class); @@ -454,10 +469,12 @@ import java.lang.reflect.Array; } } + @UnsupportedAppUsage private static String region(int start, int end) { return "(" + start + " ... " + end + ")"; } + @UnsupportedAppUsage private void checkRange(final String operation, int start, int end) { if (end < start) { throw new IndexOutOfBoundsException(operation + " " + @@ -534,25 +551,36 @@ import java.lang.reflect.Array; * * Due to backward compatibility reasons, we copy even NoCopySpan by default */ + @UnsupportedAppUsage private void copySpans(Spanned src, int start, int end) { copySpans(src, start, end, false); } + @UnsupportedAppUsage private void copySpans(SpannableStringInternal src, int start, int end) { copySpans(src, start, end, false); } + @UnsupportedAppUsage private String mText; + @UnsupportedAppUsage private Object[] mSpans; + @UnsupportedAppUsage private int[] mSpanData; + @UnsupportedAppUsage private int mSpanCount; + @UnsupportedAppUsage /* package */ static final Object[] EMPTY = new Object[0]; + @UnsupportedAppUsage private static final int START = 0; + @UnsupportedAppUsage private static final int END = 1; + @UnsupportedAppUsage private static final int FLAGS = 2; + @UnsupportedAppUsage private static final int COLUMNS = 3; } diff --git a/core/java/android/text/StaticLayout.java b/core/java/android/text/StaticLayout.java index 0899074174a2..44edad274a9f 100644 --- a/core/java/android/text/StaticLayout.java +++ b/core/java/android/text/StaticLayout.java @@ -20,6 +20,7 @@ import android.annotation.FloatRange; import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.graphics.Paint; import android.text.AutoGrowArray.FloatArray; import android.text.style.LeadingMarginSpan; @@ -500,6 +501,7 @@ public class StaticLayout extends Layout { * @deprecated Use {@link Builder} instead. */ @Deprecated + @UnsupportedAppUsage public StaticLayout(CharSequence source, int bufstart, int bufend, TextPaint paint, int outerwidth, Alignment align, TextDirectionHeuristic textDir, @@ -1324,6 +1326,7 @@ public class StaticLayout extends Layout { * * @hide */ + @UnsupportedAppUsage public int getHeight(boolean cap) { if (cap && mLineCount >= mMaximumVisibleLineCount && mMaxLineHeight == -1 && Log.isLoggable(TAG, Log.WARN)) { @@ -1379,8 +1382,10 @@ public class StaticLayout extends Layout { @NonNull int[] recycleFlags, @NonNull float[] charWidths); + @UnsupportedAppUsage private int mLineCount; private int mTopPadding, mBottomPadding; + @UnsupportedAppUsage private int mColumns; private int mEllipsizedWidth; @@ -1408,11 +1413,15 @@ public class StaticLayout extends Layout { private static final int DESCENT = 2; private static final int EXTRA = 3; private static final int HYPHEN = 4; + @UnsupportedAppUsage private static final int ELLIPSIS_START = 5; private static final int ELLIPSIS_COUNT = 6; + @UnsupportedAppUsage private int[] mLines; + @UnsupportedAppUsage private Directions[] mLineDirections; + @UnsupportedAppUsage private int mMaximumVisibleLineCount = Integer.MAX_VALUE; private static final int START_MASK = 0x1FFFFFFF; @@ -1432,10 +1441,15 @@ public class StaticLayout extends Layout { // performing line breaking /*package*/ static class LineBreaks { private static final int INITIAL_SIZE = 16; + @UnsupportedAppUsage public int[] breaks = new int[INITIAL_SIZE]; + @UnsupportedAppUsage public float[] widths = new float[INITIAL_SIZE]; + @UnsupportedAppUsage public float[] ascents = new float[INITIAL_SIZE]; + @UnsupportedAppUsage public float[] descents = new float[INITIAL_SIZE]; + @UnsupportedAppUsage public int[] flags = new int[INITIAL_SIZE]; // hasTab // breaks, widths, and flags should all have the same length } diff --git a/core/java/android/text/TextLine.java b/core/java/android/text/TextLine.java index 5bfd3e942934..90d8d43a36cc 100644 --- a/core/java/android/text/TextLine.java +++ b/core/java/android/text/TextLine.java @@ -18,6 +18,7 @@ package android.text; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Paint.FontMetricsInt; @@ -50,6 +51,7 @@ public class TextLine { private static final boolean DEBUG = false; private TextPaint mPaint; + @UnsupportedAppUsage private CharSequence mText; private int mStart; private int mLen; @@ -59,6 +61,7 @@ public class TextLine { private TabStops mTabs; private char[] mChars; private boolean mCharsValid; + @UnsupportedAppUsage private Spanned mSpanned; private PrecomputedText mComputed; @@ -68,16 +71,20 @@ public class TextLine { private final TextPaint mWorkPaint = new TextPaint(); private final TextPaint mActivePaint = new TextPaint(); + @UnsupportedAppUsage private final SpanSet<MetricAffectingSpan> mMetricAffectingSpanSpanSet = new SpanSet<MetricAffectingSpan>(MetricAffectingSpan.class); + @UnsupportedAppUsage private final SpanSet<CharacterStyle> mCharacterStyleSpanSet = new SpanSet<CharacterStyle>(CharacterStyle.class); + @UnsupportedAppUsage private final SpanSet<ReplacementSpan> mReplacementSpanSpanSet = new SpanSet<ReplacementSpan>(ReplacementSpan.class); private final DecorationInfo mDecorationInfo = new DecorationInfo(); private final ArrayList<DecorationInfo> mDecorations = new ArrayList<>(); + @UnsupportedAppUsage private static final TextLine[] sCached = new TextLine[3]; /** @@ -86,6 +93,7 @@ public class TextLine { * @return an uninitialized TextLine */ @VisibleForTesting(visibility = VisibleForTesting.Visibility.PACKAGE) + @UnsupportedAppUsage public static TextLine obtain() { TextLine tl; synchronized (sCached) { diff --git a/core/java/android/text/TextPaint.java b/core/java/android/text/TextPaint.java index 5234fa9a594b..7bcc6859b8fc 100644 --- a/core/java/android/text/TextPaint.java +++ b/core/java/android/text/TextPaint.java @@ -18,6 +18,7 @@ package android.text; import android.annotation.ColorInt; import android.annotation.NonNull; +import android.annotation.UnsupportedAppUsage; import android.graphics.Paint; /** @@ -39,11 +40,13 @@ public class TextPaint extends Paint { * @hide */ @ColorInt + @UnsupportedAppUsage public int underlineColor = 0; /** * Thickness of the underline, in pixels. * @hide */ + @UnsupportedAppUsage public float underlineThickness; public TextPaint() { @@ -98,6 +101,7 @@ public class TextPaint extends Paint { * @param thickness underline thickness * @hide */ + @UnsupportedAppUsage public void setUnderlineText(int color, float thickness) { underlineColor = color; underlineThickness = thickness; diff --git a/core/java/android/text/TextUtils.java b/core/java/android/text/TextUtils.java index 109149f113da..fda0a3ee4147 100644 --- a/core/java/android/text/TextUtils.java +++ b/core/java/android/text/TextUtils.java @@ -21,6 +21,7 @@ import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.PluralsRes; +import android.annotation.UnsupportedAppUsage; import android.content.Context; import android.content.res.Resources; import android.icu.lang.UCharacter; @@ -1193,6 +1194,7 @@ public class TextUtils { /** * @hide */ + @UnsupportedAppUsage END_SMALL } @@ -1732,6 +1734,7 @@ public class TextUtils { /** * @hide */ + @UnsupportedAppUsage public static boolean isPrintableAsciiOnly(final CharSequence str) { final int len = str.length(); for (int i = 0; i < len; i++) { @@ -1957,6 +1960,7 @@ public class TextUtils { * @see #unpackRangeEndFromLong(long) * @hide */ + @UnsupportedAppUsage public static long packRangeInLong(int start, int end) { return (((long) start) << 32) | end; } @@ -1967,6 +1971,7 @@ public class TextUtils { * @see #packRangeInLong(int, int) * @hide */ + @UnsupportedAppUsage public static int unpackRangeStartFromLong(long range) { return (int) (range >>> 32); } @@ -1977,6 +1982,7 @@ public class TextUtils { * @see #packRangeInLong(int, int) * @hide */ + @UnsupportedAppUsage public static int unpackRangeEndFromLong(long range) { return (int) (range & 0x00000000FFFFFFFFL); } diff --git a/core/java/android/text/format/DateFormat.java b/core/java/android/text/format/DateFormat.java index 94025ef96f10..3c8de94c05f2 100755 --- a/core/java/android/text/format/DateFormat.java +++ b/core/java/android/text/format/DateFormat.java @@ -17,6 +17,7 @@ package android.text.format; import android.annotation.NonNull; +import android.annotation.UnsupportedAppUsage; import android.content.Context; import android.os.UserHandle; import android.provider.Settings; @@ -178,6 +179,7 @@ public class DateFormat { * * @hide */ + @UnsupportedAppUsage public static boolean is24HourFormat(Context context, int userHandle) { final String value = Settings.System.getStringForUser(context.getContentResolver(), Settings.System.TIME_12_24, userHandle); @@ -270,6 +272,7 @@ public class DateFormat { * @param context the application context * @hide */ + @UnsupportedAppUsage public static String getTimeFormatString(Context context) { return getTimeFormatString(context, context.getUserId()); } @@ -281,6 +284,7 @@ public class DateFormat { * @param userHandle the user handle of the user to query the format for * @hide */ + @UnsupportedAppUsage public static String getTimeFormatString(Context context, int userHandle) { final LocaleData d = LocaleData.get(context.getResources().getConfiguration().locale); return is24HourFormat(context, userHandle) ? d.timeFormat_Hm : d.timeFormat_hm; @@ -379,6 +383,7 @@ public class DateFormat { * * @hide */ + @UnsupportedAppUsage public static boolean hasSeconds(CharSequence inFormat) { return hasDesignator(inFormat, SECONDS); } @@ -392,6 +397,7 @@ public class DateFormat { * * @hide */ + @UnsupportedAppUsage public static boolean hasDesignator(CharSequence inFormat, char designator) { if (inFormat == null) return false; diff --git a/core/java/android/text/format/DateUtils.java b/core/java/android/text/format/DateUtils.java index e19b2c71b841..e94b8006d24a 100644 --- a/core/java/android/text/format/DateUtils.java +++ b/core/java/android/text/format/DateUtils.java @@ -16,6 +16,7 @@ package android.text.format; +import android.annotation.UnsupportedAppUsage; import android.content.Context; import android.content.res.Configuration; import android.content.res.Resources; @@ -361,6 +362,7 @@ public class DateUtils * * @hide */ + @UnsupportedAppUsage public static CharSequence formatDuration(long millis) { return formatDuration(millis, LENGTH_LONG); } @@ -376,6 +378,7 @@ public class DateUtils * the briefest form available (e.g. "2h"). * @hide */ + @UnsupportedAppUsage public static CharSequence formatDuration(long millis, int abbrev) { final FormatWidth width; switch (abbrev) { diff --git a/core/java/android/text/format/Formatter.java b/core/java/android/text/format/Formatter.java index de86a66aeb8f..077d12de4d59 100644 --- a/core/java/android/text/format/Formatter.java +++ b/core/java/android/text/format/Formatter.java @@ -18,6 +18,7 @@ package android.text.format; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.content.Context; import android.content.res.Resources; import android.icu.text.MeasureFormat; @@ -114,6 +115,7 @@ public final class Formatter { } /** {@hide} */ + @UnsupportedAppUsage public static BytesResult formatBytes(Resources res, long sizeBytes, int flags) { final int unit = ((flags & FLAG_IEC_UNITS) != 0) ? 1024 : 1000; final boolean isNegative = (sizeBytes < 0); @@ -216,6 +218,7 @@ public final class Formatter { * @return the formatted elapsed time * @hide */ + @UnsupportedAppUsage public static String formatShortElapsedTime(Context context, long millis) { long secondsLong = millis / 1000; @@ -271,6 +274,7 @@ public final class Formatter { * @return the formatted elapsed time * @hide */ + @UnsupportedAppUsage public static String formatShortElapsedTimeRoundingUpToMinutes(Context context, long millis) { long minutesRoundedUp = (millis + MILLIS_PER_MINUTE - 1) / MILLIS_PER_MINUTE; diff --git a/core/java/android/text/method/AllCapsTransformationMethod.java b/core/java/android/text/method/AllCapsTransformationMethod.java index c807e7da4f1b..5a7c98d7ccdf 100644 --- a/core/java/android/text/method/AllCapsTransformationMethod.java +++ b/core/java/android/text/method/AllCapsTransformationMethod.java @@ -17,6 +17,7 @@ package android.text.method; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.content.Context; import android.graphics.Rect; import android.text.Spanned; @@ -38,6 +39,7 @@ public class AllCapsTransformationMethod implements TransformationMethod2 { private boolean mEnabled; private Locale mLocale; + @UnsupportedAppUsage public AllCapsTransformationMethod(@NonNull Context context) { mLocale = context.getResources().getConfiguration().getLocales().get(0); } diff --git a/core/java/android/text/method/HideReturnsTransformationMethod.java b/core/java/android/text/method/HideReturnsTransformationMethod.java index c6a90ca9cf5d..e753754a38d4 100644 --- a/core/java/android/text/method/HideReturnsTransformationMethod.java +++ b/core/java/android/text/method/HideReturnsTransformationMethod.java @@ -16,6 +16,8 @@ package android.text.method; +import android.annotation.UnsupportedAppUsage; + /** * This transformation method causes any carriage return characters (\r) * to be hidden by displaying them as zero-width non-breaking space @@ -48,5 +50,6 @@ extends ReplacementTransformationMethod { return sInstance; } + @UnsupportedAppUsage private static HideReturnsTransformationMethod sInstance; } diff --git a/core/java/android/text/method/LinkMovementMethod.java b/core/java/android/text/method/LinkMovementMethod.java index 549f8b3953dd..a0c44a8b6bdc 100644 --- a/core/java/android/text/method/LinkMovementMethod.java +++ b/core/java/android/text/method/LinkMovementMethod.java @@ -16,6 +16,7 @@ package android.text.method; +import android.annotation.UnsupportedAppUsage; import android.os.Build; import android.text.Layout; import android.text.NoCopySpan; @@ -274,6 +275,7 @@ public class LinkMovementMethod extends ScrollingMovementMethod { return sInstance; } + @UnsupportedAppUsage private static LinkMovementMethod sInstance; private static Object FROM_BELOW = new NoCopySpan.Concrete(); } diff --git a/core/java/android/text/method/MetaKeyKeyListener.java b/core/java/android/text/method/MetaKeyKeyListener.java index c3c7302ce090..ec7ed34bb5ba 100644 --- a/core/java/android/text/method/MetaKeyKeyListener.java +++ b/core/java/android/text/method/MetaKeyKeyListener.java @@ -16,6 +16,7 @@ package android.text.method; +import android.annotation.UnsupportedAppUsage; import android.text.Editable; import android.text.NoCopySpan; import android.text.Spannable; @@ -361,6 +362,7 @@ public abstract class MetaKeyKeyListener { * Start selecting text. * @hide pending API review */ + @UnsupportedAppUsage public static void startSelecting(View view, Spannable content) { content.setSpan(SELECTING, 0, 0, PRESSED); } @@ -370,6 +372,7 @@ public abstract class MetaKeyKeyListener { * call {@link android.text.Selection#setSelection} too. * @hide pending API review */ + @UnsupportedAppUsage public static void stopSelecting(View view, Spannable content) { content.removeSpan(SELECTING); } diff --git a/core/java/android/text/method/PasswordTransformationMethod.java b/core/java/android/text/method/PasswordTransformationMethod.java index 4485e3856619..479fdf4cbb23 100644 --- a/core/java/android/text/method/PasswordTransformationMethod.java +++ b/core/java/android/text/method/PasswordTransformationMethod.java @@ -16,6 +16,7 @@ package android.text.method; +import android.annotation.UnsupportedAppUsage; import android.graphics.Rect; import android.os.Handler; import android.os.SystemClock; @@ -261,6 +262,8 @@ implements TransformationMethod, TextWatcher } } + @UnsupportedAppUsage private static PasswordTransformationMethod sInstance; + @UnsupportedAppUsage private static char DOT = '\u2022'; } diff --git a/core/java/android/text/method/TransformationMethod2.java b/core/java/android/text/method/TransformationMethod2.java index ef00ecdb8179..0bf401a84df0 100644 --- a/core/java/android/text/method/TransformationMethod2.java +++ b/core/java/android/text/method/TransformationMethod2.java @@ -15,6 +15,8 @@ */ package android.text.method; +import android.annotation.UnsupportedAppUsage; + /** * TransformationMethod2 extends the TransformationMethod interface * and adds the ability to relax restrictions of TransformationMethod. @@ -29,5 +31,6 @@ public interface TransformationMethod2 extends TransformationMethod { * @param allowLengthChanges true to allow the transformation to change the length * of the input string. */ + @UnsupportedAppUsage public void setLengthChangesAllowed(boolean allowLengthChanges); } diff --git a/core/java/android/text/method/WordIterator.java b/core/java/android/text/method/WordIterator.java index 33e96a8638da..313567acb51f 100644 --- a/core/java/android/text/method/WordIterator.java +++ b/core/java/android/text/method/WordIterator.java @@ -17,6 +17,7 @@ package android.text.method; import android.annotation.NonNull; +import android.annotation.UnsupportedAppUsage; import android.icu.lang.UCharacter; import android.icu.lang.UProperty; import android.icu.text.BreakIterator; @@ -52,10 +53,12 @@ public class WordIterator implements Selection.PositionIterator { * Constructs a new WordIterator for the specified locale. * @param locale The locale to be used for analyzing the text. */ + @UnsupportedAppUsage public WordIterator(Locale locale) { mIterator = BreakIterator.getWordInstance(locale); } + @UnsupportedAppUsage public void setCharSequence(@NonNull CharSequence charSequence, int start, int end) { if (0 <= start && end <= charSequence.length()) { mCharSeq = charSequence; @@ -68,6 +71,7 @@ public class WordIterator implements Selection.PositionIterator { } /** {@inheritDoc} */ + @UnsupportedAppUsage public int preceding(int offset) { checkOffsetIsValid(offset); while (true) { @@ -79,6 +83,7 @@ public class WordIterator implements Selection.PositionIterator { } /** {@inheritDoc} */ + @UnsupportedAppUsage public int following(int offset) { checkOffsetIsValid(offset); while (true) { @@ -90,6 +95,7 @@ public class WordIterator implements Selection.PositionIterator { } /** {@inheritDoc} */ + @UnsupportedAppUsage public boolean isBoundary(int offset) { checkOffsetIsValid(offset); return mIterator.isBoundary(offset); @@ -102,6 +108,7 @@ public class WordIterator implements Selection.PositionIterator { * @param offset the given start position to search from. * @return the position of the last boundary preceding the given offset. */ + @UnsupportedAppUsage public int nextBoundary(int offset) { checkOffsetIsValid(offset); return mIterator.following(offset); @@ -114,6 +121,7 @@ public class WordIterator implements Selection.PositionIterator { * @param offset the given start position to search from. * @return the position of the last boundary preceding the given offset. */ + @UnsupportedAppUsage public int prevBoundary(int offset) { checkOffsetIsValid(offset); return mIterator.preceding(offset); @@ -131,6 +139,7 @@ public class WordIterator implements Selection.PositionIterator { * * @throws IllegalArgumentException is offset is not valid. */ + @UnsupportedAppUsage public int getBeginning(int offset) { // TODO: Check if usage of this can be updated to getBeginning(offset, true) if // so this method can be removed. @@ -150,6 +159,7 @@ public class WordIterator implements Selection.PositionIterator { * * @throws IllegalArgumentException is offset is not valid. */ + @UnsupportedAppUsage public int getEnd(int offset) { // TODO: Check if usage of this can be updated to getEnd(offset, true), if // so this method can be removed. @@ -170,6 +180,7 @@ public class WordIterator implements Selection.PositionIterator { * * @throws IllegalArgumentException is offset is not valid. */ + @UnsupportedAppUsage public int getPrevWordBeginningOnTwoWordsBoundary(int offset) { return getBeginning(offset, true); } @@ -188,6 +199,7 @@ public class WordIterator implements Selection.PositionIterator { * * @throws IllegalArgumentException is offset is not valid. */ + @UnsupportedAppUsage public int getNextWordEndOnTwoWordBoundary(int offset) { return getEnd(offset, true); } @@ -268,6 +280,7 @@ public class WordIterator implements Selection.PositionIterator { * * @param offset the offset to search from. */ + @UnsupportedAppUsage public int getPunctuationBeginning(int offset) { checkOffsetIsValid(offset); while (offset != BreakIterator.DONE && !isPunctuationStartBoundary(offset)) { @@ -284,6 +297,7 @@ public class WordIterator implements Selection.PositionIterator { * * @param offset the offset to search from. */ + @UnsupportedAppUsage public int getPunctuationEnd(int offset) { checkOffsetIsValid(offset); while (offset != BreakIterator.DONE && !isPunctuationEndBoundary(offset)) { @@ -300,6 +314,7 @@ public class WordIterator implements Selection.PositionIterator { * @param offset the offset to check from. * @return Whether the offset is after a punctuation character. */ + @UnsupportedAppUsage public boolean isAfterPunctuation(int offset) { if (mStart < offset && offset <= mEnd) { final int codePoint = Character.codePointBefore(mCharSeq, offset); @@ -315,6 +330,7 @@ public class WordIterator implements Selection.PositionIterator { * @param offset the offset to check from. * @return Whether the offset is at a punctuation character. */ + @UnsupportedAppUsage public boolean isOnPunctuation(int offset) { if (mStart <= offset && offset < mEnd) { final int codePoint = Character.codePointAt(mCharSeq, offset); diff --git a/core/java/android/text/style/BulletSpan.java b/core/java/android/text/style/BulletSpan.java index 70175c8611e4..401344779f07 100644 --- a/core/java/android/text/style/BulletSpan.java +++ b/core/java/android/text/style/BulletSpan.java @@ -21,6 +21,7 @@ import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.Px; +import android.annotation.UnsupportedAppUsage; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Path; @@ -70,12 +71,15 @@ public class BulletSpan implements LeadingMarginSpan, ParcelableSpan { private static final int STANDARD_COLOR = 0; @Px + @UnsupportedAppUsage private final int mGapWidth; @Px private final int mBulletRadius; private Path mBulletPath = null; @ColorInt + @UnsupportedAppUsage private final int mColor; + @UnsupportedAppUsage private final boolean mWantColor; /** diff --git a/core/java/android/text/style/DynamicDrawableSpan.java b/core/java/android/text/style/DynamicDrawableSpan.java index 1b16f3345bfa..be772af529ef 100644 --- a/core/java/android/text/style/DynamicDrawableSpan.java +++ b/core/java/android/text/style/DynamicDrawableSpan.java @@ -19,6 +19,7 @@ package android.text.style; import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Rect; @@ -78,6 +79,7 @@ public abstract class DynamicDrawableSpan extends ReplacementSpan { protected final int mVerticalAlignment; + @UnsupportedAppUsage private WeakReference<Drawable> mDrawableRef; /** diff --git a/core/java/android/text/style/EasyEditSpan.java b/core/java/android/text/style/EasyEditSpan.java index 9ee0b074459e..8f744f35bf03 100644 --- a/core/java/android/text/style/EasyEditSpan.java +++ b/core/java/android/text/style/EasyEditSpan.java @@ -17,6 +17,7 @@ package android.text.style; import android.annotation.NonNull; +import android.annotation.UnsupportedAppUsage; import android.app.PendingIntent; import android.os.Parcel; import android.text.ParcelableSpan; @@ -116,6 +117,7 @@ public class EasyEditSpan implements ParcelableSpan { * * @hide */ + @UnsupportedAppUsage public boolean isDeleteEnabled() { return mDeleteEnabled; } @@ -125,6 +127,7 @@ public class EasyEditSpan implements ParcelableSpan { * * @hide */ + @UnsupportedAppUsage public void setDeleteEnabled(boolean value) { mDeleteEnabled = value; } @@ -134,6 +137,7 @@ public class EasyEditSpan implements ParcelableSpan { * * @hide */ + @UnsupportedAppUsage public PendingIntent getPendingIntent() { return mPendingIntent; } diff --git a/core/java/android/text/style/ImageSpan.java b/core/java/android/text/style/ImageSpan.java index 95f0b43341a2..d4edde9ec589 100644 --- a/core/java/android/text/style/ImageSpan.java +++ b/core/java/android/text/style/ImageSpan.java @@ -19,6 +19,7 @@ package android.text.style; import android.annotation.DrawableRes; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; @@ -57,6 +58,7 @@ import java.io.InputStream; public class ImageSpan extends DynamicDrawableSpan { @Nullable + @UnsupportedAppUsage private Drawable mDrawable; @Nullable private Uri mContentUri; diff --git a/core/java/android/text/style/SpellCheckSpan.java b/core/java/android/text/style/SpellCheckSpan.java index 10275c22320d..6ffde38a3b75 100644 --- a/core/java/android/text/style/SpellCheckSpan.java +++ b/core/java/android/text/style/SpellCheckSpan.java @@ -16,6 +16,7 @@ package android.text.style; +import android.annotation.UnsupportedAppUsage; import android.os.Parcel; import android.text.ParcelableSpan; import android.text.TextUtils; @@ -31,18 +32,22 @@ public class SpellCheckSpan implements ParcelableSpan { private boolean mSpellCheckInProgress; + @UnsupportedAppUsage public SpellCheckSpan() { mSpellCheckInProgress = false; } + @UnsupportedAppUsage public SpellCheckSpan(Parcel src) { mSpellCheckInProgress = (src.readInt() != 0); } + @UnsupportedAppUsage public void setSpellCheckInProgress(boolean inProgress) { mSpellCheckInProgress = inProgress; } + @UnsupportedAppUsage public boolean isSpellCheckInProgress() { return mSpellCheckInProgress; } diff --git a/core/java/android/text/style/SuggestionRangeSpan.java b/core/java/android/text/style/SuggestionRangeSpan.java index c1943d53407b..d958ddebaf5a 100644 --- a/core/java/android/text/style/SuggestionRangeSpan.java +++ b/core/java/android/text/style/SuggestionRangeSpan.java @@ -16,6 +16,7 @@ package android.text.style; +import android.annotation.UnsupportedAppUsage; import android.os.Parcel; import android.text.ParcelableSpan; import android.text.TextPaint; @@ -30,11 +31,13 @@ import android.text.TextUtils; public class SuggestionRangeSpan extends CharacterStyle implements ParcelableSpan { private int mBackgroundColor; + @UnsupportedAppUsage public SuggestionRangeSpan() { // 0 is a fully transparent black. Has to be set using #setBackgroundColor mBackgroundColor = 0; } + @UnsupportedAppUsage public SuggestionRangeSpan(Parcel src) { mBackgroundColor = src.readInt(); } @@ -64,6 +67,7 @@ public class SuggestionRangeSpan extends CharacterStyle implements ParcelableSpa return TextUtils.SUGGESTION_RANGE_SPAN; } + @UnsupportedAppUsage public void setBackgroundColor(int backgroundColor) { mBackgroundColor = backgroundColor; } diff --git a/core/java/android/text/style/SuggestionSpan.java b/core/java/android/text/style/SuggestionSpan.java index 1b00db2e4ad3..521044778257 100644 --- a/core/java/android/text/style/SuggestionSpan.java +++ b/core/java/android/text/style/SuggestionSpan.java @@ -18,6 +18,7 @@ package android.text.style; import android.annotation.NonNull; import android.annotation.Nullable; +import android.annotation.UnsupportedAppUsage; import android.content.Context; import android.content.Intent; import android.content.res.TypedArray; @@ -99,7 +100,9 @@ public class SuggestionSpan extends CharacterStyle implements ParcelableSpan { private final String mNotificationTargetPackageName; private final int mHashCode; + @UnsupportedAppUsage private float mEasyCorrectUnderlineThickness; + @UnsupportedAppUsage private int mEasyCorrectUnderlineColor; private float mMisspelledUnderlineThickness; @@ -264,6 +267,7 @@ public class SuggestionSpan extends CharacterStyle implements ParcelableSpan { * * @hide */ + @UnsupportedAppUsage public String getNotificationTargetClassName() { return mNotificationTargetClassName; } @@ -368,6 +372,7 @@ public class SuggestionSpan extends CharacterStyle implements ParcelableSpan { * * @hide */ + @UnsupportedAppUsage public int getUnderlineColor() { // The order here should match what is used in updateDrawState final boolean misspelled = (mFlags & FLAG_MISSPELLED) != 0; @@ -390,6 +395,7 @@ public class SuggestionSpan extends CharacterStyle implements ParcelableSpan { * * @hide */ + @UnsupportedAppUsage public void notifySelection(Context context, String original, int index) { final Intent intent = new Intent(); diff --git a/core/java/android/text/util/Linkify.java b/core/java/android/text/util/Linkify.java index c905f49569d7..9c8148de1e61 100644 --- a/core/java/android/text/util/Linkify.java +++ b/core/java/android/text/util/Linkify.java @@ -20,6 +20,7 @@ import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.UiThread; +import android.annotation.UnsupportedAppUsage; import android.content.Context; import android.telephony.PhoneNumberUtils; import android.telephony.TelephonyManager; @@ -783,6 +784,7 @@ public class Linkify { } } + @UnsupportedAppUsage private static void gatherTelLinks(ArrayList<LinkSpec> links, Spannable s, @Nullable Context context) { PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance(); |