mirror of
https://github.com/VibedByKaKi/alexandroid.git
synced 2026-11-15 02:17:18 +01:00
45 lines
1.6 KiB
Java
45 lines
1.6 KiB
Java
package com.google.android.material.shape;
|
|
|
|
import android.graphics.Outline;
|
|
import android.view.View;
|
|
import android.view.ViewOutlineProvider;
|
|
import androidx.annotation.DoNotInline;
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.RequiresApi;
|
|
|
|
/* compiled from: r8-map-id-b9432e0f623b4a4bff4ba50a8a24c4aafad2c1e11092747b9fb5e6a22af5a940 */
|
|
@RequiresApi(33)
|
|
/* loaded from: classes7.dex */
|
|
class ShapeableDelegateV33 extends ShapeableDelegate {
|
|
public ShapeableDelegateV33(@NonNull View view) {
|
|
initMaskOutlineProvider(view);
|
|
}
|
|
|
|
@DoNotInline
|
|
private void initMaskOutlineProvider(View view) {
|
|
view.setOutlineProvider(new ViewOutlineProvider() { // from class: com.google.android.material.shape.ShapeableDelegateV33.1
|
|
@Override // android.view.ViewOutlineProvider
|
|
public void getOutline(View view2, Outline outline) {
|
|
if (ShapeableDelegateV33.this.shapePath.isEmpty()) {
|
|
return;
|
|
}
|
|
outline.setPath(ShapeableDelegateV33.this.shapePath);
|
|
}
|
|
});
|
|
}
|
|
|
|
@Override // com.google.android.material.shape.ShapeableDelegate
|
|
public void invalidateClippingMethod(@NonNull View view) {
|
|
view.setClipToOutline(!shouldUseCompatClipping());
|
|
if (shouldUseCompatClipping()) {
|
|
view.invalidate();
|
|
} else {
|
|
view.invalidateOutline();
|
|
}
|
|
}
|
|
|
|
@Override // com.google.android.material.shape.ShapeableDelegate
|
|
public boolean shouldUseCompatClipping() {
|
|
return this.forceCompatClippingEnabled;
|
|
}
|
|
}
|