private void checkDisableTouch() { mCheckDisableTouch = true; mRoot.postDelayed( new Runnable() { @Override public void run() { Log.d("TEST", "activeDownloaders = " + activeDownloaders); if (mRoot != null) mRoot.setDisableTouch(activeDownloaders > 0); if (activeDownloaders == 0) { if (!(getListView() != null && getListView().getLastVisiblePosition() == mAdapter.getCount() - 1)) { Log.d("TEST", "smoothScrollBy"); if (getListView() != null) getListView().smoothScrollBy(getListView().getHeight(), 700); } else { Log.d("TEST", "setImageDownloaded true"); UtilHelper.setImageDownloaded(getActivity(), true); } } mCheckDisableTouch = false; } }, 250); }