package com.xabber.android.ui.adapter.contactlist;
import android.support.v7.widget.RecyclerView;
import android.view.ContextMenu;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.xabber.android.R;
import com.xabber.android.data.log.LogManager;
class GroupViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener, View.OnCreateContextMenuListener {
private static final String LOG_TAG = GroupViewHolder.class.getSimpleName();
final ImageView indicator;
final TextView name;
final ImageView groupOfflineIndicator;
final ImageView offlineShadow;
private final GroupClickListener listener;
interface GroupClickListener {
void onGroupClick(int adapterPosition);
void onGroupCreateContextMenu(int adapterPosition, ContextMenu menu);
}
GroupViewHolder(View view, GroupClickListener listener) {
super(view);
this.listener = listener;
itemView.setOnClickListener(this);
itemView.setOnCreateContextMenuListener(this);
indicator = (ImageView) view.findViewById(R.id.indicator);
name = (TextView) view.findViewById(R.id.name);
groupOfflineIndicator = (ImageView) view.findViewById(R.id.group_offline_indicator);
offlineShadow = (ImageView) view.findViewById(R.id.offline_shadow);
}
@Override
public void onClick(View v) {
int adapterPosition = getAdapterPosition();
if (adapterPosition == RecyclerView.NO_POSITION) {
LogManager.w(LOG_TAG, "onClick: no position");
return;
}
listener.onGroupClick(adapterPosition);
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
int adapterPosition = getAdapterPosition();
if (adapterPosition == RecyclerView.NO_POSITION) {
LogManager.w(LOG_TAG, "onCreateContextMenu: no position");
return;
}
listener.onGroupCreateContextMenu(adapterPosition, menu);
}
}