apkfuckery/com.discord/smali/com/discord/utilities/view/recycler/MaxHeightRecyclerView.smali

201 lines
4.9 KiB
Smali

.class public final Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;
.super Landroidx/recyclerview/widget/RecyclerView;
.source "MaxHeightRecyclerView.kt"
# instance fields
.field private maxHeight:I
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 6
const/4 v2, 0x0
const/4 v3, 0x0
const/4 v4, 0x6
const/4 v5, 0x0
move-object v0, p0
move-object v1, p1
invoke-direct/range {v0 .. v5}, Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;IILkotlin/jvm/internal/DefaultConstructorMarker;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
.locals 6
const/4 v3, 0x0
const/4 v4, 0x4
const/4 v5, 0x0
move-object v0, p0
move-object v1, p1
move-object v2, p2
invoke-direct/range {v0 .. v5}, Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;IILkotlin/jvm/internal/DefaultConstructorMarker;)V
return-void
.end method
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
.locals 1
const-string v0, "context"
invoke-static {p1, v0}, Ly/m/c/j;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
invoke-direct {p0, p1, p2, p3}, Landroidx/recyclerview/widget/RecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
const/4 p3, 0x0
invoke-direct {p0, p1, p2, p3}, Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;->getHeightMaximum(Landroid/content/Context;Landroid/util/AttributeSet;I)I
move-result p1
iput p1, p0, Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;->maxHeight:I
return-void
.end method
.method public synthetic constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;IILkotlin/jvm/internal/DefaultConstructorMarker;)V
.locals 0
and-int/lit8 p5, p4, 0x2
if-eqz p5, :cond_0
const/4 p2, 0x0
:cond_0
and-int/lit8 p4, p4, 0x4
if-eqz p4, :cond_1
const/4 p3, 0x0
:cond_1
invoke-direct {p0, p1, p2, p3}, Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
return-void
.end method
.method private final getHeightMaximum(Landroid/content/Context;Landroid/util/AttributeSet;I)I
.locals 2
const/4 v0, 0x0
if-eqz p2, :cond_1
sget-object v1, Lcom/discord/utils/R$e;->MaxHeightRecyclerView:[I
invoke-virtual {p1, p2, v1, p3, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
move-result-object p2
const-string p3, "obtainStyledAttributes(a\u2026lerView, defStyleAttr, 0)"
invoke-static {p2, p3}, Ly/m/c/j;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
sget p3, Lcom/discord/utils/R$e;->MaxHeightRecyclerView_max_height:I
invoke-virtual {p2, p3, v0}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I
move-result p3
sget v0, Lcom/discord/utils/R$e;->MaxHeightRecyclerView_max_height_screen_ratio:I
const/4 v1, 0x0
invoke-virtual {p2, v0, v1}, Landroid/content/res/TypedArray;->getFloat(IF)F
move-result v0
invoke-virtual {p2}, Landroid/content/res/TypedArray;->recycle()V
cmpl-float p2, v0, v1
if-lez p2, :cond_0
const/high16 p2, 0x3f800000 # 1.0f
cmpg-float p2, v0, p2
if-gez p2, :cond_0
invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object p1
const-string p2, "resources"
invoke-static {p1, p2}, Ly/m/c/j;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
invoke-virtual {p1}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
move-result-object p1
iget p1, p1, Landroid/util/DisplayMetrics;->heightPixels:I
int-to-float p1, p1
mul-float p1, p1, v0
invoke-static {p1}, Lf/h/a/f/f/n/f;->roundToInt(F)I
move-result p3
:cond_0
return p3
:cond_1
return v0
.end method
# virtual methods
.method public final getMaxHeight()I
.locals 1
iget v0, p0, Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;->maxHeight:I
return v0
.end method
.method public onMeasure(II)V
.locals 1
iget v0, p0, Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;->maxHeight:I
if-lez v0, :cond_0
const/high16 p2, -0x80000000
invoke-static {v0, p2}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
move-result p2
:cond_0
invoke-super {p0, p1, p2}, Landroidx/recyclerview/widget/RecyclerView;->onMeasure(II)V
return-void
.end method
.method public final setMaxHeight(I)V
.locals 0
iput p1, p0, Lcom/discord/utilities/view/recycler/MaxHeightRecyclerView;->maxHeight:I
return-void
.end method