.class public Landroidx/constraintlayout/widget/Placeholder; .super Landroid/view/View; .source "Placeholder.java" # instance fields .field private mContent:Landroid/view/View; .field private mContentId:I .field private mEmptyVisibility:I # direct methods .method public constructor (Landroid/content/Context;)V .registers 3 .line 49 invoke-direct {p0, p1}, Landroid/view/View;->(Landroid/content/Context;)V const/4 p1, -0x1 .line 44 iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I const/4 p1, 0x0 .line 45 iput-object p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; const/4 v0, 0x4 .line 46 iput v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I .line 50 invoke-direct {p0, p1}, Landroidx/constraintlayout/widget/Placeholder;->init(Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;)V .registers 3 .line 54 invoke-direct {p0, p1, p2}, Landroid/view/View;->(Landroid/content/Context;Landroid/util/AttributeSet;)V const/4 p1, -0x1 .line 44 iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I const/4 p1, 0x0 .line 45 iput-object p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; const/4 p1, 0x4 .line 46 iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I .line 55 invoke-direct {p0, p2}, Landroidx/constraintlayout/widget/Placeholder;->init(Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V .registers 4 .line 59 invoke-direct {p0, p1, p2, p3}, Landroid/view/View;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V const/4 p1, -0x1 .line 44 iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I const/4 p1, 0x0 .line 45 iput-object p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; const/4 p1, 0x4 .line 46 iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I .line 60 invoke-direct {p0, p2}, Landroidx/constraintlayout/widget/Placeholder;->init(Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;II)V .registers 5 .line 64 invoke-direct {p0, p1, p2, p3}, Landroid/view/View;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V const/4 p1, -0x1 .line 44 iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I const/4 p1, 0x0 .line 45 iput-object p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; const/4 p1, 0x4 .line 46 iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I .line 65 invoke-direct {p0, p2}, Landroidx/constraintlayout/widget/Placeholder;->init(Landroid/util/AttributeSet;)V return-void .end method .method private init(Landroid/util/AttributeSet;)V .registers 6 .line 69 iget v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I invoke-super {p0, v0}, Landroid/view/View;->setVisibility(I)V const/4 v0, -0x1 .line 70 iput v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I if-eqz p1, :cond_3b .line 72 invoke-virtual {p0}, Landroidx/constraintlayout/widget/Placeholder;->getContext()Landroid/content/Context; move-result-object v0 sget-object v1, Landroidx/constraintlayout/widget/R$styleable;->ConstraintLayout_placeholder:[I invoke-virtual {v0, p1, v1}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray; move-result-object p1 .line 73 invoke-virtual {p1}, Landroid/content/res/TypedArray;->getIndexCount()I move-result v0 const/4 v1, 0x0 :goto_19 if-ge v1, v0, :cond_3b .line 75 invoke-virtual {p1, v1}, Landroid/content/res/TypedArray;->getIndex(I)I move-result v2 .line 76 sget v3, Landroidx/constraintlayout/widget/R$styleable;->ConstraintLayout_placeholder_content:I if-ne v2, v3, :cond_2c .line 77 iget v3, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I invoke-virtual {p1, v2, v3}, Landroid/content/res/TypedArray;->getResourceId(II)I move-result v2 iput v2, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I goto :goto_38 .line 79 :cond_2c sget v3, Landroidx/constraintlayout/widget/R$styleable;->ConstraintLayout_placeholder_emptyVisibility:I if-ne v2, v3, :cond_38 .line 80 iget v3, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I invoke-virtual {p1, v2, v3}, Landroid/content/res/TypedArray;->getInt(II)I move-result v2 iput v2, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I :cond_38 :goto_38 add-int/lit8 v1, v1, 0x1 goto :goto_19 :cond_3b return-void .end method # virtual methods .method public getContent()Landroid/view/View; .registers 2 .line 113 iget-object v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; return-object v0 .end method .method public getEmptyVisibility()I .registers 2 .line 104 iget v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I return v0 .end method .method public onDraw(Landroid/graphics/Canvas;)V .registers 9 .line 121 invoke-virtual {p0}, Landroidx/constraintlayout/widget/Placeholder;->isInEditMode()Z move-result v0 if-eqz v0, :cond_6b const/16 v0, 0xdf .line 122 invoke-virtual {p1, v0, v0, v0}, Landroid/graphics/Canvas;->drawRGB(III)V .line 123 new-instance v0, Landroid/graphics/Paint; invoke-direct {v0}, Landroid/graphics/Paint;->()V const/16 v1, 0xff const/16 v2, 0xd2 .line 124 invoke-virtual {v0, v1, v2, v2, v2}, Landroid/graphics/Paint;->setARGB(IIII)V .line 125 sget-object v1, Landroid/graphics/Paint$Align;->CENTER:Landroid/graphics/Paint$Align; invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setTextAlign(Landroid/graphics/Paint$Align;)V .line 126 sget-object v1, Landroid/graphics/Typeface;->DEFAULT:Landroid/graphics/Typeface; const/4 v2, 0x0 invoke-static {v1, v2}, Landroid/graphics/Typeface;->create(Landroid/graphics/Typeface;I)Landroid/graphics/Typeface; move-result-object v1 invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setTypeface(Landroid/graphics/Typeface;)Landroid/graphics/Typeface; .line 128 new-instance v1, Landroid/graphics/Rect; invoke-direct {v1}, Landroid/graphics/Rect;->()V .line 129 invoke-virtual {p1, v1}, Landroid/graphics/Canvas;->getClipBounds(Landroid/graphics/Rect;)Z .line 130 invoke-virtual {v1}, Landroid/graphics/Rect;->height()I move-result v3 int-to-float v3, v3 invoke-virtual {v0, v3}, Landroid/graphics/Paint;->setTextSize(F)V .line 131 invoke-virtual {v1}, Landroid/graphics/Rect;->height()I move-result v3 .line 132 invoke-virtual {v1}, Landroid/graphics/Rect;->width()I move-result v4 .line 133 sget-object v5, Landroid/graphics/Paint$Align;->LEFT:Landroid/graphics/Paint$Align; invoke-virtual {v0, v5}, Landroid/graphics/Paint;->setTextAlign(Landroid/graphics/Paint$Align;)V .line 135 const-string v5, "?" invoke-virtual {v5}, Ljava/lang/String;->length()I move-result v6 invoke-virtual {v0, v5, v2, v6, v1}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V int-to-float v2, v4 const/high16 v4, 0x40000000 # 2.0f div-float/2addr v2, v4 .line 136 invoke-virtual {v1}, Landroid/graphics/Rect;->width()I move-result v6 int-to-float v6, v6 div-float/2addr v6, v4 sub-float/2addr v2, v6 iget v6, v1, Landroid/graphics/Rect;->left:I int-to-float v6, v6 sub-float/2addr v2, v6 int-to-float v3, v3 div-float/2addr v3, v4 .line 137 invoke-virtual {v1}, Landroid/graphics/Rect;->height()I move-result v6 int-to-float v6, v6 div-float/2addr v6, v4 add-float/2addr v3, v6 iget v1, v1, Landroid/graphics/Rect;->bottom:I int-to-float v1, v1 sub-float/2addr v3, v1 .line 138 invoke-virtual {p1, v5, v2, v3, v0}, Landroid/graphics/Canvas;->drawText(Ljava/lang/String;FFLandroid/graphics/Paint;)V :cond_6b return-void .end method .method public setContentId(I)V .registers 4 .line 169 iget v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I if-ne v0, p1, :cond_5 return-void .line 172 :cond_5 iget-object v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; if-eqz v0, :cond_1a const/4 v1, 0x0 .line 173 invoke-virtual {v0, v1}, Landroid/view/View;->setVisibility(I)V .line 174 iget-object v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; .line 175 invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v0 check-cast v0, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams; .line 176 iput-boolean v1, v0, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->isInPlaceholder:Z const/4 v0, 0x0 .line 177 iput-object v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; .line 180 :cond_1a iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I const/4 v0, -0x1 if-eq p1, v0, :cond_30 .line 182 invoke-virtual {p0}, Landroidx/constraintlayout/widget/Placeholder;->getParent()Landroid/view/ViewParent; move-result-object v0 check-cast v0, Landroid/view/View; invoke-virtual {v0, p1}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object p1 if-eqz p1, :cond_30 const/16 v0, 0x8 .line 184 invoke-virtual {p1, v0}, Landroid/view/View;->setVisibility(I)V :cond_30 return-void .end method .method public setEmptyVisibility(I)V .registers 2 .line 95 iput p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I return-void .end method .method public updatePostMeasure(Landroidx/constraintlayout/widget/ConstraintLayout;)V .registers 5 .line 194 iget-object p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; if-nez p1, :cond_5 return-void .line 197 :cond_5 invoke-virtual {p0}, Landroidx/constraintlayout/widget/Placeholder;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object p1 check-cast p1, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams; .line 198 iget-object v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; .line 199 invoke-virtual {v0}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object v0 check-cast v0, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams; .line 200 iget-object v1, v0, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->widget:Landroidx/constraintlayout/solver/widgets/ConstraintWidget; const/4 v2, 0x0 invoke-virtual {v1, v2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setVisibility(I)V .line 201 iget-object v1, p1, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->widget:Landroidx/constraintlayout/solver/widgets/ConstraintWidget; iget-object v2, v0, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->widget:Landroidx/constraintlayout/solver/widgets/ConstraintWidget; invoke-virtual {v2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getWidth()I move-result v2 invoke-virtual {v1, v2}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setWidth(I)V .line 202 iget-object p1, p1, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->widget:Landroidx/constraintlayout/solver/widgets/ConstraintWidget; iget-object v1, v0, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->widget:Landroidx/constraintlayout/solver/widgets/ConstraintWidget; invoke-virtual {v1}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->getHeight()I move-result v1 invoke-virtual {p1, v1}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setHeight(I)V .line 203 iget-object p1, v0, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->widget:Landroidx/constraintlayout/solver/widgets/ConstraintWidget; const/16 v0, 0x8 invoke-virtual {p1, v0}, Landroidx/constraintlayout/solver/widgets/ConstraintWidget;->setVisibility(I)V return-void .end method .method public updatePreLayout(Landroidx/constraintlayout/widget/ConstraintLayout;)V .registers 4 .line 147 iget v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I const/4 v1, -0x1 if-ne v0, v1, :cond_10 .line 148 invoke-virtual {p0}, Landroidx/constraintlayout/widget/Placeholder;->isInEditMode()Z move-result v0 if-nez v0, :cond_10 .line 149 iget v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mEmptyVisibility:I invoke-virtual {p0, v0}, Landroidx/constraintlayout/widget/Placeholder;->setVisibility(I)V .line 153 :cond_10 iget v0, p0, Landroidx/constraintlayout/widget/Placeholder;->mContentId:I invoke-virtual {p1, v0}, Landroidx/constraintlayout/widget/ConstraintLayout;->findViewById(I)Landroid/view/View; move-result-object p1 iput-object p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; if-eqz p1, :cond_2c .line 156 invoke-virtual {p1}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams; move-result-object p1 check-cast p1, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams; const/4 v0, 0x1 .line 157 iput-boolean v0, p1, Landroidx/constraintlayout/widget/ConstraintLayout$LayoutParams;->isInPlaceholder:Z .line 158 iget-object p1, p0, Landroidx/constraintlayout/widget/Placeholder;->mContent:Landroid/view/View; const/4 v0, 0x0 invoke-virtual {p1, v0}, Landroid/view/View;->setVisibility(I)V .line 159 invoke-virtual {p0, v0}, Landroidx/constraintlayout/widget/Placeholder;->setVisibility(I)V :cond_2c return-void .end method