diff options
author | Alex Ning <chineseperson5@gmail.com> | 2020-08-04 15:53:57 +0000 |
---|---|---|
committer | Alex Ning <chineseperson5@gmail.com> | 2020-08-04 15:53:57 +0000 |
commit | 74a4206cd217dbffd046b7a2f907140a63db0eee (patch) | |
tree | 908eaf2a95bee4564e9f46b3b8ef40816bbd31d1 | |
parent | d10a3bd52a015d2091f73e2fd1bf61140d0cafca (diff) | |
download | infinity-for-reddit-74a4206cd217dbffd046b7a2f907140a63db0eee.tar infinity-for-reddit-74a4206cd217dbffd046b7a2f907140a63db0eee.tar.gz infinity-for-reddit-74a4206cd217dbffd046b7a2f907140a63db0eee.tar.bz2 infinity-for-reddit-74a4206cd217dbffd046b7a2f907140a63db0eee.tar.lz infinity-for-reddit-74a4206cd217dbffd046b7a2f907140a63db0eee.tar.xz infinity-for-reddit-74a4206cd217dbffd046b7a2f907140a63db0eee.tar.zst infinity-for-reddit-74a4206cd217dbffd046b7a2f907140a63db0eee.zip |
Version 4.0.3. Only save scrolled position for Best posts in HOME. Set Save Scrolled Position in HOME to false by default. Apply link color in CommentActivity.
6 files changed, 22 insertions, 9 deletions
diff --git a/app/build.gradle b/app/build.gradle index 1a134da7..407f3d01 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -6,8 +6,8 @@ android { applicationId "ml.docilealligator.infinityforreddit" minSdkVersion 21 targetSdkVersion 29 - versionCode 38 - versionName "4.0.2" + versionCode 39 + versionName "4.0.3" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" javaCompileOptions { annotationProcessorOptions { diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/CommentActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/CommentActivity.java index 6bf1b3ab..04d415ad 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/CommentActivity.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Activity/CommentActivity.java @@ -41,6 +41,7 @@ import butterknife.ButterKnife; import io.noties.markwon.AbstractMarkwonPlugin; import io.noties.markwon.Markwon; import io.noties.markwon.MarkwonConfiguration; +import io.noties.markwon.core.MarkwonTheme; import io.noties.markwon.ext.strikethrough.StrikethroughPlugin; import io.noties.markwon.linkify.LinkifyPlugin; import io.noties.markwon.recycler.MarkwonAdapter; @@ -49,14 +50,14 @@ import io.noties.markwon.recycler.table.TableEntryPlugin; import io.noties.markwon.simple.ext.SimpleExtPlugin; import io.noties.markwon.urlprocessor.UrlProcessorRelativeToAbsolute; import ml.docilealligator.infinityforreddit.AsyncTask.GetCurrentAccountAsyncTask; +import ml.docilealligator.infinityforreddit.BottomSheetFragment.CopyTextBottomSheetFragment; import ml.docilealligator.infinityforreddit.Comment.Comment; +import ml.docilealligator.infinityforreddit.Comment.SendComment; import ml.docilealligator.infinityforreddit.CustomTheme.CustomThemeWrapper; import ml.docilealligator.infinityforreddit.Event.SwitchAccountEvent; -import ml.docilealligator.infinityforreddit.BottomSheetFragment.CopyTextBottomSheetFragment; import ml.docilealligator.infinityforreddit.Infinity; import ml.docilealligator.infinityforreddit.R; import ml.docilealligator.infinityforreddit.RedditDataRoomDatabase; -import ml.docilealligator.infinityforreddit.Comment.SendComment; import ml.docilealligator.infinityforreddit.Utils.SharedPreferencesUtils; import ml.docilealligator.infinityforreddit.Utils.Utils; import retrofit2.Retrofit; @@ -146,6 +147,8 @@ public class CommentActivity extends BaseActivity { String parentTextMarkdown = intent.getStringExtra(EXTRA_COMMENT_PARENT_TEXT_MARKDOWN_KEY); String parentText = intent.getStringExtra(EXTRA_COMMENT_PARENT_TEXT_KEY); CopyTextBottomSheetFragment copyTextBottomSheetFragment = new CopyTextBottomSheetFragment(); + + int linkColor = mCustomThemeWrapper.getLinkColor(); Markwon markwon = Markwon.builder(this) .usePlugin(new AbstractMarkwonPlugin() { @Override @@ -161,6 +164,11 @@ public class CommentActivity extends BaseActivity { startActivity(intent); }); } + + @Override + public void configureTheme(@NonNull MarkwonTheme.Builder builder) { + builder.linkColor(linkColor); + } }) .usePlugin(LinkifyPlugin.create(Linkify.WEB_URLS)) .usePlugin(SimpleExtPlugin.create(plugin -> @@ -220,6 +228,11 @@ public class CommentActivity extends BaseActivity { startActivity(intent); }).urlProcessor(new UrlProcessorRelativeToAbsolute("https://www.reddit.com")); } + + @Override + public void configureTheme(@NonNull MarkwonTheme.Builder builder) { + builder.linkColor(linkColor); + } }) .usePlugin(StrikethroughPlugin.create()) .usePlugin(LinkifyPlugin.create(Linkify.WEB_URLS)) diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Fragment/PostFragment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Fragment/PostFragment.java index 9e795f5c..4330cb64 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/Fragment/PostFragment.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Fragment/PostFragment.java @@ -369,7 +369,7 @@ public class PostFragment extends Fragment implements FragmentCommunicator { accountName = getArguments().getString(EXTRA_ACCOUNT_NAME); boolean nsfw = mSharedPreferences.getBoolean(SharedPreferencesUtils.NSFW_KEY, false); int defaultPostLayout = Integer.parseInt(mSharedPreferences.getString(SharedPreferencesUtils.DEFAULT_POST_LAYOUT_KEY, "0")); - savePostFeedScrolledPosition = mSharedPreferences.getBoolean(SharedPreferencesUtils.SAVE_FRONT_PAGE_SCROLLED_POSITION, true); + savePostFeedScrolledPosition = mSharedPreferences.getBoolean(SharedPreferencesUtils.SAVE_FRONT_PAGE_SCROLLED_POSITION, false); Locale locale = getResources().getConfiguration().locale; if (postType == PostDataSource.TYPE_SEARCH) { @@ -717,7 +717,7 @@ public class PostFragment extends Fragment implements FragmentCommunicator { } private void saveCache() { - if (savePostFeedScrolledPosition && postType == PostDataSource.TYPE_FRONT_PAGE && mAdapter != null) { + if (savePostFeedScrolledPosition && postType == PostDataSource.TYPE_FRONT_PAGE && sortType != null && sortType.getType() == SortType.Type.BEST && mAdapter != null) { Post currentPost = mAdapter.getItemByPosition(maxPosition); if (currentPost != null) { String accountNameForCache = accountName == null ? SharedPreferencesUtils.FRONT_PAGE_SCROLLED_POSITION_ANONYMOUS : accountName; diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/Post/PostDataSource.java b/app/src/main/java/ml/docilealligator/infinityforreddit/Post/PostDataSource.java index 54a80624..e0c4a9a3 100644 --- a/app/src/main/java/ml/docilealligator/infinityforreddit/Post/PostDataSource.java +++ b/app/src/main/java/ml/docilealligator/infinityforreddit/Post/PostDataSource.java @@ -176,7 +176,7 @@ public class PostDataSource extends PageKeyedDataSource<String, Post> { initialLoadStateLiveData.postValue(NetworkState.LOADING); switch (postType) { case TYPE_FRONT_PAGE: - boolean savePostFeedScrolledPosition = sharedPreferences.getBoolean(SharedPreferencesUtils.SAVE_FRONT_PAGE_SCROLLED_POSITION, true); + boolean savePostFeedScrolledPosition = sortType != null && sortType.getType() == SortType.Type.BEST && sharedPreferences.getBoolean(SharedPreferencesUtils.SAVE_FRONT_PAGE_SCROLLED_POSITION, false); String accountNameForCache = accountName == null ? SharedPreferencesUtils.FRONT_PAGE_SCROLLED_POSITION_ANONYMOUS : accountName; if (savePostFeedScrolledPosition) { loadBestPostsInitial(callback, postFeedScrolledPositionSharedPreferences.getString(accountNameForCache + SharedPreferencesUtils.FRONT_PAGE_SCROLLED_POSITION_FRONT_PAGE_BASE, null)); diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index dd8ea536..a752cf3a 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -349,7 +349,7 @@ <string name="settings_interface_title">Interface</string> <string name="settings_gestures_and_buttons_title">Gestures & Buttons</string> <string name="settings_save_front_page_scrolled_position_title">Save Scrolled Position in HOME</string> - <string name="settings_save_front_page_scrolled_position_summary">Browse new posts after refreshing in HOME (Front Page)</string> + <string name="settings_save_front_page_scrolled_position_summary">Browse new posts after refreshing in HOME (Front Page, sort type: Best)</string> <string name="settings_open_link_in_app_title">Open Link In App</string> <string name="settigns_video_title">Video</string> <string name="settings_video_autoplay_title">Video Autoplay</string> diff --git a/app/src/main/res/xml/main_preferences.xml b/app/src/main/res/xml/main_preferences.xml index dc8900d3..9af72116 100644 --- a/app/src/main/res/xml/main_preferences.xml +++ b/app/src/main/res/xml/main_preferences.xml @@ -37,7 +37,7 @@ app:useSimpleSummaryProvider="true" /> <SwitchPreference - app:defaultValue="true" + app:defaultValue="false" app:key="save_front_page_scrolled_position" app:title="@string/settings_save_front_page_scrolled_position_title" app:summary="@string/settings_save_front_page_scrolled_position_summary" /> |