Show the new posts indicator if not completely scrolled to the bottom, instead of just part of the most bottom view being visible

multisite
Floens 10 years ago
parent 4b9ea76be9
commit 22f94e353a
  1. 12
      Clover/app/src/main/java/org/floens/chan/core/presenter/ThreadPresenter.java
  2. 14
      Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java

@ -225,6 +225,12 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
}
}
if (isWatching()) {
chanLoader.setTimer();
}
showPosts();
if (loadable.isThreadMode()) {
int postsSize = result.posts.size();
@ -238,11 +244,6 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
}
}
if (isWatching()) {
chanLoader.setTimer();
}
showPosts();
if (loadable.markedNo >= 0) {
Post markedPost = findPostById(loadable.markedNo);
if (markedPost != null) {
@ -277,6 +278,7 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
}
threadPresenterCallback.showNewPostsNotification(false, -1);
// Update the last seen indicator
showPosts();
}

@ -305,19 +305,7 @@ public class ThreadListLayout extends LinearLayout implements ReplyLayout.ReplyL
}
public boolean scrolledToBottom() {
switch (postViewMode) {
case LIST:
if (((LinearLayoutManager) layoutManager).findLastVisibleItemPosition() == postAdapter.getItemCount() - 1) {
return true;
}
break;
case CARD:
if (((GridLayoutManager) layoutManager).findLastVisibleItemPosition() == postAdapter.getItemCount() - 1) {
return true;
}
break;
}
return false;
return getCompleteBottomAdapterPosition() == postAdapter.getItemCount() - 1;
}
public void cleanup() {

Loading…
Cancel
Save