From e3c984a4c7929070bf58b28f839ff5e56ebd0a0d Mon Sep 17 00:00:00 2001 From: Floens Date: Tue, 26 Aug 2014 20:40:58 +0200 Subject: [PATCH] Don't scroll to post from image when replies are open. --- .../org/floens/chan/core/manager/ThreadManager.java | 4 ++++ .../org/floens/chan/ui/activity/ImageViewActivity.java | 10 ++++++++-- .../org/floens/chan/ui/fragment/ThreadFragment.java | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/Clover/app/src/main/java/org/floens/chan/core/manager/ThreadManager.java b/Clover/app/src/main/java/org/floens/chan/core/manager/ThreadManager.java index d091f342..1dca3cc1 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/manager/ThreadManager.java +++ b/Clover/app/src/main/java/org/floens/chan/core/manager/ThreadManager.java @@ -511,6 +511,10 @@ public class ThreadManager implements Loader.LoaderListener { currentPopupFragment = null; } + public boolean arePostRepliesOpen() { + return popupQueue.size() > 0; + } + private void deletePost(final Post post) { final CheckBox checkBox = new CheckBox(activity); checkBox.setText(R.string.delete_image_only); diff --git a/Clover/app/src/main/java/org/floens/chan/ui/activity/ImageViewActivity.java b/Clover/app/src/main/java/org/floens/chan/ui/activity/ImageViewActivity.java index dc62327e..5f060f6d 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/activity/ImageViewActivity.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/activity/ImageViewActivity.java @@ -33,6 +33,7 @@ import android.widget.ProgressBar; import org.floens.chan.R; import org.floens.chan.chan.ImageSearch; import org.floens.chan.core.ChanPreferences; +import org.floens.chan.core.manager.ThreadManager; import org.floens.chan.core.model.Post; import org.floens.chan.ui.adapter.ImageViewAdapter; import org.floens.chan.ui.adapter.PostAdapter; @@ -53,10 +54,12 @@ public class ImageViewActivity extends Activity implements ViewPager.OnPageChang private static PostAdapter postAdapter; private static int selectedId = -1; + private static ThreadManager threadManagerStatic; private ViewPager viewPager; private ImageViewAdapter adapter; private ProgressBar progressBar; + private ThreadManager threadManager; private int currentPosition; @@ -66,9 +69,10 @@ public class ImageViewActivity extends Activity implements ViewPager.OnPageChang * @param adapter the adapter to get image data from * @param selected the no that the user clicked on */ - public static void setAdapter(PostAdapter adapter, int selected) { + public static void setAdapter(PostAdapter adapter, int selected, ThreadManager threadManager) { postAdapter = adapter; selectedId = selected; + threadManagerStatic = threadManager; } @Override @@ -85,6 +89,8 @@ public class ImageViewActivity extends Activity implements ViewPager.OnPageChang return; } + threadManager = threadManagerStatic; + ThemeHelper.setTheme(this); progressBar = new ProgressBar(this, null, android.R.attr.progressBarStyleHorizontal); @@ -170,7 +176,7 @@ public class ImageViewActivity extends Activity implements ViewPager.OnPageChang } Post post = adapter.getPost(position); - if (postAdapter != null) { + if (postAdapter != null && !threadManager.arePostRepliesOpen()) { postAdapter.scrollToPost(post.no); } } diff --git a/Clover/app/src/main/java/org/floens/chan/ui/fragment/ThreadFragment.java b/Clover/app/src/main/java/org/floens/chan/ui/fragment/ThreadFragment.java index c7e17a7f..63d4c01a 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/fragment/ThreadFragment.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/fragment/ThreadFragment.java @@ -177,7 +177,7 @@ public class ThreadFragment extends Fragment implements ThreadManager.ThreadMana @Override public void onThumbnailClicked(Post source) { if (postAdapter != null) { - ImageViewActivity.setAdapter(postAdapter, source.no); + ImageViewActivity.setAdapter(postAdapter, source.no, threadManager); Intent intent = new Intent(baseActivity, ImageViewActivity.class); baseActivity.startActivity(intent);