TextUtilsCompat$TextUtilsCompatImpl.smali 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263
  1. .class Landroid/support/v4/text/TextUtilsCompat$TextUtilsCompatImpl;
  2. .super Ljava/lang/Object;
  3. .source "TextUtilsCompat.java"
  4. # annotations
  5. .annotation system Ldalvik/annotation/EnclosingClass;
  6. value = Landroid/support/v4/text/TextUtilsCompat;
  7. .end annotation
  8. .annotation system Ldalvik/annotation/InnerClass;
  9. accessFlags = 0xa
  10. name = "TextUtilsCompatImpl"
  11. .end annotation
  12. # direct methods
  13. .method private constructor <init>()V
  14. .locals 0
  15. .prologue
  16. .line 27
  17. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  18. return-void
  19. .end method
  20. .method synthetic constructor <init>(Landroid/support/v4/text/TextUtilsCompat$1;)V
  21. .locals 0
  22. .param p1, "x0" # Landroid/support/v4/text/TextUtilsCompat$1;
  23. .prologue
  24. .line 27
  25. invoke-direct {p0}, Landroid/support/v4/text/TextUtilsCompat$TextUtilsCompatImpl;-><init>()V
  26. return-void
  27. .end method
  28. .method private static getLayoutDirectionFromFirstChar(Ljava/util/Locale;)I
  29. .locals 2
  30. .param p0, "locale" # Ljava/util/Locale;
  31. .annotation build Landroid/support/annotation/NonNull;
  32. .end annotation
  33. .end param
  34. .prologue
  35. const/4 v0, 0x0
  36. .line 88
  37. invoke-virtual {p0, p0}, Ljava/util/Locale;->getDisplayName(Ljava/util/Locale;)Ljava/lang/String;
  38. move-result-object v1
  39. invoke-virtual {v1, v0}, Ljava/lang/String;->charAt(I)C
  40. move-result v1
  41. invoke-static {v1}, Ljava/lang/Character;->getDirectionality(C)B
  42. move-result v1
  43. packed-switch v1, :pswitch_data_0
  44. .line 95
  45. :goto_0
  46. return v0
  47. .line 91
  48. :pswitch_0
  49. const/4 v0, 0x1
  50. goto :goto_0
  51. .line 88
  52. nop
  53. :pswitch_data_0
  54. .packed-switch 0x1
  55. :pswitch_0
  56. :pswitch_0
  57. .end packed-switch
  58. .end method
  59. # virtual methods
  60. .method public getLayoutDirectionFromLocale(Ljava/util/Locale;)I
  61. .locals 2
  62. .param p1, "locale" # Ljava/util/Locale;
  63. .annotation build Landroid/support/annotation/Nullable;
  64. .end annotation
  65. .end param
  66. .prologue
  67. .line 63
  68. if-eqz p1, :cond_2
  69. sget-object v1, Landroid/support/v4/text/TextUtilsCompat;->ROOT:Ljava/util/Locale;
  70. invoke-virtual {p1, v1}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
  71. move-result v1
  72. if-nez v1, :cond_2
  73. .line 64
  74. invoke-static {p1}, Landroid/support/v4/text/ICUCompat;->maximizeAndGetScript(Ljava/util/Locale;)Ljava/lang/String;
  75. move-result-object v0
  76. .line 65
  77. .local v0, "scriptSubtag":Ljava/lang/String;
  78. if-nez v0, :cond_0
  79. invoke-static {p1}, Landroid/support/v4/text/TextUtilsCompat$TextUtilsCompatImpl;->getLayoutDirectionFromFirstChar(Ljava/util/Locale;)I
  80. move-result v1
  81. .line 72
  82. .end local v0 # "scriptSubtag":Ljava/lang/String;
  83. :goto_0
  84. return v1
  85. .line 67
  86. .restart local v0 # "scriptSubtag":Ljava/lang/String;
  87. :cond_0
  88. invoke-static {}, Landroid/support/v4/text/TextUtilsCompat;->access$000()Ljava/lang/String;
  89. move-result-object v1
  90. invoke-virtual {v0, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
  91. move-result v1
  92. if-nez v1, :cond_1
  93. invoke-static {}, Landroid/support/v4/text/TextUtilsCompat;->access$100()Ljava/lang/String;
  94. move-result-object v1
  95. invoke-virtual {v0, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
  96. move-result v1
  97. if-eqz v1, :cond_2
  98. .line 69
  99. :cond_1
  100. const/4 v1, 0x1
  101. goto :goto_0
  102. .line 72
  103. .end local v0 # "scriptSubtag":Ljava/lang/String;
  104. :cond_2
  105. const/4 v1, 0x0
  106. goto :goto_0
  107. .end method
  108. .method public htmlEncode(Ljava/lang/String;)Ljava/lang/String;
  109. .locals 4
  110. .param p1, "s" # Ljava/lang/String;
  111. .annotation build Landroid/support/annotation/NonNull;
  112. .end annotation
  113. .end param
  114. .annotation build Landroid/support/annotation/NonNull;
  115. .end annotation
  116. .prologue
  117. .line 30
  118. new-instance v2, Ljava/lang/StringBuilder;
  119. invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
  120. .line 32
  121. .local v2, "sb":Ljava/lang/StringBuilder;
  122. const/4 v1, 0x0
  123. .local v1, "i":I
  124. :goto_0
  125. invoke-virtual {p1}, Ljava/lang/String;->length()I
  126. move-result v3
  127. if-ge v1, v3, :cond_0
  128. .line 33
  129. invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
  130. move-result v0
  131. .line 34
  132. .local v0, "c":C
  133. sparse-switch v0, :sswitch_data_0
  134. .line 56
  135. invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
  136. .line 32
  137. :goto_1
  138. add-int/lit8 v1, v1, 0x1
  139. goto :goto_0
  140. .line 36
  141. :sswitch_0
  142. const-string v3, "&lt;"
  143. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  144. goto :goto_1
  145. .line 39
  146. :sswitch_1
  147. const-string v3, "&gt;"
  148. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  149. goto :goto_1
  150. .line 42
  151. :sswitch_2
  152. const-string v3, "&amp;"
  153. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  154. goto :goto_1
  155. .line 50
  156. :sswitch_3
  157. const-string v3, "&#39;"
  158. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  159. goto :goto_1
  160. .line 53
  161. :sswitch_4
  162. const-string v3, "&quot;"
  163. invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  164. goto :goto_1
  165. .line 59
  166. .end local v0 # "c":C
  167. :cond_0
  168. invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  169. move-result-object v3
  170. return-object v3
  171. .line 34
  172. :sswitch_data_0
  173. .sparse-switch
  174. 0x22 -> :sswitch_4
  175. 0x26 -> :sswitch_2
  176. 0x27 -> :sswitch_3
  177. 0x3c -> :sswitch_0
  178. 0x3e -> :sswitch_1
  179. .end sparse-switch
  180. .end method