protected int getItemCountBeforeGroup(@NonNull final Group group) { final int groupIndex = getPosition(group); return getItemCountBeforeGroup(groupIndex); }
@CallSuper @Override public void onItemChanged(@NonNull Group group, int position) { observable.onItemChanged(this, getItemCountBeforeGroup(group) + position); }
@CallSuper @Override public void onItemRangeChanged(@NonNull Group group, int positionStart, int itemCount) { observable.onItemRangeChanged(this, getItemCountBeforeGroup(group) + positionStart, itemCount); }
@CallSuper @Override public void onItemRangeInserted(@NonNull Group group, int positionStart, int itemCount) { observable.onItemRangeInserted(this, getItemCountBeforeGroup(group) + positionStart, itemCount); }
@CallSuper @Override public void onItemInserted(@NonNull Group group, int position) { observable.onItemInserted(this, getItemCountBeforeGroup(group) + position); }
@CallSuper @Override public void onItemChanged(@NonNull Group group, int position, Object payload) { observable.onItemChanged(this, getItemCountBeforeGroup(group) + position, payload); }
@CallSuper @Override public void onItemRangeRemoved(@NonNull Group group, int positionStart, int itemCount) { observable.onItemRangeRemoved(this, getItemCountBeforeGroup(group) + positionStart, itemCount); }
@CallSuper @Override public void onItemRemoved(@NonNull Group group, int position) { observable.onItemRemoved(this, getItemCountBeforeGroup(group) + position); }
@CallSuper @Override public void onItemRangeChanged(@NonNull Group group, int positionStart, int itemCount, Object payload) { observable.onItemRangeChanged(this, getItemCountBeforeGroup(group) + positionStart, itemCount, payload); }
@CallSuper @Override public void onItemMoved(@NonNull Group group, int fromPosition, int toPosition) { int groupPosition = getItemCountBeforeGroup(group); observable.onItemMoved(this, groupPosition + fromPosition, groupPosition + toPosition); }
/** * Every item in the group still exists but the data in each has changed (e.g. should rebind). * * @param group */ @CallSuper @Override public void onChanged(@NonNull Group group) { observable.onItemRangeChanged(this, getItemCountBeforeGroup(group), group.getItemCount()); }