diff --git a/twidere/src/main/kotlin/android/support/design/widget/AccessorHeaderBehavior.kt b/twidere/src/main/kotlin/android/support/design/widget/AccessorHeaderBehavior.kt index 5f5bd26c7..9cc64d162 100644 --- a/twidere/src/main/kotlin/android/support/design/widget/AccessorHeaderBehavior.kt +++ b/twidere/src/main/kotlin/android/support/design/widget/AccessorHeaderBehavior.kt @@ -22,9 +22,13 @@ package android.support.design.widget import android.content.Context import android.util.AttributeSet import android.view.View +import android.widget.OverScroller internal open class AccessorHeaderBehavior(context: Context, attrs: AttributeSet? = null) : HeaderBehavior(context, attrs) { + internal val scroller: OverScroller? + get() = mScroller + internal override fun getScrollRangeForDragFling(view: V): Int { return super.getScrollRangeForDragFling(view) } diff --git a/twidere/src/main/kotlin/org/mariotaku/twidere/data/CursorObjectLivePagedListProvider.kt b/twidere/src/main/kotlin/org/mariotaku/twidere/data/CursorObjectLivePagedListProvider.kt index 443854943..2d7ca8e6a 100644 --- a/twidere/src/main/kotlin/org/mariotaku/twidere/data/CursorObjectLivePagedListProvider.kt +++ b/twidere/src/main/kotlin/org/mariotaku/twidere/data/CursorObjectLivePagedListProvider.kt @@ -67,7 +67,7 @@ class CursorObjectLivePagedListProvider( val selectionArgs: Array? = null, val sortOrder: String? = null, val cls: Class, - val predicate: CursorObjectProcessor? + val processor: CursorObjectProcessor? ) : TiledDataSource() { private val lazyCount: Int by lazy { resolver.queryCount(uri, selection, selectionArgs) } @@ -82,13 +82,13 @@ class CursorObjectLivePagedListProvider( } } resolver.registerContentObserver(uri, false, observer) - predicate?.init(resolver) + processor?.init(resolver) } override fun countItems() = lazyCount override fun loadRange(startPosition: Int, count: Int): List { - if (predicate == null) { + if (processor == null) { return resolver.queryAll(uri, projection, selection, selectionArgs, sortOrder, "$startPosition,$count", cls) } @@ -100,7 +100,7 @@ class CursorObjectLivePagedListProvider( "$offset,$limit", cls) val reachedEnd = list.size < count list.mapIndexedNotNullTo(result) lambda@ { index, item -> - val processed = predicate.process(item) + val processed = processor.process(item) filterStates[offset + index] = processed != null return@lambda processed } @@ -112,7 +112,7 @@ class CursorObjectLivePagedListProvider( } override fun invalidate() { - predicate?.invalidate() + processor?.invalidate() super.invalidate() } diff --git a/twidere/src/main/kotlin/org/mariotaku/twidere/view/behavior/userprofile/HeaderBehavior.kt b/twidere/src/main/kotlin/org/mariotaku/twidere/view/behavior/userprofile/HeaderBehavior.kt index 1e324fc23..39e1e0035 100644 --- a/twidere/src/main/kotlin/org/mariotaku/twidere/view/behavior/userprofile/HeaderBehavior.kt +++ b/twidere/src/main/kotlin/org/mariotaku/twidere/view/behavior/userprofile/HeaderBehavior.kt @@ -111,6 +111,7 @@ internal class HeaderBehavior(context: Context, attrs: AttributeSet? = null) : type: Int) { // Keep a reference to the previous nested scrolling child lastNestedScrollingChild = target + scroller?.forceFinished(true) } override fun onMeasureChild(parent: CoordinatorLayout, child: ViewGroup,