.class public Lcom/moji/tool/fps/ui/FPSFloat; .super Ljava/lang/Object; .source "FPSFloat.java" # annotations .annotation build Landroid/annotation/TargetApi; value = 0xc .end annotation # instance fields .field private a:Lcom/moji/tool/fps/FPSConfig; .field private b:Landroid/view/View; .field private final c:Landroid/view/WindowManager; .field private d:I .field private e:I .field private f:Landroid/view/GestureDetector$SimpleOnGestureListener; # direct methods .method public constructor (Landroid/app/Application;Lcom/moji/tool/fps/FPSConfig;)V .locals 1 .line 51 invoke-direct {p0}, Ljava/lang/Object;->()V const/16 v0, 0xc8 .line 37 iput v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->d:I const/16 v0, 0x2bc iput v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->e:I .line 40 new-instance v0, Lcom/moji/tool/fps/ui/FPSFloat$1; invoke-direct {v0, p0}, Lcom/moji/tool/fps/ui/FPSFloat$1;->(Lcom/moji/tool/fps/ui/FPSFloat;)V iput-object v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->f:Landroid/view/GestureDetector$SimpleOnGestureListener; .line 53 iput-object p2, p0, Lcom/moji/tool/fps/ui/FPSFloat;->a:Lcom/moji/tool/fps/FPSConfig; .line 56 invoke-static {p1}, Landroid/view/LayoutInflater;->from(Landroid/content/Context;)Landroid/view/LayoutInflater; move-result-object p1 sget p2, Lcom/moji/tool/R$layout;->fps_meter_view:I const/4 v0, 0x0 invoke-virtual {p1, p2, v0}, Landroid/view/LayoutInflater;->inflate(ILandroid/view/ViewGroup;)Landroid/view/View; move-result-object p1 iput-object p1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; .line 59 iget-object p1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; check-cast p1, Landroid/widget/TextView; new-instance p2, Ljava/lang/StringBuilder; invoke-direct {p2}, Ljava/lang/StringBuilder;->()V iget-object v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->a:Lcom/moji/tool/fps/FPSConfig; iget v0, v0, Lcom/moji/tool/fps/FPSConfig;->refreshRate:F float-to-int v0, v0 invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v0, "" invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-virtual {p1, p2}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V .line 62 iget-object p1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context; move-result-object p1 const-string p2, "window" invoke-virtual {p1, p2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object p1 check-cast p1, Landroid/view/WindowManager; iput-object p1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->c:Landroid/view/WindowManager; .line 63 iget-object p1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; invoke-direct {p0, p1}, Lcom/moji/tool/fps/ui/FPSFloat;->a(Landroid/view/View;)V return-void .end method .method static synthetic a(Lcom/moji/tool/fps/ui/FPSFloat;)Landroid/view/View; .locals 0 .line 32 iget-object p0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; return-object p0 .end method .method private a(Landroid/view/View;)V .locals 7 .line 67 sget v0, Lcom/moji/tool/R$dimen;->metric_fps_view_width:I invoke-static {v0}, Lcom/moji/tool/DeviceTool;->a(I)F move-result v0 float-to-int v3, v0 .line 68 new-instance v0, Landroid/view/WindowManager$LayoutParams; const/16 v4, 0x7d2 const/16 v5, 0x8 const/4 v6, -0x3 move-object v1, v0 move v2, v3 invoke-direct/range {v1 .. v6}, Landroid/view/WindowManager$LayoutParams;->(IIIII)V .line 76 iget-object v1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->a:Lcom/moji/tool/fps/FPSConfig; iget v1, v1, Lcom/moji/tool/fps/FPSConfig;->startingGravity:I iput v1, v0, Landroid/view/WindowManager$LayoutParams;->gravity:I .line 77 iget-object v1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->a:Lcom/moji/tool/fps/FPSConfig; iget v1, v1, Lcom/moji/tool/fps/FPSConfig;->startingXPosition:I iput v1, v0, Landroid/view/WindowManager$LayoutParams;->x:I .line 78 iget-object v1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->a:Lcom/moji/tool/fps/FPSConfig; iget v1, v1, Lcom/moji/tool/fps/FPSConfig;->startingYPosition:I iput v1, v0, Landroid/view/WindowManager$LayoutParams;->y:I .line 81 iget-object v1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->c:Landroid/view/WindowManager; invoke-interface {v1, p1, v0}, Landroid/view/WindowManager;->addView(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V .line 84 new-instance v1, Landroid/view/GestureDetector; invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context; move-result-object v2 iget-object v3, p0, Lcom/moji/tool/fps/ui/FPSFloat;->f:Landroid/view/GestureDetector$SimpleOnGestureListener; invoke-direct {v1, v2, v3}, Landroid/view/GestureDetector;->(Landroid/content/Context;Landroid/view/GestureDetector$OnGestureListener;)V .line 87 new-instance v2, Lcom/moji/tool/fps/ui/FPSTouchListener; iget-object v3, p0, Lcom/moji/tool/fps/ui/FPSFloat;->c:Landroid/view/WindowManager; invoke-direct {v2, v0, v3, v1}, Lcom/moji/tool/fps/ui/FPSTouchListener;->(Landroid/view/WindowManager$LayoutParams;Landroid/view/WindowManager;Landroid/view/GestureDetector;)V invoke-virtual {p1, v2}, Landroid/view/View;->setOnTouchListener(Landroid/view/View$OnTouchListener;)V const/4 v0, 0x0 .line 90 invoke-virtual {p1, v0}, Landroid/view/View;->setHapticFeedbackEnabled(Z)V .line 93 invoke-virtual {p0}, Lcom/moji/tool/fps/ui/FPSFloat;->b()V return-void .end method .method static synthetic b(Lcom/moji/tool/fps/ui/FPSFloat;)Landroid/view/WindowManager; .locals 0 .line 32 iget-object p0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->c:Landroid/view/WindowManager; return-object p0 .end method # virtual methods .method public a()V .locals 2 .line 113 iget-object v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/view/View;->setOnTouchListener(Landroid/view/View$OnTouchListener;)V const/4 v0, 0x1 .line 114 invoke-virtual {p0, v0}, Lcom/moji/tool/fps/ui/FPSFloat;->a(Z)V return-void .end method .method public a(Lcom/moji/tool/fps/FPSConfig;Ljava/util/List;)V .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lcom/moji/tool/fps/FPSConfig;", "Ljava/util/List<", "Ljava/lang/Long;", ">;)V" } .end annotation .line 98 invoke-static {p1, p2}, Lcom/moji/tool/fps/Calculation;->a(Lcom/moji/tool/fps/FPSConfig;Ljava/util/List;)Ljava/util/List; move-result-object v0 .line 99 invoke-static {p1, p2, v0}, Lcom/moji/tool/fps/Calculation;->a(Lcom/moji/tool/fps/FPSConfig;Ljava/util/List;Ljava/util/List;)Ljava/util/AbstractMap$SimpleEntry; move-result-object p1 .line 101 invoke-virtual {p1}, Ljava/util/AbstractMap$SimpleEntry;->getKey()Ljava/lang/Object; move-result-object p2 sget-object v0, Lcom/moji/tool/fps/Calculation$Metric;->BAD:Lcom/moji/tool/fps/Calculation$Metric; if-ne p2, v0, :cond_0 .line 102 iget-object p2, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; sget v0, Lcom/moji/tool/R$drawable;->fpsmeterring_bad:I invoke-virtual {p2, v0}, Landroid/view/View;->setBackgroundResource(I)V goto :goto_0 .line 103 :cond_0 invoke-virtual {p1}, Ljava/util/AbstractMap$SimpleEntry;->getKey()Ljava/lang/Object; move-result-object p2 sget-object v0, Lcom/moji/tool/fps/Calculation$Metric;->MEDIUM:Lcom/moji/tool/fps/Calculation$Metric; if-ne p2, v0, :cond_1 .line 104 iget-object p2, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; sget v0, Lcom/moji/tool/R$drawable;->fpsmeterring_medium:I invoke-virtual {p2, v0}, Landroid/view/View;->setBackgroundResource(I)V goto :goto_0 .line 106 :cond_1 iget-object p2, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; sget v0, Lcom/moji/tool/R$drawable;->fpsmeterring_good:I invoke-virtual {p2, v0}, Landroid/view/View;->setBackgroundResource(I)V .line 109 :goto_0 iget-object p2, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; check-cast p2, Landroid/widget/TextView; new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V invoke-virtual {p1}, Ljava/util/AbstractMap$SimpleEntry;->getValue()Ljava/lang/Object; move-result-object p1 invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder; const-string p1, "" invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-virtual {p2, p1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V return-void .end method .method public a(Z)V .locals 3 .line 131 iget-object v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; invoke-virtual {v0}, Landroid/view/View;->animate()Landroid/view/ViewPropertyAnimator; move-result-object v0 const/4 v1, 0x0 .line 132 invoke-virtual {v0, v1}, Landroid/view/ViewPropertyAnimator;->alpha(F)Landroid/view/ViewPropertyAnimator; move-result-object v0 iget v1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->d:I int-to-long v1, v1 .line 133 invoke-virtual {v0, v1, v2}, Landroid/view/ViewPropertyAnimator;->setDuration(J)Landroid/view/ViewPropertyAnimator; move-result-object v0 new-instance v1, Lcom/moji/tool/fps/ui/FPSFloat$2; invoke-direct {v1, p0, p1}, Lcom/moji/tool/fps/ui/FPSFloat$2;->(Lcom/moji/tool/fps/ui/FPSFloat;Z)V .line 134 invoke-virtual {v0, v1}, Landroid/view/ViewPropertyAnimator;->setListener(Landroid/animation/Animator$AnimatorListener;)Landroid/view/ViewPropertyAnimator; return-void .end method .method public b()V .locals 3 .line 119 :try_start_0 iget-object v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/view/View;->setAlpha(F)V .line 120 iget-object v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; const/4 v1, 0x0 invoke-virtual {v0, v1}, Landroid/view/View;->setVisibility(I)V .line 121 iget-object v0, p0, Lcom/moji/tool/fps/ui/FPSFloat;->b:Landroid/view/View; invoke-virtual {v0}, Landroid/view/View;->animate()Landroid/view/ViewPropertyAnimator; move-result-object v0 const/high16 v1, 0x3f800000 # 1.0f .line 122 invoke-virtual {v0, v1}, Landroid/view/ViewPropertyAnimator;->alpha(F)Landroid/view/ViewPropertyAnimator; move-result-object v0 iget v1, p0, Lcom/moji/tool/fps/ui/FPSFloat;->e:I int-to-long v1, v1 .line 123 invoke-virtual {v0, v1, v2}, Landroid/view/ViewPropertyAnimator;->setDuration(J)Landroid/view/ViewPropertyAnimator; move-result-object v0 const/4 v1, 0x0 .line 124 invoke-virtual {v0, v1}, Landroid/view/ViewPropertyAnimator;->setListener(Landroid/animation/Animator$AnimatorListener;)Landroid/view/ViewPropertyAnimator; :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception v0 const-string v1, "FPSFloat" .line 126 invoke-static {v1, v0}, Lcom/moji/tool/log/MJLogger;->a(Ljava/lang/String;Ljava/lang/Throwable;)V :goto_0 return-void .end method