103 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			103 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| 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();
 | |
|     }
 | |
| }
 |