RecallMessageItemProvider.smali

.class public Lio/rong/imkit/widget/provider/RecallMessageItemProvider;
.super Lio/rong/imkit/widget/provider/IContainerItemProvider$MessageProvider;
.source "RecallMessageItemProvider.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lio/rong/imkit/widget/provider/RecallMessageItemProvider$RecallEditCountDownListener;,
        Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;
    }
.end annotation

.annotation system Ldalvik/annotation/Signature;
    value = {
        "Lio/rong/imkit/widget/provider/IContainerItemProvider$MessageProvider<",
        "Lio/rong/message/RecallNotificationMessage;",
        ">;"
    }
.end annotation

.annotation runtime Lio/rong/imkit/model/ProviderTag;
    centerInHorizontal = true
    messageContent = Lio/rong/message/RecallNotificationMessage;
    showPortrait = false
    showProgress = false
    showSummaryWithName = false
    showWarning = false
.end annotation


# static fields
.field public static final TAG:Ljava/lang/String; = "RecallMessageItemProvider"


# direct methods
.method static constructor <clinit>()V
    .registers 0

    return-void
.end method

.method public constructor <init>()V
    .registers 1

    .line 1
    invoke-direct {p0}, Lio/rong/imkit/widget/provider/IContainerItemProvider$MessageProvider;-><init>()V

    return-void
.end method

.method private getInformation(Lio/rong/message/RecallNotificationMessage;)Ljava/lang/String;
    .registers 4

    .line 1
    invoke-virtual {p1}, Lio/rong/message/RecallNotificationMessage;->getOperatorId()Ljava/lang/String;

    move-result-object v0

    .line 2
    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-eqz v1, :cond_21

    .line 3
    sget-object p1, Lio/rong/imkit/widget/provider/RecallMessageItemProvider;->TAG:Ljava/lang/String;

    const-string v0, "RecallMessageItemProvider bindView - operatorId is empty"

    invoke-static {p1, v0}, Lio/rong/common/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 4
    invoke-static {}, Lio/rong/imkit/RongIM;->getInstance()Lio/rong/imkit/RongIM;

    move-result-object p1

    invoke-virtual {p1}, Lio/rong/imkit/RongIM;->getApplicationContext()Landroid/content/Context;

    move-result-object p1

    sget v0, Lio/rong/imkit/R$string;->rc_recalled_a_message:I

    invoke-virtual {p1, v0}, Landroid/content/Context;->getString(I)Ljava/lang/String;

    move-result-object p1

    goto/16 :goto_a2

    .line 5
    :cond_21
    invoke-virtual {p1}, Lio/rong/message/RecallNotificationMessage;->isAdmin()Z

    move-result p1

    if-eqz p1, :cond_36

    .line 6
    invoke-static {}, Lio/rong/imkit/RongIM;->getInstance()Lio/rong/imkit/RongIM;

    move-result-object p1

    invoke-virtual {p1}, Lio/rong/imkit/RongIM;->getApplicationContext()Landroid/content/Context;

    move-result-object p1

    sget v0, Lio/rong/imkit/R$string;->rc_admin_recalled_message:I

    invoke-virtual {p1, v0}, Landroid/content/Context;->getString(I)Ljava/lang/String;

    move-result-object p1

    goto :goto_a2

    .line 7
    :cond_36
    invoke-static {}, Lio/rong/imkit/RongIM;->getInstance()Lio/rong/imkit/RongIM;

    move-result-object p1

    invoke-virtual {p1}, Lio/rong/imkit/RongIM;->getCurrentUserId()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p1

    if-eqz p1, :cond_53

    .line 8
    invoke-static {}, Lio/rong/imkit/RongIM;->getInstance()Lio/rong/imkit/RongIM;

    move-result-object p1

    invoke-virtual {p1}, Lio/rong/imkit/RongIM;->getApplicationContext()Landroid/content/Context;

    move-result-object p1

    sget v0, Lio/rong/imkit/R$string;->rc_you_recalled_a_message:I

    invoke-virtual {p1, v0}, Landroid/content/Context;->getString(I)Ljava/lang/String;

    move-result-object p1

    goto :goto_a2

    .line 9
    :cond_53
    invoke-static {}, Lio/rong/imkit/userInfoCache/RongUserInfoManager;->getInstance()Lio/rong/imkit/userInfoCache/RongUserInfoManager;

    move-result-object p1

    invoke-virtual {p1, v0}, Lio/rong/imkit/userInfoCache/RongUserInfoManager;->getUserInfo(Ljava/lang/String;)Lio/rong/imlib/model/UserInfo;

    move-result-object p1

    if-eqz p1, :cond_85

    .line 10
    invoke-virtual {p1}, Lio/rong/imlib/model/UserInfo;->getName()Ljava/lang/String;

    move-result-object v1

    if-eqz v1, :cond_85

    .line 11
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    invoke-virtual {p1}, Lio/rong/imlib/model/UserInfo;->getName()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-static {}, Lio/rong/imkit/RongIM;->getInstance()Lio/rong/imkit/RongIM;

    move-result-object p1

    invoke-virtual {p1}, Lio/rong/imkit/RongIM;->getApplicationContext()Landroid/content/Context;

    move-result-object p1

    sget v1, Lio/rong/imkit/R$string;->rc_recalled_a_message:I

    invoke-virtual {p1, v1}, Landroid/content/Context;->getString(I)Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    goto :goto_a2

    .line 12
    :cond_85
    new-instance p1, Ljava/lang/StringBuilder;

    invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V

    invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-static {}, Lio/rong/imkit/RongIM;->getInstance()Lio/rong/imkit/RongIM;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imkit/RongIM;->getApplicationContext()Landroid/content/Context;

    move-result-object v0

    sget v1, Lio/rong/imkit/R$string;->rc_recalled_a_message:I

    invoke-virtual {v0, v1}, Landroid/content/Context;->getString(I)Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    :goto_a2
    return-object p1
.end method


# virtual methods
.method public bridge synthetic bindView(Landroid/view/View;ILio/rong/imlib/model/MessageContent;Lio/rong/imkit/model/UIMessage;)V
    .registers 5

    .line 1
    check-cast p3, Lio/rong/message/RecallNotificationMessage;

    invoke-virtual {p0, p1, p2, p3, p4}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider;->bindView(Landroid/view/View;ILio/rong/message/RecallNotificationMessage;Lio/rong/imkit/model/UIMessage;)V

    return-void
.end method

.method public bindView(Landroid/view/View;ILio/rong/message/RecallNotificationMessage;Lio/rong/imkit/model/UIMessage;)V
    .registers 13

    .line 2
    invoke-virtual {p1}, Landroid/view/View;->getTag()Ljava/lang/Object;

    move-result-object p2

    .line 3
    instance-of v0, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;

    if-eqz v0, :cond_83

    if-eqz p3, :cond_83

    .line 4
    check-cast p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;

    .line 5
    iget-object v0, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->contentTextView:Landroid/widget/TextView;

    invoke-direct {p0, p3}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider;->getInformation(Lio/rong/message/RecallNotificationMessage;)Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V

    .line 6
    invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context;

    move-result-object p1

    invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object p1

    sget v0, Lio/rong/imkit/R$integer;->rc_message_recall_edit_interval:I

    invoke-virtual {p1, v0}, Landroid/content/res/Resources;->getInteger(I)I

    move-result p1

    int-to-long v0, p1

    .line 7
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v2

    invoke-virtual {p3}, Lio/rong/message/RecallNotificationMessage;->getRecallActionTime()J

    move-result-wide v4

    sub-long/2addr v2, v4

    .line 8
    iget-object p1, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->messageId:Ljava/lang/String;

    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result p1

    if-nez p1, :cond_3e

    .line 9
    invoke-static {}, Lio/rong/imkit/recallEdit/RecallEditManager;->getInstance()Lio/rong/imkit/recallEdit/RecallEditManager;

    move-result-object p1

    iget-object v4, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->messageId:Ljava/lang/String;

    invoke-virtual {p1, v4}, Lio/rong/imkit/recallEdit/RecallEditManager;->cancelCountDown(Ljava/lang/String;)V

    .line 10
    :cond_3e
    invoke-virtual {p4}, Lio/rong/imkit/model/UIMessage;->getMessageId()I

    move-result p1

    invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object p1

    iput-object p1, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->messageId:Ljava/lang/String;

    .line 11
    invoke-virtual {p3}, Lio/rong/message/RecallNotificationMessage;->getRecallActionTime()J

    move-result-wide v4

    const-wide/16 v6, 0x0

    cmp-long p1, v4, v6

    if-lez p1, :cond_7c

    const-wide/16 v4, 0x3e8

    mul-long v0, v0, v4

    cmp-long p1, v2, v0

    if-gez p1, :cond_7c

    .line 12
    iget-object p1, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->editTextView:Landroid/widget/TextView;

    const/4 p3, 0x0

    invoke-virtual {p1, p3}, Landroid/widget/TextView;->setVisibility(I)V

    .line 13
    invoke-static {}, Lio/rong/imkit/recallEdit/RecallEditManager;->getInstance()Lio/rong/imkit/recallEdit/RecallEditManager;

    move-result-object p1

    invoke-virtual {p4}, Lio/rong/imkit/model/UIMessage;->getMessage()Lio/rong/imlib/model/Message;

    move-result-object p3

    sub-long/2addr v0, v2

    new-instance v2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$RecallEditCountDownListener;

    invoke-direct {v2, p2}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$RecallEditCountDownListener;-><init>(Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;)V

    invoke-virtual {p1, p3, v0, v1, v2}, Lio/rong/imkit/recallEdit/RecallEditManager;->startCountDown(Lio/rong/imlib/model/Message;JLio/rong/imkit/recallEdit/RecallEditCountDownCallBack;)V

    .line 14
    iget-object p1, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->editTextView:Landroid/widget/TextView;

    new-instance p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$1;

    invoke-direct {p2, p0, p4}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$1;-><init>(Lio/rong/imkit/widget/provider/RecallMessageItemProvider;Lio/rong/imkit/model/UIMessage;)V

    invoke-virtual {p1, p2}, Landroid/widget/TextView;->setOnClickListener(Landroid/view/View$OnClickListener;)V

    goto :goto_83

    .line 15
    :cond_7c
    iget-object p1, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->editTextView:Landroid/widget/TextView;

    const/16 p2, 0x8

    invoke-virtual {p1, p2}, Landroid/widget/TextView;->setVisibility(I)V

    :cond_83
    :goto_83
    return-void
.end method

.method public bridge synthetic getContentSummary(Landroid/content/Context;Lio/rong/imlib/model/MessageContent;)Landroid/text/Spannable;
    .registers 3

    .line 1
    check-cast p2, Lio/rong/message/RecallNotificationMessage;

    invoke-virtual {p0, p1, p2}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider;->getContentSummary(Landroid/content/Context;Lio/rong/message/RecallNotificationMessage;)Landroid/text/Spannable;

    move-result-object p1

    return-object p1
.end method

.method public getContentSummary(Landroid/content/Context;Lio/rong/message/RecallNotificationMessage;)Landroid/text/Spannable;
    .registers 3

    if-eqz p2, :cond_c

    .line 3
    new-instance p1, Landroid/text/SpannableString;

    invoke-direct {p0, p2}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider;->getInformation(Lio/rong/message/RecallNotificationMessage;)Ljava/lang/String;

    move-result-object p2

    invoke-direct {p1, p2}, Landroid/text/SpannableString;-><init>(Ljava/lang/CharSequence;)V

    return-object p1

    :cond_c
    const/4 p1, 0x0

    return-object p1
.end method

.method public bridge synthetic getContentSummary(Lio/rong/imlib/model/MessageContent;)Landroid/text/Spannable;
    .registers 2

    .line 2
    check-cast p1, Lio/rong/message/RecallNotificationMessage;

    invoke-virtual {p0, p1}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider;->getContentSummary(Lio/rong/message/RecallNotificationMessage;)Landroid/text/Spannable;

    move-result-object p1

    return-object p1
.end method

.method public getContentSummary(Lio/rong/message/RecallNotificationMessage;)Landroid/text/Spannable;
    .registers 2

    const/4 p1, 0x0

    return-object p1
.end method

.method public newView(Landroid/content/Context;Landroid/view/ViewGroup;)Landroid/view/View;
    .registers 5

    .line 1
    invoke-static {p1}, Landroid/view/LayoutInflater;->from(Landroid/content/Context;)Landroid/view/LayoutInflater;

    move-result-object p1

    sget p2, Lio/rong/imkit/R$layout;->rc_item_information_notification_message:I

    const/4 v0, 0x0

    invoke-virtual {p1, p2, v0}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;)Landroid/view/View;

    move-result-object p1

    .line 2
    new-instance p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;

    invoke-direct {p2, v0}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;-><init>(Lio/rong/imkit/widget/provider/RecallMessageItemProvider$1;)V

    .line 3
    sget v0, Lio/rong/imkit/R$id;->rc_msg:I

    invoke-virtual {p1, v0}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v0

    check-cast v0, Landroid/widget/TextView;

    iput-object v0, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->contentTextView:Landroid/widget/TextView;

    .line 4
    iget-object v0, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->contentTextView:Landroid/widget/TextView;

    invoke-static {}, Landroid/text/method/LinkMovementMethod;->getInstance()Landroid/text/method/MovementMethod;

    move-result-object v1

    invoke-virtual {v0, v1}, Landroid/widget/TextView;->setMovementMethod(Landroid/text/method/MovementMethod;)V

    .line 5
    sget v0, Lio/rong/imkit/R$id;->rc_edit:I

    invoke-virtual {p1, v0}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v0

    check-cast v0, Landroid/widget/TextView;

    iput-object v0, p2, Lio/rong/imkit/widget/provider/RecallMessageItemProvider$ViewHolder;->editTextView:Landroid/widget/TextView;

    .line 6
    invoke-virtual {p1, p2}, Landroid/view/View;->setTag(Ljava/lang/Object;)V

    return-object p1
.end method

.method public bridge synthetic onItemClick(Landroid/view/View;ILio/rong/imlib/model/MessageContent;Lio/rong/imkit/model/UIMessage;)V
    .registers 5

    .line 1
    check-cast p3, Lio/rong/message/RecallNotificationMessage;

    invoke-virtual {p0, p1, p2, p3, p4}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider;->onItemClick(Landroid/view/View;ILio/rong/message/RecallNotificationMessage;Lio/rong/imkit/model/UIMessage;)V

    return-void
.end method

.method public onItemClick(Landroid/view/View;ILio/rong/message/RecallNotificationMessage;Lio/rong/imkit/model/UIMessage;)V
    .registers 5

    return-void
.end method

.method public bridge synthetic onItemLongClick(Landroid/view/View;ILio/rong/imlib/model/MessageContent;Lio/rong/imkit/model/UIMessage;)V
    .registers 5

    .line 1
    check-cast p3, Lio/rong/message/RecallNotificationMessage;

    invoke-virtual {p0, p1, p2, p3, p4}, Lio/rong/imkit/widget/provider/RecallMessageItemProvider;->onItemLongClick(Landroid/view/View;ILio/rong/message/RecallNotificationMessage;Lio/rong/imkit/model/UIMessage;)V

    return-void
.end method

.method public onItemLongClick(Landroid/view/View;ILio/rong/message/RecallNotificationMessage;Lio/rong/imkit/model/UIMessage;)V
    .registers 5

    return-void
.end method