.class public final Landroidx/core/app/NotificationCompat$Action$Builder; .super Ljava/lang/Object; .source "SourceFile" # annotations .annotation system Ldalvik/annotation/EnclosingClass; value = Landroidx/core/app/NotificationCompat$Action; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x19 name = "Builder" .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Landroidx/core/app/NotificationCompat$Action$Builder$Api23Impl;, Landroidx/core/app/NotificationCompat$Action$Builder$Api20Impl;, Landroidx/core/app/NotificationCompat$Action$Builder$Api24Impl;, Landroidx/core/app/NotificationCompat$Action$Builder$Api28Impl;, Landroidx/core/app/NotificationCompat$Action$Builder$Api29Impl;, Landroidx/core/app/NotificationCompat$Action$Builder$Api31Impl; } .end annotation # instance fields .field private mAllowGeneratedReplies:Z .field private mAuthenticationRequired:Z .field private final mExtras:Landroid/os/Bundle; .field private final mIcon:Landroidx/core/graphics/drawable/IconCompat; .field private final mIntent:Landroid/app/PendingIntent; .field private mIsContextual:Z .field private mRemoteInputs:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList<", "Landroidx/core/app/RemoteInput;", ">;" } .end annotation .end field .field private mSemanticAction:I .field private mShowsUserInterface:Z .field private final mTitle:Ljava/lang/CharSequence; # direct methods .method public constructor (ILjava/lang/CharSequence;Landroid/app/PendingIntent;)V .locals 12 .param p2 # Ljava/lang/CharSequence; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .param p3 # Landroid/app/PendingIntent; .annotation build Landroidx/annotation/Nullable; .end annotation .end param const/4 v0, 0x0 if-nez p1, :cond_0 :goto_0 move-object v2, v0 goto :goto_1 :cond_0 const-string v1, "" .line 5964 invoke-static {v0, v1, p1}, Landroidx/core/graphics/drawable/IconCompat;->createWithResource(Landroid/content/res/Resources;Ljava/lang/String;I)Landroidx/core/graphics/drawable/IconCompat; move-result-object v0 goto :goto_0 :goto_1 new-instance v5, Landroid/os/Bundle; invoke-direct {v5}, Landroid/os/Bundle;->()V const/4 v6, 0x0 const/4 v7, 0x1 const/4 v8, 0x0 const/4 v9, 0x1 const/4 v10, 0x0 const/4 v11, 0x0 move-object v1, p0 move-object v3, p2 move-object v4, p3 invoke-direct/range {v1 .. v11}, Landroidx/core/app/NotificationCompat$Action$Builder;->(Landroidx/core/graphics/drawable/IconCompat;Ljava/lang/CharSequence;Landroid/app/PendingIntent;Landroid/os/Bundle;[Landroidx/core/app/RemoteInput;ZIZZZ)V return-void .end method .method public constructor (Landroidx/core/app/NotificationCompat$Action;)V .locals 11 .param p1 # Landroidx/core/app/NotificationCompat$Action; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 5980 invoke-virtual {p1}, Landroidx/core/app/NotificationCompat$Action;->getIconCompat()Landroidx/core/graphics/drawable/IconCompat; move-result-object v1 iget-object v2, p1, Landroidx/core/app/NotificationCompat$Action;->title:Ljava/lang/CharSequence; iget-object v3, p1, Landroidx/core/app/NotificationCompat$Action;->actionIntent:Landroid/app/PendingIntent; new-instance v4, Landroid/os/Bundle; iget-object v0, p1, Landroidx/core/app/NotificationCompat$Action;->mExtras:Landroid/os/Bundle; invoke-direct {v4, v0}, Landroid/os/Bundle;->(Landroid/os/Bundle;)V .line 5982 invoke-virtual {p1}, Landroidx/core/app/NotificationCompat$Action;->getRemoteInputs()[Landroidx/core/app/RemoteInput; move-result-object v5 invoke-virtual {p1}, Landroidx/core/app/NotificationCompat$Action;->getAllowGeneratedReplies()Z move-result v6 .line 5983 invoke-virtual {p1}, Landroidx/core/app/NotificationCompat$Action;->getSemanticAction()I move-result v7 iget-boolean v8, p1, Landroidx/core/app/NotificationCompat$Action;->mShowsUserInterface:Z .line 5984 invoke-virtual {p1}, Landroidx/core/app/NotificationCompat$Action;->isContextual()Z move-result v9 invoke-virtual {p1}, Landroidx/core/app/NotificationCompat$Action;->isAuthenticationRequired()Z move-result v10 move-object v0, p0 .line 5980 invoke-direct/range {v0 .. v10}, Landroidx/core/app/NotificationCompat$Action$Builder;->(Landroidx/core/graphics/drawable/IconCompat;Ljava/lang/CharSequence;Landroid/app/PendingIntent;Landroid/os/Bundle;[Landroidx/core/app/RemoteInput;ZIZZZ)V return-void .end method .method public constructor (Landroidx/core/graphics/drawable/IconCompat;Ljava/lang/CharSequence;Landroid/app/PendingIntent;)V .locals 11 .param p1 # Landroidx/core/graphics/drawable/IconCompat; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .param p2 # Ljava/lang/CharSequence; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .param p3 # Landroid/app/PendingIntent; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 5953 new-instance v4, Landroid/os/Bundle; invoke-direct {v4}, Landroid/os/Bundle;->()V const/4 v5, 0x0 const/4 v6, 0x1 const/4 v7, 0x0 const/4 v8, 0x1 const/4 v9, 0x0 const/4 v10, 0x0 move-object v0, p0 move-object v1, p1 move-object v2, p2 move-object v3, p3 invoke-direct/range {v0 .. v10}, Landroidx/core/app/NotificationCompat$Action$Builder;->(Landroidx/core/graphics/drawable/IconCompat;Ljava/lang/CharSequence;Landroid/app/PendingIntent;Landroid/os/Bundle;[Landroidx/core/app/RemoteInput;ZIZZZ)V return-void .end method .method private constructor (Landroidx/core/graphics/drawable/IconCompat;Ljava/lang/CharSequence;Landroid/app/PendingIntent;Landroid/os/Bundle;[Landroidx/core/app/RemoteInput;ZIZZZ)V .locals 1 .param p1 # Landroidx/core/graphics/drawable/IconCompat; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .param p2 # Ljava/lang/CharSequence; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .param p3 # Landroid/app/PendingIntent; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .param p4 # Landroid/os/Bundle; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p5 # [Landroidx/core/app/RemoteInput; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 5991 invoke-direct {p0}, Ljava/lang/Object;->()V const/4 v0, 0x1 iput-boolean v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mAllowGeneratedReplies:Z iput-boolean v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mShowsUserInterface:Z iput-object p1, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIcon:Landroidx/core/graphics/drawable/IconCompat; .line 5993 invoke-static {p2}, Landroidx/core/app/NotificationCompat$Builder;->limitCharSequenceLength(Ljava/lang/CharSequence;)Ljava/lang/CharSequence; move-result-object p1 iput-object p1, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mTitle:Ljava/lang/CharSequence; iput-object p3, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIntent:Landroid/app/PendingIntent; iput-object p4, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mExtras:Landroid/os/Bundle; if-nez p5, :cond_0 const/4 p1, 0x0 goto :goto_0 .line 5996 :cond_0 new-instance p1, Ljava/util/ArrayList; .line 5997 invoke-static {p5}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List; move-result-object p2 invoke-direct {p1, p2}, Ljava/util/ArrayList;->(Ljava/util/Collection;)V :goto_0 iput-object p1, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mRemoteInputs:Ljava/util/ArrayList; iput-boolean p6, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mAllowGeneratedReplies:Z iput p7, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mSemanticAction:I iput-boolean p8, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mShowsUserInterface:Z iput-boolean p9, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIsContextual:Z iput-boolean p10, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mAuthenticationRequired:Z return-void .end method .method private checkContextualActionNullFields()V .locals 2 iget-boolean v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIsContextual:Z if-nez v0, :cond_0 return-void :cond_0 iget-object v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIntent:Landroid/app/PendingIntent; if-eqz v0, :cond_1 return-void .line 6127 :cond_1 new-instance v0, Ljava/lang/NullPointerException; const-string v1, "Contextual Actions must contain a valid PendingIntent" invoke-direct {v0, v1}, Ljava/lang/NullPointerException;->(Ljava/lang/String;)V throw v0 .end method .method public static fromAndroidAction(Landroid/app/Notification$Action;)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 5 .param p0 # Landroid/app/Notification$Action; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/NonNull; .end annotation .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY_GROUP_PREFIX:Landroidx/annotation/RestrictTo$Scope; } .end annotation .line 5907 invoke-static {p0}, Landroidx/core/app/NotificationCompat$Action$Builder$Api23Impl;->getIcon(Landroid/app/Notification$Action;)Landroid/graphics/drawable/Icon; move-result-object v0 if-eqz v0, :cond_0 .line 5909 invoke-static {p0}, Landroidx/core/app/NotificationCompat$Action$Builder$Api23Impl;->getIcon(Landroid/app/Notification$Action;)Landroid/graphics/drawable/Icon; move-result-object v0 .line 5908 invoke-static {v0}, Landroidx/core/graphics/drawable/IconCompat;->createFromIconOrNullIfZeroResId(Landroid/graphics/drawable/Icon;)Landroidx/core/graphics/drawable/IconCompat; move-result-object v0 .line 5910 new-instance v1, Landroidx/core/app/NotificationCompat$Action$Builder; iget-object v2, p0, Landroid/app/Notification$Action;->title:Ljava/lang/CharSequence; iget-object v3, p0, Landroid/app/Notification$Action;->actionIntent:Landroid/app/PendingIntent; invoke-direct {v1, v0, v2, v3}, Landroidx/core/app/NotificationCompat$Action$Builder;->(Landroidx/core/graphics/drawable/IconCompat;Ljava/lang/CharSequence;Landroid/app/PendingIntent;)V goto :goto_0 .line 5913 :cond_0 new-instance v1, Landroidx/core/app/NotificationCompat$Action$Builder; iget v0, p0, Landroid/app/Notification$Action;->icon:I iget-object v2, p0, Landroid/app/Notification$Action;->title:Ljava/lang/CharSequence; iget-object v3, p0, Landroid/app/Notification$Action;->actionIntent:Landroid/app/PendingIntent; invoke-direct {v1, v0, v2, v3}, Landroidx/core/app/NotificationCompat$Action$Builder;->(ILjava/lang/CharSequence;Landroid/app/PendingIntent;)V .line 5917 :goto_0 invoke-static {p0}, Landroidx/core/app/NotificationCompat$Action$Builder$Api20Impl;->getRemoteInputs(Landroid/app/Notification$Action;)[Landroid/app/RemoteInput; move-result-object v0 if-eqz v0, :cond_1 .line 5918 array-length v2, v0 if-eqz v2, :cond_1 .line 5919 array-length v2, v0 const/4 v3, 0x0 :goto_1 if-ge v3, v2, :cond_1 aget-object v4, v0, v3 .line 5920 invoke-static {v4}, Landroidx/core/app/RemoteInput;->fromPlatform(Landroid/app/RemoteInput;)Landroidx/core/app/RemoteInput; move-result-object v4 invoke-virtual {v1, v4}, Landroidx/core/app/NotificationCompat$Action$Builder;->addRemoteInput(Landroidx/core/app/RemoteInput;)Landroidx/core/app/NotificationCompat$Action$Builder; add-int/lit8 v3, v3, 0x1 goto :goto_1 :cond_1 sget v0, Landroid/os/Build$VERSION;->SDK_INT:I .line 5925 invoke-static {p0}, Landroidx/core/app/NotificationCompat$Action$Builder$Api24Impl;->getAllowGeneratedReplies(Landroid/app/Notification$Action;)Z move-result v2 iput-boolean v2, v1, Landroidx/core/app/NotificationCompat$Action$Builder;->mAllowGeneratedReplies:Z const/16 v2, 0x1c if-lt v0, v2, :cond_2 .line 5928 invoke-static {p0}, Landroidx/core/app/NotificationCompat$Action$Builder$Api28Impl;->getSemanticAction(Landroid/app/Notification$Action;)I move-result v2 invoke-virtual {v1, v2}, Landroidx/core/app/NotificationCompat$Action$Builder;->setSemanticAction(I)Landroidx/core/app/NotificationCompat$Action$Builder; :cond_2 const/16 v2, 0x1d if-lt v0, v2, :cond_3 .line 5931 invoke-static {p0}, Landroidx/core/app/NotificationCompat$Action$Builder$Api29Impl;->isContextual(Landroid/app/Notification$Action;)Z move-result v2 invoke-virtual {v1, v2}, Landroidx/core/app/NotificationCompat$Action$Builder;->setContextual(Z)Landroidx/core/app/NotificationCompat$Action$Builder; :cond_3 const/16 v2, 0x1f if-lt v0, v2, :cond_4 .line 5934 invoke-static {p0}, Landroidx/core/app/NotificationCompat$Action$Builder$Api31Impl;->isAuthenticationRequired(Landroid/app/Notification$Action;)Z move-result v0 invoke-virtual {v1, v0}, Landroidx/core/app/NotificationCompat$Action$Builder;->setAuthenticationRequired(Z)Landroidx/core/app/NotificationCompat$Action$Builder; .line 5937 :cond_4 invoke-static {p0}, Landroidx/core/app/NotificationCompat$Action$Builder$Api20Impl;->getExtras(Landroid/app/Notification$Action;)Landroid/os/Bundle; move-result-object p0 invoke-virtual {v1, p0}, Landroidx/core/app/NotificationCompat$Action$Builder;->addExtras(Landroid/os/Bundle;)Landroidx/core/app/NotificationCompat$Action$Builder; return-object v1 .end method # virtual methods .method public addExtras(Landroid/os/Bundle;)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 1 .param p1 # Landroid/os/Bundle; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .annotation build Landroidx/annotation/NonNull; .end annotation if-eqz p1, :cond_0 iget-object v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mExtras:Landroid/os/Bundle; .line 6014 invoke-virtual {v0, p1}, Landroid/os/Bundle;->putAll(Landroid/os/Bundle;)V :cond_0 return-object p0 .end method .method public addRemoteInput(Landroidx/core/app/RemoteInput;)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 1 .param p1 # Landroidx/core/app/RemoteInput; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .annotation build Landroidx/annotation/NonNull; .end annotation iget-object v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mRemoteInputs:Ljava/util/ArrayList; if-nez v0, :cond_0 .line 6037 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V iput-object v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mRemoteInputs:Ljava/util/ArrayList; :cond_0 if-eqz p1, :cond_1 iget-object v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mRemoteInputs:Ljava/util/ArrayList; .line 6040 invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z :cond_1 return-object p0 .end method .method public build()Landroidx/core/app/NotificationCompat$Action; .locals 17 .annotation build Landroidx/annotation/NonNull; .end annotation move-object/from16 v0, p0 .line 6140 invoke-direct/range {p0 .. p0}, Landroidx/core/app/NotificationCompat$Action$Builder;->checkContextualActionNullFields()V .line 6142 new-instance v1, Ljava/util/ArrayList; invoke-direct {v1}, Ljava/util/ArrayList;->()V .line 6143 new-instance v2, Ljava/util/ArrayList; invoke-direct {v2}, Ljava/util/ArrayList;->()V iget-object v3, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mRemoteInputs:Ljava/util/ArrayList; if-eqz v3, :cond_1 .line 6145 invoke-virtual {v3}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator; move-result-object v3 :goto_0 invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z move-result v4 if-eqz v4, :cond_1 invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v4 check-cast v4, Landroidx/core/app/RemoteInput; .line 6146 invoke-virtual {v4}, Landroidx/core/app/RemoteInput;->isDataOnly()Z move-result v5 if-eqz v5, :cond_0 .line 6147 invoke-interface {v1, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z goto :goto_0 .line 6149 :cond_0 invoke-interface {v2, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z goto :goto_0 .line 6153 :cond_1 invoke-interface {v1}, Ljava/util/List;->isEmpty()Z move-result v3 const/4 v4, 0x0 if-eqz v3, :cond_2 move-object v11, v4 goto :goto_1 .line 6154 :cond_2 invoke-interface {v1}, Ljava/util/List;->size()I move-result v3 new-array v3, v3, [Landroidx/core/app/RemoteInput; invoke-interface {v1, v3}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; move-result-object v1 check-cast v1, [Landroidx/core/app/RemoteInput; move-object v11, v1 .line 6155 :goto_1 invoke-interface {v2}, Ljava/util/List;->isEmpty()Z move-result v1 if-eqz v1, :cond_3 :goto_2 move-object v10, v4 goto :goto_3 .line 6156 :cond_3 invoke-interface {v2}, Ljava/util/List;->size()I move-result v1 new-array v1, v1, [Landroidx/core/app/RemoteInput; invoke-interface {v2, v1}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; move-result-object v1 move-object v4, v1 check-cast v4, [Landroidx/core/app/RemoteInput; goto :goto_2 .line 6157 :goto_3 new-instance v1, Landroidx/core/app/NotificationCompat$Action; iget-object v6, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIcon:Landroidx/core/graphics/drawable/IconCompat; iget-object v7, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mTitle:Ljava/lang/CharSequence; iget-object v8, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIntent:Landroid/app/PendingIntent; iget-object v9, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mExtras:Landroid/os/Bundle; iget-boolean v12, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mAllowGeneratedReplies:Z iget v13, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mSemanticAction:I iget-boolean v14, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mShowsUserInterface:Z iget-boolean v15, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIsContextual:Z iget-boolean v2, v0, Landroidx/core/app/NotificationCompat$Action$Builder;->mAuthenticationRequired:Z move-object v5, v1 move/from16 v16, v2 invoke-direct/range {v5 .. v16}, Landroidx/core/app/NotificationCompat$Action;->(Landroidx/core/graphics/drawable/IconCompat;Ljava/lang/CharSequence;Landroid/app/PendingIntent;Landroid/os/Bundle;[Landroidx/core/app/RemoteInput;[Landroidx/core/app/RemoteInput;ZIZZZ)V return-object v1 .end method .method public extend(Landroidx/core/app/NotificationCompat$Action$Extender;)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 0 .param p1 # Landroidx/core/app/NotificationCompat$Action$Extender; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .annotation build Landroidx/annotation/NonNull; .end annotation .line 6115 invoke-interface {p1, p0}, Landroidx/core/app/NotificationCompat$Action$Extender;->extend(Landroidx/core/app/NotificationCompat$Action$Builder;)Landroidx/core/app/NotificationCompat$Action$Builder; return-object p0 .end method .method public getExtras()Landroid/os/Bundle; .locals 1 .annotation build Landroidx/annotation/NonNull; .end annotation iget-object v0, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mExtras:Landroid/os/Bundle; return-object v0 .end method .method public setAllowGeneratedReplies(Z)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 0 .annotation build Landroidx/annotation/NonNull; .end annotation iput-boolean p1, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mAllowGeneratedReplies:Z return-object p0 .end method .method public setAuthenticationRequired(Z)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 0 .annotation build Landroidx/annotation/NonNull; .end annotation iput-boolean p1, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mAuthenticationRequired:Z return-object p0 .end method .method public setContextual(Z)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 0 .annotation build Landroidx/annotation/NonNull; .end annotation iput-boolean p1, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mIsContextual:Z return-object p0 .end method .method public setSemanticAction(I)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 0 .annotation build Landroidx/annotation/NonNull; .end annotation iput p1, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mSemanticAction:I return-object p0 .end method .method public setShowsUserInterface(Z)Landroidx/core/app/NotificationCompat$Action$Builder; .locals 0 .annotation build Landroidx/annotation/NonNull; .end annotation iput-boolean p1, p0, Landroidx/core/app/NotificationCompat$Action$Builder;->mShowsUserInterface:Z return-object p0 .end method