NotificationCompat$MessagingStyle.smali 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298
  1. .class public Landroid/support/v4/app/NotificationCompat$MessagingStyle;
  2. .super Landroid/support/v4/app/NotificationCompat$Style;
  3. .source ""
  4. # annotations
  5. .annotation system Ldalvik/annotation/EnclosingClass;
  6. value = Landroid/support/v4/app/NotificationCompat;
  7. .end annotation
  8. .annotation system Ldalvik/annotation/InnerClass;
  9. accessFlags = 0x9
  10. name = "MessagingStyle"
  11. .end annotation
  12. .annotation system Ldalvik/annotation/MemberClasses;
  13. value = {
  14. Landroid/support/v4/app/NotificationCompat$MessagingStyle$Message;
  15. }
  16. .end annotation
  17. # static fields
  18. .field public static final MAXIMUM_RETAINED_MESSAGES:I = 0x19
  19. # instance fields
  20. .field mConversationTitle:Ljava/lang/CharSequence;
  21. .field mMessages:Ljava/util/List;
  22. .annotation system Ldalvik/annotation/Signature;
  23. value = {
  24. "Ljava/util/List<",
  25. "Landroid/support/v4/app/NotificationCompat$MessagingStyle$Message;",
  26. ">;"
  27. }
  28. .end annotation
  29. .end field
  30. .field mUserDisplayName:Ljava/lang/CharSequence;
  31. # direct methods
  32. .method constructor <init>()V
  33. .locals 1
  34. invoke-direct {p0}, Landroid/support/v4/app/NotificationCompat$Style;-><init>()V
  35. new-instance v0, Ljava/util/ArrayList;
  36. invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
  37. iput-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  38. return-void
  39. .end method
  40. .method public constructor <init>(Ljava/lang/CharSequence;)V
  41. .locals 1
  42. invoke-direct {p0}, Landroid/support/v4/app/NotificationCompat$Style;-><init>()V
  43. new-instance v0, Ljava/util/ArrayList;
  44. invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
  45. iput-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  46. iput-object p1, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mUserDisplayName:Ljava/lang/CharSequence;
  47. return-void
  48. .end method
  49. .method public static extractMessagingStyleFromNotification(Landroid/app/Notification;)Landroid/support/v4/app/NotificationCompat$MessagingStyle;
  50. .locals 2
  51. invoke-static {}, Landroid/support/v4/app/NotificationCompat;->access$300()Landroid/support/v4/app/NotificationCompat$NotificationCompatImpl;
  52. move-result-object v0
  53. invoke-interface {v0, p0}, Landroid/support/v4/app/NotificationCompat$NotificationCompatImpl;->getExtras(Landroid/app/Notification;)Landroid/os/Bundle;
  54. move-result-object p0
  55. const-string v0, "android.selfDisplayName"
  56. invoke-virtual {p0, v0}, Landroid/os/Bundle;->containsKey(Ljava/lang/String;)Z
  57. move-result v0
  58. const/4 v1, 0x0
  59. if-nez v0, :cond_0
  60. goto :goto_0
  61. :cond_0
  62. :try_start_0
  63. new-instance v0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;
  64. invoke-direct {v0}, Landroid/support/v4/app/NotificationCompat$MessagingStyle;-><init>()V
  65. invoke-virtual {v0, p0}, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->restoreFromCompatExtras(Landroid/os/Bundle;)V
  66. :try_end_0
  67. .catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_0
  68. move-object v1, v0
  69. :catch_0
  70. :goto_0
  71. return-object v1
  72. .end method
  73. # virtual methods
  74. .method public addCompatExtras(Landroid/os/Bundle;)V
  75. .locals 2
  76. invoke-super {p0, p1}, Landroid/support/v4/app/NotificationCompat$Style;->addCompatExtras(Landroid/os/Bundle;)V
  77. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mUserDisplayName:Ljava/lang/CharSequence;
  78. if-eqz v0, :cond_0
  79. const-string v1, "android.selfDisplayName"
  80. invoke-virtual {p1, v1, v0}, Landroid/os/Bundle;->putCharSequence(Ljava/lang/String;Ljava/lang/CharSequence;)V
  81. :cond_0
  82. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mConversationTitle:Ljava/lang/CharSequence;
  83. if-eqz v0, :cond_1
  84. const-string v1, "android.conversationTitle"
  85. invoke-virtual {p1, v1, v0}, Landroid/os/Bundle;->putCharSequence(Ljava/lang/String;Ljava/lang/CharSequence;)V
  86. :cond_1
  87. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  88. invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
  89. move-result v0
  90. if-nez v0, :cond_2
  91. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  92. invoke-static {v0}, Landroid/support/v4/app/NotificationCompat$MessagingStyle$Message;->getBundleArrayForMessages(Ljava/util/List;)[Landroid/os/Bundle;
  93. move-result-object v0
  94. const-string v1, "android.messages"
  95. invoke-virtual {p1, v1, v0}, Landroid/os/Bundle;->putParcelableArray(Ljava/lang/String;[Landroid/os/Parcelable;)V
  96. :cond_2
  97. return-void
  98. .end method
  99. .method public addMessage(Landroid/support/v4/app/NotificationCompat$MessagingStyle$Message;)Landroid/support/v4/app/NotificationCompat$MessagingStyle;
  100. .locals 1
  101. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  102. invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
  103. iget-object p1, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  104. invoke-interface {p1}, Ljava/util/List;->size()I
  105. move-result p1
  106. const/16 v0, 0x19
  107. if-le p1, v0, :cond_0
  108. iget-object p1, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  109. const/4 v0, 0x0
  110. invoke-interface {p1, v0}, Ljava/util/List;->remove(I)Ljava/lang/Object;
  111. :cond_0
  112. return-object p0
  113. .end method
  114. .method public addMessage(Ljava/lang/CharSequence;JLjava/lang/CharSequence;)Landroid/support/v4/app/NotificationCompat$MessagingStyle;
  115. .locals 2
  116. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  117. new-instance v1, Landroid/support/v4/app/NotificationCompat$MessagingStyle$Message;
  118. invoke-direct {v1, p1, p2, p3, p4}, Landroid/support/v4/app/NotificationCompat$MessagingStyle$Message;-><init>(Ljava/lang/CharSequence;JLjava/lang/CharSequence;)V
  119. invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
  120. iget-object p1, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  121. invoke-interface {p1}, Ljava/util/List;->size()I
  122. move-result p1
  123. const/16 p2, 0x19
  124. if-le p1, p2, :cond_0
  125. iget-object p1, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  126. const/4 p2, 0x0
  127. invoke-interface {p1, p2}, Ljava/util/List;->remove(I)Ljava/lang/Object;
  128. :cond_0
  129. return-object p0
  130. .end method
  131. .method public getConversationTitle()Ljava/lang/CharSequence;
  132. .locals 1
  133. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mConversationTitle:Ljava/lang/CharSequence;
  134. return-object v0
  135. .end method
  136. .method public getMessages()Ljava/util/List;
  137. .locals 1
  138. .annotation system Ldalvik/annotation/Signature;
  139. value = {
  140. "()",
  141. "Ljava/util/List<",
  142. "Landroid/support/v4/app/NotificationCompat$MessagingStyle$Message;",
  143. ">;"
  144. }
  145. .end annotation
  146. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  147. return-object v0
  148. .end method
  149. .method public getUserDisplayName()Ljava/lang/CharSequence;
  150. .locals 1
  151. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mUserDisplayName:Ljava/lang/CharSequence;
  152. return-object v0
  153. .end method
  154. .method protected restoreFromCompatExtras(Landroid/os/Bundle;)V
  155. .locals 1
  156. iget-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  157. invoke-interface {v0}, Ljava/util/List;->clear()V
  158. const-string v0, "android.selfDisplayName"
  159. invoke-virtual {p1, v0}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
  160. move-result-object v0
  161. iput-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mUserDisplayName:Ljava/lang/CharSequence;
  162. const-string v0, "android.conversationTitle"
  163. invoke-virtual {p1, v0}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
  164. move-result-object v0
  165. iput-object v0, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mConversationTitle:Ljava/lang/CharSequence;
  166. const-string v0, "android.messages"
  167. invoke-virtual {p1, v0}, Landroid/os/Bundle;->getParcelableArray(Ljava/lang/String;)[Landroid/os/Parcelable;
  168. move-result-object p1
  169. if-eqz p1, :cond_0
  170. invoke-static {p1}, Landroid/support/v4/app/NotificationCompat$MessagingStyle$Message;->getMessagesFromBundleArray([Landroid/os/Parcelable;)Ljava/util/List;
  171. move-result-object p1
  172. iput-object p1, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mMessages:Ljava/util/List;
  173. :cond_0
  174. return-void
  175. .end method
  176. .method public setConversationTitle(Ljava/lang/CharSequence;)Landroid/support/v4/app/NotificationCompat$MessagingStyle;
  177. .locals 0
  178. iput-object p1, p0, Landroid/support/v4/app/NotificationCompat$MessagingStyle;->mConversationTitle:Ljava/lang/CharSequence;
  179. return-object p0
  180. .end method