mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2025-08-25 17:31:44 +02:00
Compare commits
9 Commits
0affa4a90d
...
5fdf1208a7
Author | SHA1 | Date | |
---|---|---|---|
|
5fdf1208a7 | ||
|
6708b72fd8 | ||
|
327b874fd6 | ||
|
cafd3c6025 | ||
|
9ecbaba3d4 | ||
|
4741198c78 | ||
|
577d5b8e6f | ||
|
307036bca0 | ||
|
ec4c79eb69 |
@@ -286,7 +286,7 @@ public class AccountSavedThingActivity extends BaseActivity implements ActivityT
|
||||
bundle.putString(PostFragment.EXTRA_USER_NAME, mAccountQualifiedName);
|
||||
bundle.putString(PostFragment.EXTRA_USER_WHERE, PostPagingSource.USER_WHERE_SAVED);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
bundle.putBoolean(PostFragment.EXTRA_DISABLE_READ_POSTS, true);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
|
@@ -205,7 +205,7 @@ public class CommentActivity extends BaseActivity implements UploadImageEnabledA
|
||||
}
|
||||
};
|
||||
Markwon postBodyMarkwon = MarkdownUtils.createFullRedditMarkwon(this,
|
||||
miscPlugin, parentTextColor, parentSpoilerBackgroundColor, null, mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
miscPlugin, parentTextColor, parentSpoilerBackgroundColor, mGlide, null, mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
MarkwonAdapter markwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
binding.commentContentMarkdownView.setLayoutManager(new LinearLayoutManagerBugFixed(this));
|
||||
binding.commentContentMarkdownView.setAdapter(markwonAdapter);
|
||||
|
@@ -317,7 +317,7 @@ public class FilteredPostsActivity extends BaseActivity implements SortTypeSelec
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, postType);
|
||||
bundle.putParcelable(PostFragment.EXTRA_FILTER, postFilter);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
if (postType == PostPagingSource.TYPE_USER) {
|
||||
bundle.putString(PostFragment.EXTRA_USER_NAME, name);
|
||||
bundle.putString(PostFragment.EXTRA_USER_WHERE, userWhere);
|
||||
|
@@ -18,6 +18,7 @@ import androidx.appcompat.widget.Toolbar;
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.appbar.CollapsingToolbarLayout;
|
||||
|
||||
@@ -139,7 +140,7 @@ public class FullMarkdownActivity extends BaseActivity {
|
||||
}
|
||||
};
|
||||
Markwon markwon = MarkdownUtils.createFullRedditMarkwon(this,
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, null, mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, Glide.with(getApplication()), null, mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
|
||||
MarkwonAdapter markwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
LinearLayoutManagerBugFixed linearLayoutManager = new SwipeLockLinearLayoutManager(this, new SwipeLockInterface() {
|
||||
|
@@ -23,6 +23,7 @@ import androidx.coordinatorlayout.widget.CoordinatorLayout;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.google.android.material.appbar.AppBarLayout;
|
||||
import com.google.android.material.card.MaterialCardView;
|
||||
import com.google.android.material.snackbar.Snackbar;
|
||||
@@ -190,7 +191,7 @@ public class InstanceInfoActivity extends BaseActivity {
|
||||
};
|
||||
|
||||
mPostDetailMarkwon = MarkdownUtils.createFullRedditMarkwon(this,
|
||||
miscPlugin, markdownColor, postSpoilerBackgroundColor, null, mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
miscPlugin, markdownColor, postSpoilerBackgroundColor, Glide.with(getApplication()), null, mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
mMarkwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
mContentMarkdownView.setAdapter(mMarkwonAdapter);
|
||||
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
|
||||
|
@@ -1840,7 +1840,7 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, mAccessToken == null ? PostPagingSource.TYPE_ANONYMOUS_FRONT_PAGE : PostPagingSource.TYPE_FRONT_PAGE);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
} else if (postType == SharedPreferencesUtils.MAIN_PAGE_TAB_POST_TYPE_ALL) {
|
||||
@@ -1849,7 +1849,7 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, PostPagingSource.TYPE_FRONT_PAGE);
|
||||
bundle.putString(PostFragment.EXTRA_NAME, "all");
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
} else if (postType == SharedPreferencesUtils.MAIN_PAGE_TAB_POST_TYPE_SUBREDDIT) {
|
||||
@@ -1858,7 +1858,7 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, PostPagingSource.TYPE_SUBREDDIT);
|
||||
bundle.putString(PostFragment.EXTRA_NAME, name);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
} else if (postType == SharedPreferencesUtils.MAIN_PAGE_TAB_POST_TYPE_MULTIREDDIT) {
|
||||
@@ -1867,7 +1867,7 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
|
||||
bundle.putString(PostFragment.EXTRA_NAME, name);
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, mAccessToken == null ? PostPagingSource.TYPE_ANONYMOUS_MULTIREDDIT : PostPagingSource.TYPE_MULTI_REDDIT);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
} else if (postType == SharedPreferencesUtils.MAIN_PAGE_TAB_POST_TYPE_USER) {
|
||||
@@ -1877,7 +1877,7 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
|
||||
bundle.putString(PostFragment.EXTRA_USER_NAME, name);
|
||||
bundle.putString(PostFragment.EXTRA_USER_WHERE, PostPagingSource.USER_WHERE_SUBMITTED);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
} else if (postType == SharedPreferencesUtils.MAIN_PAGE_TAB_POST_TYPE_UPVOTED
|
||||
@@ -1890,7 +1890,7 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, PostPagingSource.TYPE_USER);
|
||||
bundle.putString(PostFragment.EXTRA_USER_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
bundle.putBoolean(PostFragment.EXTRA_DISABLE_READ_POSTS, true);
|
||||
|
||||
if (postType == SharedPreferencesUtils.MAIN_PAGE_TAB_POST_TYPE_UPVOTED) {
|
||||
@@ -1913,7 +1913,7 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, PostPagingSource.TYPE_FRONT_PAGE);
|
||||
bundle.putString(PostFragment.EXTRA_NAME, "local");
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
}
|
||||
|
@@ -59,8 +59,6 @@ import eu.toldi.infinityforlemmy.bottomsheetfragments.FABMoreOptionsBottomSheetF
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.PostLayoutBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.PostTypeBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.RandomBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.SearchPostSortTypeBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.SearchUserAndSubredditSortTypeBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.SortTimeBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.SortTypeBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.customtheme.CustomThemeWrapper;
|
||||
@@ -781,7 +779,7 @@ public class SearchResultActivity extends BaseActivity implements SortTypeSelect
|
||||
bundle.putString(PostFragment.EXTRA_QUERY, mQuery);
|
||||
bundle.putString(PostFragment.EXTRA_TRENDING_SOURCE, getIntent().getStringExtra(EXTRA_TRENDING_SOURCE));
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
mFragment.setArguments(bundle);
|
||||
return mFragment;
|
||||
}
|
||||
|
@@ -81,7 +81,7 @@ public class SettingsActivity extends BaseActivity implements
|
||||
|
||||
setSupportActionBar(binding.toolbarSettingsActivity);
|
||||
|
||||
mAccountName = mCurrentAccountSharedPreferences.getString(SharedPreferencesUtils.ACCOUNT_NAME, null);
|
||||
mAccountName = mCurrentAccountSharedPreferences.getString(SharedPreferencesUtils.ACCOUNT_QUALIFIED_NAME, null);
|
||||
|
||||
if (savedInstanceState == null) {
|
||||
getSupportFragmentManager()
|
||||
|
@@ -151,7 +151,7 @@ public class SubredditMultiselectionActivity extends BaseActivity implements Act
|
||||
if (subscribedSubredditData == null || subscribedSubredditData.size() == 0) {
|
||||
mRecyclerView.setVisibility(View.GONE);
|
||||
mLinearLayout.setVisibility(View.VISIBLE);
|
||||
mGlide.load(R.drawable.error_image).into(mImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mImageView);
|
||||
} else {
|
||||
mLinearLayout.setVisibility(View.GONE);
|
||||
mRecyclerView.setVisibility(View.VISIBLE);
|
||||
|
@@ -278,7 +278,7 @@ public class TrendingActivity extends BaseActivity {
|
||||
|
||||
private void showErrorView(int stringId) {
|
||||
errorLinearLayout.setVisibility(View.VISIBLE);
|
||||
mGlide.load(R.drawable.error_image).into(errorImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(errorImageView);
|
||||
errorTextView.setText(stringId);
|
||||
}
|
||||
|
||||
|
@@ -428,7 +428,7 @@ public class ViewMultiRedditDetailActivity extends BaseActivity implements SortT
|
||||
bundle.putString(PostFragment.EXTRA_NAME, multiPath);
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, mAccessToken == null ? PostPagingSource.TYPE_ANONYMOUS_MULTIREDDIT : PostPagingSource.TYPE_MULTI_REDDIT);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
mFragment.setArguments(bundle);
|
||||
getSupportFragmentManager().beginTransaction().replace(R.id.frame_layout_view_multi_reddit_detail_activity, mFragment).commit();
|
||||
}
|
||||
|
@@ -1751,7 +1751,7 @@ public class ViewSubredditDetailActivity extends BaseActivity implements SortTyp
|
||||
bundle.putString(PostFragment.EXTRA_NAME, qualifiedName);
|
||||
bundle.putInt(PostFragment.EXTRA_POST_TYPE, PostPagingSource.TYPE_SUBREDDIT);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
}
|
||||
|
@@ -1765,7 +1765,7 @@ public class ViewUserDetailActivity extends BaseActivity implements SortTypeSele
|
||||
bundle.putString(PostFragment.EXTRA_USER_NAME, qualifiedName);
|
||||
bundle.putString(PostFragment.EXTRA_USER_WHERE, PostPagingSource.USER_WHERE_SUBMITTED);
|
||||
bundle.putString(PostFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountName);
|
||||
bundle.putString(PostFragment.EXTRA_ACCOUNT_NAME, mAccountQualifiedName);
|
||||
fragment.setArguments(bundle);
|
||||
return fragment;
|
||||
}
|
||||
|
@@ -176,7 +176,7 @@ public class WikiActivity extends BaseActivity {
|
||||
return true;
|
||||
};
|
||||
markwon = MarkdownUtils.createFullRedditMarkwon(this,
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, onLinkLongClickListener, mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, mGlide, onLinkLongClickListener, mSharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
|
||||
markwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
LinearLayoutManagerBugFixed linearLayoutManager = new SwipeLockLinearLayoutManager(this, new SwipeLockInterface() {
|
||||
@@ -259,7 +259,7 @@ public class WikiActivity extends BaseActivity {
|
||||
swipeRefreshLayout.setRefreshing(false);
|
||||
mFetchWikiInfoLinearLayout.setVisibility(View.VISIBLE);
|
||||
mFetchWikiInfoTextView.setText(stringResId);
|
||||
mGlide.load(R.drawable.error_image).into(mFetchWikiInfoImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mFetchWikiInfoImageView);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -24,6 +24,7 @@ import androidx.recyclerview.widget.DiffUtil;
|
||||
import androidx.recyclerview.widget.ItemTouchHelper;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.google.android.material.button.MaterialButton;
|
||||
|
||||
import java.util.Locale;
|
||||
@@ -170,7 +171,7 @@ public class CommentsListingRecyclerViewAdapter extends PagedListAdapter<Comment
|
||||
return true;
|
||||
};
|
||||
mMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity,
|
||||
miscPlugin, mCommentColor, commentSpoilerBackgroundColor, onLinkLongClickListener, sharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
miscPlugin, mCommentColor, commentSpoilerBackgroundColor, Glide.with(mActivity.getApplication()), onLinkLongClickListener, sharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
recycledViewPool = new RecyclerView.RecycledViewPool();
|
||||
}
|
||||
|
||||
|
@@ -221,7 +221,7 @@ public class CommentsRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerVi
|
||||
return true;
|
||||
};
|
||||
mCommentMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity,
|
||||
miscPlugin, mCommentTextColor, commentSpoilerBackgroundColor, onLinkLongClickListener, sharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
miscPlugin, mCommentTextColor, commentSpoilerBackgroundColor, mGlide, onLinkLongClickListener, sharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
recycledViewPool = new RecyclerView.RecycledViewPool();
|
||||
mAccessToken = accessToken;
|
||||
mAccountQualifiedName = accountName;
|
||||
|
@@ -295,7 +295,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
|
||||
return true;
|
||||
};
|
||||
mPostDetailMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity,
|
||||
miscPlugin, markdownColor, postSpoilerBackgroundColor, onLinkLongClickListener, sharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
miscPlugin, markdownColor, postSpoilerBackgroundColor, mGlide, onLinkLongClickListener, sharedPreferences.getBoolean(SharedPreferencesUtils.DISABLE_IMAGE_PREVIEW, false));
|
||||
mMarkwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
|
||||
mSeparatePostAndComments = separatePostAndComments;
|
||||
@@ -677,7 +677,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
|
||||
((PostDetailBaseVideoAutoplayViewHolder) holder).previewImageView.setVisibility(View.VISIBLE);
|
||||
Post.Preview preview = getSuitablePreview(mPost.getPreviews());
|
||||
if (preview != null) {
|
||||
mGlide.load(preview.getPreviewUrl()).centerInside().downsample(mSaveMemoryCenterInsideDownsampleStrategy).into(new CustomTarget<Drawable>() {
|
||||
mGlide.load(preview.getPreviewUrl()).centerInside().thumbnail(0.1f).downsample(mSaveMemoryCenterInsideDownsampleStrategy).into(new CustomTarget<Drawable>() {
|
||||
@Override
|
||||
public void onResourceReady(@NonNull Drawable resource, @Nullable Transition<? super Drawable> transition) {
|
||||
int width = resource.getIntrinsicWidth();
|
||||
@@ -896,7 +896,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
|
||||
});
|
||||
|
||||
if (blurImage) {
|
||||
imageRequestBuilder.apply(RequestOptions.bitmapTransform(new BlurTransformation(50, 10))).into(new CustomTarget<Drawable>() {
|
||||
imageRequestBuilder.apply(RequestOptions.bitmapTransform(new BlurTransformation(50, 10))).thumbnail(0.1f).into(new CustomTarget<Drawable>() {
|
||||
@Override
|
||||
public void onResourceReady(@NonNull Drawable resource, @Nullable Transition<? super Drawable> transition) {
|
||||
int width = resource.getIntrinsicWidth();
|
||||
@@ -916,7 +916,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
|
||||
}
|
||||
});
|
||||
} else {
|
||||
imageRequestBuilder.centerInside().downsample(mSaveMemoryCenterInsideDownsampleStrategy).into(new CustomTarget<Drawable>() {
|
||||
imageRequestBuilder.centerInside().downsample(mSaveMemoryCenterInsideDownsampleStrategy).thumbnail(0.1f).into(new CustomTarget<Drawable>() {
|
||||
@Override
|
||||
public void onResourceReady(@NonNull Drawable resource, @Nullable Transition<? super Drawable> transition) {
|
||||
int width = resource.getIntrinsicWidth();
|
||||
|
@@ -18,17 +18,18 @@ import com.bumptech.glide.RequestBuilder;
|
||||
import com.bumptech.glide.RequestManager;
|
||||
import com.bumptech.glide.load.DataSource;
|
||||
import com.bumptech.glide.load.engine.GlideException;
|
||||
import com.bumptech.glide.load.resource.bitmap.DownsampleStrategy;
|
||||
import com.bumptech.glide.request.RequestListener;
|
||||
import com.bumptech.glide.request.RequestOptions;
|
||||
import com.bumptech.glide.request.target.Target;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import io.noties.markwon.Markwon;
|
||||
import jp.wasabeef.glide.transformations.BlurTransformation;
|
||||
import eu.toldi.infinityforlemmy.SaveMemoryCenterInisdeDownsampleStrategy;
|
||||
import eu.toldi.infinityforlemmy.databinding.ItemGalleryImageInPostFeedBinding;
|
||||
import eu.toldi.infinityforlemmy.post.Post;
|
||||
import io.noties.markwon.Markwon;
|
||||
import jp.wasabeef.glide.transformations.BlurTransformation;
|
||||
|
||||
public class PostGalleryTypeImageRecyclerViewAdapter extends RecyclerView.Adapter<PostGalleryTypeImageRecyclerViewAdapter.ImageViewHolder> {
|
||||
private RequestManager glide;
|
||||
@@ -128,7 +129,7 @@ public class PostGalleryTypeImageRecyclerViewAdapter extends RecyclerView.Adapte
|
||||
return;
|
||||
}
|
||||
|
||||
RequestBuilder<Drawable> imageRequestBuilder = glide.load(galleryImages.get(index).url).listener(new RequestListener<>() {
|
||||
RequestBuilder<Drawable> imageRequestBuilder = glide.load(galleryImages.get(index).url).override(1024).listener(new RequestListener<>() {
|
||||
@Override
|
||||
public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
|
||||
holder.binding.progressBarItemGalleryImageInPostFeed.setVisibility(View.GONE);
|
||||
@@ -144,10 +145,10 @@ public class PostGalleryTypeImageRecyclerViewAdapter extends RecyclerView.Adapte
|
||||
}
|
||||
});
|
||||
if (blurImage) {
|
||||
imageRequestBuilder.apply(RequestOptions.bitmapTransform(new BlurTransformation(50, 10)))
|
||||
imageRequestBuilder.apply(RequestOptions.bitmapTransform(new BlurTransformation(50, 10))).thumbnail(0.1f).downsample(DownsampleStrategy.CENTER_INSIDE).override(1024)
|
||||
.into(holder.binding.imageViewItemGalleryImageInPostFeed);
|
||||
} else {
|
||||
imageRequestBuilder.centerInside().downsample(saveMemoryCenterInisdeDownsampleStrategy).into(holder.binding.imageViewItemGalleryImageInPostFeed);
|
||||
imageRequestBuilder.centerInside().downsample(saveMemoryCenterInisdeDownsampleStrategy).override(1024).thumbnail(0.1f).downsample(DownsampleStrategy.CENTER_INSIDE).into(holder.binding.imageViewItemGalleryImageInPostFeed);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -12,6 +12,8 @@ import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import butterknife.BindView;
|
||||
@@ -84,7 +86,7 @@ public class RulesRecyclerViewAdapter extends RecyclerView.Adapter<RulesRecycler
|
||||
return true;
|
||||
};
|
||||
markwon = MarkdownUtils.createFullRedditMarkwon(activity,
|
||||
miscPlugin, mPrimaryTextColor, spoilerBackgroundColor, onLinkLongClickListener, mDisableImagePreview);
|
||||
miscPlugin, mPrimaryTextColor, spoilerBackgroundColor, Glide.with(activity.getApplication()), onLinkLongClickListener, mDisableImagePreview);
|
||||
}
|
||||
|
||||
@NonNull
|
||||
|
@@ -292,6 +292,9 @@ public class ParseComment {
|
||||
JSONObject postObj = jsonObject.getJSONObject("post");
|
||||
JSONObject communityObj = jsonObject.getJSONObject("community");
|
||||
JSONObject countsObj = jsonObject.getJSONObject("counts");
|
||||
boolean isModerator = jsonObject.optBoolean("creator_is_moderator");
|
||||
boolean isAdmin = jsonObject.optBoolean("creator_is_admin");
|
||||
|
||||
|
||||
int id = commentObj.getInt("id");
|
||||
int postID = postObj.getInt("id");
|
||||
@@ -342,7 +345,7 @@ public class ParseComment {
|
||||
}
|
||||
}
|
||||
boolean isSubmitter = creatorObj.getInt("id") == postObj.getInt("creator_id");
|
||||
String distinguished = commentObj.getString("distinguished");
|
||||
String distinguished = isModerator ? "moderator" : (isAdmin ? "admin" : "");
|
||||
String permalink = commentObj.getString("ap_id");
|
||||
String[] path = commentObj.getString("path").split(Pattern.quote("."));
|
||||
|
||||
|
@@ -137,7 +137,7 @@ public class BlockedCommunitiesListingFragment extends Fragment implements Fragm
|
||||
if (subscribedSubredditData == null || subscribedSubredditData.size() == 0) {
|
||||
mRecyclerView.setVisibility(View.GONE);
|
||||
mLinearLayout.setVisibility(View.VISIBLE);
|
||||
mGlide.load(R.drawable.error_image).into(mImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mImageView);
|
||||
} else {
|
||||
mLinearLayout.setVisibility(View.GONE);
|
||||
mRecyclerView.setVisibility(View.VISIBLE);
|
||||
|
@@ -122,7 +122,7 @@ public class BlockedInstancesListingFragment extends Fragment implements Fragmen
|
||||
if (blockedInstanceData == null || blockedInstanceData.size() == 0) {
|
||||
mRecyclerView.setVisibility(View.GONE);
|
||||
mLinearLayout.setVisibility(View.VISIBLE);
|
||||
mGlide.load(R.drawable.error_image).into(mImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mImageView);
|
||||
mErrorTextView.setText(R.string.no_blocked_instances);
|
||||
} else {
|
||||
mLinearLayout.setVisibility(View.GONE);
|
||||
|
@@ -122,7 +122,7 @@ public class BlockedUsersListingFragment extends Fragment implements FragmentCom
|
||||
if (subscribedUserData == null || subscribedUserData.size() == 0) {
|
||||
mRecyclerView.setVisibility(View.GONE);
|
||||
mLinearLayout.setVisibility(View.VISIBLE);
|
||||
mGlide.load(R.drawable.error_image).into(mImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mImageView);
|
||||
} else {
|
||||
mLinearLayout.setVisibility(View.GONE);
|
||||
mRecyclerView.setVisibility(View.VISIBLE);
|
||||
|
@@ -382,7 +382,7 @@ public class CommentsListingFragment extends Fragment implements FragmentCommuni
|
||||
mSwipeRefreshLayout.setRefreshing(false);
|
||||
mFetchCommentInfoLinearLayout.setVisibility(View.VISIBLE);
|
||||
mFetchCommentInfoTextView.setText(stringResId);
|
||||
mGlide.load(R.drawable.error_image).into(mFetchCommentInfoImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mFetchCommentInfoImageView);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -29,7 +29,6 @@ import javax.inject.Named;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import me.zhanghai.android.fastscroll.FastScrollerBuilder;
|
||||
import eu.toldi.infinityforlemmy.FragmentCommunicator;
|
||||
import eu.toldi.infinityforlemmy.Infinity;
|
||||
import eu.toldi.infinityforlemmy.R;
|
||||
@@ -41,6 +40,7 @@ import eu.toldi.infinityforlemmy.customtheme.CustomThemeWrapper;
|
||||
import eu.toldi.infinityforlemmy.customviews.LinearLayoutManagerBugFixed;
|
||||
import eu.toldi.infinityforlemmy.subscribeduser.SubscribedUserViewModel;
|
||||
import eu.toldi.infinityforlemmy.utils.SharedPreferencesUtils;
|
||||
import me.zhanghai.android.fastscroll.FastScrollerBuilder;
|
||||
import retrofit2.Retrofit;
|
||||
|
||||
|
||||
@@ -128,7 +128,7 @@ public class FollowedUsersListingFragment extends Fragment implements FragmentCo
|
||||
if (subscribedUserData == null || subscribedUserData.size() == 0) {
|
||||
mRecyclerView.setVisibility(View.GONE);
|
||||
mLinearLayout.setVisibility(View.VISIBLE);
|
||||
mGlide.load(R.drawable.error_image).into(mImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mImageView);
|
||||
} else {
|
||||
mLinearLayout.setVisibility(View.GONE);
|
||||
mRecyclerView.setVisibility(View.VISIBLE);
|
||||
|
@@ -171,7 +171,7 @@ public class InboxFragment extends Fragment implements FragmentCommunicator {
|
||||
mSwipeRefreshLayout.setRefreshing(false);
|
||||
mFetchMessageInfoLinearLayout.setVisibility(View.VISIBLE);
|
||||
mFetchMessageInfoTextView.setText(stringResId);
|
||||
mGlide.load(R.drawable.error_image).into(mFetchMessageInfoImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mFetchMessageInfoImageView);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -164,7 +164,7 @@ public class MultiRedditListingFragment extends Fragment implements FragmentComm
|
||||
if (subscribedUserData == null || subscribedUserData.size() == 0) {
|
||||
mRecyclerView.setVisibility(View.GONE);
|
||||
mErrorLinearLayout.setVisibility(View.VISIBLE);
|
||||
mGlide.load(R.drawable.error_image).into(mErrorImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mErrorImageView);
|
||||
} else {
|
||||
mErrorLinearLayout.setVisibility(View.GONE);
|
||||
mRecyclerView.setVisibility(View.VISIBLE);
|
||||
|
@@ -1354,12 +1354,8 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
|
||||
}
|
||||
|
||||
mFetchPostInfoLinearLayout.setOnClickListener(null);
|
||||
if (accessToken != null) {
|
||||
showErrorView(R.string.no_posts);
|
||||
} else {
|
||||
showErrorView(R.string.anonymous_homepage_not_implemented);
|
||||
}
|
||||
|
||||
showErrorView(R.string.no_posts);
|
||||
}
|
||||
|
||||
public void changeSortType(SortType sortType) {
|
||||
@@ -1503,7 +1499,7 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
|
||||
mSwipeRefreshLayout.setRefreshing(false);
|
||||
mFetchPostInfoLinearLayout.setVisibility(View.VISIBLE);
|
||||
mFetchPostInfoTextView.setText(stringResId);
|
||||
mGlide.load(R.drawable.error_image).into(mFetchPostInfoImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mFetchPostInfoImageView);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -162,7 +162,7 @@ public class PrivateMessageFragment extends Fragment implements FragmentCommunic
|
||||
mSwipeRefreshLayout.setRefreshing(false);
|
||||
mFetchMessageInfoLinearLayout.setVisibility(View.VISIBLE);
|
||||
mFetchMessageInfoTextView.setText(stringResId);
|
||||
mGlide.load(R.drawable.error_image).into(mFetchMessageInfoImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mFetchMessageInfoImageView);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -21,6 +21,7 @@ import androidx.lifecycle.ViewModelProvider;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
|
||||
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.evernote.android.state.State;
|
||||
import com.google.android.material.card.MaterialCardView;
|
||||
|
||||
@@ -232,7 +233,7 @@ public class SidebarFragment extends Fragment {
|
||||
return true;
|
||||
};
|
||||
markwon = MarkdownUtils.createFullRedditMarkwon(activity,
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, onLinkLongClickListener, mDisableImagePreview);
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, Glide.with(activity.getApplication()), onLinkLongClickListener, mDisableImagePreview);
|
||||
markwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
|
||||
linearLayoutManager = new LinearLayoutManagerBugFixed(activity);
|
||||
|
@@ -234,7 +234,7 @@ public class SubredditListingFragment extends Fragment implements FragmentCommun
|
||||
mSwipeRefreshLayout.setRefreshing(false);
|
||||
mFetchSubredditListingInfoLinearLayout.setVisibility(View.VISIBLE);
|
||||
mFetchSubredditListingInfoTextView.setText(stringResId);
|
||||
Glide.with(this).load(R.drawable.error_image).into(mFetchSubredditListingInfoImageView);
|
||||
Glide.with(this).load(R.mipmap.ic_launcher_round).into(mFetchSubredditListingInfoImageView);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -144,7 +144,7 @@ public class SubscribedSubredditsListingFragment extends Fragment implements Fra
|
||||
if (subscribedSubredditData == null || subscribedSubredditData.size() == 0) {
|
||||
mRecyclerView.setVisibility(View.GONE);
|
||||
mLinearLayout.setVisibility(View.VISIBLE);
|
||||
mGlide.load(R.drawable.error_image).into(mImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mImageView);
|
||||
} else {
|
||||
mLinearLayout.setVisibility(View.GONE);
|
||||
mRecyclerView.setVisibility(View.VISIBLE);
|
||||
|
@@ -237,7 +237,7 @@ public class UserListingFragment extends Fragment implements FragmentCommunicato
|
||||
mSwipeRefreshLayout.setRefreshing(false);
|
||||
mFetchUserListingInfoLinearLayout.setVisibility(View.VISIBLE);
|
||||
mFetchUserListingInfoTextView.setText(stringResId);
|
||||
Glide.with(this).load(R.drawable.error_image).into(mFetchUserListingInfoImageView);
|
||||
Glide.with(this).load(R.mipmap.ic_launcher_round).into(mFetchUserListingInfoImageView);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -1595,7 +1595,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
|
||||
mFetchPostInfoLinearLayout.setVisibility(View.VISIBLE);
|
||||
mFetchPostInfoLinearLayout.setOnClickListener(view -> fetchPostAndCommentsById(subredditId));
|
||||
mFetchPostInfoTextView.setText(R.string.load_post_error);
|
||||
mGlide.load(R.drawable.error_image).into(mFetchPostInfoImageView);
|
||||
mGlide.load(R.mipmap.ic_launcher_round).into(mFetchPostInfoImageView);
|
||||
}
|
||||
|
||||
private void showMessage(int resId) {
|
||||
|
@@ -7,6 +7,8 @@ import android.text.util.Linkify;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import com.bumptech.glide.RequestManager;
|
||||
|
||||
import org.commonmark.ext.gfm.tables.TableBlock;
|
||||
|
||||
import java.util.regex.Pattern;
|
||||
@@ -37,7 +39,7 @@ public class MarkdownUtils {
|
||||
public static Markwon createFullRedditMarkwon(@NonNull Activity context,
|
||||
@NonNull MarkwonPlugin miscPlugin,
|
||||
int markdownColor,
|
||||
int spoilerBackgroundColor,
|
||||
int spoilerBackgroundColor, RequestManager mGlide,
|
||||
@Nullable BetterLinkMovementMethod.OnLinkLongClickListener onLinkLongClickListener, boolean dataSaverEnabled) {
|
||||
Markwon result;
|
||||
if (dataSaverEnabled) {
|
||||
@@ -58,7 +60,7 @@ public class MarkdownUtils {
|
||||
.build();
|
||||
} else {
|
||||
result = Markwon.builder(context)
|
||||
.usePlugin(GlideImagesPlugin.create(context.getApplicationContext()))
|
||||
.usePlugin(GlideImagesPlugin.create(new GlideMarkdownLoader(mGlide)))
|
||||
.usePlugin(MarkwonInlineParserPlugin.create(plugin -> {
|
||||
plugin.excludeInlineProcessor(HtmlInlineProcessor.class);
|
||||
}))
|
||||
|
@@ -142,6 +142,8 @@ public class ParsePost {
|
||||
JSONObject creator = data.getJSONObject("creator");
|
||||
JSONObject community = data.getJSONObject("community");
|
||||
JSONObject counts = data.getJSONObject("counts");
|
||||
boolean isModerator = data.getBoolean("creator_is_moderator");
|
||||
boolean isAdmin = creator.optBoolean("admin") || data.optBoolean("creator_is_admin");
|
||||
|
||||
int id = post.getInt("id");
|
||||
String fullName = post.getString("name");
|
||||
@@ -182,7 +184,7 @@ public class ParsePost {
|
||||
boolean locked = post.getBoolean("locked");
|
||||
boolean saved = data.getBoolean("saved");
|
||||
boolean deleted = post.getBoolean("deleted");
|
||||
String distinguished = creator.optBoolean("admin") ? "admin" : "";
|
||||
String distinguished = (isModerator) ? "moderator" : (isAdmin) ? "admin" : "";
|
||||
String suggestedSort = "";
|
||||
ArrayList<Post.Preview> previews = new ArrayList<>();
|
||||
if (!post.isNull("thumbnail_url")) {
|
||||
@@ -642,6 +644,19 @@ public class ParsePost {
|
||||
return post;
|
||||
}
|
||||
|
||||
private boolean isModerator(JSONArray moderators, String username) {
|
||||
for (int i = 0; i < moderators.length(); i++) {
|
||||
try {
|
||||
if (moderators.getJSONObject(i).getString("name").equals(username)) {
|
||||
return true;
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public interface ParsePostsListingListener {
|
||||
void onParsePostsListingSuccess(LinkedHashSet<Post> newPostData, String lastItem);
|
||||
void onParsePostsListingFail();
|
||||
|
@@ -178,9 +178,10 @@ public class PostViewModel extends ViewModel {
|
||||
postPagingData -> PagingDataTransforms.filter(
|
||||
postPagingData, executor,
|
||||
post -> !post.isRead() || !currentlyReadPostIdsLiveData.getValue()))), ViewModelKt.getViewModelScope(this));
|
||||
|
||||
boolean dontHideSaved = postHistorySharedPreferences != null && postHistorySharedPreferences.getBoolean((accountName == null ? "" : accountName) + SharedPreferencesUtils.DONT_HIDE_SAVED_READ_POSTS, false) && userWhere.equals(PostPagingSource.USER_WHERE_SAVED);
|
||||
boolean dontHideOwn = postHistorySharedPreferences != null && postHistorySharedPreferences.getBoolean((accountName == null ? "" : accountName) + SharedPreferencesUtils.DONT_HIDE_OWN_READ_POSTS, false) && name.equals(accountName);
|
||||
currentlyReadPostIdsLiveData.setValue(postHistorySharedPreferences != null
|
||||
&& postHistorySharedPreferences.getBoolean((accountName == null ? "" : accountName) + SharedPreferencesUtils.HIDE_READ_POSTS_AUTOMATICALLY_BASE, false) && !userWhere.equals(PostPagingSource.USER_WHERE_SAVED));
|
||||
&& postHistorySharedPreferences.getBoolean((accountName == null ? "" : accountName) + SharedPreferencesUtils.HIDE_READ_POSTS_AUTOMATICALLY_BASE, false) && !dontHideSaved && !dontHideOwn);
|
||||
}
|
||||
|
||||
public PostViewModel(Executor executor, RetrofitHolder retrofit, String accessToken, String accountName,
|
||||
|
@@ -56,6 +56,18 @@ public class PostHistoryFragment extends Fragment {
|
||||
TextView hideReadPostsAutomaticallyTextView;
|
||||
@BindView(R.id.hide_read_posts_automatically_switch_post_history_fragment)
|
||||
MaterialSwitch hideReadPostsAutomaticallySwitch;
|
||||
@BindView(R.id.dont_hide_saved_read_posts_automatically_linear_layout_post_history_fragment)
|
||||
LinearLayout dontHideSavedReadPostsAutomaticallyLinearLayout;
|
||||
@BindView(R.id.dont_hide_saved_read_posts_automatically_text_view_post_history_fragment)
|
||||
TextView dontHideSavedReadPostsAutomaticallyTextView;
|
||||
@BindView(R.id.dont_hide_saved_read_posts_automatically_switch_post_history_fragment)
|
||||
MaterialSwitch dontHideSavedReadPostsAutomaticallySwitch;
|
||||
@BindView(R.id.dont_hide_own_read_posts_automatically_linear_layout_post_history_fragment)
|
||||
LinearLayout dontHideOwnReadPostsAutomaticallyLinearLayout;
|
||||
@BindView(R.id.dont_hide_own_read_posts_automatically_text_view_post_history_fragment)
|
||||
TextView dontHideOwnReadPostsAutomaticallyTextView;
|
||||
@BindView(R.id.dont_hide_own_read_posts_automatically_switch_post_history_fragment)
|
||||
MaterialSwitch dontHideOwnReadPostsAutomaticallySwitch;
|
||||
@Inject
|
||||
@Named("post_history")
|
||||
SharedPreferences postHistorySharedPreferences;
|
||||
@@ -100,6 +112,18 @@ public class PostHistoryFragment extends Fragment {
|
||||
accountName + SharedPreferencesUtils.MARK_POSTS_AS_READ_ON_SCROLL_BASE, false));
|
||||
hideReadPostsAutomaticallySwitch.setChecked(postHistorySharedPreferences.getBoolean(
|
||||
accountName + SharedPreferencesUtils.HIDE_READ_POSTS_AUTOMATICALLY_BASE, false));
|
||||
dontHideSavedReadPostsAutomaticallySwitch.setChecked(postHistorySharedPreferences.getBoolean(
|
||||
accountName + SharedPreferencesUtils.DONT_HIDE_SAVED_READ_POSTS, false));
|
||||
dontHideOwnReadPostsAutomaticallySwitch.setChecked(postHistorySharedPreferences.getBoolean(
|
||||
accountName + SharedPreferencesUtils.DONT_HIDE_OWN_READ_POSTS, false));
|
||||
|
||||
if (hideReadPostsAutomaticallySwitch.isChecked()) {
|
||||
dontHideSavedReadPostsAutomaticallyLinearLayout.setVisibility(View.VISIBLE);
|
||||
dontHideOwnReadPostsAutomaticallyLinearLayout.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
dontHideSavedReadPostsAutomaticallyLinearLayout.setVisibility(View.GONE);
|
||||
dontHideOwnReadPostsAutomaticallyLinearLayout.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
markPostsAsReadLinearLayout.setOnClickListener(view -> {
|
||||
markPostsAsReadSwitch.performClick();
|
||||
@@ -119,7 +143,24 @@ public class PostHistoryFragment extends Fragment {
|
||||
|
||||
hideReadPostsAutomaticallyLinearLayout.setOnClickListener(view -> hideReadPostsAutomaticallySwitch.performClick());
|
||||
|
||||
hideReadPostsAutomaticallySwitch.setOnCheckedChangeListener((compoundButton, b) -> postHistorySharedPreferences.edit().putBoolean(accountName + SharedPreferencesUtils.HIDE_READ_POSTS_AUTOMATICALLY_BASE, b).apply());
|
||||
hideReadPostsAutomaticallySwitch.setOnCheckedChangeListener((compoundButton, b) -> {
|
||||
postHistorySharedPreferences.edit().putBoolean(accountName + SharedPreferencesUtils.HIDE_READ_POSTS_AUTOMATICALLY_BASE, b).apply();
|
||||
if (b) {
|
||||
dontHideSavedReadPostsAutomaticallyLinearLayout.setVisibility(View.VISIBLE);
|
||||
dontHideOwnReadPostsAutomaticallyLinearLayout.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
dontHideSavedReadPostsAutomaticallyLinearLayout.setVisibility(View.GONE);
|
||||
dontHideOwnReadPostsAutomaticallyLinearLayout.setVisibility(View.GONE);
|
||||
}
|
||||
});
|
||||
|
||||
dontHideSavedReadPostsAutomaticallyLinearLayout.setOnClickListener(view -> dontHideSavedReadPostsAutomaticallySwitch.performClick());
|
||||
|
||||
dontHideSavedReadPostsAutomaticallySwitch.setOnCheckedChangeListener((compoundButton, b) -> postHistorySharedPreferences.edit().putBoolean(accountName + SharedPreferencesUtils.DONT_HIDE_SAVED_READ_POSTS, b).apply());
|
||||
|
||||
dontHideOwnReadPostsAutomaticallyLinearLayout.setOnClickListener(view -> dontHideOwnReadPostsAutomaticallySwitch.performClick());
|
||||
|
||||
dontHideOwnReadPostsAutomaticallySwitch.setOnCheckedChangeListener((compoundButton, b) -> postHistorySharedPreferences.edit().putBoolean(accountName + SharedPreferencesUtils.DONT_HIDE_OWN_READ_POSTS, b).apply());
|
||||
|
||||
return rootView;
|
||||
}
|
||||
@@ -133,6 +174,8 @@ public class PostHistoryFragment extends Fragment {
|
||||
markPostsAsReadAfterVotingTextView.setTextColor(primaryTextColor);
|
||||
markPostsAsReadOnScrollTextView.setTextColor(primaryTextColor);
|
||||
hideReadPostsAutomaticallyTextView.setTextColor(primaryTextColor);
|
||||
dontHideSavedReadPostsAutomaticallyTextView.setTextColor(primaryTextColor);
|
||||
dontHideOwnReadPostsAutomaticallyTextView.setTextColor(primaryTextColor);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -358,6 +358,8 @@ public class SharedPreferencesUtils {
|
||||
public static final String MARK_POSTS_AS_READ_AFTER_VOTING_BASE = "_mark_posts_as_read_after_voting";
|
||||
public static final String MARK_POSTS_AS_READ_ON_SCROLL_BASE = "_mark_posts_as_read_on_scroll";
|
||||
public static final String HIDE_READ_POSTS_AUTOMATICALLY_BASE = "_hide_read_posts_automatically";
|
||||
public static final String DONT_HIDE_SAVED_READ_POSTS = "dont_hide_saved_posts";
|
||||
public static final String DONT_HIDE_OWN_READ_POSTS = "dont_hide_own_posts";
|
||||
|
||||
public static final String CURRENT_ACCOUNT_SHARED_PREFERENCES_FILE = "eu.toldi.infinityforlemmy.current_account";
|
||||
public static final String ACCOUNT_NAME = "account_name";
|
||||
|
@@ -0,0 +1,20 @@
|
||||
package eu.toldi.infinityforlemmy.markdown
|
||||
|
||||
import android.graphics.drawable.Drawable
|
||||
import com.bumptech.glide.RequestBuilder
|
||||
import com.bumptech.glide.RequestManager
|
||||
import com.bumptech.glide.load.resource.bitmap.DownsampleStrategy
|
||||
import com.bumptech.glide.request.target.Target
|
||||
import io.noties.markwon.image.AsyncDrawable
|
||||
import io.noties.markwon.image.glide.GlideImagesPlugin.GlideStore
|
||||
|
||||
class GlideMarkdownLoader(val requestManager: RequestManager) : GlideStore {
|
||||
override fun load(drawable: AsyncDrawable): RequestBuilder<Drawable> {
|
||||
return requestManager.load(drawable.destination).override(2048)
|
||||
.downsample(DownsampleStrategy.CENTER_INSIDE)
|
||||
}
|
||||
|
||||
override fun cancel(target: Target<*>) {
|
||||
requestManager.clear(target);
|
||||
}
|
||||
}
|
@@ -3,7 +3,6 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
tools:context=".settings.PostHistoryFragment">
|
||||
|
||||
<LinearLayout
|
||||
@@ -156,6 +155,70 @@
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/dont_hide_saved_read_posts_automatically_linear_layout_post_history_fragment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="4dp"
|
||||
android:paddingBottom="4dp"
|
||||
android:paddingStart="72dp"
|
||||
android:paddingEnd="16dp"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:background="?attr/selectableItemBackground">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dont_hide_saved_read_posts_automatically_text_view_post_history_fragment"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:text="@string/settings_dont_hide_saved_read_posts_automatically"
|
||||
android:textColor="?attr/primaryTextColor"
|
||||
android:textSize="?attr/font_16"
|
||||
android:fontFamily="?attr/font_family" />
|
||||
|
||||
<com.google.android.material.materialswitch.MaterialSwitch
|
||||
android:id="@+id/dont_hide_saved_read_posts_automatically_switch_post_history_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/dont_hide_own_read_posts_automatically_linear_layout_post_history_fragment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="4dp"
|
||||
android:paddingBottom="4dp"
|
||||
android:paddingStart="72dp"
|
||||
android:paddingEnd="16dp"
|
||||
android:clickable="true"
|
||||
android:focusable="true"
|
||||
android:background="?attr/selectableItemBackground">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/dont_hide_own_read_posts_automatically_text_view_post_history_fragment"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_weight="1"
|
||||
android:layout_marginEnd="16dp"
|
||||
android:layout_gravity="center_vertical"
|
||||
android:text="@string/settings_dont_hide_your_own_read_posts_automatically"
|
||||
android:textColor="?attr/primaryTextColor"
|
||||
android:textSize="?attr/font_16"
|
||||
android:fontFamily="?attr/font_family" />
|
||||
|
||||
<com.google.android.material.materialswitch.MaterialSwitch
|
||||
android:id="@+id/dont_hide_own_read_posts_automatically_switch_post_history_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center_vertical" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</androidx.core.widget.NestedScrollView>
|
@@ -1179,7 +1179,6 @@
|
||||
<string name="history_activity_label">Historie</string>
|
||||
<string name="action_open_external_browser">Otevřít v prohlížeči</string>
|
||||
<string name="action_more_options">Další možnosti</string>
|
||||
<string name="anonymous_homepage_not_implemented">Anonymní domovská stránka zatím není implementována</string>
|
||||
<string name="history">Historie</string>
|
||||
<string name="block_user">Zablokovat uživatele</string>
|
||||
<string name="settings_show_display_name_instead_of_user_name">Skrýt zobrazovaná jména komunity a uživatelů</string>
|
||||
@@ -1354,4 +1353,10 @@
|
||||
<string name="sort_most_comments">Nejvíce komentářů</string>
|
||||
<string name="no_blocked_instances">Žádné blokované instance</string>
|
||||
<string name="instances">Instance</string>
|
||||
<string name="view_instance">Zobrazit instanci</string>
|
||||
<string name="action_block_instance">Zablokovat instanci</string>
|
||||
<string name="action_unblock_instance">Odblokovat instanci</string>
|
||||
<string name="block_instance_failed">Nepodařilo se zablokovat instanci</string>
|
||||
<string name="block_instance_success">Instance zablokována!</string>
|
||||
<string name="unblock_instance_success">Instance odblokována!</string>
|
||||
</resources>
|
@@ -1227,7 +1227,6 @@
|
||||
<string name="comment_karma">Kommentarkarma:</string>
|
||||
<string name="awarder_karma">Auszeichnungskarma:</string>
|
||||
<string name="awardee_karma">Ausgezeichnetenkarma:</string>
|
||||
<string name="anonymous_homepage_not_implemented">Anonyme Homepage ist noch nicht implementiert</string>
|
||||
<string name="action_create_github_issue">Codeberg Issue erstellen</string>
|
||||
<string name="action_more_options">Erweiterte Optionen</string>
|
||||
<string name="invalid_response">Ungültige Antwort vom Server erhalten</string>
|
||||
|
@@ -1206,7 +1206,6 @@
|
||||
<string name="search_communities_error">Σφάλμα αναζήτησης κοινοτήτων.
|
||||
\nΠάτα για επανάληψη.</string>
|
||||
<string name="no_communities">Δε βρέθηκαν κοινότητες</string>
|
||||
<string name="anonymous_homepage_not_implemented">Η ανώνυμη αρχική δεν έχει υλοποιηθεί ακόμα</string>
|
||||
<string name="active_users_number_detail">%1$,d Ενεργοί Χρήστες</string>
|
||||
<string name="comment_count_detail">%1$,d Σχόλια</string>
|
||||
<string name="user_number_detail">%1$,d Χρήστες</string>
|
||||
|
@@ -1178,7 +1178,6 @@ https://s3.eu-west-1.amazonaws.com/po-pub/i/hJAe7sMhrfJzqjhp9VkDQOVC.PNG -->
|
||||
<string name="settings_custom_content_font_family_title">Fuente Personalizada para el Contenido</string>
|
||||
<string name="post_poll_activity_label">Publicar Encuesta</string>
|
||||
<string name="action_create_github_issue">Abrir conflicto en Codeberg</string>
|
||||
<string name="anonymous_homepage_not_implemented">Pantalla de Inicio Anónima aún no ha sido implementada</string>
|
||||
<string name="invalid_response">Respuesta invalida del servidor</string>
|
||||
<string name="invalid_username_or_password">Usuario o Contraseña invalido</string>
|
||||
<string name="voting_length">Tiempo de votación: %1$d dias</string>
|
||||
|
@@ -429,7 +429,6 @@
|
||||
<string name="action_contact_mods">Ota yhteys modeihin</string>
|
||||
<string name="primary_text_preview">Ensisijainen teksti</string>
|
||||
<string name="theme_item_is_light_theme">Aseta vaaleaksi teemaksi</string>
|
||||
<string name="anonymous_homepage_not_implemented">Anonyymia kotisivua ei ole vielä toteutettu</string>
|
||||
<string name="load_post_error">Virhe ladatessa tätä viestiä.
|
||||
\nNapauta yrittääksesi uudelleen.</string>
|
||||
<string name="message_subject_required">Viestillä tulee olla aihe</string>
|
||||
|
@@ -1138,7 +1138,6 @@ https://s3.eu-west-1.amazonaws.com/po-pub/i/dFZKKms9HbrDGOlcgW9QTcwF.jpg -->
|
||||
<string name="action_playback_speed">Vitesse de lecture</string>
|
||||
<string name="action_contact_mods">Contacter les modérateurs</string>
|
||||
<string name="action_more_options">Plus d’options</string>
|
||||
<string name="anonymous_homepage_not_implemented">La page d\'accueil anonyme n\'est pas encore disponible</string>
|
||||
<string name="history">Historique</string>
|
||||
<string name="invalid_response">Réponse invalide du serveur</string>
|
||||
<string name="two_options_required">Un bon sondage a besoin de deux options ou plus !</string>
|
||||
|
@@ -985,7 +985,6 @@
|
||||
<string name="action_share_post_link">Poszt link megosztása</string>
|
||||
<string name="action_playback_speed">Lejátszási sebesség</string>
|
||||
<string name="action_more_options">További műveletek</string>
|
||||
<string name="anonymous_homepage_not_implemented">Az Anonymous főoldal még nincs implementálva</string>
|
||||
<string name="history">Előzmények</string>
|
||||
<string name="inbox_with_count">Bejövő üzenetek (%1$,d)</string>
|
||||
<string name="trending">Felkapott</string>
|
||||
|
@@ -1150,7 +1150,6 @@
|
||||
<string name="settings_fixed_height_preview_in_card_title">Altezza della card fissa</string>
|
||||
<string name="settings_hide_text_post_content">Nascondi contenuto dei post di testo</string>
|
||||
<string name="settings_hide_comment_awards_title">Nascondi premi dei commenti</string>
|
||||
<string name="anonymous_homepage_not_implemented">La pagina principale per gli utenti anonimi non è ancora stata implementata</string>
|
||||
<string name="two_options_required">Un sondaggio richiede almeno due o più opzioni!</string>
|
||||
<string name="no_activity_found_for_external_browser">Non ci sono app che possono gestire l\'azione di apertura in app esterna</string>
|
||||
<string name="settings_backup_settings_summary">La password del file di backup è \"123321\".</string>
|
||||
|
@@ -1044,7 +1044,6 @@ not: "5 uren" -->
|
||||
<string name="action_playback_speed">Afspeelsnelheid</string>
|
||||
<string name="action_contact_mods">Contacteer moderators</string>
|
||||
<string name="action_more_options">Meer Opties</string>
|
||||
<string name="anonymous_homepage_not_implemented">Anonieme homepagina is nog niet geïmplementeerd</string>
|
||||
<string name="invalid_response">Ongeldig antwoord van server ontvangen</string>
|
||||
<string name="voting_length">Tijd om te stemmen: %1$d days</string>
|
||||
<string name="two_options_required">Een goede peiling heeft twee of meer opties!</string>
|
||||
|
@@ -1138,7 +1138,6 @@
|
||||
<string name="invalid_response">Nieprawidłowa odpowiedź serwera</string>
|
||||
<string name="user_number_detail">%1$,d użytkowników</string>
|
||||
<string name="settings_save_nsfw_media_in_different_folder_title">Zapisuj treści NSFW w innej lokacji</string>
|
||||
<string name="anonymous_homepage_not_implemented">Anonimowe strony główne nie są jeszcze zaimplementowane</string>
|
||||
<string name="settings_enable_material_you_warning_summary">Upewnij się, że żaden z motywów nie jest nazwany
|
||||
\n\"Material You\",
|
||||
\n\"Material You Dark\" lub
|
||||
|
@@ -1246,7 +1246,6 @@
|
||||
<string name="action_block_user">Bloquear usuário</string>
|
||||
<string name="action_create_github_issue">Reportar problema no Codeberg</string>
|
||||
<string name="action_more_options">Mais opções</string>
|
||||
<string name="anonymous_homepage_not_implemented">A página inicial anônima ainda não foi implementada</string>
|
||||
<string name="history">História</string>
|
||||
<string name="invalid_response">Resposta inválida do servidor</string>
|
||||
<string name="invalid_username_or_password">Nome de usuário ou senha inválidos</string>
|
||||
|
@@ -1081,7 +1081,6 @@
|
||||
<string name="history_activity_label">História</string>
|
||||
<string name="action_block_user">Bloquear o utilizador</string>
|
||||
<string name="action_playback_speed">Velocidade de reprodução</string>
|
||||
<string name="anonymous_homepage_not_implemented">Página inicial anónima ainda não está implementada</string>
|
||||
<string name="action_open_external_browser">Abrir no navegador</string>
|
||||
<string name="invalid_response">Resposta inválida do servidor</string>
|
||||
<string name="action_contact_mods">Contactar Moderadores</string>
|
||||
|
@@ -1271,7 +1271,6 @@
|
||||
<string name="block_community_success">Comunitate blocată!</string>
|
||||
<string name="separate_down_and_up_votes">Voturi separate pentru Jos și Sus</string>
|
||||
<string name="history">Istoric</string>
|
||||
<string name="anonymous_homepage_not_implemented">Pagina anonimă de acasă nu este încă implementată</string>
|
||||
<string name="share_links_on_your_local_instance">Partajați link-uri pe instanța dvs. locală</string>
|
||||
<string name="error_unsupported_video">Media include piste video, dar niciuna nu pot fi redată de acest dispozitiv</string>
|
||||
<string name="settings_show_display_name_instead_of_user_name">Afișați comunitate și numele afișat de utilizator</string>
|
||||
|
@@ -1195,7 +1195,6 @@
|
||||
<string name="history_activity_label">История</string>
|
||||
<string name="action_block_user">Заблокировать пользователя</string>
|
||||
<string name="action_more_options">Больше настроек</string>
|
||||
<string name="anonymous_homepage_not_implemented">Анонимная домашняя страница пока не реализована</string>
|
||||
<string name="history">История</string>
|
||||
<string name="invalid_response">Неправильный ответ от сервера</string>
|
||||
<string name="invalid_username_or_password">Неправильный логин или пароль</string>
|
||||
|
@@ -1204,7 +1204,6 @@
|
||||
<string name="action_create_github_issue">Створити задачу на Codeberg</string>
|
||||
<string name="action_more_options">Більше налаштувань</string>
|
||||
<string name="history">Історія</string>
|
||||
<string name="anonymous_homepage_not_implemented">Анонімну домашню сторінку ще не реалізовано</string>
|
||||
<string name="user_username">Ім\'я користувача або email</string>
|
||||
<string name="upload_image">Завантажити зображення</string>
|
||||
<string name="settings_hide_community_and_user_instance">Ховати спільноту і сервер користувача</string>
|
||||
@@ -1351,4 +1350,9 @@
|
||||
<string name="instances">Сервери</string>
|
||||
<string name="no_blocked_instances">Немає заблокованих серверів</string>
|
||||
<string name="view_instance">Перегляд сервера</string>
|
||||
<string name="block_instance_failed">Не вдалося заблокувати сервер</string>
|
||||
<string name="block_instance_success">Сервер заблоковано!</string>
|
||||
<string name="unblock_instance_success">Сервер розблоковано!</string>
|
||||
<string name="action_block_instance">Заблокувати сервер</string>
|
||||
<string name="action_unblock_instance">Розблокувати сервер</string>
|
||||
</resources>
|
@@ -1244,7 +1244,6 @@
|
||||
<string name="invalid_username_or_password">用户名或密码错误</string>
|
||||
<string name="active_users_number_detail">%1$,d 位活跃用户</string>
|
||||
<string name="post_count_detail">%1$,d 个帖子</string>
|
||||
<string name="anonymous_homepage_not_implemented">匿名主页暂未实现</string>
|
||||
<string name="bottom_sheet_post_poll">投票</string>
|
||||
<string name="customize_comment_filter_activity_label">自定义评论过滤器</string>
|
||||
<string name="settings_fixed_height_preview_in_card_title">在卡片中固定高度</string>
|
||||
|
@@ -117,7 +117,6 @@
|
||||
<string name="no_users">No users found</string>
|
||||
<string name="no_multi_reddits">No Multicommunities found</string>
|
||||
<string name="no_storage_permission">No storage permission to save this file</string>
|
||||
<string name="anonymous_homepage_not_implemented">Anonymous homepage is not implemented yet</string>
|
||||
<string name="load_comments_failed">Error loading comments.\nTap to retry.</string>
|
||||
<string name="retry">Retry</string>
|
||||
<string name="no_comments_yet">No comments yet. Write a comment?</string>
|
||||
@@ -1331,4 +1330,6 @@
|
||||
<string name="block_instance_failed">Failed to block instance</string>
|
||||
<string name="block_instance_success">Instance Blocked!</string>
|
||||
<string name="unblock_instance_success">Instance unblocked!</string>
|
||||
<string name="settings_dont_hide_saved_read_posts_automatically">Don\'t hide saved read posts automatically</string>
|
||||
<string name="settings_dont_hide_your_own_read_posts_automatically">Don\'t hide your own read posts automatically</string>
|
||||
</resources>
|
Reference in New Issue
Block a user