mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2025-02-06 22:54:47 +01:00
Compare commits
No commits in common. "ce7c284c6bf48c8c37785e277583360a5e3fbd0d" and "e2956e3f1c741a3c2ea848fbf60a4064cf32e855" have entirely different histories.
ce7c284c6b
...
e2956e3f1c
@ -111,7 +111,7 @@ class ParseSubscribedThing {
|
||||
int instanceId = community.getInt("instance_id");
|
||||
int subscribers = data.getJSONObject("counts").getInt("subscribers");
|
||||
boolean isBlocked = data.getBoolean("blocked");
|
||||
newSubscribedSubredditData.add(new SubscribedSubredditData(id, title, LemmyUtils.actorID2FullName(actorId), iconUrl, accountName, false));
|
||||
newSubscribedSubredditData.add(new SubscribedSubredditData(id, title, LemmyUtils.actorID2FullName(actorId), iconUrl, accountName));
|
||||
newSubredditData.add(new SubredditData(id, name, title, description, removed, published, updated, deleted, nsfw, actorId, local, iconUrl, bannerImageUrl, hidden, postingRestrictedToMods, instanceId, subscribers, isBlocked));
|
||||
|
||||
}
|
||||
|
@ -42,7 +42,7 @@ import eu.toldi.infinityforlemmy.user.UserData;
|
||||
|
||||
@Database(entities = {Account.class, SubredditData.class, SubscribedSubredditData.class, UserData.class,
|
||||
SubscribedUserData.class, MultiReddit.class, CustomTheme.class, RecentSearchQuery.class,
|
||||
ReadPost.class, PostFilter.class, PostFilterUsage.class, AnonymousMultiredditSubreddit.class, BlockedUserData.class, BlockedCommunityData.class}, version = 27)
|
||||
ReadPost.class, PostFilter.class, PostFilterUsage.class, AnonymousMultiredditSubreddit.class, BlockedUserData.class, BlockedCommunityData.class}, version = 26)
|
||||
public abstract class RedditDataRoomDatabase extends RoomDatabase {
|
||||
|
||||
public static RedditDataRoomDatabase create(final Context context) {
|
||||
@ -53,7 +53,7 @@ public abstract class RedditDataRoomDatabase extends RoomDatabase {
|
||||
MIGRATION_9_10, MIGRATION_10_11, MIGRATION_11_12, MIGRATION_12_13,
|
||||
MIGRATION_13_14, MIGRATION_14_15, MIGRATION_15_16, MIGRATION_16_17,
|
||||
MIGRATION_17_18, MIGRATION_18_19, MIGRATION_19_20, MIGRATION_20_21,
|
||||
MIGRATION_21_22, MIGRATION_22_23, MIGRATION_23_24, MIGRATION_24_25, MIGRATION_25_26, MIGRATION_26_27)
|
||||
MIGRATION_21_22, MIGRATION_22_23, MIGRATION_23_24, MIGRATION_24_25, MIGRATION_25_26)
|
||||
.build();
|
||||
}
|
||||
|
||||
@ -416,12 +416,4 @@ public abstract class RedditDataRoomDatabase extends RoomDatabase {
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
private static final Migration MIGRATION_26_27 = new Migration(26, 27) {
|
||||
@Override
|
||||
public void migrate(@NonNull SupportSQLiteDatabase database) {
|
||||
database.execSQL("ALTER TABLE subscribed_subreddits"
|
||||
+ " ADD COLUMN is_favorite INTEGER DEFAULT 0 NOT NULL");
|
||||
}
|
||||
};
|
||||
}
|
||||
|
@ -204,7 +204,7 @@ public class CommentActivity extends BaseActivity implements UploadImageEnabledA
|
||||
builder.linkColor(linkColor);
|
||||
}
|
||||
};
|
||||
Markwon postBodyMarkwon = MarkdownUtils.createFullRedditMarkwon(this,
|
||||
Markwon postBodyMarkwon = MarkdownUtils.createFullRedditMarkwon(getApplication(),
|
||||
miscPlugin, parentTextColor, parentSpoilerBackgroundColor, null);
|
||||
MarkwonAdapter markwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
binding.commentContentMarkdownView.setLayoutManager(new LinearLayoutManagerBugFixed(this));
|
||||
|
@ -138,7 +138,7 @@ public class FullMarkdownActivity extends BaseActivity {
|
||||
builder.linkColor(linkColor);
|
||||
}
|
||||
};
|
||||
Markwon markwon = MarkdownUtils.createFullRedditMarkwon(this,
|
||||
Markwon markwon = MarkdownUtils.createFullRedditMarkwon(getApplication(),
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, null);
|
||||
|
||||
MarkwonAdapter markwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
|
@ -1011,12 +1011,12 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
|
||||
sectionsPagerAdapter.setSubscribedSubreddits(subscribedSubredditData);
|
||||
}
|
||||
});
|
||||
subscribedSubredditViewModel.getAllFavoriteSubscribedSubreddits().observe(this, subscribedSubredditData -> {
|
||||
/*subscribedSubredditViewModel.getAllFavoriteSubscribedSubreddits().observe(this, subscribedSubredditData -> {
|
||||
adapter.setFavoriteSubscribedSubreddits(subscribedSubredditData);
|
||||
if (mShowFavoriteSubscribedSubreddits && sectionsPagerAdapter != null) {
|
||||
sectionsPagerAdapter.setFavoriteSubscribedSubreddits(subscribedSubredditData);
|
||||
}
|
||||
});
|
||||
});*/
|
||||
|
||||
accountViewModel = new ViewModelProvider(this,
|
||||
new AccountViewModel.Factory(mRedditDataRoomDatabase)).get(AccountViewModel.class);
|
||||
|
@ -538,7 +538,7 @@ public class ViewSubredditDetailActivity extends BaseActivity implements SortTyp
|
||||
return true;
|
||||
};
|
||||
|
||||
Markwon markwon = MarkdownUtils.createDescriptionMarkwon(this, miscPlugin, onLinkLongClickListener);
|
||||
Markwon markwon = MarkdownUtils.createDescriptionMarkwon(getApplication(), miscPlugin, onLinkLongClickListener);
|
||||
|
||||
descriptionTextView.setOnLongClickListener(view -> {
|
||||
if (description != null && !description.equals("") && descriptionTextView.getSelectionStart() == -1 && descriptionTextView.getSelectionEnd() == -1) {
|
||||
@ -600,10 +600,11 @@ public class ViewSubredditDetailActivity extends BaseActivity implements SortTyp
|
||||
nSubscribersTextView.setText(nSubscribers);
|
||||
|
||||
if (mCommunityStats != null && showStatistics) {
|
||||
communityStatisticsBlock.setVisibility(View.VISIBLE);
|
||||
nActiveUsersTextView.setText(getString(R.string.active_users_number_detail, mCommunityStats.getActiveUsers()));
|
||||
nPostsTextView.setText(getString(R.string.post_count_detail, mCommunityStats.getPosts()));
|
||||
nCommentsTextView.setText(getString(R.string.comment_count_detail, mCommunityStats.getComments()));
|
||||
} else {
|
||||
communityStatisticsBlock.setVisibility(View.GONE);
|
||||
}
|
||||
description = subredditData.getDescription();
|
||||
|
||||
|
@ -472,7 +472,7 @@ public class ViewUserDetailActivity extends BaseActivity implements SortTypeSele
|
||||
urlMenuBottomSheetFragment.show(getSupportFragmentManager(), null);
|
||||
return true;
|
||||
};
|
||||
Markwon markwon = MarkdownUtils.createDescriptionMarkwon(this, miscPlugin, onLinkLongClickListener);
|
||||
Markwon markwon = MarkdownUtils.createDescriptionMarkwon(getApplication(), miscPlugin, onLinkLongClickListener);
|
||||
|
||||
descriptionTextView.setOnLongClickListener(view -> {
|
||||
if (description != null && !description.equals("") && descriptionTextView.getSelectionStart() == -1 && descriptionTextView.getSelectionEnd() == -1) {
|
||||
@ -629,7 +629,6 @@ public class ViewUserDetailActivity extends BaseActivity implements SortTypeSele
|
||||
cakedayTextView.setText((String) userData.getCakeday());
|
||||
UserStats userStats = mUserData.getStats();
|
||||
if (userStats != null && showStatistics) {
|
||||
userStatisticsBlock.setVisibility(View.VISIBLE);
|
||||
postCountTextView.setText(String.valueOf(userStats.getPostCount()));
|
||||
commentCountTextView.setText(String.valueOf(userStats.getCommentCount()));
|
||||
if (showScore) {
|
||||
@ -641,6 +640,8 @@ public class ViewUserDetailActivity extends BaseActivity implements SortTypeSele
|
||||
postUpvoteCountIconImageView.setVisibility(View.GONE);
|
||||
commentUpvoteCountIconImageView.setVisibility(View.GONE);
|
||||
}
|
||||
} else {
|
||||
userStatisticsBlock.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
if (userData.getDescription() == null || userData.getDescription().equals("")) {
|
||||
|
@ -175,7 +175,7 @@ public class WikiActivity extends BaseActivity {
|
||||
urlMenuBottomSheetFragment.show(getSupportFragmentManager(), null);
|
||||
return true;
|
||||
};
|
||||
markwon = MarkdownUtils.createFullRedditMarkwon(this,
|
||||
markwon = MarkdownUtils.createFullRedditMarkwon(getApplication(),
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, onLinkLongClickListener);
|
||||
|
||||
markwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
|
@ -168,7 +168,7 @@ public class CommentsListingRecyclerViewAdapter extends PagedListAdapter<Comment
|
||||
}
|
||||
return true;
|
||||
};
|
||||
mMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity,
|
||||
mMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity.getApplication(),
|
||||
miscPlugin, mCommentColor, commentSpoilerBackgroundColor, onLinkLongClickListener);
|
||||
recycledViewPool = new RecyclerView.RecycledViewPool();
|
||||
}
|
||||
|
@ -214,7 +214,7 @@ public class CommentsRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerVi
|
||||
}
|
||||
return true;
|
||||
};
|
||||
mCommentMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity,
|
||||
mCommentMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity.getApplication(),
|
||||
miscPlugin, mCommentTextColor, commentSpoilerBackgroundColor, onLinkLongClickListener);
|
||||
recycledViewPool = new RecyclerView.RecycledViewPool();
|
||||
mAccessToken = accessToken;
|
||||
@ -905,8 +905,7 @@ public class CommentsRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerVi
|
||||
loadedComments.add(comments.get(i).getId());
|
||||
}
|
||||
if (mIsSingleCommentThreadMode) {
|
||||
int offset = (comments.size() > 0) ? 1 : 0;
|
||||
notifyItemRangeInserted(sizeBefore, comments.size() + offset);
|
||||
notifyItemRangeInserted(sizeBefore, comments.size() + 1);
|
||||
} else {
|
||||
notifyItemRangeInserted(sizeBefore, comments.size());
|
||||
}
|
||||
|
@ -294,7 +294,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
|
||||
}
|
||||
return true;
|
||||
};
|
||||
mPostDetailMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity,
|
||||
mPostDetailMarkwon = MarkdownUtils.createFullRedditMarkwon(mActivity.getApplication(),
|
||||
miscPlugin, markdownColor, postSpoilerBackgroundColor, onLinkLongClickListener);
|
||||
mMarkwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
|
||||
|
@ -81,7 +81,7 @@ public class RulesRecyclerViewAdapter extends RecyclerView.Adapter<RulesRecycler
|
||||
}
|
||||
return true;
|
||||
};
|
||||
markwon = MarkdownUtils.createFullRedditMarkwon(activity,
|
||||
markwon = MarkdownUtils.createFullRedditMarkwon(activity.getApplication(),
|
||||
miscPlugin, mPrimaryTextColor, spoilerBackgroundColor, onLinkLongClickListener);
|
||||
}
|
||||
|
||||
|
@ -1,11 +1,9 @@
|
||||
package eu.toldi.infinityforlemmy.adapters;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Handler;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
@ -24,7 +22,6 @@ import eu.toldi.infinityforlemmy.R;
|
||||
import eu.toldi.infinityforlemmy.RedditDataRoomDatabase;
|
||||
import eu.toldi.infinityforlemmy.activities.BaseActivity;
|
||||
import eu.toldi.infinityforlemmy.activities.ViewSubredditDetailActivity;
|
||||
import eu.toldi.infinityforlemmy.asynctasks.InsertSubscribedThings;
|
||||
import eu.toldi.infinityforlemmy.customtheme.CustomThemeWrapper;
|
||||
import eu.toldi.infinityforlemmy.subscribedsubreddit.SubscribedSubredditData;
|
||||
import jp.wasabeef.glide.transformations.RoundedCornersTransformation;
|
||||
@ -161,31 +158,11 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
||||
fullname = mSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).getQualified_name();
|
||||
iconUrl = mSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).getIconUrl();
|
||||
|
||||
if (mSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).isFavorite()) {
|
||||
((SubredditViewHolder) viewHolder).favoriteImageView.setImageResource(R.drawable.ic_favorite_24dp);
|
||||
} else {
|
||||
((SubredditViewHolder) viewHolder).favoriteImageView.setImageResource(R.drawable.ic_favorite_border_24dp);
|
||||
}
|
||||
|
||||
((SubredditViewHolder) viewHolder).favoriteImageView.setOnClickListener(view -> {
|
||||
if (mSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).isFavorite()) {
|
||||
((SubredditViewHolder) viewHolder).favoriteImageView.setImageResource(R.drawable.ic_favorite_border_24dp);
|
||||
mSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).setFavorite(false);
|
||||
} else {
|
||||
((SubredditViewHolder) viewHolder).favoriteImageView.setImageResource(R.drawable.ic_favorite_24dp);
|
||||
mSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).setFavorite(true);
|
||||
}
|
||||
InsertSubscribedThings.insertSubscribedThings(mExecutor, new Handler(), mRedditDataRoomDatabase, mSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset),
|
||||
() -> {
|
||||
});
|
||||
});
|
||||
|
||||
if (itemClickListener != null) {
|
||||
viewHolder.itemView.setOnClickListener(view -> itemClickListener.onClick(communityData));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (itemClickListener == null) {
|
||||
String finalFullname = fullname;
|
||||
viewHolder.itemView.setOnClickListener(view -> {
|
||||
@ -224,33 +201,12 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
||||
String name = mFavoriteSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).getName();
|
||||
String iconUrl = mFavoriteSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).getIconUrl();
|
||||
|
||||
if (mFavoriteSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).isFavorite()) {
|
||||
((FavoriteSubredditViewHolder) viewHolder).favoriteImageView.setImageResource(R.drawable.ic_favorite_24dp);
|
||||
} else {
|
||||
((FavoriteSubredditViewHolder) viewHolder).favoriteImageView.setImageResource(R.drawable.ic_favorite_border_24dp);
|
||||
}
|
||||
|
||||
((FavoriteSubredditViewHolder) viewHolder).favoriteImageView.setOnClickListener(view -> {
|
||||
if (mFavoriteSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).isFavorite()) {
|
||||
((FavoriteSubredditViewHolder) viewHolder).favoriteImageView.setImageResource(R.drawable.ic_favorite_border_24dp);
|
||||
mFavoriteSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).setFavorite(false);
|
||||
} else {
|
||||
((FavoriteSubredditViewHolder) viewHolder).favoriteImageView.setImageResource(R.drawable.ic_favorite_24dp);
|
||||
mFavoriteSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).setFavorite(true);
|
||||
}
|
||||
InsertSubscribedThings.insertSubscribedThings(mExecutor, new Handler(), mRedditDataRoomDatabase, mFavoriteSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset),
|
||||
() -> {
|
||||
});
|
||||
});
|
||||
|
||||
if (itemClickListener != null) {
|
||||
viewHolder.itemView.setOnClickListener(view -> itemClickListener.onClick(communityData));
|
||||
} else {
|
||||
viewHolder.itemView.setOnClickListener(view -> {
|
||||
Intent intent = new Intent(mActivity, ViewSubredditDetailActivity.class);
|
||||
intent.putExtra(ViewSubredditDetailActivity.EXTRA_SUBREDDIT_NAME_KEY, name);
|
||||
intent.putExtra(ViewSubredditDetailActivity.EXTRA_COMMUNITY_FULL_NAME_KEY,
|
||||
mFavoriteSubscribedSubredditData.get(viewHolder.getBindingAdapterPosition() - offset).getQualified_name());
|
||||
mActivity.startActivity(intent);
|
||||
});
|
||||
}
|
||||
@ -287,7 +243,6 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
||||
public void onViewRecycled(@NonNull RecyclerView.ViewHolder holder) {
|
||||
if(holder instanceof SubredditViewHolder) {
|
||||
glide.clear(((SubredditViewHolder) holder).iconGifImageView);
|
||||
((SubredditViewHolder) holder).favoriteImageView.setVisibility(View.VISIBLE);
|
||||
} else if (holder instanceof FavoriteSubredditViewHolder) {
|
||||
glide.clear(((FavoriteSubredditViewHolder) holder).iconGifImageView);
|
||||
}
|
||||
@ -362,8 +317,6 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
||||
GifImageView iconGifImageView;
|
||||
@BindView(R.id.thing_name_text_view_item_subscribed_thing)
|
||||
TextView subredditNameTextView;
|
||||
@BindView(R.id.favorite_image_view_item_subscribed_thing)
|
||||
ImageView favoriteImageView;
|
||||
|
||||
SubredditViewHolder(View itemView) {
|
||||
super(itemView);
|
||||
@ -380,9 +333,6 @@ public class SubscribedSubredditsRecyclerViewAdapter extends RecyclerView.Adapte
|
||||
GifImageView iconGifImageView;
|
||||
@BindView(R.id.thing_name_text_view_item_subscribed_thing)
|
||||
TextView subredditNameTextView;
|
||||
@BindView(R.id.favorite_image_view_item_subscribed_thing)
|
||||
ImageView favoriteImageView;
|
||||
|
||||
|
||||
FavoriteSubredditViewHolder(View itemView) {
|
||||
super(itemView);
|
||||
|
@ -38,7 +38,7 @@ public class InsertSubscribedThings {
|
||||
if (subscribedSubredditDataList != null) {
|
||||
List<SubscribedSubredditData> existingSubscribedSubredditDataList =
|
||||
subscribedSubredditDao.getAllSubscribedSubredditsList(accountName);
|
||||
Collections.sort(subscribedSubredditDataList, (subscribedSubredditData, t1) -> subscribedSubredditData.getQualified_name().compareToIgnoreCase(t1.getQualified_name()));
|
||||
Collections.sort(subscribedSubredditDataList, (subscribedSubredditData, t1) -> subscribedSubredditData.getName().compareToIgnoreCase(t1.getName()));
|
||||
List<String> unsubscribedSubreddits = new ArrayList<>();
|
||||
compareTwoSubscribedSubredditList(subscribedSubredditDataList, existingSubscribedSubredditDataList,
|
||||
unsubscribedSubreddits);
|
||||
@ -48,9 +48,6 @@ public class InsertSubscribedThings {
|
||||
}
|
||||
|
||||
for (SubscribedSubredditData s : subscribedSubredditDataList) {
|
||||
if (existingSubscribedSubredditDataList.contains(s)) {
|
||||
continue;
|
||||
}
|
||||
subscribedSubredditDao.insert(s);
|
||||
}
|
||||
}
|
||||
@ -82,8 +79,7 @@ public class InsertSubscribedThings {
|
||||
});
|
||||
}
|
||||
|
||||
public static void insertSubscribedThings(Executor executor, Handler
|
||||
handler, RedditDataRoomDatabase redditDataRoomDatabase,
|
||||
public static void insertSubscribedThings(Executor executor, Handler handler, RedditDataRoomDatabase redditDataRoomDatabase,
|
||||
SubscribedSubredditData singleSubscribedSubredditData,
|
||||
InsertSubscribedThingListener insertSubscribedThingListener) {
|
||||
executor.execute(() -> {
|
||||
@ -98,8 +94,7 @@ public class InsertSubscribedThings {
|
||||
});
|
||||
}
|
||||
|
||||
public static void insertSubscribedThings(Executor executor, Handler
|
||||
handler, RedditDataRoomDatabase redditDataRoomDatabase,
|
||||
public static void insertSubscribedThings(Executor executor, Handler handler, RedditDataRoomDatabase redditDataRoomDatabase,
|
||||
SubscribedUserData mSingleSubscribedUserData,
|
||||
InsertSubscribedThingListener insertSubscribedThingListener) {
|
||||
executor.execute(() -> {
|
||||
@ -114,37 +109,35 @@ public class InsertSubscribedThings {
|
||||
});
|
||||
}
|
||||
|
||||
private static void compareTwoSubscribedSubredditList
|
||||
(List<SubscribedSubredditData> newSubscribedSubreddits,
|
||||
List<SubscribedSubredditData> oldSubscribedSubreddits,
|
||||
List<String> unsubscribedSubredditNames) {
|
||||
private static void compareTwoSubscribedSubredditList(List<SubscribedSubredditData> newSubscribedSubreddits,
|
||||
List<SubscribedSubredditData> oldSubscribedSubreddits,
|
||||
List<String> unsubscribedSubredditNames) {
|
||||
int newIndex = 0;
|
||||
for (int oldIndex = 0; oldIndex < oldSubscribedSubreddits.size(); oldIndex++) {
|
||||
if (newIndex >= newSubscribedSubreddits.size()) {
|
||||
for (; oldIndex < oldSubscribedSubreddits.size(); oldIndex++) {
|
||||
unsubscribedSubredditNames.add(oldSubscribedSubreddits.get(oldIndex).getQualified_name());
|
||||
unsubscribedSubredditNames.add(oldSubscribedSubreddits.get(oldIndex).getName());
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
SubscribedSubredditData old = oldSubscribedSubreddits.get(oldIndex);
|
||||
for (; newIndex < newSubscribedSubreddits.size(); newIndex++) {
|
||||
if (newSubscribedSubreddits.get(newIndex).getQualified_name().compareToIgnoreCase(old.getQualified_name()) == 0) {
|
||||
if (newSubscribedSubreddits.get(newIndex).getName().compareToIgnoreCase(old.getName()) == 0) {
|
||||
newIndex++;
|
||||
break;
|
||||
}
|
||||
if (newSubscribedSubreddits.get(newIndex).getQualified_name().compareToIgnoreCase(old.getQualified_name()) > 0) {
|
||||
unsubscribedSubredditNames.add(old.getQualified_name());
|
||||
if (newSubscribedSubreddits.get(newIndex).getName().compareToIgnoreCase(old.getName()) > 0) {
|
||||
unsubscribedSubredditNames.add(old.getName());
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static void compareTwoSubscribedUserList
|
||||
(List<SubscribedUserData> newSubscribedUsers,
|
||||
List<SubscribedUserData> oldSubscribedUsers,
|
||||
List<String> unsubscribedUserNames) {
|
||||
private static void compareTwoSubscribedUserList(List<SubscribedUserData> newSubscribedUsers,
|
||||
List<SubscribedUserData> oldSubscribedUsers,
|
||||
List<String> unsubscribedUserNames) {
|
||||
int newIndex = 0;
|
||||
for (int oldIndex = 0; oldIndex < oldSubscribedUsers.size(); oldIndex++) {
|
||||
if (newIndex >= newSubscribedUsers.size()) {
|
||||
|
@ -2,7 +2,6 @@ package eu.toldi.infinityforlemmy.fragments;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.graphics.PorterDuff;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
@ -10,19 +9,15 @@ import android.text.Spanned;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.lifecycle.ViewModelProvider;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
|
||||
|
||||
import com.evernote.android.state.State;
|
||||
|
||||
import java.util.concurrent.Executor;
|
||||
|
||||
import javax.inject.Inject;
|
||||
@ -39,7 +34,6 @@ import eu.toldi.infinityforlemmy.activities.ViewSubredditDetailActivity;
|
||||
import eu.toldi.infinityforlemmy.asynctasks.InsertSubredditData;
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.CopyTextBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.bottomsheetfragments.UrlMenuBottomSheetFragment;
|
||||
import eu.toldi.infinityforlemmy.community.CommunityStats;
|
||||
import eu.toldi.infinityforlemmy.customtheme.CustomThemeWrapper;
|
||||
import eu.toldi.infinityforlemmy.customviews.LinearLayoutManagerBugFixed;
|
||||
import eu.toldi.infinityforlemmy.markdown.MarkdownUtils;
|
||||
@ -66,27 +60,6 @@ public class SidebarFragment extends Fragment {
|
||||
SwipeRefreshLayout swipeRefreshLayout;
|
||||
@BindView(R.id.markdown_recycler_view_sidebar_fragment)
|
||||
RecyclerView recyclerView;
|
||||
|
||||
@BindView(R.id.subscriber_count_text_view_sidebar_fragment)
|
||||
TextView nSubscribersTextView;
|
||||
@BindView(R.id.active_user_count_text_view_sidebar_fragment)
|
||||
TextView nActiveUsersTextView;
|
||||
@BindView(R.id.post_count_text_view_sidebar_fragment)
|
||||
TextView nPostsTextView;
|
||||
@BindView(R.id.comment_count_text_view_sidebar_fragment)
|
||||
TextView nCommentsTextView;
|
||||
|
||||
@BindView(R.id.subscriber_count_image_view_sidebar_fragment)
|
||||
ImageView nSubscribersImageView;
|
||||
@BindView(R.id.active_user_count_image_view_sidebar_fragment)
|
||||
ImageView nActiveUsersImageView;
|
||||
@BindView(R.id.post_count_image_view_sidebar_fragment)
|
||||
ImageView nPostsImageView;
|
||||
@BindView(R.id.comment_count_image_view_sidebar_fragment)
|
||||
ImageView nCommentsImageView;
|
||||
|
||||
@BindView(R.id.community_statistics_block_sidebar_fragment)
|
||||
ConstraintLayout communityStatisticsBlock;
|
||||
@Inject
|
||||
@Named("no_oauth")
|
||||
RetrofitHolder mRetrofit;
|
||||
@ -108,9 +81,6 @@ public class SidebarFragment extends Fragment {
|
||||
private int markdownColor;
|
||||
private String sidebarDescription;
|
||||
|
||||
@State
|
||||
CommunityStats mCommunityStats;
|
||||
|
||||
public SidebarFragment() {
|
||||
// Required empty public constructor
|
||||
}
|
||||
@ -135,16 +105,6 @@ public class SidebarFragment extends Fragment {
|
||||
|
||||
swipeRefreshLayout.setProgressBackgroundColorSchemeColor(mCustomThemeWrapper.getCircularProgressBarBackground());
|
||||
swipeRefreshLayout.setColorSchemeColors(mCustomThemeWrapper.getColorAccent());
|
||||
int primaryTextColor = mCustomThemeWrapper.getPrimaryTextColor();
|
||||
nSubscribersTextView.setTextColor(primaryTextColor);
|
||||
nActiveUsersTextView.setTextColor(primaryTextColor);
|
||||
nPostsTextView.setTextColor(primaryTextColor);
|
||||
nCommentsTextView.setTextColor(primaryTextColor);
|
||||
nSubscribersImageView.setColorFilter(mCustomThemeWrapper.getPrimaryTextColor(), PorterDuff.Mode.SRC_IN);
|
||||
nActiveUsersImageView.setColorFilter(mCustomThemeWrapper.getPrimaryTextColor(), PorterDuff.Mode.SRC_IN);
|
||||
nPostsImageView.setColorFilter(mCustomThemeWrapper.getPrimaryTextColor(), PorterDuff.Mode.SRC_IN);
|
||||
nCommentsImageView.setColorFilter(mCustomThemeWrapper.getPrimaryTextColor(), PorterDuff.Mode.SRC_IN);
|
||||
|
||||
markdownColor = mCustomThemeWrapper.getPrimaryTextColor();
|
||||
int spoilerBackgroundColor = markdownColor | 0xFF000000;
|
||||
|
||||
@ -187,7 +147,7 @@ public class SidebarFragment extends Fragment {
|
||||
urlMenuBottomSheetFragment.show(getChildFragmentManager(), null);
|
||||
return true;
|
||||
};
|
||||
Markwon markwon = MarkdownUtils.createFullRedditMarkwon(activity,
|
||||
Markwon markwon = MarkdownUtils.createFullRedditMarkwon(activity.getApplication(),
|
||||
miscPlugin, markdownColor, spoilerBackgroundColor, onLinkLongClickListener);
|
||||
MarkwonAdapter markwonAdapter = MarkdownUtils.createTablesAdapter();
|
||||
|
||||
@ -220,16 +180,6 @@ public class SidebarFragment extends Fragment {
|
||||
} else {
|
||||
fetchSubredditData();
|
||||
}
|
||||
|
||||
if (mCommunityStats != null) {
|
||||
communityStatisticsBlock.setVisibility(View.VISIBLE);
|
||||
nSubscribersTextView.setText(getString(R.string.subscribers_number_detail, mCommunityStats.getSubscribers()));
|
||||
nActiveUsersTextView.setText(getString(R.string.active_users_number_detail, mCommunityStats.getActiveUsers()));
|
||||
nPostsTextView.setText(getString(R.string.post_count_detail, mCommunityStats.getPosts()));
|
||||
nCommentsTextView.setText(getString(R.string.comment_count_detail, mCommunityStats.getComments()));
|
||||
} else {
|
||||
fetchSubredditData();
|
||||
}
|
||||
});
|
||||
|
||||
swipeRefreshLayout.setOnRefreshListener(this::fetchSubredditData);
|
||||
@ -249,7 +199,6 @@ public class SidebarFragment extends Fragment {
|
||||
@Override
|
||||
public void onFetchSubredditDataSuccess(SubredditData subredditData, int nCurrentOnlineSubscribers) {
|
||||
swipeRefreshLayout.setRefreshing(false);
|
||||
mCommunityStats = subredditData.getCommunityStats();
|
||||
InsertSubredditData.insertSubredditData(mExecutor, new Handler(), mRedditDataRoomDatabase,
|
||||
subredditData, () -> swipeRefreshLayout.setRefreshing(false));
|
||||
}
|
||||
|
@ -157,16 +157,16 @@ public class SubscribedSubredditsListingFragment extends Fragment implements Fra
|
||||
adapter.setSubscribedSubreddits(subscribedSubredditData);
|
||||
});
|
||||
|
||||
mSubscribedSubredditViewModel.getAllFavoriteSubscribedSubreddits().observe(getViewLifecycleOwner(), favoriteSubscribedSubredditData -> {
|
||||
mSwipeRefreshLayout.setRefreshing(false);
|
||||
if (favoriteSubscribedSubredditData != null && favoriteSubscribedSubredditData.size() > 0) {
|
||||
mLinearLayout.setVisibility(View.GONE);
|
||||
mRecyclerView.setVisibility(View.VISIBLE);
|
||||
mGlide.clear(mImageView);
|
||||
}
|
||||
/* mSubscribedSubredditViewModel.getAllFavoriteSubscribedSubreddits().observe(getViewLifecycleOwner(), favoriteSubscribedSubredditData -> {
|
||||
mSwipeRefreshLayout.setRefreshing(false);
|
||||
if (favoriteSubscribedSubredditData != null && favoriteSubscribedSubredditData.size() > 0) {
|
||||
mLinearLayout.setVisibility(View.GONE);
|
||||
mRecyclerView.setVisibility(View.VISIBLE);
|
||||
mGlide.clear(mImageView);
|
||||
}
|
||||
|
||||
adapter.setFavoriteSubscribedSubreddits(favoriteSubscribedSubredditData);
|
||||
});
|
||||
adapter.setFavoriteSubscribedSubreddits(favoriteSubscribedSubredditData);
|
||||
});*/
|
||||
|
||||
return rootView;
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
package eu.toldi.infinityforlemmy.markdown;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.Application;
|
||||
import android.content.Context;
|
||||
import android.text.util.Linkify;
|
||||
|
||||
@ -34,13 +34,13 @@ public class MarkdownUtils {
|
||||
* @return configured Markwon instance
|
||||
*/
|
||||
@NonNull
|
||||
public static Markwon createFullRedditMarkwon(@NonNull Activity context,
|
||||
public static Markwon createFullRedditMarkwon(@NonNull Application context,
|
||||
@NonNull MarkwonPlugin miscPlugin,
|
||||
int markdownColor,
|
||||
int spoilerBackgroundColor,
|
||||
@Nullable BetterLinkMovementMethod.OnLinkLongClickListener onLinkLongClickListener) {
|
||||
return Markwon.builder(context)
|
||||
.usePlugin(GlideImagesPlugin.create(context.getApplicationContext()))
|
||||
.usePlugin(GlideImagesPlugin.create(context))
|
||||
.usePlugin(MarkwonInlineParserPlugin.create(plugin -> {
|
||||
plugin.excludeInlineProcessor(HtmlInlineProcessor.class);
|
||||
}))
|
||||
@ -59,7 +59,7 @@ public class MarkdownUtils {
|
||||
}
|
||||
|
||||
@NonNull
|
||||
public static Markwon createDescriptionMarkwon(Activity context, MarkwonPlugin miscPlugin,
|
||||
public static Markwon createDescriptionMarkwon(Application context, MarkwonPlugin miscPlugin,
|
||||
BetterLinkMovementMethod.OnLinkLongClickListener onLinkLongClickListener) {
|
||||
return Markwon.builder(context)
|
||||
.usePlugin(MarkwonInlineParserPlugin.create(plugin -> {
|
||||
@ -73,7 +73,7 @@ public class MarkdownUtils {
|
||||
.setOnLinkLongClickListener(onLinkLongClickListener)))
|
||||
.usePlugin(LinkifyPlugin.create(Linkify.WEB_URLS))
|
||||
.usePlugin(TableEntryPlugin.create(context))
|
||||
.usePlugin(GlideImagesPlugin.create(context.getApplicationContext()))
|
||||
.usePlugin(GlideImagesPlugin.create(context))
|
||||
.usePlugin(new MarkwonLemmyLinkPlugin())
|
||||
.build();
|
||||
}
|
||||
|
@ -112,7 +112,7 @@ public class CommunitySubscription {
|
||||
SubredditSubscriptionListener subredditSubscriptionListener) {
|
||||
executor.execute(() -> {
|
||||
SubscribedSubredditData subscribedSubredditData = new SubscribedSubredditData(subredditData.getId(), subredditData.getName(), LemmyUtils.actorID2FullName(subredditData.getActorId()),
|
||||
subredditData.getIconUrl(), accountName, false);
|
||||
subredditData.getIconUrl(), accountName);
|
||||
if (accountName.equals("-")) {
|
||||
if (!redditDataRoomDatabase.accountDao().isAnonymousAccountInserted()) {
|
||||
redditDataRoomDatabase.accountDao().insert(Account.getAnonymousAccount());
|
||||
|
@ -33,7 +33,4 @@ public interface SubscribedSubredditDao {
|
||||
|
||||
@Query("DELETE FROM subscribed_subreddits WHERE name = :subredditName COLLATE NOCASE AND username = :accountName COLLATE NOCASE")
|
||||
void deleteSubscribedSubreddit(String subredditName, String accountName);
|
||||
|
||||
@Query("SELECT * from subscribed_subreddits WHERE username = :qualified_name AND name LIKE '%' || :searchQuery || '%' COLLATE NOCASE AND is_favorite = 1 ORDER BY name COLLATE NOCASE ASC")
|
||||
LiveData<List<SubscribedSubredditData>> getAllFavoriteSubscribedSubredditsWithSearchQuery(String qualified_name, String searchQuery);
|
||||
}
|
||||
|
@ -4,7 +4,6 @@ import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.room.ColumnInfo;
|
||||
import androidx.room.Entity;
|
||||
import androidx.room.ForeignKey;
|
||||
@ -31,16 +30,12 @@ public class SubscribedSubredditData implements Parcelable {
|
||||
@ColumnInfo(name = "username")
|
||||
private String username;
|
||||
|
||||
@ColumnInfo(name = "is_favorite")
|
||||
private boolean favorite;
|
||||
|
||||
public SubscribedSubredditData(@NonNull int id, String name, @NonNull String qualified_name, String iconUrl, @NonNull String username, boolean favorite) {
|
||||
public SubscribedSubredditData(@NonNull int id, String name, @NonNull String qualified_name, String iconUrl, @NonNull String username) {
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
this.iconUrl = iconUrl;
|
||||
this.username = username;
|
||||
this.qualified_name = qualified_name;
|
||||
this.favorite = favorite;
|
||||
}
|
||||
|
||||
public SubscribedSubredditData(@NonNull SubredditData communityData) {
|
||||
@ -49,7 +44,6 @@ public class SubscribedSubredditData implements Parcelable {
|
||||
this.iconUrl = communityData.getIconUrl();
|
||||
this.username = "-";
|
||||
this.qualified_name = LemmyUtils.actorID2FullName(communityData.getActorId());
|
||||
this.favorite = false;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
@ -95,7 +89,6 @@ public class SubscribedSubredditData implements Parcelable {
|
||||
parcel.writeString(iconUrl);
|
||||
parcel.writeString(username);
|
||||
parcel.writeString(qualified_name);
|
||||
parcel.writeByte((byte) (favorite ? 1 : 0));
|
||||
}
|
||||
|
||||
public SubscribedSubredditData(Parcel in) {
|
||||
@ -104,7 +97,6 @@ public class SubscribedSubredditData implements Parcelable {
|
||||
iconUrl = in.readString();
|
||||
username = in.readString();
|
||||
qualified_name = in.readString();
|
||||
favorite = in.readByte() != 0;
|
||||
}
|
||||
|
||||
public static final Creator<SubscribedSubredditData> CREATOR = new Creator<>() {
|
||||
@ -118,25 +110,4 @@ public class SubscribedSubredditData implements Parcelable {
|
||||
return new SubscribedSubredditData[size];
|
||||
}
|
||||
};
|
||||
|
||||
public boolean isFavorite() {
|
||||
return favorite;
|
||||
}
|
||||
|
||||
public void setFavorite(boolean favorite) {
|
||||
this.favorite = favorite;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return id;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(@Nullable Object obj) {
|
||||
if (obj instanceof SubscribedSubredditData) {
|
||||
return id == ((SubscribedSubredditData) obj).getId();
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -21,10 +21,6 @@ public class SubscribedSubredditRepository {
|
||||
return mSubscribedSubredditDao.getAllSubscribedSubredditsWithSearchQuery(mAccountName, searchQuery);
|
||||
}
|
||||
|
||||
public LiveData<List<SubscribedSubredditData>> getAllFavoriteSubscribedSubredditsWithSearchQuery(String searchQuery) {
|
||||
return mSubscribedSubredditDao.getAllFavoriteSubscribedSubredditsWithSearchQuery(mAccountName, searchQuery);
|
||||
}
|
||||
|
||||
public void insert(SubscribedSubredditData subscribedSubredditData) {
|
||||
new insertAsyncTask(mSubscribedSubredditDao).execute(subscribedSubredditData);
|
||||
}
|
||||
|
@ -17,7 +17,6 @@ import eu.toldi.infinityforlemmy.RedditDataRoomDatabase;
|
||||
public class SubscribedSubredditViewModel extends AndroidViewModel {
|
||||
private SubscribedSubredditRepository mSubscribedSubredditRepository;
|
||||
private LiveData<List<SubscribedSubredditData>> mAllSubscribedSubreddits;
|
||||
private LiveData<List<SubscribedSubredditData>> mAllFavoriteSubscribedSubreddits;
|
||||
private MutableLiveData<String> searchQueryLiveData;
|
||||
|
||||
public SubscribedSubredditViewModel(Application application, RedditDataRoomDatabase redditDataRoomDatabase, String accountName) {
|
||||
@ -27,17 +26,12 @@ public class SubscribedSubredditViewModel extends AndroidViewModel {
|
||||
searchQueryLiveData.postValue("");
|
||||
|
||||
mAllSubscribedSubreddits = Transformations.switchMap(searchQueryLiveData, searchQuery -> mSubscribedSubredditRepository.getAllSubscribedSubredditsWithSearchQuery(searchQuery));
|
||||
mAllFavoriteSubscribedSubreddits = Transformations.switchMap(searchQueryLiveData, searchQuery -> mSubscribedSubredditRepository.getAllFavoriteSubscribedSubredditsWithSearchQuery(searchQuery));
|
||||
}
|
||||
|
||||
public LiveData<List<SubscribedSubredditData>> getAllSubscribedSubreddits() {
|
||||
return mAllSubscribedSubreddits;
|
||||
}
|
||||
|
||||
public LiveData<List<SubscribedSubredditData>> getAllFavoriteSubscribedSubreddits() {
|
||||
return mAllFavoriteSubscribedSubreddits;
|
||||
}
|
||||
|
||||
public void insert(SubscribedSubredditData subscribedSubredditData) {
|
||||
mSubscribedSubredditRepository.insert(subscribedSubredditData);
|
||||
}
|
||||
|
@ -80,7 +80,6 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:visibility="gone"
|
||||
android:id="@+id/community_statistics_block_view_subreddit_detail_activity">
|
||||
|
||||
<ImageView
|
||||
|
@ -86,7 +86,6 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
android:id="@+id/user_statistics_block_view_user_detail_activity">
|
||||
|
||||
<TextView
|
||||
|
@ -76,12 +76,11 @@
|
||||
app:chipStrokeColor="#00000000" />
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/community_statistics_block_view_subreddit_detail_activity"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:visibility="gone">
|
||||
android:id="@+id/community_statistics_block_view_subreddit_detail_activity">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/subscriber_count_image_view_view_subreddit_detail_activity"
|
||||
|
@ -86,7 +86,6 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
android:id="@+id/user_statistics_block_view_user_detail_activity">
|
||||
|
||||
<TextView
|
||||
|
@ -79,7 +79,6 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:layout_marginBottom="16dp"
|
||||
android:visibility="gone"
|
||||
android:id="@+id/community_statistics_block_view_subreddit_detail_activity">
|
||||
|
||||
<ImageView
|
||||
|
@ -86,7 +86,6 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:visibility="gone"
|
||||
android:id="@+id/user_statistics_block_view_user_detail_activity">
|
||||
|
||||
<TextView
|
||||
|
@ -8,143 +8,19 @@
|
||||
|
||||
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
||||
android:id="@+id/swipe_refresh_layout_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior">
|
||||
|
||||
<LinearLayout
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/markdown_recycler_view_sidebar_fragment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical">
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
style="?attr/materialCardViewElevatedStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
app:cardCornerRadius="16dp"
|
||||
app:cardElevation="2dp">
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/markdown_recycler_view_sidebar_fragment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:clipToPadding="false"
|
||||
android:paddingStart="8dp"
|
||||
android:paddingTop="8dp"
|
||||
android:paddingEnd="8dp"
|
||||
android:paddingBottom="144dp" />
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
<com.google.android.material.card.MaterialCardView
|
||||
style="?attr/materialCardViewElevatedStyle"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="8dp"
|
||||
android:layout_marginBottom="8dp"
|
||||
app:cardCornerRadius="16dp"
|
||||
app:cardElevation="2dp">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/community_statistics_block_sidebar_fragment"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="16dp"
|
||||
android:visibility="gone"
|
||||
android:layout_marginBottom="16dp">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/subscriber_count_image_view_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="8dp"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/ic_person_24" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/subscriber_count_text_view_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:text="@string/subscribers_number_detail"
|
||||
app:layout_constraintStart_toEndOf="@+id/subscriber_count_image_view_sidebar_fragment"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/guideline7"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.5" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/active_user_count_image_view_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="8dp"
|
||||
app:layout_constraintStart_toStartOf="@+id/guideline7"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:srcCompat="@drawable/ic_bolt_24" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/active_user_count_text_view_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="10dp"
|
||||
android:text="@string/active_users_number_detail"
|
||||
app:layout_constraintStart_toEndOf="@+id/active_user_count_image_view_sidebar_fragment"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/post_count_image_view_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="16dp"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/subscriber_count_image_view_sidebar_fragment"
|
||||
app:srcCompat="@drawable/ic_post_add_24" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/post_count_text_view_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="18dp"
|
||||
android:text="@string/post_count_detail"
|
||||
app:layout_constraintStart_toEndOf="@+id/post_count_image_view_sidebar_fragment"
|
||||
app:layout_constraintTop_toBottomOf="@+id/subscriber_count_image_view_sidebar_fragment" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/comment_count_image_view_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="16dp"
|
||||
app:layout_constraintStart_toStartOf="@+id/guideline7"
|
||||
app:layout_constraintTop_toBottomOf="@+id/active_user_count_image_view_sidebar_fragment"
|
||||
app:srcCompat="@drawable/ic_comment_black_24" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/comment_count_text_view_sidebar_fragment"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="8dp"
|
||||
android:layout_marginTop="18dp"
|
||||
android:text="@string/comment_count_detail"
|
||||
app:layout_constraintStart_toEndOf="@+id/comment_count_image_view_sidebar_fragment"
|
||||
app:layout_constraintTop_toBottomOf="@+id/active_user_count_image_view_sidebar_fragment" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</com.google.android.material.card.MaterialCardView>
|
||||
|
||||
</LinearLayout>
|
||||
android:paddingTop="8dp"
|
||||
android:paddingBottom="144dp"
|
||||
android:paddingStart="8dp"
|
||||
android:paddingEnd="8dp"
|
||||
android:clipToPadding="false" />
|
||||
|
||||
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
|
||||
|
||||
|
@ -24,12 +24,4 @@
|
||||
android:fontFamily="?attr/font_family"
|
||||
android:layout_gravity="center_vertical" />
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/favorite_image_view_item_subscribed_thing"
|
||||
android:layout_width="24dp"
|
||||
android:layout_height="24dp"
|
||||
android:layout_gravity="end|center_vertical"
|
||||
android:layout_marginStart="32dp" />
|
||||
|
||||
|
||||
</LinearLayout>
|
Loading…
x
Reference in New Issue
Block a user