diff --git a/Chan/src/org/floens/chan/ui/adapter/PostAdapter.java b/Chan/src/org/floens/chan/ui/adapter/PostAdapter.java index aa8d8329..c3b19855 100644 --- a/Chan/src/org/floens/chan/ui/adapter/PostAdapter.java +++ b/Chan/src/org/floens/chan/ui/adapter/PostAdapter.java @@ -28,6 +28,7 @@ public class PostAdapter extends BaseAdapter { private boolean endOfLine; private final List postList = new ArrayList(); private long lastViewedTime = 0; + private int lastIndex; public PostAdapter(Context activity, ThreadManager threadManager, ListView listView) { context = activity; @@ -47,6 +48,7 @@ public class PostAdapter extends BaseAdapter { @Override public Post getItem(int position) { + lastIndex = position; return postList.get(position); } @@ -150,8 +152,12 @@ public class PostAdapter extends BaseAdapter { for (int i = 0; i < postList.size(); i++) { if (postList.get(i).no == post.no) { - ScrollerRunnable r = new ScrollerRunnable(listView); - r.start(i); + if (Math.abs(i - lastIndex) > 20) { + listView.setSelection(i); + } else { + ScrollerRunnable r = new ScrollerRunnable(listView); + r.start(i); + } break; }