Public paste
StatusBarIcon.smali
By: Guest | Date: Jul 27 2010 18:57 | Format: None | Expires: never | Size: 19.08 KB | Hits: 906

  1. .class Lcom/android/server/status/StatusBarIcon;
  2. .super Ljava/lang/Object;
  3. .source "StatusBarIcon.java"
  4.  
  5.  
  6. # static fields
  7. .field private static final ICON_GAP:I = 0x8
  8.  
  9. .field private static final ICON_HEIGHT:I = 0x19
  10.  
  11. .field private static final ICON_WIDTH:I = 0x19
  12.  
  13.  
  14. # instance fields
  15. .field mData:Lcom/android/server/status/IconData;
  16.  
  17. .field private mImageView:Lcom/android/server/status/AnimatedImageView;
  18.  
  19. .field private mNumberView:Landroid/widget/TextView;
  20.  
  21. .field private mTextView:Landroid/widget/TextView;
  22.  
  23. .field public view:Landroid/view/View;
  24.  
  25.  
  26. # direct methods
  27. .method public constructor <init>(Landroid/content/Context;Lcom/android/server/status/IconData;Landroid/view/ViewGroup;)V
  28.     .registers 13
  29.     .parameter "context"
  30.     .parameter "data"
  31.     .parameter "parent"
  32.  
  33.     .prologue
  34.     const/4 v8, 0x0
  35.  
  36.     .line 34
  37.     invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  38.  
  39.     .line 35
  40.     invoke-virtual {p2}, Lcom/android/server/status/IconData;->clone()Lcom/android/server/status/IconData;
  41.  
  42.     move-result-object v6
  43.  
  44.     iput-object v6, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  45.  
  46.     .line 37
  47.     iget v6, p2, Lcom/android/server/status/IconData;->type:I
  48.  
  49.     packed-switch v6, :pswitch_data_a2
  50.  
  51.     .line 87
  52.     :goto_f
  53.     return-void
  54.  
  55.     .line 40
  56.     :pswitch_10
  57.     new-instance v4, Landroid/widget/TextView;
  58.  
  59.     invoke-direct {v4, p1}, Landroid/widget/TextView;-><init>(Landroid/content/Context;)V
  60.  
  61.     .line 41
  62.     .local v4, t:Landroid/widget/TextView;
  63.     iput-object v4, p0, Lcom/android/server/status/StatusBarIcon;->mTextView:Landroid/widget/TextView;
  64.  
  65.     .line 42
  66.     new-instance v2, Landroid/widget/LinearLayout$LayoutParams;
  67.  
  68.     const/4 v6, -0x2
  69.  
  70.     const/4 v7, -0x1
  71.  
  72.     invoke-direct {v2, v6, v7}, Landroid/widget/LinearLayout$LayoutParams;-><init>(II)V
  73.  
  74.     .line 45
  75.     .local v2, layoutParams:Landroid/widget/LinearLayout$LayoutParams;
  76.     const/high16 v6, 0x4180
  77.  
  78.     invoke-virtual {v4, v6}, Landroid/widget/TextView;->setTextSize(F)V
  79.  
  80.     .line 51
  81.     const/16 v6, -0x1bfc
  82.  
  83.     invoke-virtual {v4, v6}, Landroid/widget/TextView;->setTextColor(I)V
  84.  
  85.     .line 52
  86.     sget-object v6, Landroid/graphics/Typeface;->TOUCHWIZ:Landroid/graphics/Typeface;
  87.  
  88.     invoke-virtual {v4, v6}, Landroid/widget/TextView;->setTypeface(Landroid/graphics/Typeface;)V
  89.  
  90.     .line 53
  91.     const/16 v6, 0x11
  92.  
  93.     invoke-virtual {v4, v6}, Landroid/widget/TextView;->setGravity(I)V
  94.  
  95.     .line 54
  96.     invoke-virtual {v4, v8, v8, v8, v8}, Landroid/widget/TextView;->setPadding(IIII)V
  97.  
  98.     .line 55
  99.     invoke-static {p1, p2}, Lcom/android/server/status/StatusBarIcon;->getIcon(Landroid/content/Context;Lcom/android/server/status/IconData;)Landroid/graphics/drawable/Drawable;
  100.  
  101.     move-result-object v6
  102.  
  103.     invoke-virtual {v4, v6}, Landroid/widget/TextView;->setBackgroundDrawable(Landroid/graphics/drawable/Drawable;)V
  104.  
  105.     .line 56
  106.     invoke-virtual {v4, v2}, Landroid/widget/TextView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V
  107.  
  108.     .line 57
  109.     iget-object v6, p2, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;
  110.  
  111.     invoke-virtual {v4, v6}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
  112.  
  113.     .line 58
  114.     iput-object v4, p0, Lcom/android/server/status/StatusBarIcon;->view:Landroid/view/View;
  115.  
  116.     goto :goto_f
  117.  
  118.     .line 64
  119.     .end local v2           #layoutParams:Landroid/widget/LinearLayout$LayoutParams;
  120.     .end local v4           #t:Landroid/widget/TextView;
  121.     :pswitch_47
  122.     const-string v6, "layout_inflater"
  123.  
  124.     invoke-virtual {p1, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
  125.  
  126.     move-result-object v1
  127.  
  128.     check-cast v1, Landroid/view/LayoutInflater;
  129.  
  130.     .line 66
  131.     .local v1, inflater:Landroid/view/LayoutInflater;
  132.     const v6, 0x109005b
  133.  
  134.     invoke-virtual {v1, v6, p3, v8}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;Z)Landroid/view/View;
  135.  
  136.     move-result-object v5
  137.  
  138.     .line 67
  139.     .local v5, v:Landroid/view/View;
  140.     iput-object v5, p0, Lcom/android/server/status/StatusBarIcon;->view:Landroid/view/View;
  141.  
  142.     .line 70
  143.     const v6, 0x1020169
  144.  
  145.     invoke-virtual {v5, v6}, Landroid/view/View;->findViewById(I)Landroid/view/View;
  146.  
  147.     move-result-object v0
  148.  
  149.     check-cast v0, Lcom/android/server/status/AnimatedImageView;
  150.  
  151.     .line 71
  152.     .local v0, im:Lcom/android/server/status/AnimatedImageView;
  153.     invoke-static {p1, p2}, Lcom/android/server/status/StatusBarIcon;->getIcon(Landroid/content/Context;Lcom/android/server/status/IconData;)Landroid/graphics/drawable/Drawable;
  154.  
  155.     move-result-object v6
  156.  
  157.     invoke-virtual {v0, v6}, Lcom/android/server/status/AnimatedImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
  158.  
  159.     .line 72
  160.     iget v6, p2, Lcom/android/server/status/IconData;->iconLevel:I
  161.  
  162.     invoke-virtual {v0, v6}, Lcom/android/server/status/AnimatedImageView;->setImageLevel(I)V
  163.  
  164.     .line 73
  165.     iput-object v0, p0, Lcom/android/server/status/StatusBarIcon;->mImageView:Lcom/android/server/status/AnimatedImageView;
  166.  
  167.     .line 76
  168.     const v6, 0x1020053
  169.  
  170.     invoke-virtual {v5, v6}, Landroid/view/View;->findViewById(I)Landroid/view/View;
  171.  
  172.     move-result-object v3
  173.  
  174.     check-cast v3, Landroid/widget/TextView;
  175.  
  176.     .line 77
  177.     .local v3, nv:Landroid/widget/TextView;
  178.     iput-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mNumberView:Landroid/widget/TextView;
  179.  
  180.     .line 78
  181.     iget v6, p2, Lcom/android/server/status/IconData;->number:I
  182.  
  183.     if-lez v6, :cond_9b
  184.  
  185.     .line 79
  186.     new-instance v6, Ljava/lang/StringBuilder;
  187.  
  188.     invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
  189.  
  190.     const-string v7, ""
  191.  
  192.     invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  193.  
  194.     move-result-object v6
  195.  
  196.     iget v7, p2, Lcom/android/server/status/IconData;->number:I
  197.  
  198.     invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
  199.  
  200.     move-result-object v6
  201.  
  202.     invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  203.  
  204.     move-result-object v6
  205.  
  206.     invoke-virtual {v3, v6}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
  207.  
  208.     .line 80
  209.     invoke-virtual {v3, v8}, Landroid/widget/TextView;->setVisibility(I)V
  210.  
  211.     goto/16 :goto_f
  212.  
  213.     .line 82
  214.     :cond_9b
  215.     const/16 v6, 0x8
  216.  
  217.     invoke-virtual {v3, v6}, Landroid/widget/TextView;->setVisibility(I)V
  218.  
  219.     goto/16 :goto_f
  220.  
  221.     .line 37
  222.     :pswitch_data_a2
  223.     .packed-switch 0x1
  224.         :pswitch_10
  225.         :pswitch_47
  226.     .end packed-switch
  227. .end method
  228.  
  229. .method static getIcon(Landroid/content/Context;Lcom/android/server/status/IconData;)Landroid/graphics/drawable/Drawable;
  230.     .registers 9
  231.     .parameter "context"
  232.     .parameter "data"
  233.  
  234.     .prologue
  235.     const/4 v5, 0x0
  236.  
  237.     const-string v6, "StatusBar"
  238.  
  239.     .line 145
  240.     const/4 v2, 0x0
  241.  
  242.     .line 147
  243.     .local v2, r:Landroid/content/res/Resources;
  244.     iget-object v3, p1, Lcom/android/server/status/IconData;->iconPackage:Ljava/lang/String;
  245.  
  246.     if-eqz v3, :cond_37
  247.  
  248.     .line 149
  249.     :try_start_8
  250.     invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
  251.  
  252.     move-result-object v3
  253.  
  254.     iget-object v4, p1, Lcom/android/server/status/IconData;->iconPackage:Ljava/lang/String;
  255.  
  256.     invoke-virtual {v3, v4}, Landroid/content/pm/PackageManager;->getResourcesForApplication(Ljava/lang/String;)Landroid/content/res/Resources;
  257.     :try_end_11
  258.     .catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_8 .. :try_end_11} :catch_19
  259.  
  260.     move-result-object v2
  261.  
  262.     .line 159
  263.     :goto_12
  264.     :try_start_12
  265.     iget v3, p1, Lcom/android/server/status/IconData;->iconId:I
  266.  
  267.     invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getDrawable(I)Landroid/graphics/drawable/Drawable;
  268.     :try_end_17
  269.     .catch Ljava/lang/RuntimeException; {:try_start_12 .. :try_end_17} :catch_3c
  270.  
  271.     move-result-object v3
  272.  
  273.     .line 166
  274.     :goto_18
  275.     return-object v3
  276.  
  277.     .line 150
  278.     :catch_19
  279.     move-exception v3
  280.  
  281.     move-object v1, v3
  282.  
  283.     .line 151
  284.     .local v1, ex:Landroid/content/pm/PackageManager$NameNotFoundException;
  285.     const-string v3, "StatusBar"
  286.  
  287.     new-instance v3, Ljava/lang/StringBuilder;
  288.  
  289.     invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
  290.  
  291.     const-string v4, "Icon package not found: "
  292.  
  293.     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  294.  
  295.     move-result-object v3
  296.  
  297.     iget-object v4, p1, Lcom/android/server/status/IconData;->iconPackage:Ljava/lang/String;
  298.  
  299.     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  300.  
  301.     move-result-object v3
  302.  
  303.     invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  304.  
  305.     move-result-object v3
  306.  
  307.     invoke-static {v6, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
  308.  
  309.     move-object v3, v5
  310.  
  311.     .line 152
  312.     goto :goto_18
  313.  
  314.     .line 155
  315.     .end local v1           #ex:Landroid/content/pm/PackageManager$NameNotFoundException;
  316.     :cond_37
  317.     invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
  318.  
  319.     move-result-object v2
  320.  
  321.     goto :goto_12
  322.  
  323.     .line 160
  324.     :catch_3c
  325.     move-exception v3
  326.  
  327.     move-object v0, v3
  328.  
  329.     .line 161
  330.     .local v0, e:Ljava/lang/RuntimeException;
  331.     const-string v3, "StatusBar"
  332.  
  333.     new-instance v3, Ljava/lang/StringBuilder;
  334.  
  335.     invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
  336.  
  337.     const-string v4, "Icon not found in "
  338.  
  339.     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  340.  
  341.     move-result-object v3
  342.  
  343.     iget-object v4, p1, Lcom/android/server/status/IconData;->iconPackage:Ljava/lang/String;
  344.  
  345.     if-eqz v4, :cond_72
  346.  
  347.     iget v4, p1, Lcom/android/server/status/IconData;->iconId:I
  348.  
  349.     invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
  350.  
  351.     move-result-object v4
  352.  
  353.     :goto_55
  354.     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
  355.  
  356.     move-result-object v3
  357.  
  358.     const-string v4, ": "
  359.  
  360.     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  361.  
  362.     move-result-object v3
  363.  
  364.     iget v4, p1, Lcom/android/server/status/IconData;->iconId:I
  365.  
  366.     invoke-static {v4}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
  367.  
  368.     move-result-object v4
  369.  
  370.     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  371.  
  372.     move-result-object v3
  373.  
  374.     invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  375.  
  376.     move-result-object v3
  377.  
  378.     invoke-static {v6, v3}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
  379.  
  380.     move-object v3, v5
  381.  
  382.     .line 166
  383.     goto :goto_18
  384.  
  385.     .line 161
  386.     :cond_72
  387.     const-string v4, "<system>"
  388.  
  389.     goto :goto_55
  390. .end method
  391.  
  392.  
  393. # virtual methods
  394. .method getNumber()I
  395.     .registers 2
  396.  
  397.     .prologue
  398.     .line 170
  399.     iget-object v0, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  400.  
  401.     iget v0, v0, Lcom/android/server/status/IconData;->number:I
  402.  
  403.     return v0
  404. .end method
  405.  
  406. .method public update(I)V
  407.     .registers 6
  408.     .parameter "number"
  409.  
  410.     .prologue
  411.     const-string v3, ""
  412.  
  413.     .line 123
  414.     iget-object v1, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  415.  
  416.     iget v1, v1, Lcom/android/server/status/IconData;->number:I
  417.  
  418.     if-eq v1, p1, :cond_22
  419.  
  420.     .line 124
  421.     iget-object v0, p0, Lcom/android/server/status/StatusBarIcon;->mNumberView:Landroid/widget/TextView;
  422.  
  423.     .line 125
  424.     .local v0, nv:Landroid/widget/TextView;
  425.     if-lez p1, :cond_27
  426.  
  427.     .line 126
  428.     new-instance v1, Ljava/lang/StringBuilder;
  429.  
  430.     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
  431.  
  432.     const-string v2, ""
  433.  
  434.     invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  435.  
  436.     move-result-object v1
  437.  
  438.     invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
  439.  
  440.     move-result-object v1
  441.  
  442.     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  443.  
  444.     move-result-object v1
  445.  
  446.     invoke-virtual {v0, v1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
  447.  
  448.     .line 131
  449.     .end local v0           #nv:Landroid/widget/TextView;
  450.     :cond_22
  451.     :goto_22
  452.     iget-object v1, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  453.  
  454.     iput p1, v1, Lcom/android/server/status/IconData;->number:I
  455.  
  456.     .line 132
  457.     return-void
  458.  
  459.     .line 128
  460.     .restart local v0       #nv:Landroid/widget/TextView;
  461.     :cond_27
  462.     const-string v1, ""
  463.  
  464.     invoke-virtual {v0, v3}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
  465.  
  466.     goto :goto_22
  467. .end method
  468.  
  469. .method public update(Landroid/content/Context;Lcom/android/server/status/IconData;)V
  470.     .registers 9
  471.     .parameter "context"
  472.     .parameter "data"
  473.     .annotation system Ldalvik/annotation/Throws;
  474.         value = {
  475.             Lcom/android/server/status/StatusBarException;
  476.         }
  477.     .end annotation
  478.  
  479.     .prologue
  480.     const-string v5, ""
  481.  
  482.     .line 90
  483.     iget-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  484.  
  485.     iget v3, v3, Lcom/android/server/status/IconData;->type:I
  486.  
  487.     iget v4, p2, Lcom/android/server/status/IconData;->type:I
  488.  
  489.     if-eq v3, v4, :cond_12
  490.  
  491.     .line 91
  492.     new-instance v3, Lcom/android/server/status/StatusBarException;
  493.  
  494.     const-string v4, "status bar entry type can't change"
  495.  
  496.     invoke-direct {v3, v4}, Lcom/android/server/status/StatusBarException;-><init>(Ljava/lang/String;)V
  497.  
  498.     throw v3
  499.  
  500.     .line 93
  501.     :cond_12
  502.     iget v3, p2, Lcom/android/server/status/IconData;->type:I
  503.  
  504.     packed-switch v3, :pswitch_data_92
  505.  
  506.     .line 119
  507.     :cond_17
  508.     :goto_17
  509.     iget-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  510.  
  511.     invoke-virtual {v3, p2}, Lcom/android/server/status/IconData;->copyFrom(Lcom/android/server/status/IconData;)V
  512.  
  513.     .line 120
  514.     return-void
  515.  
  516.     .line 95
  517.     :pswitch_1d
  518.     iget-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  519.  
  520.     iget-object v3, v3, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;
  521.  
  522.     iget-object v4, p2, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;
  523.  
  524.     invoke-static {v3, v4}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
  525.  
  526.     move-result v3
  527.  
  528.     if-nez v3, :cond_17
  529.  
  530.     .line 96
  531.     iget-object v2, p0, Lcom/android/server/status/StatusBarIcon;->mTextView:Landroid/widget/TextView;
  532.  
  533.     .line 97
  534.     .local v2, tv:Landroid/widget/TextView;
  535.     iget-object v3, p2, Lcom/android/server/status/IconData;->text:Ljava/lang/CharSequence;
  536.  
  537.     invoke-virtual {v2, v3}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
  538.  
  539.     goto :goto_17
  540.  
  541.     .line 101
  542.     .end local v2           #tv:Landroid/widget/TextView;
  543.     :pswitch_31
  544.     iget-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  545.  
  546.     iget-object v3, v3, Lcom/android/server/status/IconData;->iconPackage:Ljava/lang/String;
  547.  
  548.     if-eqz v3, :cond_47
  549.  
  550.     iget-object v3, p2, Lcom/android/server/status/IconData;->iconPackage:Ljava/lang/String;
  551.  
  552.     if-eqz v3, :cond_47
  553.  
  554.     iget-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  555.  
  556.     iget-object v3, v3, Lcom/android/server/status/IconData;->iconPackage:Ljava/lang/String;
  557.  
  558.     iget-object v4, p2, Lcom/android/server/status/IconData;->iconPackage:Ljava/lang/String;
  559.  
  560.     invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
  561.  
  562.     move-result v3
  563.  
  564.     if-eqz v3, :cond_57
  565.  
  566.     :cond_47
  567.     iget-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  568.  
  569.     iget v3, v3, Lcom/android/server/status/IconData;->iconId:I
  570.  
  571.     iget v4, p2, Lcom/android/server/status/IconData;->iconId:I
  572.  
  573.     if-ne v3, v4, :cond_57
  574.  
  575.     iget-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  576.  
  577.     iget v3, v3, Lcom/android/server/status/IconData;->iconLevel:I
  578.  
  579.     iget v4, p2, Lcom/android/server/status/IconData;->iconLevel:I
  580.  
  581.     if-eq v3, v4, :cond_65
  582.  
  583.     .line 105
  584.     :cond_57
  585.     iget-object v0, p0, Lcom/android/server/status/StatusBarIcon;->mImageView:Lcom/android/server/status/AnimatedImageView;
  586.  
  587.     .line 106
  588.     .local v0, im:Landroid/widget/ImageView;
  589.     invoke-static {p1, p2}, Lcom/android/server/status/StatusBarIcon;->getIcon(Landroid/content/Context;Lcom/android/server/status/IconData;)Landroid/graphics/drawable/Drawable;
  590.  
  591.     move-result-object v3
  592.  
  593.     invoke-virtual {v0, v3}, Lcom/android/server/status/AnimatedImageView;->setImageDrawable(Landroid/graphics/drawable/Drawable;)V
  594.  
  595.     .line 107
  596.     iget v3, p2, Lcom/android/server/status/IconData;->iconLevel:I
  597.  
  598.     invoke-virtual {v0, v3}, Lcom/android/server/status/AnimatedImageView;->setImageLevel(I)V
  599.  
  600.     .line 109
  601.     .end local v0           #im:Landroid/widget/ImageView;
  602.     :cond_65
  603.     iget-object v3, p0, Lcom/android/server/status/StatusBarIcon;->mData:Lcom/android/server/status/IconData;
  604.  
  605.     iget v3, v3, Lcom/android/server/status/IconData;->number:I
  606.  
  607.     iget v4, p2, Lcom/android/server/status/IconData;->number:I
  608.  
  609.     if-eq v3, v4, :cond_17
  610.  
  611.     .line 110
  612.     iget-object v1, p0, Lcom/android/server/status/StatusBarIcon;->mNumberView:Landroid/widget/TextView;
  613.  
  614.     .line 111
  615.     .local v1, nv:Landroid/widget/TextView;
  616.     iget v3, p2, Lcom/android/server/status/IconData;->number:I
  617.  
  618.     if-lez v3, :cond_8c
  619.  
  620.     .line 112
  621.     new-instance v3, Ljava/lang/StringBuilder;
  622.  
  623.     invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
  624.  
  625.     const-string v4, ""
  626.  
  627.     invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  628.  
  629.     move-result-object v3
  630.  
  631.     iget v4, p2, Lcom/android/server/status/IconData;->number:I
  632.  
  633.     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
  634.  
  635.     move-result-object v3
  636.  
  637.     invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  638.  
  639.     move-result-object v3
  640.  
  641.     invoke-virtual {v1, v3}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
  642.  
  643.     goto :goto_17
  644.  
  645.     .line 114
  646.     :cond_8c
  647.     const-string v3, ""
  648.  
  649.     invoke-virtual {v1, v5}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V
  650.  
  651.     goto :goto_17
  652.  
  653.     .line 93
  654.     :pswitch_data_92
  655.     .packed-switch 0x1
  656.         :pswitch_1d
  657.         :pswitch_31
  658.     .end packed-switch
  659. .end method