@Implementation
 public boolean performItemClick(View view, int position, long id) {
   if (onItemClickListener != null) {
     onItemClickListener.onItemClick(realAdapterView, view, position, id);
     return true;
   }
   return false;
 }
 @Override
 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
   if (itemClickListener != null) itemClickListener.onItemClick(parent, view, position, id);
 }
 private void onItemHolderClick(GridItemViewHolder itemHolder) {
   if (mOnItemClickListener != null) {
     mOnItemClickListener.onItemClick(
         null, itemHolder.itemView, itemHolder.getAdapterPosition(), itemHolder.getItemId());
   }
 }