class ListViewScrollHandlingDelegate implements ScrollHandlingDelegate,
        AbsListView.OnScrollListener {

    @Override
    public void startListening() {
        if (mListView != null) {
            mListView.setOnScrollListener(this);

            final ListAdapter adapter = mListView.getAdapter();
            if (mListView.getLastVisiblePosition() < adapter.getCount()) {
                mRequireScrollMixin.notifyScrollabilityChange(true);
            }
        } else {
            Log.w(TAG, "Cannot require scroll. List view is null");
        }
    }

    public  ListViewScrollHandlingDelegate(
            @NonNull RequireScrollMixin requireScrollMixin,
            @Nullable ListView listView);

}