mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2025-01-09 13:43:22 +00:00
145 lines
4.8 KiB
Java
145 lines
4.8 KiB
Java
package androidx.appcompat.widget;
|
|
|
|
import android.content.Context;
|
|
import android.view.Menu;
|
|
import android.view.MenuInflater;
|
|
import android.view.MenuItem;
|
|
import android.view.View;
|
|
import android.widget.ListView;
|
|
import android.widget.PopupWindow;
|
|
import androidx.appcompat.R;
|
|
import androidx.appcompat.view.SupportMenuInflater;
|
|
import androidx.appcompat.view.menu.MenuBuilder;
|
|
import androidx.appcompat.view.menu.MenuPopupHelper;
|
|
import androidx.appcompat.view.menu.ShowableListMenu;
|
|
|
|
/* loaded from: classes.dex */
|
|
public class PopupMenu {
|
|
private final View mAnchor;
|
|
private final Context mContext;
|
|
private View.OnTouchListener mDragListener;
|
|
private final MenuBuilder mMenu;
|
|
OnMenuItemClickListener mMenuItemClickListener;
|
|
OnDismissListener mOnDismissListener;
|
|
final MenuPopupHelper mPopup;
|
|
|
|
/* loaded from: classes.dex */
|
|
public interface OnDismissListener {
|
|
void onDismiss(PopupMenu popupMenu);
|
|
}
|
|
|
|
/* loaded from: classes.dex */
|
|
public interface OnMenuItemClickListener {
|
|
boolean onMenuItemClick(MenuItem menuItem);
|
|
}
|
|
|
|
public Menu getMenu() {
|
|
return this.mMenu;
|
|
}
|
|
|
|
public void setOnDismissListener(OnDismissListener onDismissListener) {
|
|
this.mOnDismissListener = onDismissListener;
|
|
}
|
|
|
|
public void setOnMenuItemClickListener(OnMenuItemClickListener onMenuItemClickListener) {
|
|
this.mMenuItemClickListener = onMenuItemClickListener;
|
|
}
|
|
|
|
public PopupMenu(Context context, View view) {
|
|
this(context, view, 0);
|
|
}
|
|
|
|
public PopupMenu(Context context, View view, int i) {
|
|
this(context, view, i, R.attr.popupMenuStyle, 0);
|
|
}
|
|
|
|
public PopupMenu(Context context, View view, int i, int i2, int i3) {
|
|
this.mContext = context;
|
|
this.mAnchor = view;
|
|
MenuBuilder menuBuilder = new MenuBuilder(context);
|
|
this.mMenu = menuBuilder;
|
|
menuBuilder.setCallback(new MenuBuilder.Callback() { // from class: androidx.appcompat.widget.PopupMenu.1
|
|
@Override // androidx.appcompat.view.menu.MenuBuilder.Callback
|
|
public void onMenuModeChange(MenuBuilder menuBuilder2) {
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.MenuBuilder.Callback
|
|
public boolean onMenuItemSelected(MenuBuilder menuBuilder2, MenuItem menuItem) {
|
|
if (PopupMenu.this.mMenuItemClickListener != null) {
|
|
return PopupMenu.this.mMenuItemClickListener.onMenuItemClick(menuItem);
|
|
}
|
|
return false;
|
|
}
|
|
});
|
|
MenuPopupHelper menuPopupHelper = new MenuPopupHelper(context, menuBuilder, view, false, i2, i3);
|
|
this.mPopup = menuPopupHelper;
|
|
menuPopupHelper.setGravity(i);
|
|
menuPopupHelper.setOnDismissListener(new PopupWindow.OnDismissListener() { // from class: androidx.appcompat.widget.PopupMenu.2
|
|
@Override // android.widget.PopupWindow.OnDismissListener
|
|
public void onDismiss() {
|
|
if (PopupMenu.this.mOnDismissListener != null) {
|
|
PopupMenu.this.mOnDismissListener.onDismiss(PopupMenu.this);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
public void setGravity(int i) {
|
|
this.mPopup.setGravity(i);
|
|
}
|
|
|
|
public int getGravity() {
|
|
return this.mPopup.getGravity();
|
|
}
|
|
|
|
public View.OnTouchListener getDragToOpenListener() {
|
|
if (this.mDragListener == null) {
|
|
this.mDragListener = new ForwardingListener(this.mAnchor) { // from class: androidx.appcompat.widget.PopupMenu.3
|
|
@Override // androidx.appcompat.widget.ForwardingListener
|
|
protected boolean onForwardingStarted() {
|
|
PopupMenu.this.show();
|
|
return true;
|
|
}
|
|
|
|
@Override // androidx.appcompat.widget.ForwardingListener
|
|
protected boolean onForwardingStopped() {
|
|
PopupMenu.this.dismiss();
|
|
return true;
|
|
}
|
|
|
|
@Override // androidx.appcompat.widget.ForwardingListener
|
|
public ShowableListMenu getPopup() {
|
|
return PopupMenu.this.mPopup.getPopup();
|
|
}
|
|
};
|
|
}
|
|
return this.mDragListener;
|
|
}
|
|
|
|
public MenuInflater getMenuInflater() {
|
|
return new SupportMenuInflater(this.mContext);
|
|
}
|
|
|
|
public void inflate(int i) {
|
|
getMenuInflater().inflate(i, this.mMenu);
|
|
}
|
|
|
|
public void show() {
|
|
this.mPopup.show();
|
|
}
|
|
|
|
public void dismiss() {
|
|
this.mPopup.dismiss();
|
|
}
|
|
|
|
public void setForceShowIcon(boolean z) {
|
|
this.mPopup.setForceShowIcon(z);
|
|
}
|
|
|
|
ListView getMenuListView() {
|
|
if (this.mPopup.isShowing()) {
|
|
return this.mPopup.getListView();
|
|
}
|
|
return null;
|
|
}
|
|
}
|