.class final Landroidx/emoji2/viewsintegration/EmojiEditableFactory; .super Landroid/text/Editable$Factory; .source "EmojiEditableFactory.java" # static fields .field private static final INSTANCE_LOCK:Ljava/lang/Object; .field private static volatile sInstance:Landroid/text/Editable$Factory; .field private static sWatcherClass:Ljava/lang/Class; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/lang/Class<", "*>;" } .end annotation .end field # direct methods .method static constructor ()V .locals 1 .line 44 new-instance v0, Ljava/lang/Object; invoke-direct {v0}, Ljava/lang/Object;->()V sput-object v0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->INSTANCE_LOCK:Ljava/lang/Object; return-void .end method .method private constructor ()V .locals 2 .line 51 invoke-direct {p0}, Landroid/text/Editable$Factory;->()V :try_start_0 const-string v0, "android.text.DynamicLayout$ChangeWatcher" .line 54 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object p0 invoke-virtual {p0}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader; move-result-object p0 const/4 v1, 0x0 invoke-static {v0, v1, p0}, Ljava/lang/Class;->forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class; move-result-object p0 sput-object p0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->sWatcherClass:Ljava/lang/Class; :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 :catchall_0 return-void .end method .method public static getInstance()Landroid/text/Editable$Factory; .locals 2 sget-object v0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->sInstance:Landroid/text/Editable$Factory; if-nez v0, :cond_1 sget-object v0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->INSTANCE_LOCK:Ljava/lang/Object; .line 63 monitor-enter v0 :try_start_0 sget-object v1, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->sInstance:Landroid/text/Editable$Factory; if-nez v1, :cond_0 .line 65 new-instance v1, Landroidx/emoji2/viewsintegration/EmojiEditableFactory; invoke-direct {v1}, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->()V sput-object v1, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->sInstance:Landroid/text/Editable$Factory; .line 67 :cond_0 monitor-exit v0 goto :goto_0 :catchall_0 move-exception v1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 :cond_1 :goto_0 sget-object v0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->sInstance:Landroid/text/Editable$Factory; return-object v0 .end method # virtual methods .method public newEditable(Ljava/lang/CharSequence;)Landroid/text/Editable; .locals 1 sget-object v0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->sWatcherClass:Ljava/lang/Class; if-eqz v0, :cond_0 .line 75 invoke-static {v0, p1}, Landroidx/emoji2/text/SpannableBuilder;->create(Ljava/lang/Class;Ljava/lang/CharSequence;)Landroidx/emoji2/text/SpannableBuilder; move-result-object p0 return-object p0 .line 77 :cond_0 invoke-super {p0, p1}, Landroid/text/Editable$Factory;->newEditable(Ljava/lang/CharSequence;)Landroid/text/Editable; move-result-object p0 return-object p0 .end method