.class public Lcom/google/android/material/chip/ChipGroup; .super Lcom/google/android/material/internal/FlowLayout; .source "ChipGroup.java" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener;, Lcom/google/android/material/chip/ChipGroup$CheckedStateTracker;, Lcom/google/android/material/chip/ChipGroup$LayoutParams;, Lcom/google/android/material/chip/ChipGroup$OnCheckedChangeListener; } .end annotation # instance fields .field private checkedId:I .field private final checkedStateTracker:Lcom/google/android/material/chip/ChipGroup$CheckedStateTracker; .field private chipSpacingHorizontal:I .field private chipSpacingVertical:I .field private onCheckedChangeListener:Lcom/google/android/material/chip/ChipGroup$OnCheckedChangeListener; .field private passThroughListener:Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener; .field private protectFromCheckedChange:Z .field private singleSelection:Z # direct methods .method public constructor (Landroid/content/Context;)V .registers 3 const/4 v0, 0x0 .line 102 invoke-direct {p0, p1, v0}, Lcom/google/android/material/chip/ChipGroup;->(Landroid/content/Context;Landroid/util/AttributeSet;)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;)V .registers 4 .line 106 sget v0, Lcom/google/android/material/R$attr;->chipGroupStyle:I invoke-direct {p0, p1, p2, v0}, Lcom/google/android/material/chip/ChipGroup;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V .registers 12 .line 110 invoke-direct {p0, p1, p2, p3}, Lcom/google/android/material/internal/FlowLayout;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V .line 94 new-instance v0, Lcom/google/android/material/chip/ChipGroup$CheckedStateTracker; const/4 v1, 0x0 invoke-direct {v0, p0, v1}, Lcom/google/android/material/chip/ChipGroup$CheckedStateTracker;->(Lcom/google/android/material/chip/ChipGroup;Lcom/google/android/material/chip/ChipGroup$1;)V iput-object v0, p0, Lcom/google/android/material/chip/ChipGroup;->checkedStateTracker:Lcom/google/android/material/chip/ChipGroup$CheckedStateTracker; .line 95 new-instance v0, Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener; invoke-direct {v0, p0, v1}, Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener;->(Lcom/google/android/material/chip/ChipGroup;Lcom/google/android/material/chip/ChipGroup$1;)V iput-object v0, p0, Lcom/google/android/material/chip/ChipGroup;->passThroughListener:Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener; const/4 v0, -0x1 .line 98 iput v0, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I const/4 v1, 0x0 .line 99 iput-boolean v1, p0, Lcom/google/android/material/chip/ChipGroup;->protectFromCheckedChange:Z .line 112 sget-object v4, Lcom/google/android/material/R$styleable;->ChipGroup:[I sget v6, Lcom/google/android/material/R$style;->Widget_MaterialComponents_ChipGroup:I new-array v7, v1, [I move-object v2, p1 move-object v3, p2 move v5, p3 .line 113 invoke-static/range {v2 .. v7}, Lcom/google/android/material/internal/ThemeEnforcement;->obtainStyledAttributes(Landroid/content/Context;Landroid/util/AttributeSet;[III[I)Landroid/content/res/TypedArray; move-result-object p1 .line 120 sget p2, Lcom/google/android/material/R$styleable;->ChipGroup_chipSpacing:I invoke-virtual {p1, p2, v1}, Landroid/content/res/TypedArray;->getDimensionPixelOffset(II)I move-result p2 .line 121 sget p3, Lcom/google/android/material/R$styleable;->ChipGroup_chipSpacingHorizontal:I .line 122 invoke-virtual {p1, p3, p2}, Landroid/content/res/TypedArray;->getDimensionPixelOffset(II)I move-result p3 .line 121 invoke-virtual {p0, p3}, Lcom/google/android/material/chip/ChipGroup;->setChipSpacingHorizontal(I)V .line 123 sget p3, Lcom/google/android/material/R$styleable;->ChipGroup_chipSpacingVertical:I .line 124 invoke-virtual {p1, p3, p2}, Landroid/content/res/TypedArray;->getDimensionPixelOffset(II)I move-result p2 .line 123 invoke-virtual {p0, p2}, Lcom/google/android/material/chip/ChipGroup;->setChipSpacingVertical(I)V .line 125 sget p2, Lcom/google/android/material/R$styleable;->ChipGroup_singleLine:I invoke-virtual {p1, p2, v1}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z move-result p2 invoke-virtual {p0, p2}, Lcom/google/android/material/chip/ChipGroup;->setSingleLine(Z)V .line 126 sget p2, Lcom/google/android/material/R$styleable;->ChipGroup_singleSelection:I invoke-virtual {p1, p2, v1}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z move-result p2 invoke-virtual {p0, p2}, Lcom/google/android/material/chip/ChipGroup;->setSingleSelection(Z)V .line 127 sget p2, Lcom/google/android/material/R$styleable;->ChipGroup_checkedChip:I invoke-virtual {p1, p2, v0}, Landroid/content/res/TypedArray;->getResourceId(II)I move-result p2 if-eq p2, v0, :cond_59 .line 129 iput p2, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I .line 132 :cond_59 invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V .line 133 iget-object p1, p0, Lcom/google/android/material/chip/ChipGroup;->passThroughListener:Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener; invoke-super {p0, p1}, Lcom/google/android/material/internal/FlowLayout;->setOnHierarchyChangeListener(Landroid/view/ViewGroup$OnHierarchyChangeListener;)V return-void .end method .method static synthetic access$300(Lcom/google/android/material/chip/ChipGroup;)Z .registers 1 .line 50 iget-boolean p0, p0, Lcom/google/android/material/chip/ChipGroup;->protectFromCheckedChange:Z return p0 .end method .method static synthetic access$400(Lcom/google/android/material/chip/ChipGroup;)I .registers 1 .line 50 iget p0, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I return p0 .end method .method static synthetic access$500(Lcom/google/android/material/chip/ChipGroup;)Z .registers 1 .line 50 iget-boolean p0, p0, Lcom/google/android/material/chip/ChipGroup;->singleSelection:Z return p0 .end method .method static synthetic access$600(Lcom/google/android/material/chip/ChipGroup;IZ)V .registers 3 .line 50 invoke-direct {p0, p1, p2}, Lcom/google/android/material/chip/ChipGroup;->setCheckedStateForView(IZ)V return-void .end method .method static synthetic access$700(Lcom/google/android/material/chip/ChipGroup;I)V .registers 2 .line 50 invoke-direct {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setCheckedId(I)V return-void .end method .method static synthetic access$800(Lcom/google/android/material/chip/ChipGroup;)Lcom/google/android/material/chip/ChipGroup$CheckedStateTracker; .registers 1 .line 50 iget-object p0, p0, Lcom/google/android/material/chip/ChipGroup;->checkedStateTracker:Lcom/google/android/material/chip/ChipGroup$CheckedStateTracker; return-object p0 .end method .method private setCheckedId(I)V .registers 4 .line 296 iput p1, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I .line 298 iget-object v0, p0, Lcom/google/android/material/chip/ChipGroup;->onCheckedChangeListener:Lcom/google/android/material/chip/ChipGroup$OnCheckedChangeListener; if-eqz v0, :cond_d iget-boolean v1, p0, Lcom/google/android/material/chip/ChipGroup;->singleSelection:Z if-eqz v1, :cond_d .line 299 invoke-interface {v0, p0, p1}, Lcom/google/android/material/chip/ChipGroup$OnCheckedChangeListener;->onCheckedChanged(Lcom/google/android/material/chip/ChipGroup;I)V :cond_d return-void .end method .method private setCheckedStateForView(IZ)V .registers 4 .line 304 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->findViewById(I)Landroid/view/View; move-result-object p1 .line 305 instance-of v0, p1, Lcom/google/android/material/chip/Chip; if-eqz v0, :cond_13 const/4 v0, 0x1 .line 306 iput-boolean v0, p0, Lcom/google/android/material/chip/ChipGroup;->protectFromCheckedChange:Z .line 307 check-cast p1, Lcom/google/android/material/chip/Chip; invoke-virtual {p1, p2}, Lcom/google/android/material/chip/Chip;->setChecked(Z)V const/4 p1, 0x0 .line 308 iput-boolean p1, p0, Lcom/google/android/material/chip/ChipGroup;->protectFromCheckedChange:Z :cond_13 return-void .end method # virtual methods .method public addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V .registers 7 .line 175 instance-of v0, p1, Lcom/google/android/material/chip/Chip; if-eqz v0, :cond_21 .line 176 move-object v0, p1 check-cast v0, Lcom/google/android/material/chip/Chip; .line 177 invoke-virtual {v0}, Lcom/google/android/material/chip/Chip;->isChecked()Z move-result v1 if-eqz v1, :cond_21 .line 178 iget v1, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I const/4 v2, -0x1 if-eq v1, v2, :cond_1a iget-boolean v2, p0, Lcom/google/android/material/chip/ChipGroup;->singleSelection:Z if-eqz v2, :cond_1a const/4 v2, 0x0 .line 179 invoke-direct {p0, v1, v2}, Lcom/google/android/material/chip/ChipGroup;->setCheckedStateForView(IZ)V .line 181 :cond_1a invoke-virtual {v0}, Lcom/google/android/material/chip/Chip;->getId()I move-result v0 invoke-direct {p0, v0}, Lcom/google/android/material/chip/ChipGroup;->setCheckedId(I)V .line 185 :cond_21 invoke-super {p0, p1, p2, p3}, Lcom/google/android/material/internal/FlowLayout;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V return-void .end method .method public check(I)V .registers 5 .line 236 iget v0, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I if-ne p1, v0, :cond_5 return-void :cond_5 const/4 v1, -0x1 if-eq v0, v1, :cond_10 .line 240 iget-boolean v2, p0, Lcom/google/android/material/chip/ChipGroup;->singleSelection:Z if-eqz v2, :cond_10 const/4 v2, 0x0 .line 241 invoke-direct {p0, v0, v2}, Lcom/google/android/material/chip/ChipGroup;->setCheckedStateForView(IZ)V :cond_10 if-eq p1, v1, :cond_16 const/4 v0, 0x1 .line 245 invoke-direct {p0, p1, v0}, Lcom/google/android/material/chip/ChipGroup;->setCheckedStateForView(IZ)V .line 248 :cond_16 invoke-direct {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setCheckedId(I)V return-void .end method .method protected checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z .registers 3 .line 153 invoke-super {p0, p1}, Lcom/google/android/material/internal/FlowLayout;->checkLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Z move-result v0 if-eqz v0, :cond_c instance-of p1, p1, Lcom/google/android/material/chip/ChipGroup$LayoutParams; if-eqz p1, :cond_c const/4 p1, 0x1 goto :goto_d :cond_c const/4 p1, 0x0 :goto_d return p1 .end method .method public clearCheck()V .registers 5 const/4 v0, 0x1 .line 273 iput-boolean v0, p0, Lcom/google/android/material/chip/ChipGroup;->protectFromCheckedChange:Z const/4 v0, 0x0 move v1, v0 .line 274 :goto_5 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->getChildCount()I move-result v2 if-ge v1, v2, :cond_1b .line 275 invoke-virtual {p0, v1}, Lcom/google/android/material/chip/ChipGroup;->getChildAt(I)Landroid/view/View; move-result-object v2 .line 276 instance-of v3, v2, Lcom/google/android/material/chip/Chip; if-eqz v3, :cond_18 .line 277 check-cast v2, Lcom/google/android/material/chip/Chip; invoke-virtual {v2, v0}, Lcom/google/android/material/chip/Chip;->setChecked(Z)V :cond_18 add-int/lit8 v1, v1, 0x1 goto :goto_5 .line 280 :cond_1b iput-boolean v0, p0, Lcom/google/android/material/chip/ChipGroup;->protectFromCheckedChange:Z const/4 v0, -0x1 .line 282 invoke-direct {p0, v0}, Lcom/google/android/material/chip/ChipGroup;->setCheckedId(I)V return-void .end method .method protected generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams; .registers 3 .line 148 new-instance v0, Lcom/google/android/material/chip/ChipGroup$LayoutParams; const/4 v1, -0x2 invoke-direct {v0, v1, v1}, Lcom/google/android/material/chip/ChipGroup$LayoutParams;->(II)V return-object v0 .end method .method public generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams; .registers 4 .line 138 new-instance v0, Lcom/google/android/material/chip/ChipGroup$LayoutParams; invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->getContext()Landroid/content/Context; move-result-object v1 invoke-direct {v0, v1, p1}, Lcom/google/android/material/chip/ChipGroup$LayoutParams;->(Landroid/content/Context;Landroid/util/AttributeSet;)V return-object v0 .end method .method protected generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams; .registers 3 .line 143 new-instance v0, Lcom/google/android/material/chip/ChipGroup$LayoutParams; invoke-direct {v0, p1}, Lcom/google/android/material/chip/ChipGroup$LayoutParams;->(Landroid/view/ViewGroup$LayoutParams;)V return-object v0 .end method .method public getCheckedChipId()I .registers 2 .line 262 iget-boolean v0, p0, Lcom/google/android/material/chip/ChipGroup;->singleSelection:Z if-eqz v0, :cond_7 iget v0, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I goto :goto_8 :cond_7 const/4 v0, -0x1 :goto_8 return v0 .end method .method public getChipSpacingHorizontal()I .registers 2 .line 326 iget v0, p0, Lcom/google/android/material/chip/ChipGroup;->chipSpacingHorizontal:I return v0 .end method .method public getChipSpacingVertical()I .registers 2 .line 346 iget v0, p0, Lcom/google/android/material/chip/ChipGroup;->chipSpacingVertical:I return v0 .end method .method public isSingleSelection()Z .registers 2 .line 370 iget-boolean v0, p0, Lcom/google/android/material/chip/ChipGroup;->singleSelection:Z return v0 .end method .method protected onFinishInflate()V .registers 3 .line 164 invoke-super {p0}, Lcom/google/android/material/internal/FlowLayout;->onFinishInflate()V .line 167 iget v0, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I const/4 v1, -0x1 if-eq v0, v1, :cond_11 const/4 v1, 0x1 .line 168 invoke-direct {p0, v0, v1}, Lcom/google/android/material/chip/ChipGroup;->setCheckedStateForView(IZ)V .line 169 iget v0, p0, Lcom/google/android/material/chip/ChipGroup;->checkedId:I invoke-direct {p0, v0}, Lcom/google/android/material/chip/ChipGroup;->setCheckedId(I)V :cond_11 return-void .end method .method public setChipSpacing(I)V .registers 2 .line 314 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setChipSpacingHorizontal(I)V .line 315 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setChipSpacingVertical(I)V return-void .end method .method public setChipSpacingHorizontal(I)V .registers 3 .line 331 iget v0, p0, Lcom/google/android/material/chip/ChipGroup;->chipSpacingHorizontal:I if-eq v0, p1, :cond_c .line 332 iput p1, p0, Lcom/google/android/material/chip/ChipGroup;->chipSpacingHorizontal:I .line 333 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setItemSpacing(I)V .line 334 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->requestLayout()V :cond_c return-void .end method .method public setChipSpacingHorizontalResource(I)V .registers 3 .line 340 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getDimensionPixelOffset(I)I move-result p1 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setChipSpacingHorizontal(I)V return-void .end method .method public setChipSpacingResource(I)V .registers 3 .line 320 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getDimensionPixelOffset(I)I move-result p1 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setChipSpacing(I)V return-void .end method .method public setChipSpacingVertical(I)V .registers 3 .line 351 iget v0, p0, Lcom/google/android/material/chip/ChipGroup;->chipSpacingVertical:I if-eq v0, p1, :cond_c .line 352 iput p1, p0, Lcom/google/android/material/chip/ChipGroup;->chipSpacingVertical:I .line 353 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setLineSpacing(I)V .line 354 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->requestLayout()V :cond_c return-void .end method .method public setChipSpacingVerticalResource(I)V .registers 3 .line 360 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getDimensionPixelOffset(I)I move-result p1 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setChipSpacingVertical(I)V return-void .end method .method public setDividerDrawableHorizontal(Landroid/graphics/drawable/Drawable;)V .registers 3 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 191 new-instance p1, Ljava/lang/UnsupportedOperationException; const-string v0, "Changing divider drawables have no effect. ChipGroup do not use divider drawables as spacing." invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw p1 .end method .method public setDividerDrawableVertical(Landroid/graphics/drawable/Drawable;)V .registers 3 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 199 new-instance p1, Ljava/lang/UnsupportedOperationException; const-string v0, "Changing divider drawables have no effect. ChipGroup do not use divider drawables as spacing." invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw p1 .end method .method public setFlexWrap(I)V .registers 3 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 221 new-instance p1, Ljava/lang/UnsupportedOperationException; const-string v0, "Changing flex wrap not allowed. ChipGroup exposes a singleLine attribute instead." invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw p1 .end method .method public setOnCheckedChangeListener(Lcom/google/android/material/chip/ChipGroup$OnCheckedChangeListener;)V .registers 2 .line 292 iput-object p1, p0, Lcom/google/android/material/chip/ChipGroup;->onCheckedChangeListener:Lcom/google/android/material/chip/ChipGroup$OnCheckedChangeListener; return-void .end method .method public setOnHierarchyChangeListener(Landroid/view/ViewGroup$OnHierarchyChangeListener;)V .registers 3 .line 159 iget-object v0, p0, Lcom/google/android/material/chip/ChipGroup;->passThroughListener:Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener; # setter for: Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener;->onHierarchyChangeListener:Landroid/view/ViewGroup$OnHierarchyChangeListener; invoke-static {v0, p1}, Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener;->access$202(Lcom/google/android/material/chip/ChipGroup$PassThroughHierarchyChangeListener;Landroid/view/ViewGroup$OnHierarchyChangeListener;)Landroid/view/ViewGroup$OnHierarchyChangeListener; return-void .end method .method public setShowDividerHorizontal(I)V .registers 3 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 207 new-instance p1, Ljava/lang/UnsupportedOperationException; const-string v0, "Changing divider modes has no effect. ChipGroup do not use divider drawables as spacing." invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw p1 .end method .method public setShowDividerVertical(I)V .registers 3 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 214 new-instance p1, Ljava/lang/UnsupportedOperationException; const-string v0, "Changing divider modes has no effect. ChipGroup do not use divider drawables as spacing." invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;->(Ljava/lang/String;)V throw p1 .end method .method public setSingleLine(I)V .registers 3 .line 365 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getBoolean(I)Z move-result p1 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setSingleLine(Z)V return-void .end method .method public setSingleSelection(I)V .registers 3 .line 392 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->getResources()Landroid/content/res/Resources; move-result-object v0 invoke-virtual {v0, p1}, Landroid/content/res/Resources;->getBoolean(I)Z move-result p1 invoke-virtual {p0, p1}, Lcom/google/android/material/chip/ChipGroup;->setSingleSelection(Z)V return-void .end method .method public setSingleSelection(Z)V .registers 3 .line 379 iget-boolean v0, p0, Lcom/google/android/material/chip/ChipGroup;->singleSelection:Z if-eq v0, p1, :cond_9 .line 380 iput-boolean p1, p0, Lcom/google/android/material/chip/ChipGroup;->singleSelection:Z .line 382 invoke-virtual {p0}, Lcom/google/android/material/chip/ChipGroup;->clearCheck()V :cond_9 return-void .end method