package com.google.android.material.bottomsheet; import android.content.Context; import android.content.DialogInterface; import android.content.res.ColorStateList; import android.content.res.TypedArray; import android.graphics.Color; import android.os.Bundle; import android.util.TypedValue; import android.view.MotionEvent; import android.view.View; import android.view.ViewGroup; import android.view.Window; import android.widget.FrameLayout; import androidx.appcompat.app.AppCompatDialog; import androidx.coordinatorlayout.widget.CoordinatorLayout; import androidx.core.view.AccessibilityDelegateCompat; import androidx.core.view.OnApplyWindowInsetsListener; import androidx.core.view.ViewCompat; import androidx.core.view.WindowCompat; import androidx.core.view.WindowInsetsCompat; import androidx.core.view.accessibility.AccessibilityNodeInfoCompat; import com.google.android.material.R; import com.google.android.material.bottomsheet.BottomSheetBehavior; import com.google.android.material.color.MaterialColors; import com.google.android.material.internal.EdgeToEdgeUtils; import com.google.android.material.internal.ViewUtils; import com.google.android.material.motion.MaterialBackOrchestrator; import com.google.android.material.shape.MaterialShapeDrawable; /* loaded from: classes2.dex */ public class BottomSheetDialog extends AppCompatDialog { private MaterialBackOrchestrator backOrchestrator; private BottomSheetBehavior<FrameLayout> behavior; private FrameLayout bottomSheet; private BottomSheetBehavior.BottomSheetCallback bottomSheetCallback; boolean cancelable; private boolean canceledOnTouchOutside; private boolean canceledOnTouchOutsideSet; private FrameLayout container; private CoordinatorLayout coordinator; boolean dismissWithAnimation; private EdgeToEdgeCallback edgeToEdgeCallback; private boolean edgeToEdgeEnabled; public boolean getDismissWithAnimation() { return this.dismissWithAnimation; } public boolean getEdgeToEdgeEnabled() { return this.edgeToEdgeEnabled; } public void setDismissWithAnimation(boolean z) { this.dismissWithAnimation = z; } public BottomSheetDialog(Context context) { this(context, 0); this.edgeToEdgeEnabled = getContext().getTheme().obtainStyledAttributes(new int[]{R.attr.enableEdgeToEdge}).getBoolean(0, false); } public BottomSheetDialog(Context context, int i) { super(context, getThemeResId(context, i)); this.cancelable = true; this.canceledOnTouchOutside = true; this.bottomSheetCallback = new BottomSheetBehavior.BottomSheetCallback() { // from class: com.google.android.material.bottomsheet.BottomSheetDialog.5 @Override // com.google.android.material.bottomsheet.BottomSheetBehavior.BottomSheetCallback public void onSlide(View view, float f) { } @Override // com.google.android.material.bottomsheet.BottomSheetBehavior.BottomSheetCallback public void onStateChanged(View view, int i2) { if (i2 == 5) { BottomSheetDialog.this.cancel(); } } }; supportRequestWindowFeature(1); this.edgeToEdgeEnabled = getContext().getTheme().obtainStyledAttributes(new int[]{R.attr.enableEdgeToEdge}).getBoolean(0, false); } protected BottomSheetDialog(Context context, boolean z, DialogInterface.OnCancelListener onCancelListener) { super(context, z, onCancelListener); this.cancelable = true; this.canceledOnTouchOutside = true; this.bottomSheetCallback = new BottomSheetBehavior.BottomSheetCallback() { // from class: com.google.android.material.bottomsheet.BottomSheetDialog.5 @Override // com.google.android.material.bottomsheet.BottomSheetBehavior.BottomSheetCallback public void onSlide(View view, float f) { } @Override // com.google.android.material.bottomsheet.BottomSheetBehavior.BottomSheetCallback public void onStateChanged(View view, int i2) { if (i2 == 5) { BottomSheetDialog.this.cancel(); } } }; supportRequestWindowFeature(1); this.cancelable = z; this.edgeToEdgeEnabled = getContext().getTheme().obtainStyledAttributes(new int[]{R.attr.enableEdgeToEdge}).getBoolean(0, false); } @Override // androidx.appcompat.app.AppCompatDialog, androidx.activity.ComponentDialog, android.app.Dialog public void setContentView(int i) { super.setContentView(wrapInBottomSheet(i, null, null)); } /* JADX INFO: Access modifiers changed from: protected */ @Override // androidx.appcompat.app.AppCompatDialog, androidx.activity.ComponentDialog, android.app.Dialog public void onCreate(Bundle bundle) { super.onCreate(bundle); Window window = getWindow(); if (window != null) { window.setStatusBarColor(0); window.addFlags(Integer.MIN_VALUE); window.setLayout(-1, -1); } } @Override // androidx.appcompat.app.AppCompatDialog, androidx.activity.ComponentDialog, android.app.Dialog public void setContentView(View view) { super.setContentView(wrapInBottomSheet(0, view, null)); } @Override // androidx.appcompat.app.AppCompatDialog, androidx.activity.ComponentDialog, android.app.Dialog public void setContentView(View view, ViewGroup.LayoutParams layoutParams) { super.setContentView(wrapInBottomSheet(0, view, layoutParams)); } @Override // android.app.Dialog public void setCancelable(boolean z) { super.setCancelable(z); if (this.cancelable != z) { this.cancelable = z; BottomSheetBehavior<FrameLayout> bottomSheetBehavior = this.behavior; if (bottomSheetBehavior != null) { bottomSheetBehavior.setHideable(z); } if (getWindow() != null) { updateListeningForBackCallbacks(); } } } /* JADX INFO: Access modifiers changed from: protected */ @Override // androidx.activity.ComponentDialog, android.app.Dialog public void onStart() { super.onStart(); BottomSheetBehavior<FrameLayout> bottomSheetBehavior = this.behavior; if (bottomSheetBehavior == null || bottomSheetBehavior.getState() != 5) { return; } this.behavior.setState(4); } @Override // android.app.Dialog, android.view.Window.Callback public void onAttachedToWindow() { super.onAttachedToWindow(); Window window = getWindow(); if (window != null) { boolean z = this.edgeToEdgeEnabled && Color.alpha(window.getNavigationBarColor()) < 255; FrameLayout frameLayout = this.container; if (frameLayout != null) { frameLayout.setFitsSystemWindows(!z); } CoordinatorLayout coordinatorLayout = this.coordinator; if (coordinatorLayout != null) { coordinatorLayout.setFitsSystemWindows(!z); } WindowCompat.setDecorFitsSystemWindows(window, !z); EdgeToEdgeCallback edgeToEdgeCallback = this.edgeToEdgeCallback; if (edgeToEdgeCallback != null) { edgeToEdgeCallback.setWindow(window); } } updateListeningForBackCallbacks(); } @Override // android.app.Dialog, android.view.Window.Callback public void onDetachedFromWindow() { EdgeToEdgeCallback edgeToEdgeCallback = this.edgeToEdgeCallback; if (edgeToEdgeCallback != null) { edgeToEdgeCallback.setWindow(null); } MaterialBackOrchestrator materialBackOrchestrator = this.backOrchestrator; if (materialBackOrchestrator != null) { materialBackOrchestrator.stopListeningForBackCallbacks(); } } @Override // android.app.Dialog, android.content.DialogInterface public void cancel() { BottomSheetBehavior<FrameLayout> behavior = getBehavior(); if (!this.dismissWithAnimation || behavior.getState() == 5) { super.cancel(); } else { behavior.setState(5); } } @Override // android.app.Dialog public void setCanceledOnTouchOutside(boolean z) { super.setCanceledOnTouchOutside(z); if (z && !this.cancelable) { this.cancelable = true; } this.canceledOnTouchOutside = z; this.canceledOnTouchOutsideSet = true; } public BottomSheetBehavior<FrameLayout> getBehavior() { if (this.behavior == null) { ensureContainerAndBehavior(); } return this.behavior; } private FrameLayout ensureContainerAndBehavior() { if (this.container == null) { FrameLayout frameLayout = (FrameLayout) View.inflate(getContext(), R.layout.design_bottom_sheet_dialog, null); this.container = frameLayout; this.coordinator = (CoordinatorLayout) frameLayout.findViewById(R.id.coordinator); FrameLayout frameLayout2 = (FrameLayout) this.container.findViewById(R.id.design_bottom_sheet); this.bottomSheet = frameLayout2; BottomSheetBehavior<FrameLayout> from = BottomSheetBehavior.from(frameLayout2); this.behavior = from; from.addBottomSheetCallback(this.bottomSheetCallback); this.behavior.setHideable(this.cancelable); this.backOrchestrator = new MaterialBackOrchestrator(this.behavior, this.bottomSheet); } return this.container; } private View wrapInBottomSheet(int i, View view, ViewGroup.LayoutParams layoutParams) { ensureContainerAndBehavior(); CoordinatorLayout coordinatorLayout = (CoordinatorLayout) this.container.findViewById(R.id.coordinator); if (i != 0 && view == null) { view = getLayoutInflater().inflate(i, (ViewGroup) coordinatorLayout, false); } if (this.edgeToEdgeEnabled) { ViewCompat.setOnApplyWindowInsetsListener(this.bottomSheet, new OnApplyWindowInsetsListener() { // from class: com.google.android.material.bottomsheet.BottomSheetDialog.1 @Override // androidx.core.view.OnApplyWindowInsetsListener public WindowInsetsCompat onApplyWindowInsets(View view2, WindowInsetsCompat windowInsetsCompat) { if (BottomSheetDialog.this.edgeToEdgeCallback != null) { BottomSheetDialog.this.behavior.removeBottomSheetCallback(BottomSheetDialog.this.edgeToEdgeCallback); } if (windowInsetsCompat != null) { BottomSheetDialog.this.edgeToEdgeCallback = new EdgeToEdgeCallback(BottomSheetDialog.this.bottomSheet, windowInsetsCompat); BottomSheetDialog.this.edgeToEdgeCallback.setWindow(BottomSheetDialog.this.getWindow()); BottomSheetDialog.this.behavior.addBottomSheetCallback(BottomSheetDialog.this.edgeToEdgeCallback); } return windowInsetsCompat; } }); } this.bottomSheet.removeAllViews(); if (layoutParams == null) { this.bottomSheet.addView(view); } else { this.bottomSheet.addView(view, layoutParams); } coordinatorLayout.findViewById(R.id.touch_outside).setOnClickListener(new View.OnClickListener() { // from class: com.google.android.material.bottomsheet.BottomSheetDialog.2 @Override // android.view.View.OnClickListener public void onClick(View view2) { if (BottomSheetDialog.this.cancelable && BottomSheetDialog.this.isShowing() && BottomSheetDialog.this.shouldWindowCloseOnTouchOutside()) { BottomSheetDialog.this.cancel(); } } }); ViewCompat.setAccessibilityDelegate(this.bottomSheet, new AccessibilityDelegateCompat() { // from class: com.google.android.material.bottomsheet.BottomSheetDialog.3 @Override // androidx.core.view.AccessibilityDelegateCompat public void onInitializeAccessibilityNodeInfo(View view2, AccessibilityNodeInfoCompat accessibilityNodeInfoCompat) { super.onInitializeAccessibilityNodeInfo(view2, accessibilityNodeInfoCompat); if (BottomSheetDialog.this.cancelable) { accessibilityNodeInfoCompat.addAction(1048576); accessibilityNodeInfoCompat.setDismissable(true); } else { accessibilityNodeInfoCompat.setDismissable(false); } } @Override // androidx.core.view.AccessibilityDelegateCompat public boolean performAccessibilityAction(View view2, int i2, Bundle bundle) { if (i2 == 1048576 && BottomSheetDialog.this.cancelable) { BottomSheetDialog.this.cancel(); return true; } return super.performAccessibilityAction(view2, i2, bundle); } }); this.bottomSheet.setOnTouchListener(new View.OnTouchListener() { // from class: com.google.android.material.bottomsheet.BottomSheetDialog.4 @Override // android.view.View.OnTouchListener public boolean onTouch(View view2, MotionEvent motionEvent) { return true; } }); return this.container; } private void updateListeningForBackCallbacks() { MaterialBackOrchestrator materialBackOrchestrator = this.backOrchestrator; if (materialBackOrchestrator == null) { return; } if (this.cancelable) { materialBackOrchestrator.startListeningForBackCallbacks(); } else { materialBackOrchestrator.stopListeningForBackCallbacks(); } } boolean shouldWindowCloseOnTouchOutside() { if (!this.canceledOnTouchOutsideSet) { TypedArray obtainStyledAttributes = getContext().obtainStyledAttributes(new int[]{android.R.attr.windowCloseOnTouchOutside}); this.canceledOnTouchOutside = obtainStyledAttributes.getBoolean(0, true); obtainStyledAttributes.recycle(); this.canceledOnTouchOutsideSet = true; } return this.canceledOnTouchOutside; } private static int getThemeResId(Context context, int i) { if (i != 0) { return i; } TypedValue typedValue = new TypedValue(); if (context.getTheme().resolveAttribute(R.attr.bottomSheetDialogTheme, typedValue, true)) { return typedValue.resourceId; } return R.style.Theme_Design_Light_BottomSheetDialog; } /* JADX INFO: Access modifiers changed from: package-private */ public void removeDefaultCallback() { this.behavior.removeBottomSheetCallback(this.bottomSheetCallback); } /* loaded from: classes2.dex */ private static class EdgeToEdgeCallback extends BottomSheetBehavior.BottomSheetCallback { private final WindowInsetsCompat insetsCompat; private final Boolean lightBottomSheet; private boolean lightStatusBar; private Window window; private EdgeToEdgeCallback(View view, WindowInsetsCompat windowInsetsCompat) { ColorStateList backgroundTintList; this.insetsCompat = windowInsetsCompat; MaterialShapeDrawable materialShapeDrawable = BottomSheetBehavior.from(view).getMaterialShapeDrawable(); if (materialShapeDrawable != null) { backgroundTintList = materialShapeDrawable.getFillColor(); } else { backgroundTintList = ViewCompat.getBackgroundTintList(view); } if (backgroundTintList != null) { this.lightBottomSheet = Boolean.valueOf(MaterialColors.isColorLight(backgroundTintList.getDefaultColor())); return; } Integer backgroundColor = ViewUtils.getBackgroundColor(view); if (backgroundColor != null) { this.lightBottomSheet = Boolean.valueOf(MaterialColors.isColorLight(backgroundColor.intValue())); } else { this.lightBottomSheet = null; } } @Override // com.google.android.material.bottomsheet.BottomSheetBehavior.BottomSheetCallback public void onStateChanged(View view, int i) { setPaddingForPosition(view); } @Override // com.google.android.material.bottomsheet.BottomSheetBehavior.BottomSheetCallback public void onSlide(View view, float f) { setPaddingForPosition(view); } @Override // com.google.android.material.bottomsheet.BottomSheetBehavior.BottomSheetCallback void onLayout(View view) { setPaddingForPosition(view); } void setWindow(Window window) { if (this.window == window) { return; } this.window = window; if (window != null) { this.lightStatusBar = WindowCompat.getInsetsController(window, window.getDecorView()).isAppearanceLightStatusBars(); } } private void setPaddingForPosition(View view) { if (view.getTop() < this.insetsCompat.getSystemWindowInsetTop()) { Window window = this.window; if (window != null) { Boolean bool = this.lightBottomSheet; EdgeToEdgeUtils.setLightStatusBar(window, bool == null ? this.lightStatusBar : bool.booleanValue()); } view.setPadding(view.getPaddingLeft(), this.insetsCompat.getSystemWindowInsetTop() - view.getTop(), view.getPaddingRight(), view.getPaddingBottom()); return; } if (view.getTop() != 0) { Window window2 = this.window; if (window2 != null) { EdgeToEdgeUtils.setLightStatusBar(window2, this.lightStatusBar); } view.setPadding(view.getPaddingLeft(), 0, view.getPaddingRight(), view.getPaddingBottom()); } } } @Deprecated public static void setLightStatusBar(View view, boolean z) { int systemUiVisibility = view.getSystemUiVisibility(); view.setSystemUiVisibility(z ? systemUiVisibility | 8192 : systemUiVisibility & (-8193)); } }