mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2024-12-29 04:17:12 +01:00
Render spoiler in PrivateMessagesDetailRecyclerViewAdapter.
This commit is contained in:
parent
22cf0a9c20
commit
b75883c758
@ -45,6 +45,7 @@ import ml.docilealligator.infinityforreddit.activities.LinkResolverActivity;
|
|||||||
import ml.docilealligator.infinityforreddit.activities.ViewPrivateMessagesActivity;
|
import ml.docilealligator.infinityforreddit.activities.ViewPrivateMessagesActivity;
|
||||||
import ml.docilealligator.infinityforreddit.activities.ViewUserDetailActivity;
|
import ml.docilealligator.infinityforreddit.activities.ViewUserDetailActivity;
|
||||||
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
|
import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
|
||||||
|
import ml.docilealligator.infinityforreddit.markdown.SpoilerParserPlugin;
|
||||||
import ml.docilealligator.infinityforreddit.markdown.SuperscriptInlineProcessor;
|
import ml.docilealligator.infinityforreddit.markdown.SuperscriptInlineProcessor;
|
||||||
import ml.docilealligator.infinityforreddit.message.Message;
|
import ml.docilealligator.infinityforreddit.message.Message;
|
||||||
import ml.docilealligator.infinityforreddit.utils.SharedPreferencesUtils;
|
import ml.docilealligator.infinityforreddit.utils.SharedPreferencesUtils;
|
||||||
@ -76,6 +77,7 @@ public class PrivateMessagesDetailRecyclerViewAdapter extends RecyclerView.Adapt
|
|||||||
mGlide = Glide.with(viewPrivateMessagesActivity);
|
mGlide = Glide.with(viewPrivateMessagesActivity);
|
||||||
mLocale = locale;
|
mLocale = locale;
|
||||||
mAccountName = accountName;
|
mAccountName = accountName;
|
||||||
|
int commentColor = customThemeWrapper.getCommentColor();
|
||||||
mMarkwon = Markwon.builder(viewPrivateMessagesActivity)
|
mMarkwon = Markwon.builder(viewPrivateMessagesActivity)
|
||||||
.usePlugin(MarkwonInlineParserPlugin.create(plugin -> {
|
.usePlugin(MarkwonInlineParserPlugin.create(plugin -> {
|
||||||
plugin.excludeInlineProcessor(AutolinkInlineProcessor.class);
|
plugin.excludeInlineProcessor(AutolinkInlineProcessor.class);
|
||||||
@ -116,6 +118,7 @@ public class PrivateMessagesDetailRecyclerViewAdapter extends RecyclerView.Adapt
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
.usePlugin(StrikethroughPlugin.create())
|
.usePlugin(StrikethroughPlugin.create())
|
||||||
|
.usePlugin(SpoilerParserPlugin.create(commentColor, commentColor | 0xFF000000))
|
||||||
.usePlugin(LinkifyPlugin.create(Linkify.WEB_URLS))
|
.usePlugin(LinkifyPlugin.create(Linkify.WEB_URLS))
|
||||||
.build();
|
.build();
|
||||||
mShowElapsedTime = sharedPreferences.getBoolean(SharedPreferencesUtils.SHOW_ELAPSED_TIME_KEY, false);
|
mShowElapsedTime = sharedPreferences.getBoolean(SharedPreferencesUtils.SHOW_ELAPSED_TIME_KEY, false);
|
||||||
@ -163,17 +166,6 @@ public class PrivateMessagesDetailRecyclerViewAdapter extends RecyclerView.Adapt
|
|||||||
} else {
|
} else {
|
||||||
((MessageViewHolder) holder).timeTextView.setText(Utils.getFormattedTime(mLocale, message.getTimeUTC(), mTimeFormatPattern));
|
((MessageViewHolder) holder).timeTextView.setText(Utils.getFormattedTime(mLocale, message.getTimeUTC(), mTimeFormatPattern));
|
||||||
}
|
}
|
||||||
|
|
||||||
((MessageViewHolder) holder).messageTextView.setOnClickListener(view -> {
|
|
||||||
if (((MessageViewHolder) holder).timeTextView.getVisibility() != View.VISIBLE) {
|
|
||||||
((MessageViewHolder) holder).timeTextView.setVisibility(View.VISIBLE);
|
|
||||||
((MessageViewHolder) holder).copyImageView.setVisibility(View.VISIBLE);
|
|
||||||
} else {
|
|
||||||
((MessageViewHolder) holder).timeTextView.setVisibility(View.GONE);
|
|
||||||
((MessageViewHolder) holder).copyImageView.setVisibility(View.GONE);
|
|
||||||
}
|
|
||||||
mViewPrivateMessagesActivity.delayTransition();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (holder instanceof SentMessageViewHolder) {
|
if (holder instanceof SentMessageViewHolder) {
|
||||||
@ -264,6 +256,23 @@ public class PrivateMessagesDetailRecyclerViewAdapter extends RecyclerView.Adapt
|
|||||||
messageTextView.setTextColor(Color.WHITE);
|
messageTextView.setTextColor(Color.WHITE);
|
||||||
timeTextView.setTextColor(mSecondaryTextColor);
|
timeTextView.setTextColor(mSecondaryTextColor);
|
||||||
|
|
||||||
|
itemView.setOnClickListener(view -> {
|
||||||
|
if (timeTextView.getVisibility() != View.VISIBLE) {
|
||||||
|
timeTextView.setVisibility(View.VISIBLE);
|
||||||
|
copyImageView.setVisibility(View.VISIBLE);
|
||||||
|
} else {
|
||||||
|
timeTextView.setVisibility(View.GONE);
|
||||||
|
copyImageView.setVisibility(View.GONE);
|
||||||
|
}
|
||||||
|
mViewPrivateMessagesActivity.delayTransition();
|
||||||
|
});
|
||||||
|
|
||||||
|
messageTextView.setOnClickListener(view -> {
|
||||||
|
if (messageTextView.getSelectionStart() == -1 && messageTextView.getSelectionEnd() == -1) {
|
||||||
|
itemView.performClick();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
copyImageView.setColorFilter(mSecondaryTextColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
copyImageView.setColorFilter(mSecondaryTextColor, android.graphics.PorterDuff.Mode.SRC_IN);
|
||||||
|
|
||||||
copyImageView.setOnClickListener(view -> {
|
copyImageView.setOnClickListener(view -> {
|
||||||
|
@ -1,14 +1,12 @@
|
|||||||
package ml.docilealligator.infinityforreddit.adapters.navigationdrawer;
|
package ml.docilealligator.infinityforreddit.adapters.navigationdrawer;
|
||||||
|
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
import android.content.res.Resources;
|
|
||||||
|
|
||||||
import androidx.recyclerview.widget.ConcatAdapter;
|
import androidx.recyclerview.widget.ConcatAdapter;
|
||||||
|
|
||||||
import com.bumptech.glide.Glide;
|
import com.bumptech.glide.Glide;
|
||||||
import com.bumptech.glide.RequestManager;
|
import com.bumptech.glide.RequestManager;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import ml.docilealligator.infinityforreddit.account.Account;
|
import ml.docilealligator.infinityforreddit.account.Account;
|
||||||
@ -27,11 +25,6 @@ public class NavigationDrawerRecyclerViewMergedAdapter {
|
|||||||
private AccountManagementSectionRecyclerViewAdapter accountManagementSectionRecyclerViewAdapter;
|
private AccountManagementSectionRecyclerViewAdapter accountManagementSectionRecyclerViewAdapter;
|
||||||
private ConcatAdapter mainPageConcatAdapter;
|
private ConcatAdapter mainPageConcatAdapter;
|
||||||
|
|
||||||
private Resources resources;
|
|
||||||
private ArrayList<Account> accounts;
|
|
||||||
private boolean isLoggedIn;
|
|
||||||
private boolean isInMainPage = true;
|
|
||||||
|
|
||||||
public NavigationDrawerRecyclerViewMergedAdapter(BaseActivity baseActivity, SharedPreferences sharedPreferences,
|
public NavigationDrawerRecyclerViewMergedAdapter(BaseActivity baseActivity, SharedPreferences sharedPreferences,
|
||||||
SharedPreferences nsfwAndSpoilerSharedPreferences,
|
SharedPreferences nsfwAndSpoilerSharedPreferences,
|
||||||
SharedPreferences navigationDrawerSharedPreferences,
|
SharedPreferences navigationDrawerSharedPreferences,
|
||||||
@ -92,7 +85,6 @@ public class NavigationDrawerRecyclerViewMergedAdapter {
|
|||||||
mainPageConcatAdapter.removeAdapter(subscribedSubredditsRecyclerViewAdapter);
|
mainPageConcatAdapter.removeAdapter(subscribedSubredditsRecyclerViewAdapter);
|
||||||
|
|
||||||
mainPageConcatAdapter.addAdapter(accountManagementSectionRecyclerViewAdapter);
|
mainPageConcatAdapter.addAdapter(accountManagementSectionRecyclerViewAdapter);
|
||||||
isInMainPage = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void closeAccountSectionWithoutChangeIconResource() {
|
public void closeAccountSectionWithoutChangeIconResource() {
|
||||||
|
Loading…
Reference in New Issue
Block a user