package androidx.appcompat.view; import android.content.Context; import android.view.ActionMode; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import androidx.annotation.RestrictTo; import androidx.appcompat.view.ActionMode; import androidx.appcompat.view.menu.MenuItemWrapperICS; import androidx.appcompat.view.menu.MenuWrapperICS; import androidx.collection.SimpleArrayMap; import androidx.core.internal.view.SupportMenu; import androidx.core.internal.view.SupportMenuItem; import java.util.ArrayList; @RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public class SupportActionModeWrapper extends ActionMode { public final Context mContext; public final ActionMode mWrappedObject; @RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX}) public static class CallbackWrapper implements ActionMode.Callback { public final ArrayList mActionModes = new ArrayList<>(); public final Context mContext; public final SimpleArrayMap mMenus = new SimpleArrayMap<>(); public final ActionMode.Callback mWrappedCallback; public CallbackWrapper(Context context, ActionMode.Callback callback) { this.mContext = context; this.mWrappedCallback = callback; } private Menu getMenuWrapper(Menu menu) { Menu menu2 = this.mMenus.get(menu); if (menu2 != null) { return menu2; } MenuWrapperICS menuWrapperICS = new MenuWrapperICS(this.mContext, (SupportMenu) menu); this.mMenus.put(menu, menuWrapperICS); return menuWrapperICS; } public android.view.ActionMode getActionModeWrapper(ActionMode actionMode) { int size = this.mActionModes.size(); for (int i = 0; i < size; i++) { SupportActionModeWrapper supportActionModeWrapper = this.mActionModes.get(i); if (supportActionModeWrapper != null && supportActionModeWrapper.mWrappedObject == actionMode) { return supportActionModeWrapper; } } SupportActionModeWrapper supportActionModeWrapper2 = new SupportActionModeWrapper(this.mContext, actionMode); this.mActionModes.add(supportActionModeWrapper2); return supportActionModeWrapper2; } @Override // androidx.appcompat.view.ActionMode.Callback public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) { return this.mWrappedCallback.onActionItemClicked(getActionModeWrapper(actionMode), new MenuItemWrapperICS(this.mContext, (SupportMenuItem) menuItem)); } @Override // androidx.appcompat.view.ActionMode.Callback public boolean onCreateActionMode(ActionMode actionMode, Menu menu) { return this.mWrappedCallback.onCreateActionMode(getActionModeWrapper(actionMode), getMenuWrapper(menu)); } @Override // androidx.appcompat.view.ActionMode.Callback public void onDestroyActionMode(ActionMode actionMode) { this.mWrappedCallback.onDestroyActionMode(getActionModeWrapper(actionMode)); } @Override // androidx.appcompat.view.ActionMode.Callback public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) { return this.mWrappedCallback.onPrepareActionMode(getActionModeWrapper(actionMode), getMenuWrapper(menu)); } } public SupportActionModeWrapper(Context context, ActionMode actionMode) { this.mContext = context; this.mWrappedObject = actionMode; } @Override // android.view.ActionMode public void finish() { this.mWrappedObject.finish(); } @Override // android.view.ActionMode public View getCustomView() { return this.mWrappedObject.getCustomView(); } @Override // android.view.ActionMode public Menu getMenu() { return new MenuWrapperICS(this.mContext, (SupportMenu) this.mWrappedObject.getMenu()); } @Override // android.view.ActionMode public MenuInflater getMenuInflater() { return this.mWrappedObject.getMenuInflater(); } @Override // android.view.ActionMode public CharSequence getSubtitle() { return this.mWrappedObject.getSubtitle(); } @Override // android.view.ActionMode public Object getTag() { return this.mWrappedObject.getTag(); } @Override // android.view.ActionMode public CharSequence getTitle() { return this.mWrappedObject.getTitle(); } @Override // android.view.ActionMode public boolean getTitleOptionalHint() { return this.mWrappedObject.getTitleOptionalHint(); } @Override // android.view.ActionMode public void invalidate() { this.mWrappedObject.invalidate(); } @Override // android.view.ActionMode public boolean isTitleOptional() { return this.mWrappedObject.isTitleOptional(); } @Override // android.view.ActionMode public void setCustomView(View view) { this.mWrappedObject.setCustomView(view); } @Override // android.view.ActionMode public void setSubtitle(int i) { this.mWrappedObject.setSubtitle(i); } @Override // android.view.ActionMode public void setSubtitle(CharSequence charSequence) { this.mWrappedObject.setSubtitle(charSequence); } @Override // android.view.ActionMode public void setTag(Object obj) { this.mWrappedObject.setTag(obj); } @Override // android.view.ActionMode public void setTitle(int i) { this.mWrappedObject.setTitle(i); } @Override // android.view.ActionMode public void setTitle(CharSequence charSequence) { this.mWrappedObject.setTitle(charSequence); } @Override // android.view.ActionMode public void setTitleOptionalHint(boolean z2) { this.mWrappedObject.setTitleOptionalHint(z2); } }