Better comment focus

filtering
Floens 10 years ago
parent bd91399621
commit 89c69b1d7f
  1. 3
      Clover/app/src/main/java/org/floens/chan/core/presenter/ReplyPresenter.java
  2. 8
      Clover/app/src/main/java/org/floens/chan/ui/layout/ReplyLayout.java
  3. 3
      Clover/app/src/main/java/org/floens/chan/ui/layout/ThreadListLayout.java

@ -98,7 +98,6 @@ public class ReplyPresenter implements ReplyManager.FileListener, ReplyManager.H
callback.loadDraftIntoViews(draft); callback.loadDraftIntoViews(draft);
callback.updateCommentCount(0, board.maxCommentChars, false); callback.updateCommentCount(0, board.maxCommentChars, false);
callback.setCommentHint(getString(loadable.isThreadMode() ? R.string.reply_comment_thread : R.string.reply_comment_board)); callback.setCommentHint(getString(loadable.isThreadMode() ? R.string.reply_comment_thread : R.string.reply_comment_board));
callback.focusComment();
if (draft.file != null) { if (draft.file != null) {
showPreview(draft.fileName, draft.file); showPreview(draft.fileName, draft.file);
@ -413,8 +412,6 @@ public class ReplyPresenter implements ReplyManager.FileListener, ReplyManager.H
void updateCommentCount(int count, int maxCount, boolean over); void updateCommentCount(int count, int maxCount, boolean over);
void focusComment();
void openPreview(boolean show, File previewFile); void openPreview(boolean show, File previewFile);
void openPreviewMessage(boolean show, String message); void openPreviewMessage(boolean show, String message);

@ -40,6 +40,7 @@ import org.floens.chan.core.presenter.ReplyPresenter;
import org.floens.chan.ui.drawable.DropdownArrowDrawable; import org.floens.chan.ui.drawable.DropdownArrowDrawable;
import org.floens.chan.ui.view.LoadView; import org.floens.chan.ui.view.LoadView;
import org.floens.chan.ui.view.SelectionListeningEditText; import org.floens.chan.ui.view.SelectionListeningEditText;
import org.floens.chan.utils.AndroidUtils;
import org.floens.chan.utils.AnimationUtils; import org.floens.chan.utils.AnimationUtils;
import org.floens.chan.utils.ImageDecoder; import org.floens.chan.utils.ImageDecoder;
import org.floens.chan.utils.ThemeHelper; import org.floens.chan.utils.ThemeHelper;
@ -305,9 +306,14 @@ public class ReplyLayout extends LoadView implements View.OnClickListener, Anima
commentCounter.setTextColor(over ? 0xffff0000 : getAttrColor(getContext(), R.attr.text_color_secondary)); commentCounter.setTextColor(over ? 0xffff0000 : getAttrColor(getContext(), R.attr.text_color_secondary));
} }
@Override
public void focusComment() { public void focusComment() {
comment.requestFocus(); comment.requestFocus();
comment.postDelayed(new Runnable() {
@Override
public void run() {
AndroidUtils.requestKeyboardFocus(comment);
}
}, 100);
} }
@Override @Override

@ -104,6 +104,9 @@ public class ThreadListLayout extends LinearLayout implements ReplyLayout.ReplyL
if (showingThread != null && replyOpen != open) { if (showingThread != null && replyOpen != open) {
this.replyOpen = open; this.replyOpen = open;
AnimationUtils.animateHeight(reply, replyOpen, getWidth(), 500, reply); AnimationUtils.animateHeight(reply, replyOpen, getWidth(), 500, reply);
if (open) {
reply.focusComment();
}
} }
} }

Loading…
Cancel
Save