From f69ae29bb93a113bad77bd258c92398bd45cd902 Mon Sep 17 00:00:00 2001 From: Alex Ning Date: Fri, 14 Jun 2019 10:30:26 +0800 Subject: [PATCH] Added a feature: Sending comments. --- .idea/caches/build_file_checksums.ser | Bin 533 -> 533 bytes .idea/caches/gradle_models.ser | Bin 257017 -> 256763 bytes app/build.gradle | 2 +- .../infinityforreddit/AppComponent.java | 1 + .../infinityforreddit/CommentActivity.java | 112 +++++++----------- .../infinityforreddit/RedditAPI.java | 4 + .../infinityforreddit/RedditUtils.java | 5 + .../infinityforreddit/SendComment.java | 51 ++++++++ .../ViewPostDetailActivity.java | 6 +- app/src/main/res/layout/activity_comment.xml | 25 ++-- app/src/main/res/values/strings.xml | 1 + 11 files changed, 115 insertions(+), 92 deletions(-) create mode 100644 app/src/main/java/ml/docilealligator/infinityforreddit/SendComment.java diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index c666d71b37fa9fbbfbd009bd2332ee8dc27aa6ff..dc95a9fb09f30d11b9b5291e11aaf2f899446131 100644 GIT binary patch delta 33 pcmbQrGL>b*43^*p_C6cuWH1W8*rz38x5w?{;n=%rCeB-pDgfYH4e|g0 delta 33 rcmV++0N($V1eFAkm;_Gcc!jZ?XaNx{y&xN~IPw-HAH=}Rlnd#2;8P9# diff --git a/.idea/caches/gradle_models.ser b/.idea/caches/gradle_models.ser index 03ebde54ac8b60d910e14b7e76f3e26dd893aaa9..d1f24b062e0314d3002959729355d176fd3daf8a 100644 GIT binary patch literal 256763 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 Axc~qF literal 257017 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 R!U~u`IZ7q9d-6Hs{|DaNU>g7c diff --git a/app/build.gradle b/app/build.gradle index e6c35e6f..a66bf321 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -75,5 +75,5 @@ dependencies { implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.16' implementation 'com.github.Ferfalk:SimpleSearchView:0.1.3' implementation 'org.greenrobot:eventbus:3.1.1' - implementation 'com.github.chinalwb:are:0.1.5' + implementation 'jp.wasabeef:richeditor-android:1.2.2' } diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java b/app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java index 99a5ff3f..e496140a 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java @@ -15,4 +15,5 @@ interface AppComponent { void inject(ViewPostDetailActivity viewPostDetailActivity); void inject(ViewSubredditDetailActivity viewSubredditDetailActivity); void inject(ViewUserDetailActivity viewUserDetailActivity); + void inject(CommentActivity commentActivity); } diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/CommentActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/CommentActivity.java index 0e885b80..8f4a6958 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/CommentActivity.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/CommentActivity.java @@ -1,49 +1,48 @@ package ml.docilealligator.infinityforreddit; import android.content.Intent; +import android.content.SharedPreferences; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; +import android.widget.EditText; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; +import androidx.coordinatorlayout.widget.CoordinatorLayout; -import com.chinalwb.are.AREditText; -import com.chinalwb.are.styles.toolbar.IARE_Toolbar; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_AlignmentCenter; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_AlignmentLeft; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_AlignmentRight; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_At; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Bold; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Hr; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Image; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Italic; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Link; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_ListBullet; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_ListNumber; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Quote; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Strikethrough; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Subscript; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Superscript; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Underline; -import com.chinalwb.are.styles.toolitems.ARE_ToolItem_Video; -import com.chinalwb.are.styles.toolitems.IARE_ToolItem; +import com.google.android.material.snackbar.Snackbar; + +import javax.inject.Inject; +import javax.inject.Named; import butterknife.BindView; import butterknife.ButterKnife; +import retrofit2.Retrofit; public class CommentActivity extends AppCompatActivity { static final String COMMENT_PARENT_TEXT = "CPT"; + static final String PARENT_FULLNAME = "PF"; static final String EXTRA_COMMENT_DATA = "ECD"; static final int WRITE_COMMENT_REQUEST_CODE = 1; + @BindView(R.id.coordinator_layout_comment_activity) CoordinatorLayout coordinatorLayout; @BindView(R.id.toolbar_comment_activity) Toolbar toolbar; @BindView(R.id.comment_parent_text_view_comment_activity) TextView commentParentTextView; - @BindView(R.id.arEditText) AREditText commentEditor; - @BindView(R.id.areToolbar) IARE_Toolbar editorToolbar; + @BindView(R.id.comment_edit_text_comment_activity) EditText commentEditText; + + private String parentFullname; + + @Inject + @Named("oauth") + Retrofit mOauthRetrofit; + + @Inject + @Named("auth_info") + SharedPreferences sharedPreferences; @Override protected void onCreate(Bundle savedInstanceState) { @@ -52,13 +51,12 @@ public class CommentActivity extends AppCompatActivity { ButterKnife.bind(this); + ((Infinity) getApplication()).getmAppComponent().inject(this); + setSupportActionBar(toolbar); commentParentTextView.setText(getIntent().getExtras().getString(COMMENT_PARENT_TEXT)); - - commentEditor.setBackgroundColor(getResources().getColor(android.R.color.transparent)); - - initToolbar(); + parentFullname = getIntent().getExtras().getString(PARENT_FULLNAME); } @Override @@ -75,53 +73,23 @@ public class CommentActivity extends AppCompatActivity { return true; case R.id.action_send_comment_activity: CommentData commentData = null; - Intent returnIntent = new Intent(); - returnIntent.putExtra(EXTRA_COMMENT_DATA, commentData); - setResult(RESULT_OK, returnIntent); + SendComment.sendComment(commentEditText.getText().toString(), parentFullname, mOauthRetrofit, + sharedPreferences.getString(SharedPreferencesUtils.ACCESS_TOKEN_KEY, ""), + new SendComment.SendCommentListener() { + @Override + public void sendCommentSuccess() { + Intent returnIntent = new Intent(); + returnIntent.putExtra(EXTRA_COMMENT_DATA, commentData); + setResult(RESULT_OK, returnIntent); + finish(); + } + + @Override + public void sendCommentFailed() { + Snackbar.make(coordinatorLayout, R.string.send_comment_failed, Snackbar.LENGTH_SHORT).show(); + } + }); } return super.onOptionsItemSelected(item); } - - private void initToolbar() { - IARE_ToolItem bold = new ARE_ToolItem_Bold(); - IARE_ToolItem italic = new ARE_ToolItem_Italic(); - IARE_ToolItem underline = new ARE_ToolItem_Underline(); - IARE_ToolItem strikethrough = new ARE_ToolItem_Strikethrough(); - IARE_ToolItem quote = new ARE_ToolItem_Quote(); - IARE_ToolItem listNumber = new ARE_ToolItem_ListNumber(); - IARE_ToolItem listBullet = new ARE_ToolItem_ListBullet(); - IARE_ToolItem hr = new ARE_ToolItem_Hr(); - IARE_ToolItem link = new ARE_ToolItem_Link(); - IARE_ToolItem subscript = new ARE_ToolItem_Subscript(); - IARE_ToolItem superscript = new ARE_ToolItem_Superscript(); - IARE_ToolItem left = new ARE_ToolItem_AlignmentLeft(); - IARE_ToolItem center = new ARE_ToolItem_AlignmentCenter(); - IARE_ToolItem right = new ARE_ToolItem_AlignmentRight(); - IARE_ToolItem image = new ARE_ToolItem_Image(); - IARE_ToolItem video = new ARE_ToolItem_Video(); - IARE_ToolItem at = new ARE_ToolItem_At(); - editorToolbar.addToolbarItem(bold); - editorToolbar.addToolbarItem(italic); - editorToolbar.addToolbarItem(underline); - editorToolbar.addToolbarItem(strikethrough); - editorToolbar.addToolbarItem(quote); - editorToolbar.addToolbarItem(listNumber); - editorToolbar.addToolbarItem(listBullet); - editorToolbar.addToolbarItem(hr); - editorToolbar.addToolbarItem(link); - editorToolbar.addToolbarItem(subscript); - editorToolbar.addToolbarItem(superscript); - editorToolbar.addToolbarItem(left); - editorToolbar.addToolbarItem(center); - editorToolbar.addToolbarItem(right); - editorToolbar.addToolbarItem(image); - editorToolbar.addToolbarItem(video); - editorToolbar.addToolbarItem(at); - - commentEditor.setToolbar(editorToolbar); - - /*setHtml(); - - initToolbarArrow();*/ - } } diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/RedditAPI.java b/app/src/main/java/ml/docilealligator/infinityforreddit/RedditAPI.java index 00feeb58..682d4fb3 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/RedditAPI.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/RedditAPI.java @@ -73,4 +73,8 @@ public interface RedditAPI { @GET("r/{subredditName}/search.json?raw_json=1&type=link&restrict_sr=true") Call searchPostsInSpecificSubreddit(@Query("q") String query, @Query("after") String after, @HeaderMap Map headers); + + @FormUrlEncoded + @POST("/api/comment") + Call sendComment(@HeaderMap Map headers, @FieldMap Map params); } diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/RedditUtils.java b/app/src/main/java/ml/docilealligator/infinityforreddit/RedditUtils.java index d598f684..c6964764 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/RedditUtils.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/RedditUtils.java @@ -48,6 +48,11 @@ public class RedditUtils { static final String ACTION_KEY = "action"; static final String SR_NAME_KEY = "sr_name"; + static final String API_TYPE_KEY = "api_type"; + static final String RETURN_RTJSON_KEY = "return_rtjson"; + static final String TEXT_KEY = "text"; + static final String THING_ID_KEY = "thing_id"; + static Map getHttpBasicAuthHeader() { Map params = new HashMap<>(); String credentials = String.format("%s:%s", RedditUtils.CLIENT_ID, ""); diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/SendComment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/SendComment.java new file mode 100644 index 00000000..5f7da2d7 --- /dev/null +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/SendComment.java @@ -0,0 +1,51 @@ +package ml.docilealligator.infinityforreddit; + +import android.util.Log; + +import androidx.annotation.NonNull; + +import java.util.HashMap; +import java.util.Map; + +import retrofit2.Call; +import retrofit2.Callback; +import retrofit2.Response; +import retrofit2.Retrofit; + +class SendComment { + + interface SendCommentListener { + void sendCommentSuccess(); + void sendCommentFailed(); + } + + static void sendComment(String commentMarkdown, String thingFullname, Retrofit oauthRetrofit, + String accessToken, SendCommentListener sendCommentListener) { + RedditAPI api = oauthRetrofit.create(RedditAPI.class); + Map headers = RedditUtils.getOAuthHeader(accessToken); + Map params = new HashMap<>(); + params.put(RedditUtils.API_TYPE_KEY, "json"); + params.put(RedditUtils.RETURN_RTJSON_KEY, "true"); + params.put(RedditUtils.TEXT_KEY, commentMarkdown); + params.put(RedditUtils.THING_ID_KEY, thingFullname); + api.sendComment(headers, params); + + Call sendCommentCall = api.sendComment(headers, params); + sendCommentCall.enqueue(new Callback() { + @Override + public void onResponse(@NonNull Call call, @NonNull Response response) { + if(response.isSuccessful()) { + Log.i("asdfasdfaf", response.body()); + sendCommentListener.sendCommentSuccess(); + } else { + sendCommentListener.sendCommentFailed(); + } + } + + @Override + public void onFailure(@NonNull Call call, @NonNull Throwable t) { + sendCommentListener.sendCommentFailed(); + } + }); + } +} diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/ViewPostDetailActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/ViewPostDetailActivity.java index ea8e8b4c..ff9d3dd4 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/ViewPostDetailActivity.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/ViewPostDetailActivity.java @@ -64,7 +64,6 @@ import retrofit2.Retrofit; import ru.noties.markwon.SpannableConfiguration; import ru.noties.markwon.view.MarkwonView; -import static ml.docilealligator.infinityforreddit.CommentActivity.EXTRA_COMMENT_DATA; import static ml.docilealligator.infinityforreddit.CommentActivity.WRITE_COMMENT_REQUEST_CODE; public class ViewPostDetailActivity extends AppCompatActivity { @@ -686,6 +685,7 @@ public class ViewPostDetailActivity extends AppCompatActivity { case R.id.action_comment_view_post_detail_activity: Intent intent = new Intent(this, CommentActivity.class); intent.putExtra(CommentActivity.COMMENT_PARENT_TEXT, mPost.getTitle()); + intent.putExtra(CommentActivity.PARENT_FULLNAME, mPost.getFullName()); startActivityForResult(intent, WRITE_COMMENT_REQUEST_CODE); return true; case android.R.id.home: @@ -699,8 +699,8 @@ public class ViewPostDetailActivity extends AppCompatActivity { protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) { super.onActivityResult(requestCode, resultCode, data); if(resultCode == RESULT_OK && requestCode == WRITE_COMMENT_REQUEST_CODE) { - CommentData comment = data.getExtras().getParcelable(EXTRA_COMMENT_DATA); - mAdapter.addComment(comment); + /*CommentData comment = data.getExtras().getParcelable(EXTRA_COMMENT_DATA); + mAdapter.addComment(comment);*/ } } diff --git a/app/src/main/res/layout/activity_comment.xml b/app/src/main/res/layout/activity_comment.xml index 3beff433..c494cf3f 100644 --- a/app/src/main/res/layout/activity_comment.xml +++ b/app/src/main/res/layout/activity_comment.xml @@ -4,6 +4,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" + android:id="@+id/coordinator_layout_comment_activity" tools:context=".CommentActivity"> - - - + android:hint="@string/write_comment_hint" + android:inputType="textCapSentences|textMultiLine" + android:textSize="18sp" + android:background="#00000000" /> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 7a3985eb..1b4968b0 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -72,5 +72,6 @@ Lazy Mode stopped Your interesting thoughts here + Could not send this comment