final void consumeUpdatesInOnePass() { consumePostponedUpdates(); int i = this.mPendingUpdates.size(); int j = 0; if (j < i) { UpdateOp localUpdateOp = (UpdateOp)this.mPendingUpdates.get(j); switch (localUpdateOp.cmd) { } for (;;) { if (this.mOnItemProcessedCallback != null) { this.mOnItemProcessedCallback.run(); } j++; break; this.mCallback.onDispatchSecondPass(localUpdateOp); this.mCallback.offsetPositionsForAdd(localUpdateOp.positionStart, localUpdateOp.itemCount); continue; this.mCallback.onDispatchSecondPass(localUpdateOp); this.mCallback.offsetPositionsForRemovingInvisible(localUpdateOp.positionStart, localUpdateOp.itemCount); continue; this.mCallback.onDispatchSecondPass(localUpdateOp); this.mCallback.markViewHoldersUpdated(localUpdateOp.positionStart, localUpdateOp.itemCount, localUpdateOp.payload); continue; this.mCallback.onDispatchSecondPass(localUpdateOp); this.mCallback.offsetPositionsForMove(localUpdateOp.positionStart, localUpdateOp.itemCount); } } recycleUpdateOpsAndClearList(this.mPendingUpdates); this.mExistingUpdateTypes = 0; }
final void consumePostponedUpdates() { int i = this.mPostponedList.size(); for (int j = 0; j < i; j++) { this.mCallback.onDispatchSecondPass((UpdateOp)this.mPostponedList.get(j)); } recycleUpdateOpsAndClearList(this.mPostponedList); this.mExistingUpdateTypes = 0; }
final void reset() { recycleUpdateOpsAndClearList(this.mPendingUpdates); recycleUpdateOpsAndClearList(this.mPostponedList); this.mExistingUpdateTypes = 0; }