changed repo structure

This commit is contained in:
2025-06-06 02:50:04 +02:00
parent e887de976a
commit 6e6ee357b8
8848 changed files with 2089898 additions and 9 deletions

View File

@@ -0,0 +1,65 @@
.class Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
.super Ljava/lang/Object;
.source "EmojiEditTextHelper.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "HelperInternal"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
.line 231
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method getKeyListener(Landroid/text/method/KeyListener;)Landroid/text/method/KeyListener;
.locals 0
return-object p1
.end method
.method isEnabled()Z
.locals 1
const/4 v0, 0x0
return v0
.end method
.method onCreateInputConnection(Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection;
.locals 0
return-object p1
.end method
.method setEmojiReplaceStrategy(I)V
.locals 0
return-void
.end method
.method setEnabled(Z)V
.locals 0
return-void
.end method
.method setMaxEmojiCount(I)V
.locals 0
return-void
.end method

View File

@@ -0,0 +1,154 @@
.class Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;
.super Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
.source "EmojiEditTextHelper.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "HelperInternal19"
.end annotation
# instance fields
.field private final mEditText:Landroid/widget/EditText;
.field private final mTextWatcher:Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
# direct methods
.method constructor <init>(Landroid/widget/EditText;Z)V
.locals 1
.line 265
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;-><init>()V
.line 266
iput-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;->mEditText:Landroid/widget/EditText;
.line 267
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
invoke-direct {v0, p1, p2}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;-><init>(Landroid/widget/EditText;Z)V
iput-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;->mTextWatcher:Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
.line 268
invoke-virtual {p1, v0}, Landroid/widget/EditText;->addTextChangedListener(Landroid/text/TextWatcher;)V
.line 269
invoke-static {}, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->getInstance()Landroid/text/Editable$Factory;
move-result-object p2
invoke-virtual {p1, p2}, Landroid/widget/EditText;->setEditableFactory(Landroid/text/Editable$Factory;)V
return-void
.end method
# virtual methods
.method getKeyListener(Landroid/text/method/KeyListener;)Landroid/text/method/KeyListener;
.locals 1
.line 284
instance-of v0, p1, Landroidx/emoji2/viewsintegration/EmojiKeyListener;
if-eqz v0, :cond_0
return-object p1
:cond_0
if-nez p1, :cond_1
const/4 p1, 0x0
return-object p1
.line 293
:cond_1
instance-of v0, p1, Landroid/text/method/NumberKeyListener;
if-eqz v0, :cond_2
return-object p1
.line 299
:cond_2
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;
invoke-direct {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiKeyListener;-><init>(Landroid/text/method/KeyListener;)V
return-object v0
.end method
.method isEnabled()Z
.locals 1
.line 324
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;->mTextWatcher:Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
invoke-virtual {v0}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->isEnabled()Z
move-result v0
return v0
.end method
.method onCreateInputConnection(Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection;
.locals 2
.line 305
instance-of v0, p1, Landroidx/emoji2/viewsintegration/EmojiInputConnection;
if-eqz v0, :cond_0
return-object p1
.line 310
:cond_0
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiInputConnection;
iget-object v1, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;->mEditText:Landroid/widget/EditText;
invoke-direct {v0, v1, p1, p2}, Landroidx/emoji2/viewsintegration/EmojiInputConnection;-><init>(Landroid/widget/TextView;Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;)V
return-object v0
.end method
.method setEmojiReplaceStrategy(I)V
.locals 1
.line 279
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;->mTextWatcher:Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->setEmojiReplaceStrategy(I)V
return-void
.end method
.method setEnabled(Z)V
.locals 1
.line 315
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;->mTextWatcher:Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->setEnabled(Z)V
return-void
.end method
.method setMaxEmojiCount(I)V
.locals 1
.line 274
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;->mTextWatcher:Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->setMaxEmojiCount(I)V
return-void
.end method

View File

@@ -0,0 +1,174 @@
.class public final Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;
.super Ljava/lang/Object;
.source "EmojiEditTextHelper.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;,
Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
}
.end annotation
# instance fields
.field private mEmojiReplaceStrategy:I
.field private final mHelper:Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
.field private mMaxEmojiCount:I
# direct methods
.method public constructor <init>(Landroid/widget/EditText;)V
.locals 1
const/4 v0, 0x1
.line 83
invoke-direct {p0, p1, v0}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;-><init>(Landroid/widget/EditText;Z)V
return-void
.end method
.method public constructor <init>(Landroid/widget/EditText;Z)V
.locals 1
.line 105
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const v0, 0x7fffffff
.line 73
iput v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mMaxEmojiCount:I
const/4 v0, 0x0
.line 74
iput v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mEmojiReplaceStrategy:I
.line 106
const-string v0, "editText cannot be null"
invoke-static {p1, v0}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.line 110
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;
invoke-direct {v0, p1, p2}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal19;-><init>(Landroid/widget/EditText;Z)V
iput-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
return-void
.end method
# virtual methods
.method public getEmojiReplaceStrategy()I
.locals 1
.line 204
iget v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mEmojiReplaceStrategy:I
return v0
.end method
.method public getKeyListener(Landroid/text/method/KeyListener;)Landroid/text/method/KeyListener;
.locals 1
.line 155
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;->getKeyListener(Landroid/text/method/KeyListener;)Landroid/text/method/KeyListener;
move-result-object p1
return-object p1
.end method
.method public getMaxEmojiCount()I
.locals 1
.line 139
iget v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mMaxEmojiCount:I
return v0
.end method
.method public isEnabled()Z
.locals 1
.line 214
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
invoke-virtual {v0}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;->isEnabled()Z
move-result v0
return v0
.end method
.method public onCreateInputConnection(Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection;
.locals 1
if-nez p1, :cond_0
const/4 p1, 0x0
return-object p1
.line 174
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
invoke-virtual {v0, p1, p2}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;->onCreateInputConnection(Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;)Landroid/view/inputmethod/InputConnection;
move-result-object p1
return-object p1
.end method
.method public setEmojiReplaceStrategy(I)V
.locals 1
.line 189
iput p1, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mEmojiReplaceStrategy:I
.line 190
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;->setEmojiReplaceStrategy(I)V
return-void
.end method
.method public setEnabled(Z)V
.locals 1
.line 227
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;->setEnabled(Z)V
return-void
.end method
.method public setMaxEmojiCount(I)V
.locals 1
.line 126
const-string v0, "maxEmojiCount should be greater than 0"
invoke-static {p1, v0}, Landroidx/core/util/Preconditions;->checkArgumentNonnegative(ILjava/lang/String;)I
.line 128
iput p1, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mMaxEmojiCount:I
.line 129
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiEditTextHelper$HelperInternal;->setMaxEmojiCount(I)V
return-void
.end method

View File

@@ -0,0 +1,141 @@
.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 <clinit>()V
.locals 1
.line 44
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->INSTANCE_LOCK:Ljava/lang/Object;
return-void
.end method
.method private constructor <init>()V
.locals 3
.line 51
invoke-direct {p0}, Landroid/text/Editable$Factory;-><init>()V
.line 53
: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 v1
invoke-virtual {v1}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v1
const/4 v2, 0x0
invoke-static {v0, v2, v1}, Ljava/lang/Class;->forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
move-result-object v0
sput-object v0, 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
.line 62
sget-object v0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->sInstance:Landroid/text/Editable$Factory;
if-nez v0, :cond_1
.line 63
sget-object v0, Landroidx/emoji2/viewsintegration/EmojiEditableFactory;->INSTANCE_LOCK:Ljava/lang/Object;
monitor-enter v0
.line 64
: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;-><init>()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
.line 69
: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
.line 74
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 p1
return-object p1
.line 77
:cond_0
invoke-super {p0, p1}, Landroid/text/Editable$Factory;->newEditable(Ljava/lang/CharSequence;)Landroid/text/Editable;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,59 @@
.class public Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;
.super Ljava/lang/Object;
.source "EmojiInputConnection.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiInputConnection;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "EmojiCompatDeleteHelper"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
.line 83
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public handleDeleteSurroundingText(Landroid/view/inputmethod/InputConnection;Landroid/text/Editable;IIZ)Z
.locals 0
.line 90
invoke-static {p1, p2, p3, p4, p5}, Landroidx/emoji2/text/EmojiCompat;->handleDeleteSurroundingText(Landroid/view/inputmethod/InputConnection;Landroid/text/Editable;IIZ)Z
move-result p1
return p1
.end method
.method public updateEditorInfoAttrs(Landroid/view/inputmethod/EditorInfo;)V
.locals 1
.line 95
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->isConfigured()Z
move-result v0
if-eqz v0, :cond_0
.line 96
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object v0
invoke-virtual {v0, p1}, Landroidx/emoji2/text/EmojiCompat;->updateEditorInfo(Landroid/view/inputmethod/EditorInfo;)V
:cond_0
return-void
.end method

View File

@@ -0,0 +1,163 @@
.class final Landroidx/emoji2/viewsintegration/EmojiInputConnection;
.super Landroid/view/inputmethod/InputConnectionWrapper;
.source "EmojiInputConnection.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;
}
.end annotation
# instance fields
.field private final mEmojiCompatDeleteHelper:Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;
.field private final mTextView:Landroid/widget/TextView;
# direct methods
.method constructor <init>(Landroid/widget/TextView;Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;)V
.locals 1
.line 49
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;
invoke-direct {v0}, Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;-><init>()V
invoke-direct {p0, p1, p2, p3, v0}, Landroidx/emoji2/viewsintegration/EmojiInputConnection;-><init>(Landroid/widget/TextView;Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;)V
return-void
.end method
.method constructor <init>(Landroid/widget/TextView;Landroid/view/inputmethod/InputConnection;Landroid/view/inputmethod/EditorInfo;Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;)V
.locals 1
const/4 v0, 0x0
.line 58
invoke-direct {p0, p2, v0}, Landroid/view/inputmethod/InputConnectionWrapper;-><init>(Landroid/view/inputmethod/InputConnection;Z)V
.line 59
iput-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiInputConnection;->mTextView:Landroid/widget/TextView;
.line 60
iput-object p4, p0, Landroidx/emoji2/viewsintegration/EmojiInputConnection;->mEmojiCompatDeleteHelper:Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;
.line 61
invoke-virtual {p4, p3}, Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;->updateEditorInfoAttrs(Landroid/view/inputmethod/EditorInfo;)V
return-void
.end method
.method private getEditable()Landroid/text/Editable;
.locals 1
.line 80
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputConnection;->mTextView:Landroid/widget/TextView;
invoke-virtual {v0}, Landroid/widget/TextView;->getEditableText()Landroid/text/Editable;
move-result-object v0
return-object v0
.end method
# virtual methods
.method public deleteSurroundingText(II)Z
.locals 6
.line 66
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputConnection;->mEmojiCompatDeleteHelper:Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;
.line 67
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiInputConnection;->getEditable()Landroid/text/Editable;
move-result-object v2
const/4 v5, 0x0
move-object v1, p0
move v3, p1
move v4, p2
.line 66
invoke-virtual/range {v0 .. v5}, Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;->handleDeleteSurroundingText(Landroid/view/inputmethod/InputConnection;Landroid/text/Editable;IIZ)Z
move-result v0
if-nez v0, :cond_1
.line 68
invoke-super {p0, p1, p2}, Landroid/view/inputmethod/InputConnectionWrapper;->deleteSurroundingText(II)Z
move-result p1
if-eqz p1, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 p1, 0x1
:goto_1
return p1
.end method
.method public deleteSurroundingTextInCodePoints(II)Z
.locals 6
.line 74
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputConnection;->mEmojiCompatDeleteHelper:Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;
.line 75
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiInputConnection;->getEditable()Landroid/text/Editable;
move-result-object v2
const/4 v5, 0x1
move-object v1, p0
move v3, p1
move v4, p2
.line 74
invoke-virtual/range {v0 .. v5}, Landroidx/emoji2/viewsintegration/EmojiInputConnection$EmojiCompatDeleteHelper;->handleDeleteSurroundingText(Landroid/view/inputmethod/InputConnection;Landroid/text/Editable;IIZ)Z
move-result v0
if-nez v0, :cond_1
.line 76
invoke-super {p0, p1, p2}, Landroid/view/inputmethod/InputConnectionWrapper;->deleteSurroundingTextInCodePoints(II)Z
move-result p1
if-eqz p1, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 p1, 0x1
:goto_1
return p1
.end method

View File

@@ -0,0 +1,199 @@
.class Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;
.super Landroidx/emoji2/text/EmojiCompat$InitCallback;
.source "EmojiInputFilter.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiInputFilter;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "InitCallbackImpl"
.end annotation
# instance fields
.field private final mEmojiInputFilterReference:Ljava/lang/ref/Reference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ref/Reference<",
"Landroidx/emoji2/viewsintegration/EmojiInputFilter;",
">;"
}
.end annotation
.end field
.field private final mViewRef:Ljava/lang/ref/Reference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ref/Reference<",
"Landroid/widget/TextView;",
">;"
}
.end annotation
.end field
# direct methods
.method constructor <init>(Landroid/widget/TextView;Landroidx/emoji2/viewsintegration/EmojiInputFilter;)V
.locals 1
.line 105
invoke-direct {p0}, Landroidx/emoji2/text/EmojiCompat$InitCallback;-><init>()V
.line 106
new-instance v0, Ljava/lang/ref/WeakReference;
invoke-direct {v0, p1}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
iput-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;->mViewRef:Ljava/lang/ref/Reference;
.line 107
new-instance p1, Ljava/lang/ref/WeakReference;
invoke-direct {p1, p2}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
iput-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;->mEmojiInputFilterReference:Ljava/lang/ref/Reference;
return-void
.end method
.method private isInputFilterCurrentlyRegisteredOnTextView(Landroid/widget/TextView;Landroid/text/InputFilter;)Z
.locals 3
const/4 v0, 0x0
if-eqz p2, :cond_3
if-nez p1, :cond_0
goto :goto_1
.line 148
:cond_0
invoke-virtual {p1}, Landroid/widget/TextView;->getFilters()[Landroid/text/InputFilter;
move-result-object p1
if-nez p1, :cond_1
return v0
:cond_1
move v1, v0
.line 153
:goto_0
array-length v2, p1
if-ge v1, v2, :cond_3
.line 154
aget-object v2, p1, v1
if-ne v2, p2, :cond_2
const/4 p1, 0x1
return p1
:cond_2
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_3
:goto_1
return v0
.end method
# virtual methods
.method public onInitialized()V
.locals 4
.line 112
invoke-super {p0}, Landroidx/emoji2/text/EmojiCompat$InitCallback;->onInitialized()V
.line 113
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;->mViewRef:Ljava/lang/ref/Reference;
invoke-virtual {v0}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/widget/TextView;
.line 114
iget-object v1, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;->mEmojiInputFilterReference:Ljava/lang/ref/Reference;
invoke-virtual {v1}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/text/InputFilter;
.line 115
invoke-direct {p0, v0, v1}, Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;->isInputFilterCurrentlyRegisteredOnTextView(Landroid/widget/TextView;Landroid/text/InputFilter;)Z
move-result v1
if-nez v1, :cond_0
return-void
.line 116
:cond_0
invoke-virtual {v0}, Landroid/widget/TextView;->isAttachedToWindow()Z
move-result v1
if-eqz v1, :cond_2
.line 117
invoke-virtual {v0}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;
move-result-object v1
.line 118
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object v2
invoke-virtual {v2, v1}, Landroidx/emoji2/text/EmojiCompat;->process(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
move-result-object v2
if-ne v1, v2, :cond_1
return-void
.line 131
:cond_1
invoke-static {v2}, Landroid/text/Selection;->getSelectionStart(Ljava/lang/CharSequence;)I
move-result v1
.line 132
invoke-static {v2}, Landroid/text/Selection;->getSelectionEnd(Ljava/lang/CharSequence;)I
move-result v3
.line 134
invoke-virtual {v0, v2}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
.line 136
instance-of v0, v2, Landroid/text/Spannable;
if-eqz v0, :cond_2
.line 137
check-cast v2, Landroid/text/Spannable;
invoke-static {v2, v1, v3}, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->updateSelection(Landroid/text/Spannable;II)V
:cond_2
return-void
.end method

View File

@@ -0,0 +1,205 @@
.class final Landroidx/emoji2/viewsintegration/EmojiInputFilter;
.super Ljava/lang/Object;
.source "EmojiInputFilter.java"
# interfaces
.implements Landroid/text/InputFilter;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;
}
.end annotation
# instance fields
.field private mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
.field private final mTextView:Landroid/widget/TextView;
# direct methods
.method constructor <init>(Landroid/widget/TextView;)V
.locals 0
.line 49
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 50
iput-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->mTextView:Landroid/widget/TextView;
return-void
.end method
.method private getInitCallback()Landroidx/emoji2/text/EmojiCompat$InitCallback;
.locals 2
.line 93
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
if-nez v0, :cond_0
.line 94
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;
iget-object v1, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->mTextView:Landroid/widget/TextView;
invoke-direct {v0, v1, p0}, Landroidx/emoji2/viewsintegration/EmojiInputFilter$InitCallbackImpl;-><init>(Landroid/widget/TextView;Landroidx/emoji2/viewsintegration/EmojiInputFilter;)V
iput-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
.line 96
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
return-object v0
.end method
.method static updateSelection(Landroid/text/Spannable;II)V
.locals 0
if-ltz p1, :cond_0
if-ltz p2, :cond_0
.line 164
invoke-static {p0, p1, p2}, Landroid/text/Selection;->setSelection(Landroid/text/Spannable;II)V
goto :goto_0
:cond_0
if-ltz p1, :cond_1
.line 166
invoke-static {p0, p1}, Landroid/text/Selection;->setSelection(Landroid/text/Spannable;I)V
goto :goto_0
:cond_1
if-ltz p2, :cond_2
.line 168
invoke-static {p0, p2}, Landroid/text/Selection;->setSelection(Landroid/text/Spannable;I)V
:cond_2
:goto_0
return-void
.end method
# virtual methods
.method public filter(Ljava/lang/CharSequence;IILandroid/text/Spanned;II)Ljava/lang/CharSequence;
.locals 2
.line 56
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->mTextView:Landroid/widget/TextView;
invoke-virtual {v0}, Landroid/widget/TextView;->isInEditMode()Z
move-result v0
if-eqz v0, :cond_0
return-object p1
.line 60
:cond_0
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object v0
invoke-virtual {v0}, Landroidx/emoji2/text/EmojiCompat;->getLoadState()I
move-result v0
if-eqz v0, :cond_5
const/4 v1, 0x1
if-eq v0, v1, :cond_1
const/4 p2, 0x3
if-eq v0, p2, :cond_5
return-object p1
:cond_1
if-nez p6, :cond_2
if-nez p5, :cond_2
.line 63
invoke-interface {p4}, Landroid/text/Spanned;->length()I
move-result p4
if-nez p4, :cond_2
.line 64
iget-object p4, p0, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->mTextView:Landroid/widget/TextView;
invoke-virtual {p4}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;
move-result-object p4
if-ne p1, p4, :cond_2
goto :goto_1
:cond_2
if-eqz p1, :cond_4
if-nez p2, :cond_3
.line 72
invoke-interface {p1}, Ljava/lang/CharSequence;->length()I
move-result p4
if-ne p3, p4, :cond_3
goto :goto_0
.line 75
:cond_3
invoke-interface {p1, p2, p3}, Ljava/lang/CharSequence;->subSequence(II)Ljava/lang/CharSequence;
move-result-object p1
.line 77
:goto_0
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object p2
const/4 p3, 0x0
invoke-interface {p1}, Ljava/lang/CharSequence;->length()I
move-result p4
invoke-virtual {p2, p1, p3, p4}, Landroidx/emoji2/text/EmojiCompat;->process(Ljava/lang/CharSequence;II)Ljava/lang/CharSequence;
move-result-object p1
:cond_4
:goto_1
return-object p1
.line 83
:cond_5
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object p2
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->getInitCallback()Landroidx/emoji2/text/EmojiCompat$InitCallback;
move-result-object p3
invoke-virtual {p2, p3}, Landroidx/emoji2/text/EmojiCompat;->registerInitCallback(Landroidx/emoji2/text/EmojiCompat$InitCallback;)V
return-object p1
.end method

View File

@@ -0,0 +1,38 @@
.class public Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;
.super Ljava/lang/Object;
.source "EmojiKeyListener.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiKeyListener;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "EmojiCompatHandleKeyDownHelper"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
.line 76
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public handleKeyDown(Landroid/text/Editable;ILandroid/view/KeyEvent;)Z
.locals 0
.line 79
invoke-static {p1, p2, p3}, Landroidx/emoji2/text/EmojiCompat;->handleOnKeyDown(Landroid/text/Editable;ILandroid/view/KeyEvent;)Z
move-result p1
return p1
.end method

View File

@@ -0,0 +1,139 @@
.class final Landroidx/emoji2/viewsintegration/EmojiKeyListener;
.super Ljava/lang/Object;
.source "EmojiKeyListener.java"
# interfaces
.implements Landroid/text/method/KeyListener;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;
}
.end annotation
# instance fields
.field private final mEmojiCompatHandleKeyDownHelper:Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;
.field private final mKeyListener:Landroid/text/method/KeyListener;
# direct methods
.method constructor <init>(Landroid/text/method/KeyListener;)V
.locals 1
.line 40
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;
invoke-direct {v0}, Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;-><init>()V
invoke-direct {p0, p1, v0}, Landroidx/emoji2/viewsintegration/EmojiKeyListener;-><init>(Landroid/text/method/KeyListener;Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;)V
return-void
.end method
.method constructor <init>(Landroid/text/method/KeyListener;Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;)V
.locals 0
.line 44
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 45
iput-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;->mKeyListener:Landroid/text/method/KeyListener;
.line 46
iput-object p2, p0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;->mEmojiCompatHandleKeyDownHelper:Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;
return-void
.end method
# virtual methods
.method public clearMetaKeyState(Landroid/view/View;Landroid/text/Editable;I)V
.locals 1
.line 73
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;->mKeyListener:Landroid/text/method/KeyListener;
invoke-interface {v0, p1, p2, p3}, Landroid/text/method/KeyListener;->clearMetaKeyState(Landroid/view/View;Landroid/text/Editable;I)V
return-void
.end method
.method public getInputType()I
.locals 1
.line 51
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;->mKeyListener:Landroid/text/method/KeyListener;
invoke-interface {v0}, Landroid/text/method/KeyListener;->getInputType()I
move-result v0
return v0
.end method
.method public onKeyDown(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z
.locals 1
.line 56
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;->mEmojiCompatHandleKeyDownHelper:Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;
.line 57
invoke-virtual {v0, p2, p3, p4}, Landroidx/emoji2/viewsintegration/EmojiKeyListener$EmojiCompatHandleKeyDownHelper;->handleKeyDown(Landroid/text/Editable;ILandroid/view/KeyEvent;)Z
move-result v0
if-nez v0, :cond_1
.line 58
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;->mKeyListener:Landroid/text/method/KeyListener;
invoke-interface {v0, p1, p2, p3, p4}, Landroid/text/method/KeyListener;->onKeyDown(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z
move-result p1
if-eqz p1, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 p1, 0x1
:goto_1
return p1
.end method
.method public onKeyOther(Landroid/view/View;Landroid/text/Editable;Landroid/view/KeyEvent;)Z
.locals 1
.line 68
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;->mKeyListener:Landroid/text/method/KeyListener;
invoke-interface {v0, p1, p2, p3}, Landroid/text/method/KeyListener;->onKeyOther(Landroid/view/View;Landroid/text/Editable;Landroid/view/KeyEvent;)Z
move-result p1
return p1
.end method
.method public onKeyUp(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z
.locals 1
.line 63
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiKeyListener;->mKeyListener:Landroid/text/method/KeyListener;
invoke-interface {v0, p1, p2, p3, p4}, Landroid/text/method/KeyListener;->onKeyUp(Landroid/view/View;Landroid/text/Editable;ILandroid/view/KeyEvent;)Z
move-result p1
return p1
.end method

View File

@@ -0,0 +1,65 @@
.class Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
.super Ljava/lang/Object;
.source "EmojiTextViewHelper.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "HelperInternal"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
.line 184
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method getFilters([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
.locals 0
return-object p1
.end method
.method public isEnabled()Z
.locals 1
const/4 v0, 0x0
return v0
.end method
.method setAllCaps(Z)V
.locals 0
return-void
.end method
.method setEnabled(Z)V
.locals 0
return-void
.end method
.method updateTransformationMethod()V
.locals 0
return-void
.end method
.method wrapTransformationMethod(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
.locals 0
return-object p1
.end method

View File

@@ -0,0 +1,391 @@
.class Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
.super Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
.source "EmojiTextViewHelper.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "HelperInternal19"
.end annotation
# instance fields
.field private final mEmojiInputFilter:Landroidx/emoji2/viewsintegration/EmojiInputFilter;
.field private mEnabled:Z
.field private final mTextView:Landroid/widget/TextView;
# direct methods
.method constructor <init>(Landroid/widget/TextView;)V
.locals 1
.line 322
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;-><init>()V
.line 323
iput-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mTextView:Landroid/widget/TextView;
const/4 v0, 0x1
.line 324
iput-boolean v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEnabled:Z
.line 325
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiInputFilter;
invoke-direct {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiInputFilter;-><init>(Landroid/widget/TextView;)V
iput-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEmojiInputFilter:Landroidx/emoji2/viewsintegration/EmojiInputFilter;
return-void
.end method
.method private addEmojiInputFilterIfMissing([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
.locals 5
.line 365
array-length v0, p1
const/4 v1, 0x0
move v2, v1
:goto_0
if-ge v2, v0, :cond_1
.line 367
aget-object v3, p1, v2
iget-object v4, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEmojiInputFilter:Landroidx/emoji2/viewsintegration/EmojiInputFilter;
if-ne v3, v4, :cond_0
return-object p1
:cond_0
add-int/lit8 v2, v2, 0x1
goto :goto_0
.line 371
:cond_1
array-length v2, p1
add-int/lit8 v2, v2, 0x1
new-array v2, v2, [Landroid/text/InputFilter;
.line 372
invoke-static {p1, v1, v2, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 373
iget-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEmojiInputFilter:Landroidx/emoji2/viewsintegration/EmojiInputFilter;
aput-object p1, v2, v0
return-object v2
.end method
.method private getEmojiInputFilterPositionArray([Landroid/text/InputFilter;)Landroid/util/SparseArray;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"([",
"Landroid/text/InputFilter;",
")",
"Landroid/util/SparseArray<",
"Landroid/text/InputFilter;",
">;"
}
.end annotation
.line 409
new-instance v0, Landroid/util/SparseArray;
const/4 v1, 0x1
invoke-direct {v0, v1}, Landroid/util/SparseArray;-><init>(I)V
const/4 v1, 0x0
.line 410
:goto_0
array-length v2, p1
if-ge v1, v2, :cond_1
.line 411
aget-object v2, p1, v1
instance-of v3, v2, Landroidx/emoji2/viewsintegration/EmojiInputFilter;
if-eqz v3, :cond_0
.line 412
invoke-virtual {v0, v1, v2}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V
:cond_0
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_1
return-object v0
.end method
.method private removeEmojiInputFilterIfPresent([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
.locals 6
.line 385
invoke-direct {p0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->getEmojiInputFilterPositionArray([Landroid/text/InputFilter;)Landroid/util/SparseArray;
move-result-object v0
.line 386
invoke-virtual {v0}, Landroid/util/SparseArray;->size()I
move-result v1
if-nez v1, :cond_0
return-object p1
.line 391
:cond_0
array-length v1, p1
.line 392
array-length v2, p1
invoke-virtual {v0}, Landroid/util/SparseArray;->size()I
move-result v3
sub-int/2addr v2, v3
.line 393
new-array v2, v2, [Landroid/text/InputFilter;
const/4 v3, 0x0
move v4, v3
:goto_0
if-ge v3, v1, :cond_2
.line 396
invoke-virtual {v0, v3}, Landroid/util/SparseArray;->indexOfKey(I)I
move-result v5
if-gez v5, :cond_1
.line 397
aget-object v5, p1, v3
aput-object v5, v2, v4
add-int/lit8 v4, v4, 0x1
:cond_1
add-int/lit8 v3, v3, 0x1
goto :goto_0
:cond_2
return-object v2
.end method
.method private unwrapForDisabled(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
.locals 1
.line 435
instance-of v0, p1, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;
if-eqz v0, :cond_0
.line 436
check-cast p1, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;
.line 438
invoke-virtual {p1}, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;->getOriginalTransformationMethod()Landroid/text/method/TransformationMethod;
move-result-object p1
:cond_0
return-object p1
.end method
.method private updateFilters()V
.locals 2
.line 342
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mTextView:Landroid/widget/TextView;
invoke-virtual {v0}, Landroid/widget/TextView;->getFilters()[Landroid/text/InputFilter;
move-result-object v0
.line 343
iget-object v1, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mTextView:Landroid/widget/TextView;
invoke-virtual {p0, v0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->getFilters([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
move-result-object v0
invoke-virtual {v1, v0}, Landroid/widget/TextView;->setFilters([Landroid/text/InputFilter;)V
return-void
.end method
.method private wrapForEnabled(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
.locals 1
.line 452
instance-of v0, p1, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;
if-eqz v0, :cond_0
return-object p1
.line 454
:cond_0
instance-of v0, p1, Landroid/text/method/PasswordTransformationMethod;
if-eqz v0, :cond_1
return-object p1
.line 457
:cond_1
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;
invoke-direct {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;-><init>(Landroid/text/method/TransformationMethod;)V
return-object v0
.end method
# virtual methods
.method getFilters([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
.locals 1
.line 349
iget-boolean v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEnabled:Z
if-nez v0, :cond_0
.line 351
invoke-direct {p0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->removeEmojiInputFilterIfPresent([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
move-result-object p1
return-object p1
.line 353
:cond_0
invoke-direct {p0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->addEmojiInputFilterIfMissing([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
move-result-object p1
return-object p1
.end method
.method public isEnabled()Z
.locals 1
.line 479
iget-boolean v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEnabled:Z
return v0
.end method
.method setAllCaps(Z)V
.locals 0
if-eqz p1, :cond_0
.line 466
invoke-virtual {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->updateTransformationMethod()V
:cond_0
return-void
.end method
.method setEnabled(Z)V
.locals 0
.line 472
iput-boolean p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEnabled:Z
.line 473
invoke-virtual {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->updateTransformationMethod()V
.line 474
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->updateFilters()V
return-void
.end method
.method setEnabledUnsafe(Z)V
.locals 0
.line 491
iput-boolean p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEnabled:Z
return-void
.end method
.method updateTransformationMethod()V
.locals 2
.line 333
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mTextView:Landroid/widget/TextView;
.line 334
invoke-virtual {v0}, Landroid/widget/TextView;->getTransformationMethod()Landroid/text/method/TransformationMethod;
move-result-object v0
invoke-virtual {p0, v0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->wrapTransformationMethod(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
move-result-object v0
.line 335
iget-object v1, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mTextView:Landroid/widget/TextView;
invoke-virtual {v1, v0}, Landroid/widget/TextView;->setTransformationMethod(Landroid/text/method/TransformationMethod;)V
return-void
.end method
.method wrapTransformationMethod(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
.locals 1
.line 422
iget-boolean v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->mEnabled:Z
if-eqz v0, :cond_0
.line 423
invoke-direct {p0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->wrapForEnabled(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
move-result-object p1
return-object p1
.line 425
:cond_0
invoke-direct {p0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->unwrapForDisabled(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,179 @@
.class Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;
.super Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
.source "EmojiTextViewHelper.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "SkippingHelper19"
.end annotation
# instance fields
.field private final mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
# direct methods
.method constructor <init>(Landroid/widget/TextView;)V
.locals 1
.line 232
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;-><init>()V
.line 233
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-direct {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;-><init>(Landroid/widget/TextView;)V
iput-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
return-void
.end method
.method private skipBecauseEmojiCompatNotInitialized()Z
.locals 1
.line 237
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->isConfigured()Z
move-result v0
xor-int/lit8 v0, v0, 0x1
return v0
.end method
# virtual methods
.method getFilters([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
.locals 1
.line 261
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->skipBecauseEmojiCompatNotInitialized()Z
move-result v0
if-eqz v0, :cond_0
return-object p1
.line 264
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->getFilters([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
move-result-object p1
return-object p1
.end method
.method public isEnabled()Z
.locals 1
.line 312
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-virtual {v0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->isEnabled()Z
move-result v0
return v0
.end method
.method setAllCaps(Z)V
.locals 1
.line 289
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->skipBecauseEmojiCompatNotInitialized()Z
move-result v0
if-eqz v0, :cond_0
return-void
.line 292
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->setAllCaps(Z)V
return-void
.end method
.method setEnabled(Z)V
.locals 1
.line 303
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->skipBecauseEmojiCompatNotInitialized()Z
move-result v0
if-eqz v0, :cond_0
.line 304
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->setEnabledUnsafe(Z)V
goto :goto_0
.line 306
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->setEnabled(Z)V
:goto_0
return-void
.end method
.method updateTransformationMethod()V
.locals 1
.line 247
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->skipBecauseEmojiCompatNotInitialized()Z
move-result v0
if-eqz v0, :cond_0
return-void
.line 250
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-virtual {v0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->updateTransformationMethod()V
return-void
.end method
.method wrapTransformationMethod(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
.locals 1
.line 276
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->skipBecauseEmojiCompatNotInitialized()Z
move-result v0
if-eqz v0, :cond_0
return-object p1
.line 279
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;->mHelperDelegate:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;->wrapTransformationMethod(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,138 @@
.class public final Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;
.super Ljava/lang/Object;
.source "EmojiTextViewHelper.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;,
Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;,
Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
}
.end annotation
# instance fields
.field private final mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
# direct methods
.method public constructor <init>(Landroid/widget/TextView;)V
.locals 1
const/4 v0, 0x1
.line 75
invoke-direct {p0, p1, v0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;-><init>(Landroid/widget/TextView;Z)V
return-void
.end method
.method public constructor <init>(Landroid/widget/TextView;Z)V
.locals 1
.line 96
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 97
const-string v0, "textView cannot be null"
invoke-static {p1, v0}, Landroidx/core/util/Preconditions;->checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
if-nez p2, :cond_0
.line 101
new-instance p2, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;
invoke-direct {p2, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$SkippingHelper19;-><init>(Landroid/widget/TextView;)V
iput-object p2, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
goto :goto_0
.line 103
:cond_0
new-instance p2, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;
invoke-direct {p2, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal19;-><init>(Landroid/widget/TextView;)V
iput-object p2, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
:goto_0
return-void
.end method
# virtual methods
.method public getFilters([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
.locals 1
.line 132
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;->getFilters([Landroid/text/InputFilter;)[Landroid/text/InputFilter;
move-result-object p1
return-object p1
.end method
.method public isEnabled()Z
.locals 1
.line 180
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
invoke-virtual {v0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;->isEnabled()Z
move-result v0
return v0
.end method
.method public setAllCaps(Z)V
.locals 1
.line 173
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;->setAllCaps(Z)V
return-void
.end method
.method public setEnabled(Z)V
.locals 1
.line 163
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;->setEnabled(Z)V
return-void
.end method
.method public updateTransformationMethod()V
.locals 1
.line 115
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
invoke-virtual {v0}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;->updateTransformationMethod()V
return-void
.end method
.method public wrapTransformationMethod(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
.locals 1
.line 145
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper;->mHelper:Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;
invoke-virtual {v0, p1}, Landroidx/emoji2/viewsintegration/EmojiTextViewHelper$HelperInternal;->wrapTransformationMethod(Landroid/text/method/TransformationMethod;)Landroid/text/method/TransformationMethod;
move-result-object p1
return-object p1
.end method

View File

@@ -0,0 +1,69 @@
.class Landroidx/emoji2/viewsintegration/EmojiTextWatcher$InitCallbackImpl;
.super Landroidx/emoji2/text/EmojiCompat$InitCallback;
.source "EmojiTextWatcher.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "InitCallbackImpl"
.end annotation
# instance fields
.field private final mViewRef:Ljava/lang/ref/Reference;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/ref/Reference<",
"Landroid/widget/EditText;",
">;"
}
.end annotation
.end field
# direct methods
.method constructor <init>(Landroid/widget/EditText;)V
.locals 1
.line 138
invoke-direct {p0}, Landroidx/emoji2/text/EmojiCompat$InitCallback;-><init>()V
.line 139
new-instance v0, Ljava/lang/ref/WeakReference;
invoke-direct {v0, p1}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
iput-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher$InitCallbackImpl;->mViewRef:Ljava/lang/ref/Reference;
return-void
.end method
# virtual methods
.method public onInitialized()V
.locals 2
.line 144
invoke-super {p0}, Landroidx/emoji2/text/EmojiCompat$InitCallback;->onInitialized()V
.line 145
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher$InitCallbackImpl;->mViewRef:Ljava/lang/ref/Reference;
invoke-virtual {v0}, Ljava/lang/ref/Reference;->get()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/widget/EditText;
const/4 v1, 0x1
.line 146
invoke-static {v0, v1}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->processTextOnEnablingEvent(Landroid/widget/EditText;I)V
return-void
.end method

View File

@@ -0,0 +1,355 @@
.class final Landroidx/emoji2/viewsintegration/EmojiTextWatcher;
.super Ljava/lang/Object;
.source "EmojiTextWatcher.java"
# interfaces
.implements Landroid/text/TextWatcher;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/emoji2/viewsintegration/EmojiTextWatcher$InitCallbackImpl;
}
.end annotation
# instance fields
.field private final mEditText:Landroid/widget/EditText;
.field private mEmojiReplaceStrategy:I
.field private mEnabled:Z
.field private final mExpectInitializedEmojiCompat:Z
.field private mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
.field private mMaxEmojiCount:I
# direct methods
.method constructor <init>(Landroid/widget/EditText;Z)V
.locals 1
.line 49
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const v0, 0x7fffffff
.line 44
iput v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mMaxEmojiCount:I
const/4 v0, 0x0
.line 45
iput v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEmojiReplaceStrategy:I
.line 50
iput-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEditText:Landroid/widget/EditText;
.line 51
iput-boolean p2, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mExpectInitializedEmojiCompat:Z
const/4 p1, 0x1
.line 52
iput-boolean p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEnabled:Z
return-void
.end method
.method private getInitCallback()Landroidx/emoji2/text/EmojiCompat$InitCallback;
.locals 2
.line 112
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
if-nez v0, :cond_0
.line 113
new-instance v0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher$InitCallbackImpl;
iget-object v1, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEditText:Landroid/widget/EditText;
invoke-direct {v0, v1}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher$InitCallbackImpl;-><init>(Landroid/widget/EditText;)V
iput-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
.line 115
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
return-object v0
.end method
.method static processTextOnEnablingEvent(Landroid/widget/EditText;I)V
.locals 2
const/4 v0, 0x1
if-ne p1, v0, :cond_0
if-eqz p0, :cond_0
.line 152
invoke-virtual {p0}, Landroid/widget/EditText;->isAttachedToWindow()Z
move-result p1
if-eqz p1, :cond_0
.line 153
invoke-virtual {p0}, Landroid/widget/EditText;->getEditableText()Landroid/text/Editable;
move-result-object p0
.line 155
invoke-static {p0}, Landroid/text/Selection;->getSelectionStart(Ljava/lang/CharSequence;)I
move-result p1
.line 156
invoke-static {p0}, Landroid/text/Selection;->getSelectionEnd(Ljava/lang/CharSequence;)I
move-result v0
.line 158
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object v1
invoke-virtual {v1, p0}, Landroidx/emoji2/text/EmojiCompat;->process(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
.line 160
invoke-static {p0, p1, v0}, Landroidx/emoji2/viewsintegration/EmojiInputFilter;->updateSelection(Landroid/text/Spannable;II)V
:cond_0
return-void
.end method
.method private shouldSkipForDisabledOrNotConfigured()Z
.locals 1
.line 98
iget-boolean v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEnabled:Z
if-eqz v0, :cond_1
iget-boolean v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mExpectInitializedEmojiCompat:Z
if-nez v0, :cond_0
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->isConfigured()Z
move-result v0
if-nez v0, :cond_0
goto :goto_0
:cond_0
const/4 v0, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 v0, 0x1
:goto_1
return v0
.end method
# virtual methods
.method public afterTextChanged(Landroid/text/Editable;)V
.locals 0
return-void
.end method
.method public beforeTextChanged(Ljava/lang/CharSequence;III)V
.locals 0
return-void
.end method
.method getEmojiReplaceStrategy()I
.locals 1
.line 64
iget v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEmojiReplaceStrategy:I
return v0
.end method
.method getMaxEmojiCount()I
.locals 1
.line 60
iget v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mMaxEmojiCount:I
return v0
.end method
.method public isEnabled()Z
.locals 1
.line 119
iget-boolean v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEnabled:Z
return v0
.end method
.method public onTextChanged(Ljava/lang/CharSequence;III)V
.locals 6
.line 74
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEditText:Landroid/widget/EditText;
invoke-virtual {v0}, Landroid/widget/EditText;->isInEditMode()Z
move-result v0
if-nez v0, :cond_3
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->shouldSkipForDisabledOrNotConfigured()Z
move-result v0
if-eqz v0, :cond_0
goto :goto_0
:cond_0
if-gt p3, p4, :cond_3
.line 79
instance-of p3, p1, Landroid/text/Spannable;
if-eqz p3, :cond_3
.line 80
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object p3
invoke-virtual {p3}, Landroidx/emoji2/text/EmojiCompat;->getLoadState()I
move-result p3
if-eqz p3, :cond_2
const/4 v0, 0x1
if-eq p3, v0, :cond_1
const/4 p1, 0x3
if-eq p3, p1, :cond_2
goto :goto_0
.line 82
:cond_1
move-object v1, p1
check-cast v1, Landroid/text/Spannable;
.line 83
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object v0
add-int v3, p2, p4
iget v4, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mMaxEmojiCount:I
iget v5, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEmojiReplaceStrategy:I
move v2, p2
invoke-virtual/range {v0 .. v5}, Landroidx/emoji2/text/EmojiCompat;->process(Ljava/lang/CharSequence;IIII)Ljava/lang/CharSequence;
goto :goto_0
.line 88
:cond_2
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object p1
invoke-direct {p0}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->getInitCallback()Landroidx/emoji2/text/EmojiCompat$InitCallback;
move-result-object p2
invoke-virtual {p1, p2}, Landroidx/emoji2/text/EmojiCompat;->registerInitCallback(Landroidx/emoji2/text/EmojiCompat$InitCallback;)V
:cond_3
:goto_0
return-void
.end method
.method setEmojiReplaceStrategy(I)V
.locals 0
.line 68
iput p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEmojiReplaceStrategy:I
return-void
.end method
.method public setEnabled(Z)V
.locals 2
.line 123
iget-boolean v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEnabled:Z
if-eq v0, p1, :cond_1
.line 124
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
if-eqz v0, :cond_0
.line 125
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object v0
iget-object v1, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mInitCallback:Landroidx/emoji2/text/EmojiCompat$InitCallback;
invoke-virtual {v0, v1}, Landroidx/emoji2/text/EmojiCompat;->unregisterInitCallback(Landroidx/emoji2/text/EmojiCompat$InitCallback;)V
.line 127
:cond_0
iput-boolean p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEnabled:Z
if-eqz p1, :cond_1
.line 129
iget-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mEditText:Landroid/widget/EditText;
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object v0
invoke-virtual {v0}, Landroidx/emoji2/text/EmojiCompat;->getLoadState()I
move-result v0
invoke-static {p1, v0}, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->processTextOnEnablingEvent(Landroid/widget/EditText;I)V
:cond_1
return-void
.end method
.method setMaxEmojiCount(I)V
.locals 0
.line 56
iput p1, p0, Landroidx/emoji2/viewsintegration/EmojiTextWatcher;->mMaxEmojiCount:I
return-void
.end method

View File

@@ -0,0 +1,116 @@
.class Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;
.super Ljava/lang/Object;
.source "EmojiTransformationMethod.java"
# interfaces
.implements Landroid/text/method/TransformationMethod;
# instance fields
.field private final mTransformationMethod:Landroid/text/method/TransformationMethod;
# direct methods
.method constructor <init>(Landroid/text/method/TransformationMethod;)V
.locals 0
.line 39
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 40
iput-object p1, p0, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;->mTransformationMethod:Landroid/text/method/TransformationMethod;
return-void
.end method
# virtual methods
.method public getOriginalTransformationMethod()Landroid/text/method/TransformationMethod;
.locals 1
.line 81
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;->mTransformationMethod:Landroid/text/method/TransformationMethod;
return-object v0
.end method
.method public getTransformation(Ljava/lang/CharSequence;Landroid/view/View;)Ljava/lang/CharSequence;
.locals 1
.line 45
invoke-virtual {p2}, Landroid/view/View;->isInEditMode()Z
move-result v0
if-eqz v0, :cond_0
return-object p1
.line 49
:cond_0
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;->mTransformationMethod:Landroid/text/method/TransformationMethod;
if-eqz v0, :cond_1
.line 50
invoke-interface {v0, p1, p2}, Landroid/text/method/TransformationMethod;->getTransformation(Ljava/lang/CharSequence;Landroid/view/View;)Ljava/lang/CharSequence;
move-result-object p1
:cond_1
if-eqz p1, :cond_3
.line 54
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object p2
invoke-virtual {p2}, Landroidx/emoji2/text/EmojiCompat;->getLoadState()I
move-result p2
const/4 v0, 0x1
if-eq p2, v0, :cond_2
goto :goto_0
.line 56
:cond_2
invoke-static {}, Landroidx/emoji2/text/EmojiCompat;->get()Landroidx/emoji2/text/EmojiCompat;
move-result-object p2
invoke-virtual {p2, p1}, Landroidx/emoji2/text/EmojiCompat;->process(Ljava/lang/CharSequence;)Ljava/lang/CharSequence;
move-result-object p1
:cond_3
:goto_0
return-object p1
.end method
.method public onFocusChanged(Landroid/view/View;Ljava/lang/CharSequence;ZILandroid/graphics/Rect;)V
.locals 6
.line 70
iget-object v0, p0, Landroidx/emoji2/viewsintegration/EmojiTransformationMethod;->mTransformationMethod:Landroid/text/method/TransformationMethod;
if-eqz v0, :cond_0
move-object v1, p1
move-object v2, p2
move v3, p3
move v4, p4
move-object v5, p5
.line 71
invoke-interface/range {v0 .. v5}, Landroid/text/method/TransformationMethod;->onFocusChanged(Landroid/view/View;Ljava/lang/CharSequence;ZILandroid/graphics/Rect;)V
:cond_0
return-void
.end method

View File

@@ -0,0 +1,12 @@
.class public final Landroidx/emoji2/viewsintegration/R;
.super Ljava/lang/Object;
# direct methods
.method private constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method