.class Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable; .super Ljava/lang/Object; .source "UnprecomputeTextOnModificationSpannable.java" # interfaces .implements Landroid/text/Spannable; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector_28;, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector;, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$CharSequenceHelper_API24; } .end annotation # instance fields .field private mDelegate:Landroid/text/Spannable; .field private mSafeToWrite:Z # direct methods .method constructor (Landroid/text/Spannable;)V .locals 1 .line 48 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x0 .line 43 iput-boolean v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mSafeToWrite:Z .line 49 iput-object p1, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; return-void .end method .method constructor (Landroid/text/Spanned;)V .locals 1 .line 52 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x0 .line 43 iput-boolean v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mSafeToWrite:Z .line 53 new-instance v0, Landroid/text/SpannableString; invoke-direct {v0, p1}, Landroid/text/SpannableString;->(Ljava/lang/CharSequence;)V iput-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; return-void .end method .method constructor (Ljava/lang/CharSequence;)V .locals 1 .line 56 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x0 .line 43 iput-boolean v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mSafeToWrite:Z .line 57 new-instance v0, Landroid/text/SpannableString; invoke-direct {v0, p1}, Landroid/text/SpannableString;->(Ljava/lang/CharSequence;)V iput-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; return-void .end method .method private ensureSafeWrites()V .locals 2 .line 61 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; .line 62 iget-boolean v1, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mSafeToWrite:Z if-nez v1, :cond_0 invoke-static {}, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->precomputedTextDetector()Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector; move-result-object v1 invoke-virtual {v1, v0}, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector;->isPrecomputedText(Ljava/lang/CharSequence;)Z move-result v1 if-eqz v1, :cond_0 .line 63 new-instance v1, Landroid/text/SpannableString; invoke-direct {v1, v0}, Landroid/text/SpannableString;->(Ljava/lang/CharSequence;)V iput-object v1, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; :cond_0 const/4 v0, 0x1 .line 65 iput-boolean v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mSafeToWrite:Z return-void .end method .method static precomputedTextDetector()Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector; .locals 2 .line 161 sget v0, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v1, 0x1c if-ge v0, v1, :cond_0 .line 162 new-instance v0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector; invoke-direct {v0}, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector;->()V goto :goto_0 :cond_0 new-instance v0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector_28; invoke-direct {v0}, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$PrecomputedTextDetector_28;->()V :goto_0 return-object v0 .end method # virtual methods .method public charAt(I)C .locals 1 .line 116 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1}, Landroid/text/Spannable;->charAt(I)C move-result p1 return p1 .end method .method public chars()Ljava/util/stream/IntStream; .locals 1 .line 135 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-static {v0}, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$CharSequenceHelper_API24;->chars(Ljava/lang/CharSequence;)Ljava/util/stream/IntStream; move-result-object v0 return-object v0 .end method .method public codePoints()Ljava/util/stream/IntStream; .locals 1 .line 142 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-static {v0}, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable$CharSequenceHelper_API24;->codePoints(Ljava/lang/CharSequence;)Ljava/util/stream/IntStream; move-result-object v0 return-object v0 .end method .method public getSpanEnd(Ljava/lang/Object;)I .locals 1 .line 96 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1}, Landroid/text/Spannable;->getSpanEnd(Ljava/lang/Object;)I move-result p1 return p1 .end method .method public getSpanFlags(Ljava/lang/Object;)I .locals 1 .line 101 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1}, Landroid/text/Spannable;->getSpanFlags(Ljava/lang/Object;)I move-result p1 return p1 .end method .method public getSpanStart(Ljava/lang/Object;)I .locals 1 .line 91 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1}, Landroid/text/Spannable;->getSpanStart(Ljava/lang/Object;)I move-result p1 return p1 .end method .method public getSpans(IILjava/lang/Class;)[Ljava/lang/Object; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(II", "Ljava/lang/Class<", "TT;>;)[TT;" } .end annotation .line 86 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1, p2, p3}, Landroid/text/Spannable;->getSpans(IILjava/lang/Class;)[Ljava/lang/Object; move-result-object p1 return-object p1 .end method .method getUnwrappedSpannable()Landroid/text/Spannable; .locals 1 .line 69 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; return-object v0 .end method .method public length()I .locals 1 .line 111 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0}, Landroid/text/Spannable;->length()I move-result v0 return v0 .end method .method public nextSpanTransition(IILjava/lang/Class;)I .locals 1 .line 106 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1, p2, p3}, Landroid/text/Spannable;->nextSpanTransition(IILjava/lang/Class;)I move-result p1 return p1 .end method .method public removeSpan(Ljava/lang/Object;)V .locals 1 .line 80 invoke-direct {p0}, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->ensureSafeWrites()V .line 81 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1}, Landroid/text/Spannable;->removeSpan(Ljava/lang/Object;)V return-void .end method .method public setSpan(Ljava/lang/Object;III)V .locals 1 .line 74 invoke-direct {p0}, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->ensureSafeWrites()V .line 75 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1, p2, p3, p4}, Landroid/text/Spannable;->setSpan(Ljava/lang/Object;III)V return-void .end method .method public subSequence(II)Ljava/lang/CharSequence; .locals 1 .line 122 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-interface {v0, p1, p2}, Landroid/text/Spannable;->subSequence(II)Ljava/lang/CharSequence; move-result-object p1 return-object p1 .end method .method public toString()Ljava/lang/String; .locals 1 .line 128 iget-object v0, p0, Landroidx/emoji2/text/UnprecomputeTextOnModificationSpannable;->mDelegate:Landroid/text/Spannable; invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method