RemoteInputCompatJellybean.smali 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394
  1. .class Landroid/support/v4/app/RemoteInputCompatJellybean;
  2. .super Ljava/lang/Object;
  3. .source "RemoteInputCompatJellybean.java"
  4. # static fields
  5. .field public static final EXTRA_RESULTS_DATA:Ljava/lang/String; = "android.remoteinput.resultsData"
  6. .field private static final KEY_ALLOW_FREE_FORM_INPUT:Ljava/lang/String; = "allowFreeFormInput"
  7. .field private static final KEY_CHOICES:Ljava/lang/String; = "choices"
  8. .field private static final KEY_EXTRAS:Ljava/lang/String; = "extras"
  9. .field private static final KEY_LABEL:Ljava/lang/String; = "label"
  10. .field private static final KEY_RESULT_KEY:Ljava/lang/String; = "resultKey"
  11. .field public static final RESULTS_CLIP_LABEL:Ljava/lang/String; = "android.remoteinput.results"
  12. # direct methods
  13. .method constructor <init>()V
  14. .locals 0
  15. .prologue
  16. .line 24
  17. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  18. return-void
  19. .end method
  20. .method static addResultsToIntent([Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;Landroid/content/Intent;Landroid/os/Bundle;)V
  21. .locals 8
  22. .param p0, "remoteInputs" # [Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  23. .param p1, "intent" # Landroid/content/Intent;
  24. .param p2, "results" # Landroid/os/Bundle;
  25. .prologue
  26. .line 96
  27. new-instance v6, Landroid/os/Bundle;
  28. invoke-direct {v6}, Landroid/os/Bundle;-><init>()V
  29. .line 97
  30. .local v6, "resultsBundle":Landroid/os/Bundle;
  31. move-object v0, p0
  32. .local v0, "arr$":[Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  33. array-length v3, v0
  34. .local v3, "len$":I
  35. const/4 v2, 0x0
  36. .local v2, "i$":I
  37. :goto_0
  38. if-ge v2, v3, :cond_1
  39. aget-object v4, v0, v2
  40. .line 98
  41. .local v4, "remoteInput":Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  42. invoke-virtual {v4}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;->getResultKey()Ljava/lang/String;
  43. move-result-object v7
  44. invoke-virtual {p2, v7}, Landroid/os/Bundle;->get(Ljava/lang/String;)Ljava/lang/Object;
  45. move-result-object v5
  46. .line 99
  47. .local v5, "result":Ljava/lang/Object;
  48. instance-of v7, v5, Ljava/lang/CharSequence;
  49. if-eqz v7, :cond_0
  50. .line 100
  51. invoke-virtual {v4}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;->getResultKey()Ljava/lang/String;
  52. move-result-object v7
  53. check-cast v5, Ljava/lang/CharSequence;
  54. .end local v5 # "result":Ljava/lang/Object;
  55. invoke-virtual {v6, v7, v5}, Landroid/os/Bundle;->putCharSequence(Ljava/lang/String;Ljava/lang/CharSequence;)V
  56. .line 97
  57. :cond_0
  58. add-int/lit8 v2, v2, 0x1
  59. goto :goto_0
  60. .line 103
  61. .end local v4 # "remoteInput":Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  62. :cond_1
  63. new-instance v1, Landroid/content/Intent;
  64. invoke-direct {v1}, Landroid/content/Intent;-><init>()V
  65. .line 104
  66. .local v1, "clipIntent":Landroid/content/Intent;
  67. const-string v7, "android.remoteinput.resultsData"
  68. invoke-virtual {v1, v7, v6}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Bundle;)Landroid/content/Intent;
  69. .line 105
  70. const-string v7, "android.remoteinput.results"
  71. invoke-static {v7, v1}, Landroid/content/ClipData;->newIntent(Ljava/lang/CharSequence;Landroid/content/Intent;)Landroid/content/ClipData;
  72. move-result-object v7
  73. invoke-virtual {p1, v7}, Landroid/content/Intent;->setClipData(Landroid/content/ClipData;)V
  74. .line 106
  75. return-void
  76. .end method
  77. .method static fromBundle(Landroid/os/Bundle;Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput$Factory;)Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  78. .locals 6
  79. .param p0, "data" # Landroid/os/Bundle;
  80. .param p1, "factory" # Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput$Factory;
  81. .prologue
  82. .line 39
  83. const-string v0, "resultKey"
  84. invoke-virtual {p0, v0}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
  85. move-result-object v1
  86. const-string v0, "label"
  87. invoke-virtual {p0, v0}, Landroid/os/Bundle;->getCharSequence(Ljava/lang/String;)Ljava/lang/CharSequence;
  88. move-result-object v2
  89. const-string v0, "choices"
  90. invoke-virtual {p0, v0}, Landroid/os/Bundle;->getCharSequenceArray(Ljava/lang/String;)[Ljava/lang/CharSequence;
  91. move-result-object v3
  92. const-string v0, "allowFreeFormInput"
  93. invoke-virtual {p0, v0}, Landroid/os/Bundle;->getBoolean(Ljava/lang/String;)Z
  94. move-result v4
  95. const-string v0, "extras"
  96. invoke-virtual {p0, v0}, Landroid/os/Bundle;->getBundle(Ljava/lang/String;)Landroid/os/Bundle;
  97. move-result-object v5
  98. move-object v0, p1
  99. invoke-interface/range {v0 .. v5}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput$Factory;->build(Ljava/lang/String;Ljava/lang/CharSequence;[Ljava/lang/CharSequence;ZLandroid/os/Bundle;)Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  100. move-result-object v0
  101. return-object v0
  102. .end method
  103. .method static fromBundleArray([Landroid/os/Bundle;Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput$Factory;)[Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  104. .locals 3
  105. .param p0, "bundles" # [Landroid/os/Bundle;
  106. .param p1, "factory" # Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput$Factory;
  107. .prologue
  108. .line 58
  109. if-nez p0, :cond_1
  110. .line 59
  111. const/4 v1, 0x0
  112. .line 65
  113. :cond_0
  114. return-object v1
  115. .line 61
  116. :cond_1
  117. array-length v2, p0
  118. invoke-interface {p1, v2}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput$Factory;->newArray(I)[Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  119. move-result-object v1
  120. .line 62
  121. .local v1, "remoteInputs":[Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  122. const/4 v0, 0x0
  123. .local v0, "i":I
  124. :goto_0
  125. array-length v2, p0
  126. if-ge v0, v2, :cond_0
  127. .line 63
  128. aget-object v2, p0, v0
  129. invoke-static {v2, p1}, Landroid/support/v4/app/RemoteInputCompatJellybean;->fromBundle(Landroid/os/Bundle;Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput$Factory;)Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  130. move-result-object v2
  131. aput-object v2, v1, v0
  132. .line 62
  133. add-int/lit8 v0, v0, 0x1
  134. goto :goto_0
  135. .end method
  136. .method static getResultsFromIntent(Landroid/content/Intent;)Landroid/os/Bundle;
  137. .locals 5
  138. .param p0, "intent" # Landroid/content/Intent;
  139. .prologue
  140. const/4 v2, 0x0
  141. .line 80
  142. invoke-virtual {p0}, Landroid/content/Intent;->getClipData()Landroid/content/ClipData;
  143. move-result-object v0
  144. .line 81
  145. .local v0, "clipData":Landroid/content/ClipData;
  146. if-nez v0, :cond_1
  147. .line 91
  148. :cond_0
  149. :goto_0
  150. return-object v2
  151. .line 84
  152. :cond_1
  153. invoke-virtual {v0}, Landroid/content/ClipData;->getDescription()Landroid/content/ClipDescription;
  154. move-result-object v1
  155. .line 85
  156. .local v1, "clipDescription":Landroid/content/ClipDescription;
  157. const-string v3, "text/vnd.android.intent"
  158. invoke-virtual {v1, v3}, Landroid/content/ClipDescription;->hasMimeType(Ljava/lang/String;)Z
  159. move-result v3
  160. if-eqz v3, :cond_0
  161. .line 88
  162. invoke-virtual {v1}, Landroid/content/ClipDescription;->getLabel()Ljava/lang/CharSequence;
  163. move-result-object v3
  164. const-string v4, "android.remoteinput.results"
  165. invoke-virtual {v3, v4}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
  166. move-result v3
  167. if-eqz v3, :cond_0
  168. .line 89
  169. const/4 v2, 0x0
  170. invoke-virtual {v0, v2}, Landroid/content/ClipData;->getItemAt(I)Landroid/content/ClipData$Item;
  171. move-result-object v2
  172. invoke-virtual {v2}, Landroid/content/ClipData$Item;->getIntent()Landroid/content/Intent;
  173. move-result-object v2
  174. invoke-virtual {v2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
  175. move-result-object v2
  176. const-string v3, "android.remoteinput.resultsData"
  177. invoke-virtual {v2, v3}, Landroid/os/Bundle;->getParcelable(Ljava/lang/String;)Landroid/os/Parcelable;
  178. move-result-object v2
  179. check-cast v2, Landroid/os/Bundle;
  180. goto :goto_0
  181. .end method
  182. .method static toBundle(Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;)Landroid/os/Bundle;
  183. .locals 3
  184. .param p0, "remoteInput" # Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  185. .prologue
  186. .line 47
  187. new-instance v0, Landroid/os/Bundle;
  188. invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
  189. .line 48
  190. .local v0, "data":Landroid/os/Bundle;
  191. const-string v1, "resultKey"
  192. invoke-virtual {p0}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;->getResultKey()Ljava/lang/String;
  193. move-result-object v2
  194. invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
  195. .line 49
  196. const-string v1, "label"
  197. invoke-virtual {p0}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;->getLabel()Ljava/lang/CharSequence;
  198. move-result-object v2
  199. invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putCharSequence(Ljava/lang/String;Ljava/lang/CharSequence;)V
  200. .line 50
  201. const-string v1, "choices"
  202. invoke-virtual {p0}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;->getChoices()[Ljava/lang/CharSequence;
  203. move-result-object v2
  204. invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putCharSequenceArray(Ljava/lang/String;[Ljava/lang/CharSequence;)V
  205. .line 51
  206. const-string v1, "allowFreeFormInput"
  207. invoke-virtual {p0}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;->getAllowFreeFormInput()Z
  208. move-result v2
  209. invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putBoolean(Ljava/lang/String;Z)V
  210. .line 52
  211. const-string v1, "extras"
  212. invoke-virtual {p0}, Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;->getExtras()Landroid/os/Bundle;
  213. move-result-object v2
  214. invoke-virtual {v0, v1, v2}, Landroid/os/Bundle;->putBundle(Ljava/lang/String;Landroid/os/Bundle;)V
  215. .line 53
  216. return-object v0
  217. .end method
  218. .method static toBundleArray([Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;)[Landroid/os/Bundle;
  219. .locals 3
  220. .param p0, "remoteInputs" # [Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;
  221. .prologue
  222. .line 69
  223. if-nez p0, :cond_1
  224. .line 70
  225. const/4 v0, 0x0
  226. .line 76
  227. :cond_0
  228. return-object v0
  229. .line 72
  230. :cond_1
  231. array-length v2, p0
  232. new-array v0, v2, [Landroid/os/Bundle;
  233. .line 73
  234. .local v0, "bundles":[Landroid/os/Bundle;
  235. const/4 v1, 0x0
  236. .local v1, "i":I
  237. :goto_0
  238. array-length v2, p0
  239. if-ge v1, v2, :cond_0
  240. .line 74
  241. aget-object v2, p0, v1
  242. invoke-static {v2}, Landroid/support/v4/app/RemoteInputCompatJellybean;->toBundle(Landroid/support/v4/app/RemoteInputCompatBase$RemoteInput;)Landroid/os/Bundle;
  243. move-result-object v2
  244. aput-object v2, v0, v1
  245. .line 73
  246. add-int/lit8 v1, v1, 0x1
  247. goto :goto_0
  248. .end method