DateFormatTextWatcher.smali
.class public abstract Lcom/google/android/material/picker/DateFormatTextWatcher;
.super Ljava/lang/Object;
.source "DateFormatTextWatcher.java"
# interfaces
.implements Landroid/text/TextWatcher;
# instance fields
.field public final constraints:Lcom/google/android/material/picker/CalendarConstraints;
.field public final dateFormat:Ljava/text/DateFormat;
.field public final invalidFormat:Ljava/lang/String;
.field public final outOfRange:Ljava/lang/String;
.field public final pattern:Ljava/lang/String;
.field public final textInputLayout:Lcom/google/android/material/textfield/TextInputLayout;
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>(Ljava/lang/String;Ljava/text/DateFormat;Lcom/google/android/material/textfield/TextInputLayout;Lcom/google/android/material/picker/CalendarConstraints;)V
.registers 5
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->pattern:Ljava/lang/String;
iput-object p2, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->dateFormat:Ljava/text/DateFormat;
iput-object p3, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->textInputLayout:Lcom/google/android/material/textfield/TextInputLayout;
iput-object p4, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->constraints:Lcom/google/android/material/picker/CalendarConstraints;
invoke-virtual {p3}, Landroid/widget/LinearLayout;->getContext()Landroid/content/Context;
move-result-object p1
sget p2, Lcom/google/android/material/R$string;->mtrl_picker_invalid_format:I
invoke-virtual {p1, p2}, Landroid/content/Context;->getString(I)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->invalidFormat:Ljava/lang/String;
invoke-virtual {p3}, Landroid/widget/LinearLayout;->getContext()Landroid/content/Context;
move-result-object p1
sget p2, Lcom/google/android/material/R$string;->mtrl_picker_out_of_range:I
invoke-virtual {p1, p2}, Landroid/content/Context;->getString(I)Ljava/lang/String;
move-result-object p1
iput-object p1, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->outOfRange:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public afterTextChanged(Landroid/text/Editable;)V
.registers 2
return-void
.end method
.method public beforeTextChanged(Ljava/lang/CharSequence;III)V
.registers 5
return-void
.end method
.method public onInvalidDate()V
.registers 1
return-void
.end method
.method public onTextChanged(Ljava/lang/CharSequence;III)V
.registers 8
invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result p2
const/4 p3, 0x0
if-eqz p2, :cond_10
iget-object p1, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->textInputLayout:Lcom/google/android/material/textfield/TextInputLayout;
invoke-virtual {p1, p3}, Lcom/google/android/material/textfield/TextInputLayout;->setError(Ljava/lang/CharSequence;)V
invoke-virtual {p0, p3}, Lcom/google/android/material/picker/DateFormatTextWatcher;->onValidDate(Ljava/lang/Long;)V
return-void
:cond_10
const/4 p2, 0x0
const/4 p4, 0x1
:try_start_12
iget-object v0, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->dateFormat:Ljava/text/DateFormat;
invoke-interface {p1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/text/DateFormat;->parse(Ljava/lang/String;)Ljava/util/Date;
move-result-object p1
iget-object v0, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->textInputLayout:Lcom/google/android/material/textfield/TextInputLayout;
invoke-virtual {v0, p3}, Lcom/google/android/material/textfield/TextInputLayout;->setError(Ljava/lang/CharSequence;)V
invoke-virtual {p1}, Ljava/util/Date;->getTime()J
move-result-wide v0
iget-object p3, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->constraints:Lcom/google/android/material/picker/CalendarConstraints;
invoke-virtual {p3}, Lcom/google/android/material/picker/CalendarConstraints;->getDateValidator()Lcom/google/android/material/picker/CalendarConstraints$DateValidator;
move-result-object p3
invoke-interface {p3, v0, v1}, Lcom/google/android/material/picker/CalendarConstraints$DateValidator;->isValid(J)Z
move-result p3
if-eqz p3, :cond_45
iget-object p3, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->constraints:Lcom/google/android/material/picker/CalendarConstraints;
invoke-virtual {p3, v0, v1}, Lcom/google/android/material/picker/CalendarConstraints;->isWithinBounds(J)Z
move-result p3
if-eqz p3, :cond_45
invoke-virtual {p1}, Ljava/util/Date;->getTime()J
move-result-wide v0
invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/material/picker/DateFormatTextWatcher;->onValidDate(Ljava/lang/Long;)V
goto :goto_70
:cond_45
iget-object p1, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->textInputLayout:Lcom/google/android/material/textfield/TextInputLayout;
iget-object p3, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->outOfRange:Ljava/lang/String;
new-array v2, p4, [Ljava/lang/Object;
invoke-static {v0, v1}, Lcom/google/android/material/picker/DateStrings;->getDateString(J)Ljava/lang/String;
move-result-object v0
aput-object v0, v2, p2
invoke-static {p3, v2}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p3
invoke-virtual {p1, p3}, Lcom/google/android/material/textfield/TextInputLayout;->setError(Ljava/lang/CharSequence;)V
invoke-virtual {p0}, Lcom/google/android/material/picker/DateFormatTextWatcher;->onInvalidDate()V
:try_end_5b
.catch Ljava/text/ParseException; {:try_start_12 .. :try_end_5b} :catch_5c
goto :goto_70
:catch_5c
iget-object p1, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->textInputLayout:Lcom/google/android/material/textfield/TextInputLayout;
iget-object p3, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->invalidFormat:Ljava/lang/String;
new-array p4, p4, [Ljava/lang/Object;
iget-object v0, p0, Lcom/google/android/material/picker/DateFormatTextWatcher;->pattern:Ljava/lang/String;
aput-object v0, p4, p2
invoke-static {p3, p4}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/google/android/material/textfield/TextInputLayout;->setError(Ljava/lang/CharSequence;)V
invoke-virtual {p0}, Lcom/google/android/material/picker/DateFormatTextWatcher;->onInvalidDate()V
:goto_70
return-void
.end method
.method public abstract onValidDate(Ljava/lang/Long;)V
.param p1 # Ljava/lang/Long;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.end method