discord-jadx/app/src/main/java/androidx/cardview/widget/CardViewApi21Impl.java

101 lines
4.2 KiB
Java

package androidx.cardview.widget;
import android.content.Context;
import android.content.res.ColorStateList;
import android.view.View;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
@RequiresApi(21)
public class CardViewApi21Impl implements CardViewImpl {
private RoundRectDrawable getCardBackground(CardViewDelegate cardViewDelegate) {
return (RoundRectDrawable) cardViewDelegate.getCardBackground();
}
@Override // androidx.cardview.widget.CardViewImpl
public ColorStateList getBackgroundColor(CardViewDelegate cardViewDelegate) {
return getCardBackground(cardViewDelegate).getColor();
}
@Override // androidx.cardview.widget.CardViewImpl
public float getElevation(CardViewDelegate cardViewDelegate) {
return cardViewDelegate.getCardView().getElevation();
}
@Override // androidx.cardview.widget.CardViewImpl
public float getMaxElevation(CardViewDelegate cardViewDelegate) {
return getCardBackground(cardViewDelegate).getPadding();
}
@Override // androidx.cardview.widget.CardViewImpl
public float getMinHeight(CardViewDelegate cardViewDelegate) {
return getRadius(cardViewDelegate) * 2.0f;
}
@Override // androidx.cardview.widget.CardViewImpl
public float getMinWidth(CardViewDelegate cardViewDelegate) {
return getRadius(cardViewDelegate) * 2.0f;
}
@Override // androidx.cardview.widget.CardViewImpl
public float getRadius(CardViewDelegate cardViewDelegate) {
return getCardBackground(cardViewDelegate).getRadius();
}
@Override // androidx.cardview.widget.CardViewImpl
public void initStatic() {
}
@Override // androidx.cardview.widget.CardViewImpl
public void initialize(CardViewDelegate cardViewDelegate, Context context, ColorStateList colorStateList, float f, float f2, float f3) {
cardViewDelegate.setCardBackground(new RoundRectDrawable(colorStateList, f));
View cardView = cardViewDelegate.getCardView();
cardView.setClipToOutline(true);
cardView.setElevation(f2);
setMaxElevation(cardViewDelegate, f3);
}
@Override // androidx.cardview.widget.CardViewImpl
public void onCompatPaddingChanged(CardViewDelegate cardViewDelegate) {
setMaxElevation(cardViewDelegate, getMaxElevation(cardViewDelegate));
}
@Override // androidx.cardview.widget.CardViewImpl
public void onPreventCornerOverlapChanged(CardViewDelegate cardViewDelegate) {
setMaxElevation(cardViewDelegate, getMaxElevation(cardViewDelegate));
}
@Override // androidx.cardview.widget.CardViewImpl
public void setBackgroundColor(CardViewDelegate cardViewDelegate, @Nullable ColorStateList colorStateList) {
getCardBackground(cardViewDelegate).setColor(colorStateList);
}
@Override // androidx.cardview.widget.CardViewImpl
public void setElevation(CardViewDelegate cardViewDelegate, float f) {
cardViewDelegate.getCardView().setElevation(f);
}
@Override // androidx.cardview.widget.CardViewImpl
public void setMaxElevation(CardViewDelegate cardViewDelegate, float f) {
getCardBackground(cardViewDelegate).setPadding(f, cardViewDelegate.getUseCompatPadding(), cardViewDelegate.getPreventCornerOverlap());
updatePadding(cardViewDelegate);
}
@Override // androidx.cardview.widget.CardViewImpl
public void setRadius(CardViewDelegate cardViewDelegate, float f) {
getCardBackground(cardViewDelegate).setRadius(f);
}
@Override // androidx.cardview.widget.CardViewImpl
public void updatePadding(CardViewDelegate cardViewDelegate) {
if (!cardViewDelegate.getUseCompatPadding()) {
cardViewDelegate.setShadowPadding(0, 0, 0, 0);
return;
}
float maxElevation = getMaxElevation(cardViewDelegate);
float radius = getRadius(cardViewDelegate);
int ceil = (int) Math.ceil((double) RoundRectDrawableWithShadow.calculateHorizontalPadding(maxElevation, radius, cardViewDelegate.getPreventCornerOverlap()));
int ceil2 = (int) Math.ceil((double) RoundRectDrawableWithShadow.calculateVerticalPadding(maxElevation, radius, cardViewDelegate.getPreventCornerOverlap()));
cardViewDelegate.setShadowPadding(ceil, ceil2, ceil, ceil2);
}
}