From 47832e1e91db7e355b8122e1b533966c8df5ddba Mon Sep 17 00:00:00 2001 From: Alex Ning Date: Fri, 27 Sep 2019 16:58:57 +0800 Subject: [PATCH] Blurring spoiler post images is now available. Change spoiler and flair text background colors. Fixed collapsed comments shown after orientation change. --- .idea/assetWizardSettings.xml | 4 +-- .idea/caches/build_file_checksums.ser | Bin 533 -> 533 bytes .idea/caches/gradle_models.ser | Bin 307419 -> 307419 bytes app/build.gradle | 4 +-- .../java/Settings/MainPreferenceFragment.java | 9 ++++++ .../ChangeSpoilerBlurEvent.java | 8 +++++ .../CommentAndPostRecyclerViewAdapter.java | 27 ++++++++++------ .../infinityforreddit/PostFragment.java | 22 ++++++++++--- .../PostRecyclerViewAdapter.java | 14 +++++--- .../SharedPreferencesUtils.java | 1 + .../ViewPostDetailActivity.java | 30 +++++++++++++----- .../res/drawable-night/ic_font_size_24dp.xml | 9 ++++++ .../main/res/drawable/ic_font_size_24dp.xml | 9 ++++++ app/src/main/res/layout/item_post.xml | 8 ++--- app/src/main/res/layout/item_post_detail.xml | 6 ++-- app/src/main/res/values/arrays.xml | 2 +- app/src/main/res/values/colors.xml | 4 +++ app/src/main/res/values/strings.xml | 3 +- app/src/main/res/xml/main_preferences.xml | 6 ++++ 19 files changed, 129 insertions(+), 37 deletions(-) create mode 100644 app/src/main/java/ml/docilealligator/infinityforreddit/ChangeSpoilerBlurEvent.java create mode 100644 app/src/main/res/drawable-night/ic_font_size_24dp.xml create mode 100644 app/src/main/res/drawable/ic_font_size_24dp.xml diff --git a/.idea/assetWizardSettings.xml b/.idea/assetWizardSettings.xml index e58d4948..e2e548ac 100644 --- a/.idea/assetWizardSettings.xml +++ b/.idea/assetWizardSettings.xml @@ -159,8 +159,8 @@ - - + + diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index 927cfcb0ee184dcacd1dabc1387a3132c8306e55..b5ca41eb7f6f0a557d7e99c759365af3be3968e3 100644 GIT binary patch delta 33 rcmV++0N($V1eFAkm;`a|6YsH{XaNyoFcCMf?4RmP40PSkX-2?!>~Id{ delta 33 rcmV++0N($V1eFAkm;_lxq=&JbXaNystI^_CYktzCi;m&iZRk>X_Ja^x diff --git a/.idea/caches/gradle_models.ser b/.idea/caches/gradle_models.ser index 14c7f69a3609bd2dc9f08e02d4fe8ad268d8b2c9..6b94740ae6720bdd90bea72c232e8bd443327a07 100644 GIT binary patch delta 49587 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 Py4pZU6*Neb3mX0b^Rcb) diff --git a/app/build.gradle b/app/build.gradle index 061022da..92e9dd36 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -6,8 +6,8 @@ android { applicationId "ml.docilealligator.infinityforreddit" minSdkVersion 21 targetSdkVersion 29 - versionCode 12 - versionName "1.1.1" + versionCode 13 + versionName "1.1.2" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { diff --git a/app/src/main/java/Settings/MainPreferenceFragment.java b/app/src/main/java/Settings/MainPreferenceFragment.java index af498294..8e3b7d99 100644 --- a/app/src/main/java/Settings/MainPreferenceFragment.java +++ b/app/src/main/java/Settings/MainPreferenceFragment.java @@ -17,6 +17,7 @@ import javax.inject.Inject; import ml.docilealligator.infinityforreddit.ChangeNSFWBlurEvent; import ml.docilealligator.infinityforreddit.ChangeNSFWEvent; +import ml.docilealligator.infinityforreddit.ChangeSpoilerBlurEvent; import ml.docilealligator.infinityforreddit.Infinity; import ml.docilealligator.infinityforreddit.R; import ml.docilealligator.infinityforreddit.SharedPreferencesUtils; @@ -44,6 +45,7 @@ public class MainPreferenceFragment extends PreferenceFragmentCompat { SwitchPreference nsfwSwitch = findPreference(SharedPreferencesUtils.NSFW_KEY); SwitchPreference blurNSFWSwitch = findPreference(SharedPreferencesUtils.BLUR_NSFW_KEY); + SwitchPreference blurSpoilerSwitch = findPreference(SharedPreferencesUtils.BLUR_SPOILER_KEY); ListPreference themePreference = findPreference(SharedPreferencesUtils.THEME_KEY); if(nsfwSwitch != null) { @@ -71,6 +73,13 @@ public class MainPreferenceFragment extends PreferenceFragmentCompat { }); } + if(blurSpoilerSwitch != null) { + blurSpoilerSwitch.setOnPreferenceChangeListener((preference, newValue) -> { + EventBus.getDefault().post(new ChangeSpoilerBlurEvent((Boolean) newValue)); + return true; + }); + } + boolean systemDefault = Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q; if(themePreference != null) { diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/ChangeSpoilerBlurEvent.java b/app/src/main/java/ml/docilealligator/infinityforreddit/ChangeSpoilerBlurEvent.java new file mode 100644 index 00000000..f8c22224 --- /dev/null +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/ChangeSpoilerBlurEvent.java @@ -0,0 +1,8 @@ +package ml.docilealligator.infinityforreddit; + +public class ChangeSpoilerBlurEvent { + public boolean needBlurSpoiler; + public ChangeSpoilerBlurEvent(boolean needBlurSpoiler) { + this.needBlurSpoiler = needBlurSpoiler; + } +} diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/CommentAndPostRecyclerViewAdapter.java b/app/src/main/java/ml/docilealligator/infinityforreddit/CommentAndPostRecyclerViewAdapter.java index f2fb4545..897b2e86 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/CommentAndPostRecyclerViewAdapter.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/CommentAndPostRecyclerViewAdapter.java @@ -52,6 +52,8 @@ import jp.wasabeef.glide.transformations.BlurTransformation; import jp.wasabeef.glide.transformations.RoundedCornersTransformation; import retrofit2.Retrofit; +import static ml.docilealligator.infinityforreddit.CommentActivity.WRITE_COMMENT_REQUEST_CODE; + class CommentAndPostRecyclerViewAdapter extends RecyclerView.Adapter { private static final int VIEW_TYPE_POST_DETAIL = 0; private static final int VIEW_TYPE_FIRST_LOADING = 1; @@ -78,6 +80,7 @@ class CommentAndPostRecyclerViewAdapter extends RecyclerView.Adapter getVisibleComments() { + return mVisibleComments; + } + void initiallyLoading() { if(mVisibleComments.size() != 0) { int previousSize = mVisibleComments.size(); @@ -1162,6 +1167,10 @@ class CommentAndPostRecyclerViewAdapter extends RecyclerView.Adapter= 0) { + mAdapter.addChildComment(comment, parentFullname, parentPosition); + } } } else { Toast.makeText(this, R.string.send_comment_failed, Toast.LENGTH_SHORT).show(); @@ -1219,7 +1232,7 @@ public class ViewPostDetailActivity extends AppCompatActivity implements FlairBo } } else if(requestCode == EDIT_COMMENT_REQUEST_CODE) { if(resultCode == RESULT_OK) { - mAdapter.editComment(data.getExtras().getString(EditCommentActivity.EXTRA_EDITED_COMMENT_CONTENT), + mAdapter.editComment(data.getStringExtra(EditCommentActivity.EXTRA_EDITED_COMMENT_CONTENT), data.getExtras().getInt(EditCommentActivity.EXTRA_EDITED_COMMENT_POSITION)); } } @@ -1228,6 +1241,7 @@ public class ViewPostDetailActivity extends AppCompatActivity implements FlairBo @Override protected void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); + comments = mAdapter.getVisibleComments(); Bridge.saveInstanceState(this, outState); } diff --git a/app/src/main/res/drawable-night/ic_font_size_24dp.xml b/app/src/main/res/drawable-night/ic_font_size_24dp.xml new file mode 100644 index 00000000..44c361be --- /dev/null +++ b/app/src/main/res/drawable-night/ic_font_size_24dp.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_font_size_24dp.xml b/app/src/main/res/drawable/ic_font_size_24dp.xml new file mode 100644 index 00000000..b2ef0e15 --- /dev/null +++ b/app/src/main/res/drawable/ic_font_size_24dp.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/layout/item_post.xml b/app/src/main/res/layout/item_post.xml index 058d53ae..624331a6 100644 --- a/app/src/main/res/layout/item_post.xml +++ b/app/src/main/res/layout/item_post.xml @@ -204,8 +204,8 @@ android:padding="4dp" android:visibility="gone" app:lib_setRadius="3dp" - app:lib_setRoundedBGColor="@color/backgroundColorPrimaryDark" - app:lib_setRoundedBorderColor="@color/backgroundColorPrimaryDark" + app:lib_setRoundedBGColor="@color/spoilerBackgroundColor" + app:lib_setRoundedBorderColor="@color/spoilerBackgroundColor" app:lib_setRoundedView="true" app:lib_setShape="rectangle" /> @@ -220,8 +220,8 @@ android:padding="4dp" android:visibility="gone" app:lib_setRadius="3dp" - app:lib_setRoundedBGColor="@color/backgroundColorPrimaryDark" - app:lib_setRoundedBorderColor="@color/backgroundColorPrimaryDark" + app:lib_setRoundedBGColor="@color/flairBackgroundColor" + app:lib_setRoundedBorderColor="@color/flairBackgroundColor" app:lib_setRoundedView="true" app:lib_setShape="rectangle" /> diff --git a/app/src/main/res/layout/item_post_detail.xml b/app/src/main/res/layout/item_post_detail.xml index 09a99591..d0647265 100644 --- a/app/src/main/res/layout/item_post_detail.xml +++ b/app/src/main/res/layout/item_post_detail.xml @@ -209,7 +209,8 @@ android:padding="4dp" android:visibility="gone" app:lib_setRadius="3dp" - app:lib_setRoundedBorderColor="@color/colorPrimaryDarkDayNightTheme" + app:lib_setRoundedBGColor="@color/spoilerBackgroundColor" + app:lib_setRoundedBorderColor="@color/spoilerBackgroundColor" app:lib_setRoundedView="true" app:lib_setShape="rectangle" /> @@ -224,7 +225,8 @@ android:textColor="@android:color/white" android:visibility="gone" app:lib_setRadius="3dp" - app:lib_setRoundedBorderColor="@color/colorPrimaryDarkDayNightTheme" + app:lib_setRoundedBGColor="@color/flairBackgroundColor" + app:lib_setRoundedBorderColor="@color/flairBackgroundColor" app:lib_setRoundedView="true" app:lib_setShape="rectangle" /> diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index f50fe519..602a3f00 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -90,7 +90,7 @@ Normal Large Extra Large - Enormous Large + Enormously Large diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index a08640f7..811089f3 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -75,4 +75,8 @@ #EE8A02 #00BA81 + + #EE02EB + + #00AA8C diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e8cba1f9..c898353c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -278,7 +278,8 @@ Title Font Size Content Font Size Enable NSFW - Blur NSFW images + Blur NSFW Images + Blur Spoiler Images Display Under Navigation bar and Status Bar About Acknowledgement diff --git a/app/src/main/res/xml/main_preferences.xml b/app/src/main/res/xml/main_preferences.xml index 6567eb1b..a4b8506f 100644 --- a/app/src/main/res/xml/main_preferences.xml +++ b/app/src/main/res/xml/main_preferences.xml @@ -26,6 +26,7 @@ + +