diff --git a/Clover/app/src/main/java/org/floens/chan/core/manager/WatchManager.java b/Clover/app/src/main/java/org/floens/chan/core/manager/WatchManager.java index 6b8022c4..a093a2cf 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/manager/WatchManager.java +++ b/Clover/app/src/main/java/org/floens/chan/core/manager/WatchManager.java @@ -142,12 +142,6 @@ public class WatchManager { return true; } - public boolean addPin(Loadable loadable) { - Pin pin = new Pin(); - pin.loadable = loadable; - return addPin(pin); - } - public boolean addPin(Post opPost) { Pin pin = new Pin(); pin.loadable = new Loadable(opPost.board, opPost.no); diff --git a/Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java b/Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java index 7c4fd95e..c072d44a 100644 --- a/Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java +++ b/Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java @@ -28,6 +28,7 @@ import org.floens.chan.core.http.ReplyManager; import org.floens.chan.core.manager.BoardManager; import org.floens.chan.core.manager.WatchManager; import org.floens.chan.core.model.Board; +import org.floens.chan.core.model.ChanThread; import org.floens.chan.core.model.Loadable; import org.floens.chan.core.model.Post; import org.floens.chan.core.model.Reply; @@ -196,7 +197,10 @@ public class ReplyPresenter implements ReplyManager.HttpCallback, public void onHttpSuccess(ReplyHttpCall replyCall) { if (replyCall.posted) { if (ChanSettings.postPinThread.get() && loadable.isThreadMode()) { - watchManager.addPin(loadable); + ChanThread thread = callback.getThread(); + if (thread != null) { + watchManager.addPin(loadable, thread.op); + } } databaseManager.saveReply(new SavedReply(loadable.board, replyCall.postNo, replyCall.password)); @@ -429,5 +433,7 @@ public class ReplyPresenter implements ReplyManager.HttpCallback, void showThread(Loadable loadable); ImagePickDelegate getImagePickDelegate(); + + ChanThread getThread(); } } diff --git a/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java b/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java index 54d0afd4..a65f79f7 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java @@ -34,6 +34,7 @@ import android.widget.TextView; import android.widget.Toast; import org.floens.chan.R; +import org.floens.chan.core.model.ChanThread; import org.floens.chan.core.model.Loadable; import org.floens.chan.core.model.Reply; import org.floens.chan.core.presenter.ReplyPresenter; @@ -403,6 +404,11 @@ public class ReplyLayout extends LoadView implements View.OnClickListener, Anima return ((StartActivity) getContext()).getImagePickDelegate(); } + @Override + public ChanThread getThread() { + return callback.getThread(); + } + public interface ReplyLayoutCallback { void highlightPostNo(int no); @@ -411,5 +417,7 @@ public class ReplyLayout extends LoadView implements View.OnClickListener, Anima void showThread(Loadable loadable); void requestNewPostLoad(); + + ChanThread getThread(); } } diff --git a/Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java b/Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java index 0800ecf3..1165f545 100644 --- a/Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java +++ b/Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java @@ -413,6 +413,11 @@ public class ThreadListLayout extends FrameLayout implements ReplyLayout.ReplyLa callback.requestNewPostLoad(); } + @Override + public ChanThread getThread() { + return showingThread; + } + private void attachToolbarScroll(boolean attach) { Toolbar toolbar = threadListLayoutCallback.getToolbar(); if (toolbar != null && threadListLayoutCallback.collapseToolbar()) {