mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2025-02-06 22:54:47 +01:00
Compare commits
2 Commits
7c5f184cc8
...
0393ff6e77
Author | SHA1 | Date | |
---|---|---|---|
|
0393ff6e77 | ||
|
30ecc17d55 |
@ -1,14 +1,19 @@
|
|||||||
package eu.toldi.infinityforlemmy.activities;
|
package eu.toldi.infinityforlemmy.activities;
|
||||||
|
|
||||||
|
import android.content.Intent;
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
|
import android.graphics.Color;
|
||||||
import android.graphics.PorterDuff;
|
import android.graphics.PorterDuff;
|
||||||
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
import android.text.Spanned;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
import androidx.appcompat.widget.Toolbar;
|
import androidx.appcompat.widget.Toolbar;
|
||||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||||
@ -40,6 +45,9 @@ import eu.toldi.infinityforlemmy.user.BasicUserInfo;
|
|||||||
import eu.toldi.infinityforlemmy.utils.SharedPreferencesUtils;
|
import eu.toldi.infinityforlemmy.utils.SharedPreferencesUtils;
|
||||||
import io.noties.markwon.AbstractMarkwonPlugin;
|
import io.noties.markwon.AbstractMarkwonPlugin;
|
||||||
import io.noties.markwon.Markwon;
|
import io.noties.markwon.Markwon;
|
||||||
|
import io.noties.markwon.MarkwonConfiguration;
|
||||||
|
import io.noties.markwon.MarkwonPlugin;
|
||||||
|
import io.noties.markwon.core.MarkwonTheme;
|
||||||
import io.noties.markwon.recycler.MarkwonAdapter;
|
import io.noties.markwon.recycler.MarkwonAdapter;
|
||||||
|
|
||||||
public class InstanceInfoActivity extends BaseActivity {
|
public class InstanceInfoActivity extends BaseActivity {
|
||||||
@ -112,9 +120,36 @@ public class InstanceInfoActivity extends BaseActivity {
|
|||||||
int markdownColor = customThemeWrapper.getPostContentColor();
|
int markdownColor = customThemeWrapper.getPostContentColor();
|
||||||
int postSpoilerBackgroundColor = markdownColor | 0xFF000000;
|
int postSpoilerBackgroundColor = markdownColor | 0xFF000000;
|
||||||
int linkColor = customThemeWrapper.getLinkColor();
|
int linkColor = customThemeWrapper.getLinkColor();
|
||||||
|
|
||||||
|
|
||||||
|
MarkwonPlugin miscPlugin = new AbstractMarkwonPlugin() {
|
||||||
|
@Override
|
||||||
|
public void beforeSetText(@NonNull TextView textView, @NonNull Spanned markdown) {
|
||||||
|
if (InstanceInfoActivity.this.contentTypeface != null) {
|
||||||
|
textView.setTypeface(InstanceInfoActivity.this.contentTypeface);
|
||||||
|
}
|
||||||
|
textView.setTextColor(markdownColor);
|
||||||
|
textView.setHighlightColor(Color.TRANSPARENT);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void configureConfiguration(@NonNull MarkwonConfiguration.Builder builder) {
|
||||||
|
builder.linkResolver((view, link) -> {
|
||||||
|
Intent intent = new Intent(InstanceInfoActivity.this, LinkResolverActivity.class);
|
||||||
|
Uri uri = Uri.parse(link);
|
||||||
|
intent.setData(uri);
|
||||||
|
InstanceInfoActivity.this.startActivity(intent);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void configureTheme(@NonNull MarkwonTheme.Builder builder) {
|
||||||
|
builder.linkColor(linkColor);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
mPostDetailMarkwon = MarkdownUtils.createFullRedditMarkwon(this,
|
mPostDetailMarkwon = MarkdownUtils.createFullRedditMarkwon(this,
|
||||||
new AbstractMarkwonPlugin() {
|
miscPlugin, markdownColor, postSpoilerBackgroundColor, null);
|
||||||
}, markdownColor, postSpoilerBackgroundColor, null);
|
|
||||||
mMarkwonAdapter = MarkdownUtils.createTablesAdapter();
|
mMarkwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||||
mContentMarkdownView.setAdapter(mMarkwonAdapter);
|
mContentMarkdownView.setAdapter(mMarkwonAdapter);
|
||||||
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
|
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
|
||||||
|
@ -84,12 +84,10 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
|||||||
if (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) {
|
if (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) {
|
||||||
if (itemClickListener != null && !hasClearSelectionRow) {
|
if (itemClickListener != null && !hasClearSelectionRow) {
|
||||||
if (position == 0) {
|
if (position == 0) {
|
||||||
return VIEW_TYPE_SUBREDDIT;
|
|
||||||
} else if (position == 1) {
|
|
||||||
return VIEW_TYPE_FAVORITE_SUBREDDIT_DIVIDER;
|
return VIEW_TYPE_FAVORITE_SUBREDDIT_DIVIDER;
|
||||||
} else if (position == mFavoriteSubscribedSubredditData.size() + 1) {
|
} else if (position == mFavoriteSubscribedSubredditData.size() + 1) {
|
||||||
return VIEW_TYPE_SUBREDDIT_DIVIDER;
|
return VIEW_TYPE_SUBREDDIT_DIVIDER;
|
||||||
} else if (position < mFavoriteSubscribedSubredditData.size() + 1) {
|
} else if (position <= mFavoriteSubscribedSubredditData.size()) {
|
||||||
return VIEW_TYPE_FAVORITE_SUBREDDIT;
|
return VIEW_TYPE_FAVORITE_SUBREDDIT;
|
||||||
} else {
|
} else {
|
||||||
return VIEW_TYPE_SUBREDDIT;
|
return VIEW_TYPE_SUBREDDIT;
|
||||||
@ -160,7 +158,7 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
|||||||
mFavoriteSubscribedSubredditData.size() + 3 : 1;
|
mFavoriteSubscribedSubredditData.size() + 3 : 1;
|
||||||
} else {
|
} else {
|
||||||
offset = (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) ?
|
offset = (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) ?
|
||||||
mFavoriteSubscribedSubredditData.size() + 3 : 1;
|
mFavoriteSubscribedSubredditData.size() + 2 : 1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
offset = (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) ?
|
offset = (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) ?
|
||||||
@ -228,7 +226,7 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
|||||||
if (hasClearSelectionRow) {
|
if (hasClearSelectionRow) {
|
||||||
offset = 2;
|
offset = 2;
|
||||||
} else {
|
} else {
|
||||||
offset = 2;
|
offset = 1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
offset = 1;
|
offset = 1;
|
||||||
@ -289,7 +287,7 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
|||||||
if (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) {
|
if (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) {
|
||||||
if (itemClickListener != null) {
|
if (itemClickListener != null) {
|
||||||
return mSubscribedSubredditData.size() > 0 ?
|
return mSubscribedSubredditData.size() > 0 ?
|
||||||
mFavoriteSubscribedSubredditData.size() + mSubscribedSubredditData.size() + 3 : 0;
|
mFavoriteSubscribedSubredditData.size() + mSubscribedSubredditData.size() + ((hasClearSelectionRow) ? 3 : 2) : 0;
|
||||||
}
|
}
|
||||||
return mSubscribedSubredditData.size() > 0 ?
|
return mSubscribedSubredditData.size() > 0 ?
|
||||||
mFavoriteSubscribedSubredditData.size() + mSubscribedSubredditData.size() + 2 : 0;
|
mFavoriteSubscribedSubredditData.size() + mSubscribedSubredditData.size() + 2 : 0;
|
||||||
@ -349,7 +347,7 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
|||||||
mFavoriteSubscribedSubredditData.size() + 3 : 0;
|
mFavoriteSubscribedSubredditData.size() + 3 : 0;
|
||||||
} else {
|
} else {
|
||||||
offset = (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) ?
|
offset = (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) ?
|
||||||
mFavoriteSubscribedSubredditData.size() + 3 : 0;
|
mFavoriteSubscribedSubredditData.size() + 2 : 0;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
offset = (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) ?
|
offset = (mFavoriteSubscribedSubredditData != null && mFavoriteSubscribedSubredditData.size() > 0) ?
|
||||||
@ -364,7 +362,7 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
|||||||
if (hasClearSelectionRow) {
|
if (hasClearSelectionRow) {
|
||||||
offset = 2;
|
offset = 2;
|
||||||
} else {
|
} else {
|
||||||
offset = 2;
|
offset = 1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
offset = 1;
|
offset = 1;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user