Browse Source

change submit button behaviour when replying/editing post

pull/43/head
Thodoris1999 7 years ago
parent
commit
c0f4edab69
  1. 23
      app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicActivity.java
  2. 19
      app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicAdapter.java
  3. 1
      app/src/main/java/gr/thmmy/mthmmy/viewmodel/TopicViewModel.java

23
app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicActivity.java

@ -486,15 +486,12 @@ public class TopicActivity extends BaseActivity implements TopicAdapter.OnPostFo
imm.hideSoftInputFromWindow(view.getWindowToken(), 0); imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
} }
postsList.remove(postsList.size() - 1);
topicAdapter.notifyItemRemoved(postsList.size());
progressBar.setVisibility(ProgressBar.GONE); progressBar.setVisibility(ProgressBar.GONE);
replyFAB.show();
bottomNavBar.setVisibility(View.VISIBLE);
viewModel.setWritingReply(false);
if (success) { if (success) {
replyFAB.show();
bottomNavBar.setVisibility(View.VISIBLE);
viewModel.setWritingReply(false);
if ((postsList.get(postsList.size() - 1).getPostNumber() + 1) % 15 == 0) { if ((postsList.get(postsList.size() - 1).getPostNumber() + 1) % 15 == 0) {
viewModel.loadUrl(ParseHelpers.getBaseURL(viewModel.getTopicUrl()) + "." + 2147483647); viewModel.loadUrl(ParseHelpers.getBaseURL(viewModel.getTopicUrl()) + "." + 2147483647);
} else { } else {
@ -502,6 +499,8 @@ public class TopicActivity extends BaseActivity implements TopicAdapter.OnPostFo
} }
} else { } else {
Toast.makeText(TopicActivity.this, "Post failed!", Toast.LENGTH_SHORT).show(); Toast.makeText(TopicActivity.this, "Post failed!", Toast.LENGTH_SHORT).show();
recyclerView.getChildAt(postsList.size() - 1).setAlpha(1);
recyclerView.getChildAt(postsList.size() - 1).setEnabled(true);
} }
} }
}); });
@ -530,17 +529,19 @@ public class TopicActivity extends BaseActivity implements TopicAdapter.OnPostFo
imm.hideSoftInputFromWindow(view.getWindowToken(), 0); imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
} }
postsList.get(position).setPostType(Post.TYPE_POST);
topicAdapter.notifyItemChanged(position);
viewModel.setEditingPost(false);
progressBar.setVisibility(ProgressBar.GONE); progressBar.setVisibility(ProgressBar.GONE);
replyFAB.show();
bottomNavBar.setVisibility(View.VISIBLE);
if (result) { if (result) {
postsList.get(position).setPostType(Post.TYPE_POST);
topicAdapter.notifyItemChanged(position);
replyFAB.show();
bottomNavBar.setVisibility(View.VISIBLE);
viewModel.setEditingPost(false);
viewModel.reloadPage(); viewModel.reloadPage();
} else { } else {
Toast.makeText(TopicActivity.this, "Edit failed!", Toast.LENGTH_SHORT).show(); Toast.makeText(TopicActivity.this, "Edit failed!", Toast.LENGTH_SHORT).show();
recyclerView.getChildAt(viewModel.getPostBeingEditedPosition()).setAlpha(1);
recyclerView.getChildAt(viewModel.getPostBeingEditedPosition()).setEnabled(true);
} }
} }
}); });

19
app/src/main/java/gr/thmmy/mthmmy/activities/topic/TopicAdapter.java

@ -453,15 +453,13 @@ class TopicAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
holder.submitButton.setOnClickListener(view -> { holder.submitButton.setOnClickListener(view -> {
if (holder.quickReplySubject.getText().toString().isEmpty()) return; if (holder.quickReplySubject.getText().toString().isEmpty()) return;
if (holder.quickReply.getText().toString().isEmpty()) return; if (holder.quickReply.getText().toString().isEmpty()) return;
holder.submitButton.setEnabled(false); InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
holder.itemView.setAlpha(0.5f);
holder.itemView.setEnabled(false);
viewModel.postReply(context, holder.quickReplySubject.getText().toString(), viewModel.postReply(context, holder.quickReplySubject.getText().toString(),
holder.quickReply.getText().toString()); holder.quickReply.getText().toString());
holder.quickReplySubject.getText().clear();
holder.quickReplySubject.setText("Re: " + viewModel.getTopicTitle().getValue());
holder.quickReply.getText().clear();
holder.submitButton.setEnabled(true);
}); });
@ -491,13 +489,12 @@ class TopicAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
holder.submitButton.setOnClickListener(view -> { holder.submitButton.setOnClickListener(view -> {
if (holder.editSubject.getText().toString().isEmpty()) return; if (holder.editSubject.getText().toString().isEmpty()) return;
if (holder.editMessage.getText().toString().isEmpty()) return; if (holder.editMessage.getText().toString().isEmpty()) return;
holder.submitButton.setEnabled(false); InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
holder.itemView.setAlpha(0.5f);
holder.itemView.setEnabled(false);
viewModel.editPost(position, holder.editSubject.getText().toString(), holder.editMessage.getText().toString()); viewModel.editPost(position, holder.editSubject.getText().toString(), holder.editMessage.getText().toString());
holder.editSubject.getText().clear();
holder.editSubject.setText(postsList.get(position).getSubject());
holder.submitButton.setEnabled(true);
}); });
if (backPressHidden) { if (backPressHidden) {

1
app/src/main/java/gr/thmmy/mthmmy/viewmodel/TopicViewModel.java

@ -200,7 +200,6 @@ public class TopicViewModel extends BaseViewModel implements TopicTask.OnTopicTa
@Override @Override
public void onPrepareEditFinished(PrepareForEditResult result, int position) { public void onPrepareEditFinished(PrepareForEditResult result, int position) {
editingPost = true;
postBeingEditedPosition = position; postBeingEditedPosition = position;
prepareForEditResult.setValue(result); prepareForEditResult.setValue(result);
} }

Loading…
Cancel
Save