Status Update
Comments
ap...@google.com <ap...@google.com> #2
Maybe related issue with onViewDetachedFromWindow method, early without Concat Adapter I could use viewHolder.position (which is now global position in CA) to get the view holder type. But now we need to use viewHolder.bindingAdapterPosition, the only thing it is NO_POSITION again. I debugged sources and it seems another issue not with mBinderLookup, but before that RecyclerView#getAdapterPositionInRecyclerView gives NO_POSITION every time. But the problem remains the same I can't get the viewHolder position in those 3 methods due to Concat Adapter mechanics. I hope you will check this as well.
sc...@google.com <sc...@google.com>
na...@google.com <na...@google.com> #3
yea i think they are related. Right now CA updates its own state before calling callbacks. I'll try changing that order though it might have other consequences of inconsistent state. Will investigate further and hopefully solve both here.
pr...@google.com <pr...@google.com> #4
#2, I'm not able to reproduce your issue :/.
More specifically, i created a test case where I scroll and assert that adapter position is accessible when view is detached and it is working fine.
Now there is still an issue for detach for recycle, maybe that is the case you are hitting? (which is the main bug that still needs fixing anyways)
Description
The issue is more obvious when using Extensions.
The issue impacts the pinch-to-zoom experience a lot because the zoom will sometimes go backward if app use the current zoomRatio state to calculate the next zoom ratio.