ADD week 5
This commit is contained in:
@ -0,0 +1,102 @@
|
||||
package androidx.cardview.widget;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.res.ColorStateList;
|
||||
import android.view.View;
|
||||
|
||||
/* loaded from: classes.dex */
|
||||
class CardViewApi21Impl implements CardViewImpl {
|
||||
@Override // androidx.cardview.widget.CardViewImpl
|
||||
public void initStatic() {
|
||||
}
|
||||
|
||||
CardViewApi21Impl() {
|
||||
}
|
||||
|
||||
@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 setRadius(CardViewDelegate cardViewDelegate, float f) {
|
||||
getCardBackground(cardViewDelegate).setRadius(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 float getMaxElevation(CardViewDelegate cardViewDelegate) {
|
||||
return getCardBackground(cardViewDelegate).getPadding();
|
||||
}
|
||||
|
||||
@Override // androidx.cardview.widget.CardViewImpl
|
||||
public float getMinWidth(CardViewDelegate cardViewDelegate) {
|
||||
return getRadius(cardViewDelegate) * 2.0f;
|
||||
}
|
||||
|
||||
@Override // androidx.cardview.widget.CardViewImpl
|
||||
public float getMinHeight(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 setElevation(CardViewDelegate cardViewDelegate, float f) {
|
||||
cardViewDelegate.getCardView().setElevation(f);
|
||||
}
|
||||
|
||||
@Override // androidx.cardview.widget.CardViewImpl
|
||||
public float getElevation(CardViewDelegate cardViewDelegate) {
|
||||
return cardViewDelegate.getCardView().getElevation();
|
||||
}
|
||||
|
||||
@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(RoundRectDrawableWithShadow.calculateHorizontalPadding(maxElevation, radius, cardViewDelegate.getPreventCornerOverlap()));
|
||||
int ceil2 = (int) Math.ceil(RoundRectDrawableWithShadow.calculateVerticalPadding(maxElevation, radius, cardViewDelegate.getPreventCornerOverlap()));
|
||||
cardViewDelegate.setShadowPadding(ceil, ceil2, ceil, ceil2);
|
||||
}
|
||||
|
||||
@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, ColorStateList colorStateList) {
|
||||
getCardBackground(cardViewDelegate).setColor(colorStateList);
|
||||
}
|
||||
|
||||
@Override // androidx.cardview.widget.CardViewImpl
|
||||
public ColorStateList getBackgroundColor(CardViewDelegate cardViewDelegate) {
|
||||
return getCardBackground(cardViewDelegate).getColor();
|
||||
}
|
||||
|
||||
private RoundRectDrawable getCardBackground(CardViewDelegate cardViewDelegate) {
|
||||
return (RoundRectDrawable) cardViewDelegate.getCardBackground();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user