Class ShadowNativeStaticLayout

java.lang.Object
org.robolectric.shadows.ShadowNativeStaticLayout

@Implements(value=android.text.StaticLayout.class, minSdk=26, maxSdk=28, shadowPicker=Picker.class) public class ShadowNativeStaticLayout extends Object
Shadow for StaticLayout that is backed by native code for Android O-P. In Android Q, the native methods relate to text layout were heavily refactored and moved to MeasuredText and LineBreaker.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    Shadow picker for StaticLayout.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected static void
    nAddMeasuredRun(long nativePtr, int start, int end, float[] widths)
     
    protected static void
    nAddReplacementRun(long nativePtr, int start, int end, float width)
     
    protected static float
    nAddStyleRun(long nativePtr, long nativePaint, long nativeTypeface, int start, int end, boolean isRtl)
     
    protected static int
    nComputeLineBreaks(long nativePtr, char[] text, long measuredTextPtr, int length, float firstWidth, int firstWidthLineCount, float restWidth, int[] variableTabStopsObject, int defaultTabStop, int indentsOffset, Object recycle, int recycleLength, int[] recycleBreaks, float[] recycleWidths, float[] recycleAscents, float[] recycleDescents, int[] recycleFlags, float[] charWidths)
     
    protected static int
    nComputeLineBreaks(long nativePtr, Object recycle, int[] recycleBreaksObject, float[] recycleWidthsObject, int[] recycleFlagsObject, int recycleLength)
     
    protected static void
    nFinish(long nativePtr)
     
    protected static void
    nFinishBuilder(long nativePtr)
     
    protected static void
    nFreeBuilder(long nativePtr)
     
    protected static void
    nGetWidths(long nativePtr, float[] widths)
     
    protected static long
    nInit(int breakStrategy, int hyphenationFrequency, boolean isJustified, int[] indents, int[] leftPaddings, int[] rightPaddings)
     
    protected static long
    nLoadHyphenator(ByteBuffer buf, int offset, int minPrefix, int minSuffix)
     
    protected static long
     
    protected static void
    nSetIndents(long nativePtr, int[] indents)
     
    protected static void
    nSetLocale(long nativePtr, String locale, long nativeHyphenator)
     
    protected static void
    nSetupParagraph(long nativePtr, char[] text, int length, float firstWidth, int firstWidthLineCount, float restWidth, int[] variableTabStops, int defaultTabStop, int breakStrategy, int hyphenationFrequency, boolean isJustified)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ShadowNativeStaticLayout

      public ShadowNativeStaticLayout()
  • Method Details

    • nInit

      @Implementation(minSdk=28, maxSdk=28) protected static long nInit(int breakStrategy, int hyphenationFrequency, boolean isJustified, int[] indents, int[] leftPaddings, int[] rightPaddings)
    • nFinish

      @Implementation(minSdk=28, maxSdk=28) protected static void nFinish(long nativePtr)
    • nComputeLineBreaks

      @Implementation(minSdk=28, maxSdk=28) protected static int nComputeLineBreaks(long nativePtr, char[] text, long measuredTextPtr, int length, float firstWidth, int firstWidthLineCount, float restWidth, int[] variableTabStopsObject, int defaultTabStop, int indentsOffset, Object recycle, int recycleLength, int[] recycleBreaks, float[] recycleWidths, float[] recycleAscents, float[] recycleDescents, int[] recycleFlags, float[] charWidths)
    • nNewBuilder

      @Implementation(minSdk=26, maxSdk=27) protected static long nNewBuilder()
    • nFreeBuilder

      @Implementation(minSdk=26, maxSdk=27) protected static void nFreeBuilder(long nativePtr)
    • nFinishBuilder

      @Implementation(minSdk=26, maxSdk=27) protected static void nFinishBuilder(long nativePtr)
    • nLoadHyphenator

      @Implementation(minSdk=26, maxSdk=27) protected static long nLoadHyphenator(ByteBuffer buf, int offset, int minPrefix, int minSuffix)
    • nSetLocale

      @Implementation(minSdk=26, maxSdk=26) protected static void nSetLocale(long nativePtr, String locale, long nativeHyphenator)
    • nSetIndents

      @Implementation(minSdk=26, maxSdk=27) protected static void nSetIndents(long nativePtr, int[] indents)
    • nSetupParagraph

      @Implementation(minSdk=26, maxSdk=27) protected static void nSetupParagraph(long nativePtr, char[] text, int length, float firstWidth, int firstWidthLineCount, float restWidth, int[] variableTabStops, int defaultTabStop, int breakStrategy, int hyphenationFrequency, boolean isJustified)
    • nAddStyleRun

      @Implementation(minSdk=26, maxSdk=27) protected static float nAddStyleRun(long nativePtr, long nativePaint, long nativeTypeface, int start, int end, boolean isRtl)
    • nAddMeasuredRun

      @Implementation(maxSdk=27) protected static void nAddMeasuredRun(long nativePtr, int start, int end, float[] widths)
    • nAddReplacementRun

      @Implementation(maxSdk=27) protected static void nAddReplacementRun(long nativePtr, int start, int end, float width)
    • nGetWidths

      @Implementation(maxSdk=27) protected static void nGetWidths(long nativePtr, float[] widths)
    • nComputeLineBreaks

      @Implementation(maxSdk=27) protected static int nComputeLineBreaks(long nativePtr, Object recycle, int[] recycleBreaksObject, float[] recycleWidthsObject, int[] recycleFlagsObject, int recycleLength)