39 Commits

Author SHA1 Message Date
Balazs Toldi
ffc2d669e5 Show images in comments and post
Replace image links in posts and comments with actual images.
2023-08-05 19:07:23 +02:00
Bazsalanszky
926e1162f0 Removed more reddit related options
Removed options related to reddit, like flairs and awards.
2023-08-05 18:06:50 +02:00
Bazsalanszky
6cf69ee26d Disable downvote button when downvotes are disable on the account's instance
This commit hides the downvote button from account where the instance disabled the downvote functionality.

Note: You need to switch accounts to take effect!
2023-08-05 17:09:48 +02:00
Bazsalanszky
279820c1be Remove award and flair related settings
These do not work on Lemmy. We do not need them.
2023-08-05 16:27:58 +02:00
Bazsalanszky
1d7031f3d4 Fix issues related to image loading
Resolved some issues related to loading icons of users on community pages
2023-08-05 16:20:33 +02:00
Bazsalanszky
252e00b67a Fix issue related to loading community data
In some cases loading the creation date of the community made the app crash. Now it has been resolved.
2023-08-05 16:19:37 +02:00
Bazsalanszky
a8d63c7480 Fix loading community and user images
This commit resolves two issues:
1. Loading community icons on the homepage sometimes showed the wrong community icon
2. Loading user avatars failed before when tried them in the comments
2023-08-05 16:01:28 +02:00
Bazsalanszky
2020172b56 Unsave comment fix
Resolve issue where unsaving the app crashes the app.

Closes #55
2023-08-05 14:41:31 +02:00
Bazsalanszky
2d55a4c8ec Fix issue with NSFW Communites
This commit resolves the issue where posts from NSFW communities appeared on the Home page, but not when opening the community it self.

Closes #49
2023-08-05 14:32:15 +02:00
Bazsalanszky
20a3e0220b Fix CrashReportsFragment url
Now uses the our repo instead of the upstream one!
2023-08-05 14:21:44 +02:00
Bazsalanszky
feeeefa2d2 Possible fix to loading videos on home page 2023-08-05 14:21:08 +02:00
Bazsalanszky
d25137020f Bug report template 2023-08-05 14:19:23 +02:00
Bazsalanszky
3c4fb4162e Merge remote-tracking branch 'origin/master' 2023-08-05 14:17:27 +02:00
Bazsalanszky
28e9ae950e Bug report issue template 2023-08-05 14:16:22 +02:00
Bazsalanszky
888e741aa9 Parse video posts
Parse post with direct links to videos as Video type posts. Autoplay also works with these.
2023-08-05 13:57:07 +02:00
Bazsalanszky
9f7a6e1738 Merge pull request 'I replaced the empty community icon with one that uses a lemmy-like icon instead' (#57) from carrotcake/Infinity-For-Lemmy:new-picture into master
Reviewed-on: https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy/pulls/57
2023-08-05 11:34:53 +00:00
Bazsalanszky
76f4a0738f Merge pull request 'Update locale-pt' (#53) from American_Jesus/Infinity-For-Lemmy:locale-pt into master
Reviewed-on: https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy/pulls/53
2023-08-05 11:33:16 +00:00
carrotcake
63327946be I replaced the empty community icon with one that uses a lemmy-like icon instead 2023-08-04 22:58:56 -04:00
Bazsalanszky
84d90adc54 Updated fastlane short description 2023-08-04 17:09:36 +02:00
Generator
cf15732a39 fix string 2023-08-04 15:38:14 +01:00
Generator
2eee73753f change Popular to Local 2023-08-04 15:33:37 +01:00
Generator
62d097357a fix strings and typos 2023-08-04 15:29:41 +01:00
Bazsalanszky
c35a690335 Updated README with more accureate information
Updated README to report all the supported features by the app.
2023-08-04 16:17:17 +02:00
Generator
18af76ce92 update locale pt 2023-08-04 15:13:11 +01:00
Bazsalanszky
6e7256d9a5 Minor fix for "Cake day" parsing
It now only shows the date
2023-08-04 15:59:18 +02:00
Bazsalanszky
2af6c5a742 Show more context when loading a single comment
This commit makes it so that when loading a single comment (e.g. from the inbox) it also shows the parent comment.

Closes #47
2023-08-04 15:55:40 +02:00
Bazsalanszky
5c39fddbc6 Fix bug with the "show all comments" button
Fix bug where if the "Show all comments" button is pressed, the original comment disappears.
Closes #36
2023-08-04 15:30:20 +02:00
Bazsalanszky
a708853199 Fix community icon on compact view
Closes #43
2023-08-04 15:22:53 +02:00
Bazsalanszky
acb651cf92 Merge pull request 'Remove reddit related stuff' (#51) from reddit_removal into master
Reviewed-on: https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy/pulls/51
2023-08-04 13:06:20 +00:00
Bazsalanszky
562c91acb2 Fix sort types in settings
Closes #25
2023-08-04 15:00:42 +02:00
Bazsalanszky
484f9607b1 Removed description from the community view page
The community's description was shown both on the community page (bellow the subscription button) and on the about page. Now it's only on the about page, to make the UI less cluttered.
Closes #42
2023-08-04 14:38:34 +02:00
Bazsalanszky
9149ee224c Better since time on Community Pages 2023-08-04 14:34:30 +02:00
Bazsalanszky
1bb1d3b9af Fix sort types on search page
Closes #19
2023-08-04 14:05:40 +02:00
Bazsalanszky
0b76390069 View user bug fix
Resolved the issue where clicking on a user from the inbox was not functioning properly.
2023-08-04 13:19:24 +02:00
Bazsalanszky
5de8751079 Remove some reddit specific options from a few places
Removed multireddits. Also remove the "random" option from the "more options" menu
2023-08-04 13:19:24 +02:00
Bazsalanszky
4bfe1b0c02 Remove unused elements from navigation drawer
This makes it more accurate for Lemmy.
2023-08-04 13:19:24 +02:00
Kuro
15c1676d0b Removed mentionings of reddit in english and german and a few mentionings in other languages. 2023-08-04 13:19:24 +02:00
Bazsalanszky
49ff90aad1 Merge pull request 'Removed mentionings of reddit in english and german and a few mentionings in other languages.' (#44) from Kuro/Infinity-For-Lemmy:removing_reddit_strings into master
Reviewed-on: https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy/pulls/44
2023-08-04 07:48:20 +00:00
Kuro
6adaaf1965 Removed mentionings of reddit in english and german and a few mentionings in other languages. 2023-08-03 15:28:27 +02:00
72 changed files with 653 additions and 499 deletions

View File

@@ -0,0 +1,49 @@
---
name: "Bug Report"
about: "Report a Bug!"
title: " [Bug] "
ref: "master"
labels:
- Kind/Bug
---
### Description of the Issue:
<!-- Provide a clear and concise description of what the issue is about. -->
### Steps to Reproduce:
<!-- Explain the steps to reproduce the issue, if applicable. -->
1.
2.
3.
### Expected Behavior:
<!-- Describe what you expected to happen. -->
### Actual Behavior:
<!-- Describe what actually happened. Include screenshots if applicable. -->
### App Information:
- **Version:** <!-- e.g. 1.0.0 -->
- **Device:** <!-- e.g. Samsung Galaxy S10 -->
- **Android Version:** <!-- e.g. Android 11 -->
- **Installation Source:** <!-- e.g. Google Play Store, APK -->
### Log Files:
<!-- If applicable, include log files or error messages related to this issue. -->
### Additional Context:
<!-- Add any other context about the problem here, such as relevant system configuration or screenshots. -->
### Potential Solutions or Workarounds:
<!-- If you know of any potential solutions or workarounds for this issue, please describe them here. -->

View File

@@ -16,6 +16,7 @@ A Lemmy client for Android written in Java. It's a fork of the [Infinity for Red
<div align="center">
[![status-badge](https://ci.codeberg.org/api/badges/12474/status.svg)](https://ci.codeberg.org/12474)
[![Liberapay patrons](https://img.shields.io/liberapay/patrons/bazsalanszky)](https://liberapay.com/Bazsalanszky)
<a href="https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy/issues">Report a Bug</a>
@@ -41,11 +42,14 @@ Infinity for Lemmy is currently in the early stages of development. Expect many
- [x] Support for multiple account handling
- [x] Functionality for post upvotes/downvotes
- [x] Functionality to browse comments
- [ ] Capability for creating a new post
- [x] Capability for creating a new post
- [x] Ability to create comments
- [x] Edit/Delete posts and comments
- [x] Basic inbox
- [ ] Elimination of code/string references specific to Reddit
- [ ] Incorporation of private messaging feature
- [ ] Feature for saving posts
- [x] Feature for saving posts/comments
- [x] Resolving links
- [ ] Account editing function
- [ ] Multi community view?

View File

@@ -38,7 +38,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}, version = 23)
ReadPost.class, PostFilter.class, PostFilterUsage.class, AnonymousMultiredditSubreddit.class}, version = 24)
public abstract class RedditDataRoomDatabase extends RoomDatabase {
public static RedditDataRoomDatabase create(final Context context) {
@@ -49,7 +49,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_21_22, MIGRATION_22_23, MIGRATION_23_24)
.build();
}
@@ -383,4 +383,11 @@ public abstract class RedditDataRoomDatabase extends RoomDatabase {
}
}
};
private static final Migration MIGRATION_23_24 = new Migration(23, 24) {
@Override
public void migrate(@NonNull SupportSQLiteDatabase database) {
database.execSQL("ALTER TABLE accounts ADD COLUMN can_downvote INTEGER DEFAULT 1 NOT NULL");
}
};
}

View File

@@ -32,6 +32,9 @@ public class Account implements Parcelable {
@ColumnInfo(name = "instance_url")
private String instance_url;
@ColumnInfo(name = "can_downvote")
private boolean canDownvote = true;
@Ignore
protected Account(Parcel in) {
accountName = in.readString();
@@ -42,6 +45,7 @@ public class Account implements Parcelable {
code = in.readString();
isCurrentUser = in.readByte() != 0;
instance_url = in.readString();
canDownvote = in.readByte() != 0;
}
public static final Creator<Account> CREATOR = new Creator<Account>() {
@@ -58,11 +62,11 @@ public class Account implements Parcelable {
@Ignore
public static Account getAnonymousAccount() {
return new Account("-",null, null, null, null, null, false,null);
return new Account("-",null, null, null, null, null, false,null,true);
}
public Account(@NonNull String accountName, String display_name, String accessToken, String code,
String profileImageUrl, String bannerImageUrl, boolean isCurrentUser,String instance_url) {
String profileImageUrl, String bannerImageUrl, boolean isCurrentUser,String instance_url, boolean canDownvote) {
this.accountName = accountName;
this.display_name = display_name;
this.accessToken = accessToken;
@@ -71,6 +75,7 @@ public class Account implements Parcelable {
this.bannerImageUrl = bannerImageUrl;
this.isCurrentUser = isCurrentUser;
this.instance_url = instance_url;
this.canDownvote = canDownvote;
}
@NonNull
@@ -116,6 +121,10 @@ public class Account implements Parcelable {
return instance_url;
}
public boolean canDownvote() {
return canDownvote;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(accountName);
@@ -126,5 +135,6 @@ public class Account implements Parcelable {
dest.writeString(code);
dest.writeByte((byte) (isCurrentUser ? 1 : 0));
dest.writeString(instance_url);
dest.writeByte((byte) (canDownvote ? 1 : 0));
}
}

View File

@@ -227,6 +227,7 @@ public class LinkResolverActivity extends AppCompatActivity {
intent.putExtra(ViewPostDetailActivity.EXTRA_MESSAGE_FULLNAME, messageFullname);
intent.putExtra(ViewPostDetailActivity.EXTRA_NEW_ACCOUNT_NAME, newAccountName);
intent.putExtra(ViewPostDetailActivity.EXTRA_SINGLE_COMMENT_ID, comment.getId());
intent.putExtra(ViewPostDetailActivity.EXTRA_SINGLE_COMMENT_PARENT_ID, comment.getParentId());
startActivity(intent);
}
@@ -246,6 +247,7 @@ public class LinkResolverActivity extends AppCompatActivity {
intent.putExtra(ViewPostDetailActivity.EXTRA_MESSAGE_FULLNAME, messageFullname);
intent.putExtra(ViewPostDetailActivity.EXTRA_NEW_ACCOUNT_NAME, newAccountName);
intent.putExtra(ViewPostDetailActivity.EXTRA_SINGLE_COMMENT_ID, comment.getId());
intent.putExtra(ViewPostDetailActivity.EXTRA_SINGLE_COMMENT_PARENT_ID, comment.getParentId());
startActivity(intent);
}

View File

@@ -43,6 +43,8 @@ import eu.toldi.infinityforlemmy.asynctasks.ParseAndInsertNewAccount;
import eu.toldi.infinityforlemmy.customtheme.CustomThemeWrapper;
import eu.toldi.infinityforlemmy.customviews.slidr.Slidr;
import eu.toldi.infinityforlemmy.dto.AccountLoginDTO;
import eu.toldi.infinityforlemmy.site.FetchSiteInfo;
import eu.toldi.infinityforlemmy.site.SiteInfo;
import eu.toldi.infinityforlemmy.utils.SharedPreferencesUtils;
import eu.toldi.infinityforlemmy.utils.Utils;
import retrofit2.Call;
@@ -176,17 +178,35 @@ public class LoginActivity extends BaseActivity {
accessToken, new FetchMyInfo.FetchMyInfoListener() {
@Override
public void onFetchMyInfoSuccess(String name, String display_name, String profileImageUrl, String bannerImageUrl) {
FetchSiteInfo.fetchSiteInfo(mRetrofit.getRetrofit(), accessToken, new FetchSiteInfo.FetchSiteInfoListener() {
@Override
public void onFetchSiteInfoSuccess(SiteInfo siteInfo) {
boolean canDownvote = siteInfo.isEnable_downvotes();
ParseAndInsertNewAccount.parseAndInsertNewAccount(mExecutor, new Handler(), name,display_name, accessToken, profileImageUrl, bannerImageUrl, authCode,instance,canDownvote, mRedditDataRoomDatabase.accountDao(),
() -> {
Intent resultIntent = new Intent();
setResult(Activity.RESULT_OK, resultIntent);
finish();
});
mCurrentAccountSharedPreferences.edit().putBoolean(SharedPreferencesUtils.CAN_DOWNVOTE, canDownvote).apply();
}
@Override
public void onFetchSiteInfoFailed() {
ParseAndInsertNewAccount.parseAndInsertNewAccount(mExecutor, new Handler(), name,display_name, accessToken, profileImageUrl, bannerImageUrl, authCode,instance,true, mRedditDataRoomDatabase.accountDao(),
() -> {
Intent resultIntent = new Intent();
setResult(Activity.RESULT_OK, resultIntent);
finish();
});
mCurrentAccountSharedPreferences.edit().putBoolean(SharedPreferencesUtils.CAN_DOWNVOTE, true).apply();
}
});
mCurrentAccountSharedPreferences.edit().putString(SharedPreferencesUtils.ACCESS_TOKEN, accessToken)
.putString(SharedPreferencesUtils.ACCOUNT_NAME, display_name)
.putString(SharedPreferencesUtils.ACCOUNT_QUALIFIED_NAME, name)
.putString(SharedPreferencesUtils.ACCOUNT_INSTANCE,instance)
.putString(SharedPreferencesUtils.ACCOUNT_IMAGE_URL, profileImageUrl).apply();
ParseAndInsertNewAccount.parseAndInsertNewAccount(mExecutor, new Handler(), name,display_name, accessToken, profileImageUrl, bannerImageUrl, authCode,instance, mRedditDataRoomDatabase.accountDao(),
() -> {
Intent resultIntent = new Intent();
setResult(Activity.RESULT_OK, resultIntent);
finish();
});
}
@Override

View File

@@ -1400,10 +1400,6 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
goToUser();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_RANDOM: {
randomThing();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_HIDE_READ_POSTS: {
if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.hideReadPosts();

View File

@@ -558,10 +558,6 @@ public class SearchResultActivity extends BaseActivity implements SortTypeSelect
goToUser();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_RANDOM: {
random();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_HIDE_READ_POSTS: {
if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.hideReadPosts();

View File

@@ -233,7 +233,7 @@ public class SubscribedThingListingActivity extends BaseActivity implements Acti
});
sectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(sectionsPagerAdapter);
viewPager.setOffscreenPageLimit(3);
viewPager.setOffscreenPageLimit(1);
if (viewPager.getCurrentItem() != 2) {
fab.hide();
}
@@ -358,7 +358,7 @@ public class SubscribedThingListingActivity extends BaseActivity implements Acti
}
if (!(!forceLoad && mInsertMultiredditSuccess)) {
loadMultiReddits();
//loadMultiReddits();
}
}
@@ -412,7 +412,7 @@ public class SubscribedThingListingActivity extends BaseActivity implements Acti
public void success() {
Toast.makeText(SubscribedThingListingActivity.this,
R.string.delete_multi_reddit_success, Toast.LENGTH_SHORT).show();
loadMultiReddits();
//loadMultiReddits();
}
@Override
@@ -439,7 +439,7 @@ public class SubscribedThingListingActivity extends BaseActivity implements Acti
@Subscribe
public void onRefreshMultiRedditsEvent(RefreshMultiRedditsEvent event) {
loadMultiReddits();
//loadMultiReddits();
}
@Override
@@ -477,6 +477,7 @@ public class SubscribedThingListingActivity extends BaseActivity implements Acti
@Override
public Fragment getItem(int position) {
switch (position) {
default:
case 0: {
SubscribedSubredditsListingFragment fragment = new SubscribedSubredditsListingFragment();
Bundle bundle = new Bundle();
@@ -487,28 +488,12 @@ public class SubscribedThingListingActivity extends BaseActivity implements Acti
fragment.setArguments(bundle);
return fragment;
}
case 1: {
FollowedUsersListingFragment fragment = new FollowedUsersListingFragment();
Bundle bundle = new Bundle();
bundle.putString(FollowedUsersListingFragment.EXTRA_ACCOUNT_NAME, mAccountName == null ? "-" : mAccountName);
bundle.putString(FollowedUsersListingFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
fragment.setArguments(bundle);
return fragment;
}
default: {
MultiRedditListingFragment fragment = new MultiRedditListingFragment();
Bundle bundle = new Bundle();
bundle.putString(MultiRedditListingFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
bundle.putString(MultiRedditListingFragment.EXTRA_ACCOUNT_NAME, mAccountName == null ? "-" : mAccountName);
fragment.setArguments(bundle);
return fragment;
}
}
}
@Override
public int getCount() {
return 3;
return 1;
}
@Override

View File

@@ -946,10 +946,6 @@ public class ViewMultiRedditDetailActivity extends BaseActivity implements SortT
goToUser();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_RANDOM: {
random();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_HIDE_READ_POSTS: {
if (mFragment instanceof PostFragment) {
((PostFragment) mFragment).hideReadPosts();

View File

@@ -95,6 +95,7 @@ public class ViewPostDetailActivity extends BaseActivity implements SortTypeSele
public static final String EXTRA_POST_ID = "EPI";
public static final String EXTRA_POST_LIST_POSITION = "EPLP";
public static final String EXTRA_SINGLE_COMMENT_ID = "ESCI";
public static final String EXTRA_SINGLE_COMMENT_PARENT_ID = "ESCPI";
public static final String EXTRA_CONTEXT_NUMBER = "ECN";
public static final String EXTRA_MESSAGE_FULLNAME = "ENI";
public static final String EXTRA_NEW_ACCOUNT_NAME = "ENAN";
@@ -870,6 +871,7 @@ public class ViewPostDetailActivity extends BaseActivity implements SortTypeSele
bundle.putParcelable(ViewPostDetailFragment.EXTRA_POST_DATA, post);
bundle.putInt(ViewPostDetailFragment.EXTRA_POST_LIST_POSITION, position);
bundle.putInt(ViewPostDetailFragment.EXTRA_SINGLE_COMMENT_ID, getIntent().getIntExtra(EXTRA_SINGLE_COMMENT_ID, 0));
bundle.putInt(ViewPostDetailFragment.EXTRA_SINGLE_COMMENT_PARENT_ID, getIntent().getIntExtra(EXTRA_SINGLE_COMMENT_PARENT_ID, 0));
bundle.putString(ViewPostDetailFragment.EXTRA_CONTEXT_NUMBER, getIntent().getStringExtra(EXTRA_CONTEXT_NUMBER));
bundle.putString(ViewPostDetailFragment.EXTRA_MESSAGE_FULLNAME, getIntent().getStringExtra(EXTRA_MESSAGE_FULLNAME));
} else {
@@ -891,6 +893,7 @@ public class ViewPostDetailActivity extends BaseActivity implements SortTypeSele
bundle.putInt(ViewPostDetailFragment.EXTRA_POST_LIST_POSITION, postListPosition);
}
bundle.putInt(ViewPostDetailFragment.EXTRA_SINGLE_COMMENT_ID, getIntent().getIntExtra(EXTRA_SINGLE_COMMENT_ID, 0));
bundle.putInt(ViewPostDetailFragment.EXTRA_SINGLE_COMMENT_PARENT_ID, getIntent().getIntExtra(EXTRA_SINGLE_COMMENT_PARENT_ID, 0));
bundle.putString(ViewPostDetailFragment.EXTRA_CONTEXT_NUMBER, getIntent().getStringExtra(EXTRA_CONTEXT_NUMBER));
bundle.putString(ViewPostDetailFragment.EXTRA_MESSAGE_FULLNAME, getIntent().getStringExtra(EXTRA_MESSAGE_FULLNAME));
}

View File

@@ -554,12 +554,9 @@ public class ViewSubredditDetailActivity extends BaseActivity implements SortTyp
creationTimeTextView.setText(subredditData.getCreatedUTC());
description = subredditData.getDescription();
if (hideSubredditDescription || description.equals("")) {
descriptionTextView.setVisibility(View.GONE);
} else {
descriptionTextView.setVisibility(View.VISIBLE);
markwon.setMarkdown(descriptionTextView, description);
}
descriptionTextView.setVisibility(View.GONE);
if (subredditData.isNSFW()) {
if (nsfwWarningBuilder == null
@@ -1402,10 +1399,6 @@ public class ViewSubredditDetailActivity extends BaseActivity implements SortTyp
goToUser();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_RANDOM: {
random();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_HIDE_READ_POSTS: {
if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.hideReadPosts();

View File

@@ -1341,10 +1341,7 @@ public class ViewUserDetailActivity extends BaseActivity implements SortTypeSele
goToUser();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_RANDOM: {
random();
break;
}
case FABMoreOptionsBottomSheetFragment.FAB_HIDE_READ_POSTS: {
if (sectionsPagerAdapter != null) {
sectionsPagerAdapter.hideReadPosts();

View File

@@ -472,6 +472,7 @@ public class CommentsListingRecyclerViewAdapter extends PagedListAdapter<Comment
Intent intent = new Intent(mActivity, ViewPostDetailActivity.class);
intent.putExtra(ViewPostDetailActivity.EXTRA_POST_ID, comment.getPostId());
intent.putExtra(ViewPostDetailActivity.EXTRA_SINGLE_COMMENT_ID, comment.getId());
intent.putExtra(ViewPostDetailActivity.EXTRA_SINGLE_COMMENT_PARENT_ID, comment.getParentId());
mActivity.startActivity(intent);
}
});

View File

@@ -392,12 +392,12 @@ public class CommentsRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerVi
if (comment.getAuthorIconUrl() == null) {
mFragment.loadIcon(comment.getAuthorQualifiedName(), (authorName, iconUrl) -> {
if (authorName.equals(comment.getAuthor())) {
if (authorName.equals(comment.getAuthorQualifiedName())) {
comment.setAuthorIconUrl(iconUrl);
}
Comment currentComment = getCurrentComment(holder);
if (currentComment != null && authorName.equals(currentComment.getAuthor())) {
if (currentComment != null && authorName.equals(currentComment.getAuthorQualifiedName())) {
mGlide.load(iconUrl)
.apply(RequestOptions.bitmapTransform(new RoundedCornersTransformation(72, 0)))
.error(mGlide.load(R.drawable.subreddit_default_icon)
@@ -537,12 +537,12 @@ public class CommentsRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerVi
if (comment.getAuthorIconUrl() == null) {
mFragment.loadIcon(comment.getAuthorQualifiedName(), (authorName, iconUrl) -> {
if (authorName.equals(comment.getAuthor())) {
if (authorName.equals(comment.getAuthorQualifiedName())) {
comment.setAuthorIconUrl(iconUrl);
}
Comment currentComment = getCurrentComment(holder);
if (currentComment != null && authorName.equals(currentComment.getAuthor())) {
if (currentComment != null && authorName.equals(currentComment.getAuthorQualifiedName())) {
mGlide.load(iconUrl)
.apply(RequestOptions.bitmapTransform(new RoundedCornersTransformation(72, 0)))
.error(mGlide.load(R.drawable.subreddit_default_icon)
@@ -1548,7 +1548,7 @@ public class CommentsRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerVi
SaveComment saveComment = new SaveComment();
if (comment.isSaved()) {
comment.setSaved(false);
saveComment.unsaveThing(mOauthRetrofit, mAccessToken, comment.getId(), new SaveThing.SaveThingListener() {
saveComment.unsaveThing(mRetrofit, mAccessToken, comment.getId(), new SaveThing.SaveThingListener() {
@Override
public void success() {
comment.setSaved(false);
@@ -1924,6 +1924,7 @@ public class CommentsRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerVi
if (mActivity != null && mActivity instanceof ViewPostDetailActivity) {
mIsSingleCommentThreadMode = false;
mSingleCommentId = null;
loadedComments.clear();
notifyItemRemoved(0);
mFragment.changeToNormalThreadMode();
}

View File

@@ -182,6 +182,9 @@ public class MessageRecyclerViewAdapter extends PagedListAdapter<CommentInteract
intent.putExtra(ViewPostDetailActivity.EXTRA_POST_ID, message.getComment().getPostId());
intent.putExtra(ViewPostDetailActivity.EXTRA_SINGLE_COMMENT_ID, message.getComment().getId());
if(message.getComment().getDepth() > 0) {
intent.putExtra(ViewPostDetailActivity.EXTRA_SINGLE_COMMENT_PARENT_ID, message.getComment().getParentId());
}
mActivity.startActivity(intent);
} else if (mMessageType == FetchMessage.MESSAGE_TYPE_PRIVATE_MESSAGE) {
Intent intent = new Intent(mActivity, ViewPrivateMessagesActivity.class);
@@ -215,7 +218,7 @@ public class MessageRecyclerViewAdapter extends PagedListAdapter<CommentInteract
Intent intent = new Intent(mActivity, ViewUserDetailActivity.class);
intent.putExtra(ViewUserDetailActivity.EXTRA_USER_NAME_KEY, message.getComment().getAuthor());
intent.putExtra(ViewUserDetailActivity.EXTRA_QUALIFIED_USER_NAME_KEY, message.getComment().getCommunityQualifiedName());
intent.putExtra(ViewUserDetailActivity.EXTRA_QUALIFIED_USER_NAME_KEY, message.getComment().getAuthorQualifiedName());
mActivity.startActivity(intent);
});
}

View File

@@ -98,6 +98,7 @@ import eu.toldi.infinityforlemmy.markdown.MarkdownUtils;
import eu.toldi.infinityforlemmy.post.Post;
import eu.toldi.infinityforlemmy.post.PostPagingSource;
import eu.toldi.infinityforlemmy.utils.APIUtils;
import eu.toldi.infinityforlemmy.utils.LemmyUtils;
import eu.toldi.infinityforlemmy.utils.SharedPreferencesUtils;
import eu.toldi.infinityforlemmy.utils.Utils;
import eu.toldi.infinityforlemmy.videoautoplay.CacheManager;
@@ -438,7 +439,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
}
return new PostDetailVideoAutoplayViewHolder(LayoutInflater.from(parent.getContext()).inflate(mLegacyAutoplayVideoControllerUI ? R.layout.item_post_detail_video_autoplay_legacy_controller : R.layout.item_post_detail_video_autoplay, parent, false));
case VIEW_TYPE_POST_DETAIL_VIDEO_AND_GIF_PREVIEW:
if (mDataSavingMode && (mDisableImagePreview || mOnlyDisablePreviewInVideoAndGifPosts)) {
if (mDataSavingMode && (mDisableImagePreview || mOnlyDisablePreviewInVideoAndGifPosts) || mPost.getPreviews().isEmpty()) {
return new PostDetailNoPreviewViewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_post_detail_no_preview, parent, false));
}
return new PostDetailVideoAndGifPreviewHolder(LayoutInflater.from(parent.getContext()).inflate(R.layout.item_post_detail_video_and_gif_preview, parent, false));
@@ -475,8 +476,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
((PostDetailBaseViewHolder) holder).mTitleTextView.setText(mPost.getTitle());
if (mPost.getSubredditNamePrefixed().startsWith("u/")) {
if (mPost.getAuthorIconUrl() == null) {
String authorName = mPost.isAuthorDeleted() ? mPost.getSubredditNamePrefixed().substring(2) : mPost.getAuthor();
LoadUserData.loadUserData(mExecutor, new Handler(), mRedditDataRoomDatabase, authorName, mOauthRetrofit, iconImageUrl -> {
LoadUserData.loadUserData(mExecutor, new Handler(), mRedditDataRoomDatabase,mPost.getAuthorNamePrefixed(), mOauthRetrofit, iconImageUrl -> {
if (mActivity != null && getItemCount() > 0) {
if (iconImageUrl == null || iconImageUrl.equals("")) {
mGlide.load(R.drawable.subreddit_default_icon)
@@ -1219,6 +1219,10 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
this.mSaveButton = mSaveButton;
this.mShareButton = mShareButton;
if(!mCurrentAccountSharedPreferences.getBoolean(SharedPreferencesUtils.CAN_DOWNVOTE,true)){
mDownvoteButton.setVisibility(View.GONE);
}
mIconGifImageView.setOnClickListener(view -> mSubredditTextView.performClick());
mSubredditTextView.setOnClickListener(view -> {
@@ -1765,8 +1769,8 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
} else {
intent.setData(Uri.parse(mPost.getVideoUrl()));
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_DOWNLOAD_URL, mPost.getVideoDownloadUrl());
intent.putExtra(ViewVideoActivity.EXTRA_SUBREDDIT, mPost.getSubredditName());
intent.putExtra(ViewVideoActivity.EXTRA_ID, mPost.getId());
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_TYPE, ViewVideoActivity.VIDEO_TYPE_DIRECT);
}
intent.putExtra(ViewVideoActivity.EXTRA_POST_TITLE, mPost.getTitle());
if (helper != null) {
@@ -2038,8 +2042,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
intent.putExtra(ViewVideoActivity.EXTRA_STREAMABLE_SHORT_CODE, mPost.getStreamableShortCode());
} else {
intent.setData(Uri.parse(mPost.getVideoUrl()));
intent.putExtra(ViewVideoActivity.EXTRA_SUBREDDIT, mPost.getSubredditName());
intent.putExtra(ViewVideoActivity.EXTRA_ID, mPost.getId());
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_TYPE, ViewVideoActivity.VIDEO_TYPE_DIRECT);
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_DOWNLOAD_URL, mPost.getVideoDownloadUrl());
}
intent.putExtra(ViewVideoActivity.EXTRA_POST_TITLE, mPost.getTitle());
@@ -2377,7 +2380,7 @@ public class PostDetailRecyclerViewAdapter extends RecyclerView.Adapter<Recycler
intent.putExtra(ViewVideoActivity.EXTRA_STREAMABLE_SHORT_CODE, mPost.getStreamableShortCode());
} else {
intent.setData(Uri.parse(mPost.getVideoUrl()));
intent.putExtra(ViewVideoActivity.EXTRA_SUBREDDIT, mPost.getSubredditName());
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_TYPE, ViewVideoActivity.VIDEO_TYPE_DIRECT);
intent.putExtra(ViewVideoActivity.EXTRA_ID, mPost.getId());
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_DOWNLOAD_URL, mPost.getVideoDownloadUrl());
}

View File

@@ -542,7 +542,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
if (mDisplaySubredditName) {
if (authorPrefixed.equals(post.getSubredditNamePrefixed())) {
if (post.getAuthorIconUrl() == null) {
mFragment.loadIcon(post.getAuthor(), false, (subredditOrUserName, iconUrl) -> {
mFragment.loadIcon(post.getAuthorNamePrefixed(), false, (subredditOrUserName, iconUrl) -> {
if (mActivity != null && getItemCount() > 0 && post.getAuthor().equals(subredditOrUserName)) {
if (iconUrl == null || iconUrl.equals("")) {
mGlide.load(R.drawable.subreddit_default_icon)
@@ -574,7 +574,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
}
} else {
if (post.getSubredditIconUrl() == null) {
mFragment.loadIcon(post.getSubredditName(), true, (subredditOrUserName, iconUrl) -> {
mFragment.loadIcon(post.getSubredditNamePrefixed(), true, (subredditOrUserName, iconUrl) -> {
if (mActivity != null && getItemCount() > 0 && post.getSubredditName().equals(subredditOrUserName)) {
if (iconUrl == null || iconUrl.equals("")) {
mGlide.load(R.drawable.subreddit_default_icon)
@@ -608,7 +608,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
} else {
if (post.getAuthorIconUrl() == null) {
String authorName = post.isAuthorDeleted() ? post.getSubredditName() : post.getAuthor();
mFragment.loadIcon(authorName, post.isAuthorDeleted(), (subredditOrUserName, iconUrl) -> {
mFragment.loadIcon(post.getSubredditNamePrefixed(), post.isAuthorDeleted(), (subredditOrUserName, iconUrl) -> {
if (mActivity != null && getItemCount() > 0) {
if (iconUrl == null || iconUrl.equals("") && authorName.equals(subredditOrUserName)) {
mGlide.load(R.drawable.subreddit_default_icon)
@@ -913,15 +913,15 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
public void onResourceReady(@NonNull Drawable resource, @Nullable Transition<? super Drawable> transition) {
int width = resource.getIntrinsicWidth();
int height = resource.getIntrinsicHeight();
((PostVideoAutoplayViewHolder) holder).previewImageView.setImageDrawable(resource);
((PostCard2VideoAutoplayViewHolder) holder).previewImageView.setImageDrawable(resource);
if (preview.getPreviewHeight() <= 0 || preview.getPreviewWidth() <= 0) {
((PostVideoAutoplayViewHolder) holder).aspectRatioFrameLayout.setAspectRatio((float) height / width);
((PostVideoAutoplayViewHolder) holder).previewImageView.getLayoutParams().height = height;
((PostCard2VideoAutoplayViewHolder) holder).aspectRatioFrameLayout.setAspectRatio((float) height / width);
((PostCard2VideoAutoplayViewHolder) holder).previewImageView.getLayoutParams().height = height;
preview.setPreviewHeight(height);
preview.setPreviewWidth(width);
} else {
((PostVideoAutoplayViewHolder) holder).aspectRatioFrameLayout.setAspectRatio((float) preview.getPreviewHeight() / preview.getPreviewWidth());
((PostVideoAutoplayViewHolder) holder).previewImageView.getLayoutParams().height = height;
((PostCard2VideoAutoplayViewHolder) holder).aspectRatioFrameLayout.setAspectRatio((float) preview.getPreviewHeight() / preview.getPreviewWidth());
((PostCard2VideoAutoplayViewHolder) holder).previewImageView.getLayoutParams().height = height;
}
}
@@ -1099,7 +1099,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
((PostCompactBaseViewHolder) holder).titleTextView.setTextColor(mReadPostTitleColor);
}
final String subredditNamePrefixed = post.getSubredditNamePrefixed();
String subredditName = subredditNamePrefixed.substring(2);
String subredditName = subredditNamePrefixed;
String authorPrefixed = post.getAuthorNamePrefixed();
final String title = post.getTitle();
int voteType = post.getVoteType();
@@ -1109,8 +1109,8 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
if (mDisplaySubredditName) {
if (authorPrefixed.equals(subredditNamePrefixed)) {
if (post.getAuthorIconUrl() == null) {
mFragment.loadIcon(post.getAuthor(), false, (subredditOrUserName, iconUrl) -> {
if (mActivity != null && getItemCount() > 0 && post.getAuthor().equals(subredditOrUserName)) {
mFragment.loadIcon(post.getAuthorNamePrefixed(), false, (subredditOrUserName, iconUrl) -> {
if (mActivity != null && getItemCount() > 0 && post.getAuthorNamePrefixed().equals(subredditOrUserName)) {
if (iconUrl == null || iconUrl.equals("")) {
mGlide.load(R.drawable.subreddit_default_icon)
.apply(RequestOptions.bitmapTransform(new RoundedCornersTransformation(72, 0)))
@@ -1141,7 +1141,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
}
} else {
if (post.getSubredditIconUrl() == null) {
mFragment.loadIcon(subredditName, true, (subredditOrUserName, iconUrl) -> {
mFragment.loadIcon(subredditNamePrefixed, true, (subredditOrUserName, iconUrl) -> {
if (mActivity != null && getItemCount() > 0 && subredditName.equals(subredditOrUserName)) {
if (iconUrl == null || iconUrl.equals("")) {
mGlide.load(R.drawable.subreddit_default_icon)
@@ -1181,8 +1181,8 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
}
} else {
if (post.getAuthorIconUrl() == null) {
String authorName = post.isAuthorDeleted() ? post.getSubredditName() : post.getAuthor();
mFragment.loadIcon(authorName, post.isAuthorDeleted(), (subredditOrUserName, iconUrl) -> {
String authorName = post.getAuthorNamePrefixed();
mFragment.loadIcon(post.getAuthorNamePrefixed(), false, (subredditOrUserName, iconUrl) -> {
if (mActivity != null && getItemCount() > 0 && authorName.equals(subredditOrUserName)) {
if (iconUrl == null || iconUrl.equals("")) {
mGlide.load(R.drawable.subreddit_default_icon)
@@ -2249,8 +2249,7 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
intent.putExtra(ViewVideoActivity.EXTRA_STREAMABLE_SHORT_CODE, post.getStreamableShortCode());
} else {
intent.setData(Uri.parse(post.getVideoUrl()));
intent.putExtra(ViewVideoActivity.EXTRA_SUBREDDIT, post.getSubredditName());
intent.putExtra(ViewVideoActivity.EXTRA_ID, post.getId());
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_TYPE, ViewVideoActivity.VIDEO_TYPE_DIRECT);
intent.putExtra(ViewVideoActivity.EXTRA_VIDEO_DOWNLOAD_URL, post.getVideoDownloadUrl());
}
intent.putExtra(ViewVideoActivity.EXTRA_POST_TITLE, post.getTitle());
@@ -2371,6 +2370,9 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
this.shareButton = shareButton;
scoreTextView.setOnClickListener(null);
if(!mCurrentAccountSharedPreferences.getBoolean(SharedPreferencesUtils.CAN_DOWNVOTE,true)){
downvoteButton.setVisibility(View.GONE);
}
if (mVoteButtonsOnTheRight) {
ConstraintSet constraintSet = new ConstraintSet();
@@ -3728,6 +3730,10 @@ public class PostRecyclerViewAdapter extends PagingDataAdapter<Post, RecyclerVie
scoreTextView.setOnClickListener(null);
if(!mCurrentAccountSharedPreferences.getBoolean(SharedPreferencesUtils.CAN_DOWNVOTE,true)){
downvoteButton.setVisibility(View.GONE);
}
if (mVoteButtonsOnTheRight) {
ConstraintSet constraintSet = new ConstraintSet();
constraintSet.clone(bottomConstraintLayout);

View File

@@ -24,8 +24,8 @@ public class AccountSectionRecyclerViewAdapter extends RecyclerView.Adapter<Recy
private static final int VIEW_TYPE_MENU_GROUP_TITLE = 1;
private static final int VIEW_TYPE_MENU_ITEM = 2;
private static final int ACCOUNT_SECTION_ITEMS = 5;
private static final int ANONYMOUS_ACCOUNT_SECTION_ITEMS = 3;
private static final int ACCOUNT_SECTION_ITEMS = 4;
private static final int ANONYMOUS_ACCOUNT_SECTION_ITEMS = 2;
private BaseActivity baseActivity;
private int inboxCount;
@@ -101,10 +101,6 @@ public class AccountSectionRecyclerViewAdapter extends RecyclerView.Adapter<Recy
drawableId = R.drawable.ic_subscritptions_bottom_app_bar_24dp;
break;
case 3:
stringId = R.string.multi_reddit;
drawableId = R.drawable.ic_multi_reddit_24dp;
break;
case 4:
setOnClickListener = false;
if (inboxCount > 0) {
((MenuItemViewHolder) holder).menuTextView.setText(baseActivity.getString(R.string.inbox_with_count, inboxCount));
@@ -118,23 +114,21 @@ public class AccountSectionRecyclerViewAdapter extends RecyclerView.Adapter<Recy
});
break;
default:
stringId = R.string.history;
drawableId = R.drawable.ic_history_24dp;
stringId = R.string.account_saved_thing_activity_label;
drawableId = R.drawable.ic_outline_bookmarks_24dp;
break;
}
} else {
switch (position) {
case 1:
stringId = R.string.subscriptions;
drawableId = R.drawable.ic_subscritptions_bottom_app_bar_24dp;
break;
case 2:
stringId = R.string.multi_reddit;
drawableId = R.drawable.ic_multi_reddit_24dp;
break;
default:
stringId = R.string.history;
drawableId = R.drawable.ic_history_24dp;
stringId = R.string.anonymous_account_instance;
drawableId = R.drawable.ic_account_circle_24dp;
break;
}
}

View File

@@ -17,8 +17,6 @@ import eu.toldi.infinityforlemmy.subscribedsubreddit.SubscribedSubredditData;
public class NavigationDrawerRecyclerViewMergedAdapter {
private HeaderSectionRecyclerViewAdapter headerSectionRecyclerViewAdapter;
private AccountSectionRecyclerViewAdapter accountSectionRecyclerViewAdapter;
private RedditSectionRecyclerViewAdapter redditSectionRecyclerViewAdapter;
private PostSectionRecyclerViewAdapter postSectionRecyclerViewAdapter;
private PreferenceSectionRecyclerViewAdapter preferenceSectionRecyclerViewAdapter;
private FavoriteSubscribedSubredditsSectionRecyclerViewAdapter favoriteSubscribedSubredditsSectionRecyclerViewAdapter;
private SubscribedSubredditsRecyclerViewAdapter subscribedSubredditsRecyclerViewAdapter;
@@ -49,10 +47,6 @@ public class NavigationDrawerRecyclerViewMergedAdapter {
});
accountSectionRecyclerViewAdapter = new AccountSectionRecyclerViewAdapter(baseActivity, customThemeWrapper,
navigationDrawerSharedPreferences, accountName != null, itemClickListener);
redditSectionRecyclerViewAdapter = new RedditSectionRecyclerViewAdapter(baseActivity, customThemeWrapper,
navigationDrawerSharedPreferences, itemClickListener, accountName != null);
postSectionRecyclerViewAdapter = new PostSectionRecyclerViewAdapter(baseActivity, customThemeWrapper,
navigationDrawerSharedPreferences, accountName != null, itemClickListener);
preferenceSectionRecyclerViewAdapter = new PreferenceSectionRecyclerViewAdapter(baseActivity, customThemeWrapper,
accountName, nsfwAndSpoilerSharedPreferences, navigationDrawerSharedPreferences, itemClickListener);
favoriteSubscribedSubredditsSectionRecyclerViewAdapter = new FavoriteSubscribedSubredditsSectionRecyclerViewAdapter(
@@ -65,8 +59,6 @@ public class NavigationDrawerRecyclerViewMergedAdapter {
mainPageConcatAdapter = new ConcatAdapter(
headerSectionRecyclerViewAdapter,
accountSectionRecyclerViewAdapter,
redditSectionRecyclerViewAdapter,
postSectionRecyclerViewAdapter,
preferenceSectionRecyclerViewAdapter,
favoriteSubscribedSubredditsSectionRecyclerViewAdapter,
subscribedSubredditsRecyclerViewAdapter);
@@ -78,8 +70,6 @@ public class NavigationDrawerRecyclerViewMergedAdapter {
private void openAccountSection() {
mainPageConcatAdapter.removeAdapter(accountSectionRecyclerViewAdapter);
mainPageConcatAdapter.removeAdapter(redditSectionRecyclerViewAdapter);
mainPageConcatAdapter.removeAdapter(postSectionRecyclerViewAdapter);
mainPageConcatAdapter.removeAdapter(preferenceSectionRecyclerViewAdapter);
mainPageConcatAdapter.removeAdapter(favoriteSubscribedSubredditsSectionRecyclerViewAdapter);
mainPageConcatAdapter.removeAdapter(subscribedSubredditsRecyclerViewAdapter);
@@ -91,8 +81,6 @@ public class NavigationDrawerRecyclerViewMergedAdapter {
mainPageConcatAdapter.removeAdapter(accountManagementSectionRecyclerViewAdapter);
mainPageConcatAdapter.addAdapter(accountSectionRecyclerViewAdapter);
mainPageConcatAdapter.addAdapter(redditSectionRecyclerViewAdapter);
mainPageConcatAdapter.addAdapter(postSectionRecyclerViewAdapter);
mainPageConcatAdapter.addAdapter(preferenceSectionRecyclerViewAdapter);
mainPageConcatAdapter.addAdapter(favoriteSubscribedSubredditsSectionRecyclerViewAdapter);
mainPageConcatAdapter.addAdapter(subscribedSubredditsRecyclerViewAdapter);

View File

@@ -221,4 +221,9 @@ public interface LemmyAPI {
@Query("id") int commentId,
@Query("auth") String auth
);
@GET("api/v3/site")
Call<String> getSiteInfo(
@Query("auth") String auth
);
}

View File

@@ -9,6 +9,7 @@ import eu.toldi.infinityforlemmy.RedditDataRoomDatabase;
import eu.toldi.infinityforlemmy.subreddit.FetchSubredditData;
import eu.toldi.infinityforlemmy.subreddit.SubredditDao;
import eu.toldi.infinityforlemmy.subreddit.SubredditData;
import eu.toldi.infinityforlemmy.utils.LemmyUtils;
import retrofit2.Retrofit;
public class LoadSubredditIcon {
@@ -18,9 +19,9 @@ public class LoadSubredditIcon {
LoadSubredditIconAsyncTaskListener loadSubredditIconAsyncTaskListener) {
executor.execute(() -> {
SubredditDao subredditDao = redditDataRoomDatabase.subredditDao();
SubredditData subredditData = subredditDao.getSubredditData(subredditName);
SubredditData subredditData = subredditDao.getSubredditDataByActorId(LemmyUtils.qualifiedCommunityName2ActorId(subredditName));
if (subredditData != null) {
String iconImageUrl = subredditDao.getSubredditData(subredditName).getIconUrl();
String iconImageUrl = subredditDao.getSubredditDataByActorId(LemmyUtils.qualifiedCommunityName2ActorId(subredditName)).getIconUrl();
handler.post(() -> loadSubredditIconAsyncTaskListener.loadIconSuccess(iconImageUrl));
} else {
handler.post(() -> FetchSubredditData.fetchSubredditData(retrofit, subredditName, accessToken, new FetchSubredditData.FetchSubredditDataListener() {

View File

@@ -8,6 +8,7 @@ import eu.toldi.infinityforlemmy.RedditDataRoomDatabase;
import eu.toldi.infinityforlemmy.user.FetchUserData;
import eu.toldi.infinityforlemmy.user.UserDao;
import eu.toldi.infinityforlemmy.user.UserData;
import eu.toldi.infinityforlemmy.utils.LemmyUtils;
import retrofit2.Retrofit;
public class LoadUserData {
@@ -16,8 +17,9 @@ public class LoadUserData {
Retrofit retrofit, LoadUserDataAsyncTaskListener loadUserDataAsyncTaskListener) {
executor.execute(() -> {
UserDao userDao = redditDataRoomDatabase.userDao();
if (userDao.getUserData(userName) != null) {
String iconImageUrl = userDao.getUserData(userName).getIconUrl();
UserData userData= userDao.getUserDataByActorId(LemmyUtils.qualifiedUserName2ActorId(userName));
if (userData != null) {
String iconImageUrl = userData.getIconUrl();
handler.post(() -> loadUserDataAsyncTaskListener.loadUserDataSuccess(iconImageUrl));
} else {
handler.post(() -> FetchUserData.fetchUserData(retrofit, userName, new FetchUserData.FetchUserDataListener() {

View File

@@ -11,11 +11,11 @@ public class ParseAndInsertNewAccount {
public static void parseAndInsertNewAccount(Executor executor, Handler handler, String username,
String display_name,String accessToken, String profileImageUrl,
String bannerImageUrl, String code,String instance, AccountDao accountDao,
String bannerImageUrl, String code,String instance,boolean can_downvote, AccountDao accountDao,
ParseAndInsertAccountListener parseAndInsertAccountListener) {
executor.execute(() -> {
Account account = new Account(username,display_name, accessToken, code, profileImageUrl,
bannerImageUrl, true,instance);
bannerImageUrl, true,instance,true);
accountDao.markAllAccountsNonCurrent();
accountDao.insert(account);

View File

@@ -8,6 +8,8 @@ import java.util.concurrent.Executor;
import eu.toldi.infinityforlemmy.RedditDataRoomDatabase;
import eu.toldi.infinityforlemmy.RetrofitHolder;
import eu.toldi.infinityforlemmy.account.Account;
import eu.toldi.infinityforlemmy.site.FetchSiteInfo;
import eu.toldi.infinityforlemmy.site.SiteInfo;
import eu.toldi.infinityforlemmy.utils.SharedPreferencesUtils;
public class SwitchAccount {
@@ -26,6 +28,18 @@ public class SwitchAccount {
.putString(SharedPreferencesUtils.ACCOUNT_INSTANCE,account.getInstance_url())
.putString(SharedPreferencesUtils.ACCOUNT_IMAGE_URL, account.getProfileImageUrl()).apply();
retrofitHolder.setBaseURL(account.getInstance_url());
FetchSiteInfo.fetchSiteInfo(retrofitHolder.getRetrofit(), account.getAccessToken(), new FetchSiteInfo.FetchSiteInfoListener() {
@Override
public void onFetchSiteInfoSuccess(SiteInfo siteInfo) {
boolean canDownvote = siteInfo.isEnable_downvotes();
currentAccountSharedPreferences.edit().putBoolean(SharedPreferencesUtils.CAN_DOWNVOTE, canDownvote).apply();
}
@Override
public void onFetchSiteInfoFailed() {
currentAccountSharedPreferences.edit().putBoolean(SharedPreferencesUtils.CAN_DOWNVOTE, true).apply();
}
});
handler.post(() -> switchAccountListener.switched(account));
});

View File

@@ -55,12 +55,8 @@ public class CommentMoreBottomSheetFragment extends LandscapeExpandedRoundedBott
TextView shareTextView;
@BindView(R.id.copy_text_view_comment_more_bottom_sheet_fragment)
TextView copyTextView;
@BindView(R.id.give_award_text_view_comment_more_bottom_sheet_fragment)
TextView giveAwardTextView;
@BindView(R.id.report_view_comment_more_bottom_sheet_fragment)
TextView reportTextView;
@BindView(R.id.see_removed_view_comment_more_bottom_sheet_fragment)
TextView seeRemovedTextView;
private BaseActivity activity;
public CommentMoreBottomSheetFragment() {
@@ -93,18 +89,6 @@ public class CommentMoreBottomSheetFragment extends LandscapeExpandedRoundedBott
boolean showReplyAndSaveOption = bundle.getBoolean(EXTRA_SHOW_REPLY_AND_SAVE_OPTION, false);
if (accessToken != null && !accessToken.equals("")) {
giveAwardTextView.setVisibility(View.VISIBLE);
giveAwardTextView.setOnClickListener(view -> {
Intent intent = new Intent(activity, GiveAwardActivity.class);
intent.putExtra(GiveAwardActivity.EXTRA_THING_FULLNAME, comment.getFullName());
intent.putExtra(GiveAwardActivity.EXTRA_ITEM_POSITION, bundle.getInt(EXTRA_POSITION));
if (activity instanceof ViewPostDetailActivity) {
activity.startActivityForResult(intent, ViewPostDetailActivity.GIVE_AWARD_REQUEST_CODE);
} else if (activity instanceof ViewUserDetailActivity) {
activity.startActivityForResult(intent, ViewUserDetailActivity.GIVE_AWARD_REQUEST_CODE);
}
dismiss();
});
if (editAndDeleteAvailable) {
editTextView.setVisibility(View.VISIBLE);
@@ -193,27 +177,14 @@ public class CommentMoreBottomSheetFragment extends LandscapeExpandedRoundedBott
});
reportTextView.setOnClickListener(view -> {
Intent intent = new Intent(activity, ReportActivity.class);
/*Intent intent = new Intent(activity, ReportActivity.class);
intent.putExtra(ReportActivity.EXTRA_SUBREDDIT_NAME, comment.getCommunityName());
intent.putExtra(ReportActivity.EXTRA_THING_FULLNAME, comment.getFullName());
activity.startActivity(intent);
activity.startActivity(intent);*/
Toast.makeText(activity, R.string.not_implemented, Toast.LENGTH_SHORT).show();
dismiss();
});
if ("[deleted]".equals(comment.getAuthor()) ||
"[deleted]".equals(comment.getCommentRawText()) ||
"[removed]".equals(comment.getCommentRawText())
) {
seeRemovedTextView.setVisibility(View.VISIBLE);
seeRemovedTextView.setOnClickListener(view -> {
dismiss();
if (activity instanceof ViewPostDetailActivity) {
((ViewPostDetailActivity) activity).showRemovedComment(comment, bundle.getInt(EXTRA_POSITION));
}
});
}
if (activity.typeface != null) {
Utils.setFontToAllTextViews(rootView, activity.typeface);

View File

@@ -24,7 +24,6 @@ public class FABMoreOptionsBottomSheetFragment extends LandscapeExpandedRoundedB
public static final int FAB_OPTION_SEARCH = 4;
public static final int FAB_OPTION_GO_TO_SUBREDDIT = 5;
public static final int FAB_OPTION_GO_TO_USER = 6;
public static final int FAB_RANDOM = 7;
public static final int FAB_HIDE_READ_POSTS = 8;
public static final int FAB_FILTER_POSTS = 9;
public static final int FAB_GO_TO_TOP = 10;
@@ -86,10 +85,6 @@ public class FABMoreOptionsBottomSheetFragment extends LandscapeExpandedRoundedB
dismiss();
});
binding.randomTextViewFabMoreOptionsBottomSheetFragment.setOnClickListener(view -> {
activity.fabOptionSelected(FAB_RANDOM);
dismiss();
});
binding.filterPostsTextViewFabMoreOptionsBottomSheetFragment.setOnClickListener(view -> {
activity.fabOptionSelected(FAB_FILTER_POSTS);

View File

@@ -31,16 +31,12 @@ public class SearchPostSortTypeBottomSheetFragment extends LandscapeExpandedRoun
public static final String EXTRA_CURRENT_SORT_TYPE = "ECST";
@BindView(R.id.relevance_type_text_view_search_sort_type_bottom_sheet_fragment)
TextView relevanceTypeTextView;
@BindView(R.id.hot_type_text_view_search_sort_type_bottom_sheet_fragment)
TextView hotTypeTextView;
@BindView(R.id.top_type_text_view_search_sort_type_bottom_sheet_fragment)
TextView topTypeTextView;
@BindView(R.id.new_type_text_view_search_sort_type_bottom_sheet_fragment)
TextView newTypeTextView;
@BindView(R.id.comments_type_text_view_search_sort_type_bottom_sheet_fragment)
TextView commentsTypeTextView;
@BindView(R.id.old_type_text_view_search_sort_type_bottom_sheet_fragment)
TextView oldTypeTextView;
private BaseActivity activity;
public SearchPostSortTypeBottomSheetFragment() {
// Required empty public constructor
@@ -61,14 +57,12 @@ public class SearchPostSortTypeBottomSheetFragment extends LandscapeExpandedRoun
ButterKnife.bind(this, rootView);
String currentSortType = getArguments().getString(EXTRA_CURRENT_SORT_TYPE);
if (currentSortType.equals(SortType.Type.HOT.fullName)) {
hotTypeTextView.setCompoundDrawablesRelativeWithIntrinsicBounds(hotTypeTextView.getCompoundDrawablesRelative()[0], null, AppCompatResources.getDrawable(activity, R.drawable.ic_round_check_circle_day_night_24dp), null);
} else if (currentSortType.equals(SortType.Type.TOP.fullName)) {
if (currentSortType.equals(SortType.Type.TOP.fullName)) {
topTypeTextView.setCompoundDrawablesRelativeWithIntrinsicBounds(topTypeTextView.getCompoundDrawablesRelative()[0], null, AppCompatResources.getDrawable(activity, R.drawable.ic_round_check_circle_day_night_24dp), null);
} else if (currentSortType.equals(SortType.Type.NEW.fullName)) {
newTypeTextView.setCompoundDrawablesRelativeWithIntrinsicBounds(newTypeTextView.getCompoundDrawablesRelative()[0], null, AppCompatResources.getDrawable(activity, R.drawable.ic_round_check_circle_day_night_24dp), null);
} else if (currentSortType.equals(SortType.Type.OLD.fullName)) {
commentsTypeTextView.setCompoundDrawablesRelativeWithIntrinsicBounds(commentsTypeTextView.getCompoundDrawablesRelative()[0], null, AppCompatResources.getDrawable(activity, R.drawable.ic_round_check_circle_day_night_24dp), null);
oldTypeTextView.setCompoundDrawablesRelativeWithIntrinsicBounds(oldTypeTextView.getCompoundDrawablesRelative()[0], null, AppCompatResources.getDrawable(activity, R.drawable.ic_round_check_circle_day_night_24dp), null);
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O
@@ -76,15 +70,6 @@ public class SearchPostSortTypeBottomSheetFragment extends LandscapeExpandedRoun
rootView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR);
}
/*relevanceTypeTextView.setOnClickListener(view -> {
((SortTypeSelectionCallback) activity).sortTypeSelected(SortType.Type.RELEVANCE.name());
dismiss();
});*/
hotTypeTextView.setOnClickListener(view -> {
((SortTypeSelectionCallback) activity).sortTypeSelected(SortType.Type.HOT.name());
dismiss();
});
topTypeTextView.setOnClickListener(view -> {
((SortTypeSelectionCallback) activity).sortTypeSelected(SortType.Type.TOP.name());
@@ -92,12 +77,12 @@ public class SearchPostSortTypeBottomSheetFragment extends LandscapeExpandedRoun
});
newTypeTextView.setOnClickListener(view -> {
((SortTypeSelectionCallback) activity).sortTypeSelected(new SortType(SortType.Type.NEW));
((SortTypeSelectionCallback) activity).sortTypeSelected(new SortType(SortType.Type.NEW,null));
dismiss();
});
commentsTypeTextView.setOnClickListener(view -> {
((SortTypeSelectionCallback) activity).sortTypeSelected(SortType.Type.MOST_COMMENTS.name());
oldTypeTextView.setOnClickListener(view -> {
((SortTypeSelectionCallback) activity).sortTypeSelected(new SortType(SortType.Type.OLD,null));
dismiss();
});

View File

@@ -284,6 +284,12 @@ public class ParseComment {
String author = creatorObj.getString("name");
String authorQualifiedName = LemmyUtils.actorID2FullName(creatorObj.getString("actor_id"));
String linkAuthor = creatorObj.getString("actor_id");
String authorAvatar = null;
if(creatorObj.has("avatar")){
authorAvatar = creatorObj.getString("avatar");
}
long commentTimeMillis = 0;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
commentTimeMillis = ZonedDateTime.parse(commentObj.getString("published"),
@@ -334,6 +340,7 @@ public class ParseComment {
score, voteType, isSubmitter, distinguished, permalink, depth, collapsed, hasReply, saved, deleted, edited, path);
int child_count = countsObj.getInt("child_count");
comment.setChildCount(child_count);
comment.setAuthorIconUrl(authorAvatar);
return comment;
}

View File

@@ -137,6 +137,7 @@ import eu.toldi.infinityforlemmy.post.PostPagingSource;
import eu.toldi.infinityforlemmy.post.PostViewModel;
import eu.toldi.infinityforlemmy.postfilter.PostFilter;
import eu.toldi.infinityforlemmy.postfilter.PostFilterUsage;
import eu.toldi.infinityforlemmy.utils.LemmyUtils;
import eu.toldi.infinityforlemmy.utils.SharedPreferencesUtils;
import eu.toldi.infinityforlemmy.utils.Utils;
import eu.toldi.infinityforlemmy.videoautoplay.ExoCreator;
@@ -460,9 +461,9 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
nameOfUsage = PostFilterUsage.NO_USAGE;
String sort = mSortTypeSharedPreferences.getString(SharedPreferencesUtils.SORT_TYPE_SEARCH_POST, SortType.Type.TOP_ALL.value);
String sortTime = mSortTypeSharedPreferences.getString(SharedPreferencesUtils.SORT_TIME_SEARCH_POST, SortType.Time.ALL.name());
String sortTime = mSortTypeSharedPreferences.getString(SharedPreferencesUtils.SORT_TIME_SEARCH_POST, sort.equalsIgnoreCase(SortType.Type.TOP.value) ? SortType.Time.ALL.name() : null);
SortType.Type st = SortType.Type.fromValue(sort);
sortType = new SortType(st == null ? SortType.Type.TOP_ALL : st, SortType.Time.valueOf(sortTime));
sortType = new SortType(st == null ? SortType.Type.TOP_ALL : st,sortTime != null ? SortType.Time.valueOf(sortTime) : null);
postLayout = mPostLayoutSharedPreferences.getInt(SharedPreferencesUtils.POST_LAYOUT_SEARCH_POST, defaultPostLayout);
mAdapter = new PostRecyclerViewAdapter(activity, this, mExecutor, mRetrofit.getRetrofit(), mGfycatRetrofit,
@@ -1385,6 +1386,8 @@ public class PostFragment extends Fragment implements FragmentCommunicator {
mSortTypeSharedPreferences.edit().putString(SharedPreferencesUtils.SORT_TYPE_SEARCH_POST, sortType.getType().name()).apply();
if (sortType.getTime() != null) {
mSortTypeSharedPreferences.edit().putString(SharedPreferencesUtils.SORT_TIME_SEARCH_POST, sortType.getTime().name()).apply();
}else {
mSortTypeSharedPreferences.edit().remove(SharedPreferencesUtils.SORT_TIME_SEARCH_POST).apply();
}
break;
case PostPagingSource.TYPE_MULTI_REDDIT:

View File

@@ -78,7 +78,6 @@ import eu.toldi.infinityforlemmy.SaveThing;
import eu.toldi.infinityforlemmy.SortType;
import eu.toldi.infinityforlemmy.activities.CommentActivity;
import eu.toldi.infinityforlemmy.activities.EditPostActivity;
import eu.toldi.infinityforlemmy.activities.GiveAwardActivity;
import eu.toldi.infinityforlemmy.activities.PostFilterPreferenceActivity;
import eu.toldi.infinityforlemmy.activities.ReportActivity;
import eu.toldi.infinityforlemmy.activities.SubmitCrosspostActivity;
@@ -129,6 +128,8 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
public static final String EXTRA_POST_DATA = "EPD";
public static final String EXTRA_POST_ID = "EPI";
public static final String EXTRA_SINGLE_COMMENT_ID = "ESCI";
public static final String EXTRA_SINGLE_COMMENT_PARENT_ID = "ESCPID";
public static final String EXTRA_CONTEXT_NUMBER = "ECN";
public static final String EXTRA_MESSAGE_FULLNAME = "EMF";
public static final String EXTRA_POST_LIST_POSITION = "EPLP";
@@ -229,6 +230,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
private String mAccountQualifiedName;
private int postListPosition = -1;
private Integer mSingleCommentId;
private Integer mSingleCommentParentId;
private String mContextNumber;
private boolean showToast = false;
private boolean mIsSmoothScrolling = false;
@@ -547,6 +549,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
};
mSingleCommentId = getArguments().getInt(EXTRA_SINGLE_COMMENT_ID, 0);
mSingleCommentParentId = getArguments().getInt(EXTRA_SINGLE_COMMENT_PARENT_ID, 0);
mContextNumber = getArguments().getString(EXTRA_CONTEXT_NUMBER, "8");
if (savedInstanceState == null) {
@@ -606,8 +609,8 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
mExoCreator, post -> EventBus.getDefault().post(new PostUpdateEventToPostList(mPost, postListPosition)));
mCommentsAdapter = new CommentsRecyclerViewAdapter(activity,
this, mCustomThemeWrapper, mExecutor, mRetrofit.getRetrofit(),
mAccessToken, mAccountName, mPost, mLocale, mSingleCommentId,
isSingleCommentThreadMode, mSharedPreferences,
mAccessToken, mAccountName, mPost, mLocale, mSingleCommentId
, isSingleCommentThreadMode, mSharedPreferences,
new CommentsRecyclerViewAdapter.CommentRecyclerViewAdapterCallback() {
@Override
public void retryFetchingComments() {
@@ -626,7 +629,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
public SortType.Type getSortType() {
return sortType;
}
});
} );
if (mCommentsRecyclerView != null) {
mRecyclerView.setAdapter(mPostAdapter);
mCommentsRecyclerView.setAdapter(mCommentsAdapter);
@@ -704,7 +707,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
MenuItem spoilerItem = mMenu.findItem(R.id.action_spoiler_view_post_detail_fragment);
spoilerItem.setVisible(true);
mMenu.findItem(R.id.action_edit_flair_view_post_detail_fragment).setVisible(true);
mMenu.findItem(R.id.action_block_user_view_post_detail_fragment).setVisible(false);
}
mMenu.findItem(R.id.action_view_crosspost_parent_view_post_detail_fragment).setVisible(mPost.getCrosspostParentId() != null);
@@ -1067,35 +1070,18 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
return true;
} else if (itemId == R.id.action_spoiler_view_post_detail_fragment) {
return true;
} else if (itemId == R.id.action_edit_flair_view_post_detail_fragment) {
FlairBottomSheetFragment flairBottomSheetFragment = new FlairBottomSheetFragment();
Bundle bundle = new Bundle();
bundle.putString(FlairBottomSheetFragment.EXTRA_ACCESS_TOKEN, mAccessToken);
bundle.putString(FlairBottomSheetFragment.EXTRA_SUBREDDIT_NAME, mPost.getSubredditName());
bundle.putLong(FlairBottomSheetFragment.EXTRA_VIEW_POST_DETAIL_FRAGMENT_ID, viewPostDetailFragmentId);
flairBottomSheetFragment.setArguments(bundle);
flairBottomSheetFragment.show(activity.getSupportFragmentManager(), flairBottomSheetFragment.getTag());
} else if (itemId == R.id.action_block_user_view_post_detail_fragment) {
Toast.makeText(activity, R.string.not_implemented, Toast.LENGTH_SHORT).show();
return true;
} else if (itemId == R.id.action_give_award_view_post_detail_fragment) {
if (mAccessToken == null) {
Toast.makeText(activity, R.string.login_first, Toast.LENGTH_SHORT).show();
return true;
}
Intent giveAwardIntent = new Intent(activity, GiveAwardActivity.class);
giveAwardIntent.putExtra(GiveAwardActivity.EXTRA_THING_FULLNAME, mPost.getFullName());
giveAwardIntent.putExtra(GiveAwardActivity.EXTRA_ITEM_POSITION, 0);
activity.startActivityForResult(giveAwardIntent, ViewPostDetailActivity.GIVE_AWARD_REQUEST_CODE);
} else if (itemId == R.id.action_block_community_view_post_detail_fragment) {
Toast.makeText(activity, R.string.not_implemented, Toast.LENGTH_SHORT).show();
return true;
} else if (itemId == R.id.action_report_view_post_detail_fragment) {
if (mAccessToken == null) {
Toast.makeText(activity, R.string.login_first, Toast.LENGTH_SHORT).show();
return true;
}
Intent intent = new Intent(activity, ReportActivity.class);
intent.putExtra(ReportActivity.EXTRA_SUBREDDIT_NAME, mPost.getSubredditName());
intent.putExtra(ReportActivity.EXTRA_THING_FULLNAME, mPost.getFullName());
startActivity(intent);
Toast.makeText(activity, R.string.not_implemented, Toast.LENGTH_SHORT).show();
return true;
} else if (itemId == R.id.action_see_removed_view_post_detail_fragment) {
showRemovedPost();
@@ -1185,7 +1171,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
if (mCommentsRecyclerView != null) {
LinearLayoutManager myLayoutManager = (LinearLayoutManager) mCommentsRecyclerView.getLayoutManager();
scrollPosition = myLayoutManager != null ? myLayoutManager.findFirstVisibleItemPosition() : 0;
} else {
LinearLayoutManager myLayoutManager = (LinearLayoutManager) mRecyclerView.getLayoutManager();
scrollPosition = myLayoutManager != null ? myLayoutManager.findFirstVisibleItemPosition() : 0;
@@ -1245,7 +1231,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
mPostDetailsSharedPreferences, mExoCreator,
post1 -> EventBus.getDefault().post(new PostUpdateEventToPostList(mPost, postListPosition)));
mSwipeRefreshLayout.setRefreshing(false);
FetchComment.fetchComments(mExecutor, new Handler(), mRetrofit.getRetrofit(), mAccessToken, post.getId(), mSingleCommentId == 0 ? null : mSingleCommentId, sortType, mExpandChildren, 1, new FetchComment.FetchCommentListener() {
FetchComment.fetchComments(mExecutor, new Handler(), mRetrofit.getRetrofit(), mAccessToken, post.getId(), mSingleCommentId == 0 ? null : mSingleCommentParentId == 0 ? mSingleCommentId : mSingleCommentParentId, sortType, mExpandChildren, 1, new FetchComment.FetchCommentListener() {
@Override
public void onFetchCommentSuccess(ArrayList<Comment> expandedComments, Integer parentId, ArrayList<Integer> children) {
pages_loaded++;
@@ -1364,7 +1350,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
}
FetchComment.fetchComments(mExecutor, new Handler(), mRetrofit.getRetrofit(), mAccessToken, mPost.getId(), commentId, sortType, mExpandChildren, pages_loaded + 1,
FetchComment.fetchComments(mExecutor, new Handler(), mRetrofit.getRetrofit(), mAccessToken, mPost.getId(), mSingleCommentId == 0 ? null : mSingleCommentParentId == 0 ? mSingleCommentId : mSingleCommentParentId, sortType, mExpandChildren, pages_loaded + 1,
new FetchComment.FetchCommentListener() {
@Override
public void onFetchCommentSuccess(ArrayList<Comment> expandedComments,
@@ -1433,8 +1419,8 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
@Override
public void onFetchCommentFailed() {
isFetchingComments = false;
mCommentsAdapter.initiallyLoadCommentsFailed();
if(pages_loaded == 0)
mCommentsAdapter.initiallyLoadCommentsFailed();
if (changeRefreshState) {
isRefreshing = false;
}
@@ -1454,7 +1440,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
isLoadingMoreChildren = true;
FetchComment.fetchComments(mExecutor, new Handler(), mRetrofit.getRetrofit(), mAccessToken,
mPost.getId(), null, sortType, mExpandChildren, pages_loaded + 1, new FetchComment.FetchCommentListener() {
mPost.getId(), mSingleCommentId == 0 ? null : mSingleCommentParentId == 0 ? mSingleCommentId : mSingleCommentParentId, sortType, mExpandChildren, pages_loaded + 1, new FetchComment.FetchCommentListener() {
@Override
public void onFetchCommentSuccess(ArrayList<Comment> expandedComments, Integer parentId, ArrayList<Integer> children) {
pages_loaded++;
@@ -1666,6 +1652,7 @@ public class ViewPostDetailFragment extends Fragment implements FragmentCommunic
public void changeToNormalThreadMode() {
isSingleCommentThreadMode = false;
mSingleCommentId = null;
mSingleCommentParentId = null;
mRespectSubredditRecommendedSortType = mSharedPreferences.getBoolean(SharedPreferencesUtils.RESPECT_SUBREDDIT_RECOMMENDED_COMMENT_SORT_TYPE, false);
refresh(false, true);
}

View File

@@ -0,0 +1,59 @@
package eu.toldi.infinityforlemmy.markdown;
import android.content.Context;
import android.content.Intent;
import android.text.style.ClickableSpan;
import android.view.View;
import android.widget.Toast;
import androidx.annotation.NonNull;
import org.commonmark.node.Image;
import eu.toldi.infinityforlemmy.activities.ViewImageOrGifActivity;
import io.noties.markwon.AbstractMarkwonPlugin;
import io.noties.markwon.MarkwonConfiguration;
import io.noties.markwon.MarkwonSpansFactory;
import io.noties.markwon.RenderProps;
import io.noties.markwon.image.AsyncDrawableSpan;
import io.noties.markwon.image.ImageSpanFactory;
public class ClickableGlideImagesPlugin extends AbstractMarkwonPlugin {
public static Context context;
public ClickableGlideImagesPlugin(Context context) {
this.context = context;
}
public static ClickableGlideImagesPlugin create(Context context) {
return new ClickableGlideImagesPlugin(context);
}
@Override
public void configureSpansFactory(@NonNull MarkwonSpansFactory.Builder builder) {
builder.setFactory(Image.class, new ClickableImageFactory());
}
class ClickableImageFactory extends ImageSpanFactory {
@Override
public Object getSpans(@NonNull MarkwonConfiguration configuration, @NonNull RenderProps props) {
AsyncDrawableSpan image = (AsyncDrawableSpan) super.getSpans(configuration, props);
ClickableSpan clickableSpan = new ClickableSpan() {
@Override
public void onClick(@NonNull View widget) {
Intent intent = new Intent(context, ViewImageOrGifActivity.class);
intent.putExtra(ViewImageOrGifActivity.EXTRA_IMAGE_URL_KEY, image.getDrawable().getDestination());
intent.putExtra(ViewImageOrGifActivity.EXTRA_FILE_NAME_KEY, image.getDrawable().getDestination());
context.startActivity(intent);
}
};
Object[] objects = new Object[2];
objects[0] = image;
objects[1] = clickableSpan;
return objects;
}
}
}

View File

@@ -51,6 +51,7 @@ public class MarkdownUtils {
.setOnLinkLongClickListener(onLinkLongClickListener)))
.usePlugin(LinkifyPlugin.create(Linkify.WEB_URLS))
.usePlugin(TableEntryPlugin.create(context))
.usePlugin(ClickableGlideImagesPlugin.create(context))
.build();
}

View File

@@ -33,6 +33,7 @@ import java.util.concurrent.Executor;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import eu.toldi.infinityforlemmy.markdown.MarkdownUtils;
import eu.toldi.infinityforlemmy.postfilter.PostFilter;
import eu.toldi.infinityforlemmy.utils.JSONUtils;
import eu.toldi.infinityforlemmy.utils.LemmyUtils;
@@ -210,10 +211,14 @@ public class ParsePost {
String distinguished, String suggestedSort) throws JSONException {
Post post;
boolean isVideo = false;
String url = (!data.getJSONObject("post").isNull("url")) ? data.getJSONObject("post").getString("url") : "";
String communityURL = (!data.getJSONObject("community").isNull("icon")) ? data.getJSONObject("community").getString("icon") : "";
String authorAvatar = (!data.getJSONObject("creator").isNull("avatar")) ? data.getJSONObject("creator").getString("avatar") : null;
Uri uri = Uri.parse(url);
String path = uri.getPath();
boolean isVideo = path.endsWith(".mp4") || path.endsWith(".webm") || path.endsWith(".gifv");
if (!data.getJSONObject("post").has("thumbnail_url") && previews.isEmpty()) {
if (!data.getJSONObject("post").isNull("body") && url.equals("")) {
@@ -243,16 +248,13 @@ public class ParsePost {
} else {
if (isVideo) {
//No preview video post
JSONObject redditVideoObject = data.getJSONObject(JSONUtils.MEDIA_KEY).getJSONObject(JSONUtils.REDDIT_VIDEO_KEY);
int postType = Post.VIDEO_TYPE;
String videoUrl = Html.fromHtml(redditVideoObject.getString(JSONUtils.HLS_URL_KEY)).toString();
String videoDownloadUrl = redditVideoObject.getString(JSONUtils.FALLBACK_URL_KEY);
post = new Post(id, fullName, subredditName, subredditNamePrefixed, author, authorFull, postTimeMillis, title, permalink, score, postType, voteType,
nComments, upvoteRatio, nsfw, locked, saved, distinguished, suggestedSort);
post.setVideoUrl(videoUrl);
post.setVideoDownloadUrl(videoDownloadUrl);
post.setVideoUrl(url);
post.setVideoDownloadUrl(url);
} else if (!url.equals("")) {
//No preview link post
int postType = Post.NO_PREVIEW_LINK_TYPE;
@@ -653,6 +655,15 @@ public class ParsePost {
post.setVoteType(data.getInt("my_vote"));
post.setScore(post.getScore() - 1);
}
if (!data.getJSONObject("post").isNull("body")) {
String body = data.getJSONObject("post").getString("body");
post.setSelfText(body);
post.setSelfTextPlain(body);
post.setSelfTextPlainTrimmed(body.trim());
}
post.setAuthorIconUrl(authorAvatar);
post.setSubredditIconUrl(communityURL);
return post;
}

View File

@@ -251,7 +251,7 @@ public class PostPagingSource extends ListenableFuturePagingSource<Integer, Post
private ListenableFuture<LoadResult<Integer, Post>> loadSubredditPosts(@NonNull LoadParams<Integer> loadParams, LemmyAPI api) {
ListenableFuture<Response<String>> subredditPost;
subredditPost = api.getPosts(null,sortType.getType().value,loadParams.getKey(),25,null,subredditOrUserName,false,null);
subredditPost = api.getPosts(null,sortType.getType().value,loadParams.getKey(),25,null,subredditOrUserName,false,accessToken);
ListenableFuture<LoadResult<Integer, Post>> pageFuture = Futures.transform(subredditPost, this::transformData, executor);

View File

@@ -105,7 +105,7 @@ public class CrashReportsFragment extends Fragment {
} catch (UnsupportedEncodingException e) {
return false;
}
Uri githubIssueUri = Uri.parse(String.format("https://github.com/Docile-Alligator/Infinity-For-Reddit/issues/new?labels=possible-bug&device=%s&version=%s&android_version=%s&logs=%s&&template=BUG_REPORT.yml", model, appVersion, androidVersion, logs));
Uri githubIssueUri = Uri.parse(String.format("https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy/issues/new?template=.gitea%2fissue_template%2fbug_report.md", model, appVersion, androidVersion, logs));
intent.setData(githubIssueUri);
startActivity(intent);
return true;

View File

@@ -0,0 +1,34 @@
package eu.toldi.infinityforlemmy.site;
import eu.toldi.infinityforlemmy.apis.LemmyAPI;
import retrofit2.Retrofit;
public class FetchSiteInfo {
public static void fetchSiteInfo(Retrofit retrofit, String accesToken, FetchSiteInfoListener fetchSiteInfoListener) {
retrofit.create(LemmyAPI.class).getSiteInfo(accesToken).enqueue(
new retrofit2.Callback<String>() {
@Override
public void onResponse(retrofit2.Call<String> call, retrofit2.Response<String> response) {
if (response.isSuccessful()) {
String siteInfoJson = response.body();
SiteInfo siteInfo = SiteInfo.parseSiteInfo(siteInfoJson);
fetchSiteInfoListener.onFetchSiteInfoSuccess(siteInfo);
} else {
fetchSiteInfoListener.onFetchSiteInfoFailed();
}
}
@Override
public void onFailure(retrofit2.Call<String> call, Throwable t) {
fetchSiteInfoListener.onFetchSiteInfoFailed();
}
}
);
}
public interface FetchSiteInfoListener {
void onFetchSiteInfoSuccess(SiteInfo siteInfo);
void onFetchSiteInfoFailed();
}
}

View File

@@ -0,0 +1,83 @@
package eu.toldi.infinityforlemmy.site;
import org.json.JSONException;
import org.json.JSONObject;
public class SiteInfo {
private int id;
private String name;
private String sidebar;
private String description;
private boolean enable_downvotes;
private boolean enable_nsfw;
private boolean community_creation_admin_only;
public SiteInfo(int id, String name, String sidebar, String description, boolean enable_downvotes, boolean enable_nsfw, boolean community_creation_admin_only) {
this.id = id;
this.name = name;
this.sidebar = sidebar;
this.description = description;
this.enable_downvotes = enable_downvotes;
this.enable_nsfw = enable_nsfw;
this.community_creation_admin_only = community_creation_admin_only;
}
public int getId() {
return id;
}
public String getName() {
return name;
}
public String getSidebar() {
return sidebar;
}
public String getDescription() {
return description;
}
public boolean isEnable_downvotes() {
return enable_downvotes;
}
public boolean isEnable_nsfw() {
return enable_nsfw;
}
public boolean isCommunity_creation_admin_only() {
return community_creation_admin_only;
}
public static SiteInfo parseSiteInfo(String siteInfoJson) {
try {
JSONObject siteInfo = new JSONObject(siteInfoJson);
JSONObject siteView = siteInfo.getJSONObject("site_view");
JSONObject site = siteView.getJSONObject("site");
JSONObject localSite = siteView.getJSONObject("local_site");
int id = site.getInt("id");
String name = site.getString("name");
String sidebar = null;
if (site.has("sidebar"))
sidebar = site.getString("sidebar");
String description = null;
if (site.has("description"))
description = site.getString("description");
boolean enable_downvotes = localSite.getBoolean("enable_downvotes");
boolean enable_nsfw = localSite.getBoolean("enable_nsfw");
boolean community_creation_admin_only = localSite.getBoolean("community_creation_admin_only");
SiteInfo si = new SiteInfo(id, name, sidebar, description, enable_downvotes, enable_nsfw, community_creation_admin_only);
return si;
} catch (JSONException e) {
e.printStackTrace();
return null;
}
}
}

View File

@@ -8,7 +8,12 @@ import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
import eu.toldi.infinityforlemmy.utils.JSONUtils;
@@ -47,7 +52,11 @@ public class ParseSubredditData {
}
boolean removed = community.getBoolean("removed");
String published = community.getString("published");
String published_raw = community.getString("published");
String published = formatISOTime(published_raw);
if(published == null){
published = published_raw;
}
String updated = "";
if (!community.isNull("updated")) {
updated = community.getString("updated");
@@ -170,4 +179,25 @@ public class ParseSubredditData {
}
}
}
public static String formatISOTime(String isoTime) {
// Truncate the time to millisecond precision
//String truncatedTime = isoTime.substring(0, 23);
SimpleDateFormat isoFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS", Locale.US);
isoFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
try {
Date date = isoFormat.parse(isoTime);
// Set your desired output format here
SimpleDateFormat outputFormat = new SimpleDateFormat("MMM dd, yyyy HH:mm:ss", Locale.US);
outputFormat.setTimeZone(TimeZone.getDefault()); // Set to device's default timezone
return outputFormat.format(date);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
}

View File

@@ -22,4 +22,7 @@ public interface SubredditDao {
@Query("SELECT * from subreddits WHERE name = :namePrefixed COLLATE NOCASE LIMIT 1")
SubredditData getSubredditData(String namePrefixed);
@Query("SELECT * from subreddits WHERE actor_id = :actorId COLLATE NOCASE LIMIT 1")
SubredditData getSubredditDataByActorId(String actorId);
}

View File

@@ -46,6 +46,7 @@ public class ParseUserData {
int instance_id = personJson.getInt("instance_id");
String cakeday = personJson.getString(JSONUtils.PUBLISHED);
cakeday = cakeday.substring(0, cakeday.indexOf("T"));
boolean isBot = personJson.getBoolean("bot_account");
boolean isBanned = personJson.getBoolean("banned");
boolean isLocal = personJson.getBoolean("local");

View File

@@ -25,4 +25,7 @@ public interface UserDao {
@Query("SELECT * FROM users WHERE name = :userName COLLATE NOCASE LIMIT 1")
UserData getUserData(String userName);
@Query("SELECT * FROM users WHERE actor_id = :actorId COLLATE NOCASE LIMIT 1")
UserData getUserDataByActorId(String actorId);
}

View File

@@ -400,4 +400,5 @@ public class SharedPreferencesUtils {
public static final String OPEN_LINK_IN_APP_LEGACY = "open_link_in_app";
public static final String ACCOUNT_INSTANCE = "account_instance";
public static final String ACCOUNT_QUALIFIED_NAME = "account_qualified_name";
public static final String CAN_DOWNVOTE = "can_downvote";
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -124,25 +124,6 @@
android:fontFamily="?attr/font_family"
app:drawableStartCompat="@drawable/ic_copy_24dp" />
<TextView
android:id="@+id/give_award_text_view_comment_more_bottom_sheet_fragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:drawablePadding="48dp"
android:focusable="true"
android:gravity="center_vertical"
android:paddingStart="32dp"
android:paddingTop="16dp"
android:paddingEnd="32dp"
android:paddingBottom="16dp"
android:text="@string/action_give_award"
android:textColor="?attr/primaryTextColor"
android:textSize="?attr/font_default"
android:fontFamily="?attr/font_family"
android:visibility="gone"
app:drawableStartCompat="@drawable/ic_give_award_24dp" />
<TextView
android:id="@+id/report_view_comment_more_bottom_sheet_fragment"
@@ -163,25 +144,6 @@
android:fontFamily="?attr/font_family"
app:drawableStartCompat="@drawable/ic_report_24dp" />
<TextView
android:id="@+id/see_removed_view_comment_more_bottom_sheet_fragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:drawablePadding="48dp"
android:focusable="true"
android:gravity="center_vertical"
android:paddingStart="32dp"
android:paddingTop="16dp"
android:paddingEnd="32dp"
android:paddingBottom="16dp"
android:text="@string/see_removed_comment"
android:textColor="?attr/primaryTextColor"
android:textSize="?attr/font_default"
android:fontFamily="?attr/font_family"
android:visibility="gone"
app:drawableStartCompat="@drawable/ic_preview_24dp" />
</LinearLayout>

View File

@@ -144,25 +144,6 @@
android:focusable="true"
android:background="?attr/selectableItemBackground" />
<TextView
android:id="@+id/random_text_view_fab_more_options_bottom_sheet_fragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingTop="16dp"
android:paddingBottom="16dp"
android:paddingStart="32dp"
android:paddingEnd="32dp"
android:text="@string/random"
android:textColor="?attr/primaryTextColor"
android:textSize="?attr/font_default"
android:fontFamily="?attr/font_family"
app:drawableStartCompat="@drawable/ic_random_24dp"
android:drawablePadding="48dp"
android:clickable="true"
android:focusable="true"
android:background="?attr/selectableItemBackground" />
<TextView
android:id="@+id/hide_read_posts_text_view_fab_more_options_bottom_sheet_fragment"
android:layout_width="match_parent"

View File

@@ -11,43 +11,6 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/relevance_type_text_view_search_sort_type_bottom_sheet_fragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:drawableStart="@drawable/ic_best_24"
android:drawablePadding="48dp"
android:focusable="true"
android:fontFamily="?attr/font_family"
android:paddingStart="32dp"
android:paddingTop="16dp"
android:paddingEnd="32dp"
android:paddingBottom="16dp"
android:text="@string/sort_relevance"
android:textColor="?attr/primaryTextColor"
android:textSize="?attr/font_default"
app:drawableTint="?attr/primaryTextColor" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/hot_type_text_view_search_sort_type_bottom_sheet_fragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
android:clickable="true"
android:drawableStart="@drawable/ic_hot_24"
android:drawablePadding="48dp"
android:focusable="true"
android:fontFamily="?attr/font_family"
android:paddingStart="32dp"
android:paddingTop="16dp"
android:paddingEnd="32dp"
android:paddingBottom="16dp"
android:text="@string/sort_hot"
android:textColor="?attr/primaryTextColor"
android:textSize="?attr/font_default"
app:drawableTint="?attr/primaryTextColor" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/top_type_text_view_search_sort_type_bottom_sheet_fragment"
@@ -88,7 +51,7 @@
app:drawableTint="?attr/primaryTextColor" />
<androidx.appcompat.widget.AppCompatTextView
android:id="@+id/comments_type_text_view_search_sort_type_bottom_sheet_fragment"
android:id="@+id/old_type_text_view_search_sort_type_bottom_sheet_fragment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackground"
@@ -101,7 +64,7 @@
android:paddingTop="16dp"
android:paddingEnd="32dp"
android:paddingBottom="16dp"
android:text="@string/sort_comments"
android:text="@string/sort_old"
android:textColor="?attr/primaryTextColor"
android:textSize="?attr/font_default"
app:drawableTint="?attr/primaryTextColor" />

View File

@@ -76,16 +76,16 @@
android:visible="false" />
<item
android:id="@+id/action_edit_flair_view_post_detail_fragment"
android:id="@+id/action_block_user_view_post_detail_fragment"
android:orderInCategory="12"
android:title="@string/action_edit_flair"
android:title="@string/block_user"
app:showAsAction="never"
android:visible="false" />
android:visible="true" />
<item
android:id="@+id/action_give_award_view_post_detail_fragment"
android:id="@+id/action_block_community_view_post_detail_fragment"
android:orderInCategory="13"
android:title="@string/action_give_award"
android:title="@string/block_community"
app:showAsAction="never" />
<item

View File

@@ -380,8 +380,8 @@
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Reddit účet"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Sdílet"</string>
<string name="settings_share_summary">"Pokud máte rádi tuto aplikaci, sdílejte ji s ostatními lidmi"</string>
<string name="settings_version_title">"Infinity pro Reddit"</string>

View File

@@ -17,14 +17,14 @@
<string name="view_message_activity_label">"Posteingang"</string>
<string name="settings_activity_label">"Einstellungen"</string>
<string name="account_saved_thing_activity_label">"Gespeichert"</string>
<string name="create_multi_reddit_activity_label">"Multireddit erstellen"</string>
<string name="community_multiselection_activity_label">"Multireddits auswählen"</string>
<string name="create_multi_reddit_activity_label">Multicommunity erstellen</string>
<string name="community_multiselection_activity_label">Multicommunity auswählen</string>
<string name="custom_theme_listing_activity_label">"Benutzerdefinierte Themen"</string>
<string name="customize_theme_activity_label">"Thema anpassen"</string>
<string name="customize_theme_activity_create_theme_label">"Thema erstellen"</string>
<string name="theme_preview_activity_label">"Thema-Vorschau"</string>
<string name="edit_multi_reddit_activity_label">"Multireddit bearbeiten"</string>
<string name="selected_subeddits_activity_label">"Ausgewählte Subreddits"</string>
<string name="edit_multi_reddit_activity_label">Multicommunity bearbeiten</string>
<string name="selected_subeddits_activity_label">Ausgewählte Communities</string>
<string name="report_activity_label">"Melden"</string>
<string name="view_imgur_media_activity_image_label">"Bild %1$d/%2$d"</string>
<string name="view_imgur_media_activity_video_label">"Video %1$d/%2$d"</string>
@@ -55,8 +55,8 @@
<string name="action_edit_flair">"Flair bearbeiten"</string>
<string name="action_change_post_layout">"Beitragslayout ändern"</string>
<string name="action_save">"Speichern"</string>
<string name="action_edit_multi_reddit">"Multireddit bearbeiten"</string>
<string name="action_delete_multi_reddit">"Multireddit löschen"</string>
<string name="action_edit_multi_reddit">Multicommunity bearbeiten</string>
<string name="action_delete_multi_reddit">Multicommunity löschen</string>
<string name="action_share">"Teilen"</string>
<string name="action_preview">"Vorschau"</string>
<string name="action_report">"Melden"</string>
@@ -83,7 +83,7 @@ Tippen für Neuversuch."</string>
<string name="no_comments">"Keine Kommentare gefunden"</string>
<string name="no_communities">"Keine Subreddits gefunden"</string>
<string name="no_users">"Keine Benutzer gefunden"</string>
<string name="no_multi_reddits">"Keine Multireddits gefunden"</string>
<string name="no_multi_reddits">Keine Multicommunities gefunden</string>
<string name="no_storage_permission">"Keine Speicherberechtigung, um diese Datei zu speichern"</string>
<string name="load_comments_failed">"Fehler beim Laden der Kommentare.
Tippen für Neuversuch."</string>
@@ -104,7 +104,7 @@ Tippen für Neuversuch."</string>
<string name="since">"Seit:"</string>
<string name="profile">"Profil"</string>
<string name="subscriptions">"Abonnements"</string>
<string name="multi_reddit">"Multireddit"</string>
<string name="multi_reddit">Multicommunity</string>
<string name="inbox">"Posteingang"</string>
<string name="upvoted">"Upgevotet"</string>
<string name="downvoted">"Downgevotet"</string>
@@ -117,7 +117,7 @@ Tippen für Neuversuch."</string>
<string name="cannot_fetch_community_info">"Kann Subredddit-Info nicht abrufen"</string>
<string name="cannot_fetch_user_info">"Kann Benutzer-Info nicht abrufen"</string>
<string name="cannot_fetch_sidebar">"Kann Seitenleiste nicht abrufen"</string>
<string name="cannot_fetch_multireddit">"Kann Multireddit-Info nicht abrufen"</string>
<string name="cannot_fetch_multireddit">Kann Multicommunity-Info nicht abrufen</string>
<string name="subscribe">"Abonnieren"</string>
<string name="unsubscribe">"Deabonnieren"</string>
<string name="subscribed">"Abonniert"</string>
@@ -171,9 +171,9 @@ Tippen für Neuversuch."</string>
<string name="choose_a_communities">"Wähle ein Subreddit"</string>
<string name="rules">"Regeln"</string>
<string name="post_link_hint">"URL"</string>
<string name="communities">"Subreddits"</string>
<string name="communities">Communities</string>
<string name="users">"Benutzer"</string>
<string name="multi_reddits">"Multireddits"</string>
<string name="multi_reddits">MultiCommunity</string>
<string name="bottom_sheet_post_text">"Text"</string>
<string name="bottom_sheet_post_link">"Link"</string>
<string name="bottom_sheet_post_image">"Bild"</string>
@@ -408,10 +408,10 @@ Tippen für Neuversuch."</string>
<string name="settings_rate_summary">"Gib mir eine 5-Stern-Bewertung und mach mich richtig glücklich"</string>
<string name="settings_email_title">"E-Mail"</string>
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Reddit-Konto"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_reddit_account_title">Lemmy-Konto</string>
<string name="settings_reddit_account_summary">\@bazsalanszky@lemmy.toldi.eu</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Teilen"</string>
<string name="settings_share_summary">"Teile diese App mit anderen Leuten, wenn sie dir gefällt"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>
@@ -434,10 +434,10 @@ Tippen für Neuversuch."</string>
<string name="settings_tab_3_summary">"Reiter 3"</string>
<string name="settings_tab_title">"Titel"</string>
<string name="settings_tab_post_type">"Typ"</string>
<string name="settings_tab_community_name">"Subreddit-Name (ohne r/ Präfix)"</string>
<string name="settings_tab_community_name">Community-Name (ohne r/ Präfix)</string>
<!-- Fuzzy -->
<string name="settings_tab_multi_reddit_name">"Multireddit-Name (/user/DeinBenutzername/m/DeinMultiredditName)"</string>
<string name="settings_tab_multi_reddit_name">Multicommunity-Name (/user/DeinBenutzername/m/DeinMulticommunityName)</string>
<string name="settings_tab_username">"Benutzername (ohne u/ Präfix)"</string>
<string name="no_developer_easter_egg">"Es gibt hier keine Entwickleroptionen"</string>
<string name="no_link_available">"Konnte den Link nicht abrufen"</string>
@@ -475,8 +475,8 @@ Tippen für Neuversuch."</string>
<string name="elapsed_time_months_ago">"%1$d Monate"</string>
<string name="elapsed_time_a_year_ago">"1 Jahr"</string>
<string name="elapsed_time_years_ago">"%1$d Jahre"</string>
<string name="error_getting_multi_reddit_data">"Fehler beim Abrufen der Multireddit-Daten"</string>
<string name="error_loading_multi_reddit_list">"Kann Multireddits nicht synchronisieren"</string>
<string name="error_getting_multi_reddit_data">Fehler beim Abrufen der Multicommunity-Daten</string>
<string name="error_loading_multi_reddit_list">Kann Multicommunities nicht synchronisieren</string>
<string name="error_loading_subscriptions">"Kann Abonnements nicht synchronisieren"</string>
<string name="share_this_app">"Schau dir Infinity for Reddit an, ein super Reddit-Client!
https://play.google.com/store/apps/details?id=eu.toldi.infinityforlemmy"</string>
@@ -506,9 +506,9 @@ https://play.google.com/store/apps/details?id=eu.toldi.infinityforlemmy"</string
<string name="multi_reddit_description_hint">"Beschreibung"</string>
<string name="private_multi_reddit">"Privat"</string>
<string name="no_multi_reddit_name">"Wo ist der Name?"</string>
<string name="create_multi_reddit_failed">"Kann dieses Multireddit nicht erstellen"</string>
<string name="duplicate_multi_reddit">"Dieses Multireddit existiert bereits"</string>
<string name="edit_multi_reddit_failed">"Kann dieses Multireddit nicht bearbeiten"</string>
<string name="create_multi_reddit_failed">Kann dieses Multicommunity nicht erstellen</string>
<string name="duplicate_multi_reddit">Dieses Multicommunity existiert bereits</string>
<string name="edit_multi_reddit_failed">Kann diese Multicommunity nicht bearbeiten</string>
<string name="delete_multi_reddit_success">"Löschen erfolgreich"</string>
<string name="delete_multi_reddit_failed">"Löschen fehlgeschlagen"</string>
<string name="delete_multi_reddit_dialog_message">"Bist du sicher?"</string>
@@ -745,7 +745,7 @@ Basiere auf Indigo-AMOLED-Thema"</string>
<!-- Fuzzy -->
<string name="reset_all_settings_success">"Alle Einstellungen erfolgreich gelöscht"</string>
<string name="username_preview">"u/Hostilenemy"</string>
<string name="community_preview">"r/Infinity_For_Reddit"</string>
<string name="community_preview">!infinityforlemmy@lemdro.id</string>
<string name="primary_text_preview">"Primärer Text"</string>
<string name="secondary_text_preview">"Sekundärer Text"</string>
<string name="post_title_preview">"Dies ist ein Beitrag"</string>
@@ -756,8 +756,8 @@ Basiere auf Indigo-AMOLED-Thema"</string>
<string name="author_flair_preview">"Autor-Flair"</string>
<string name="comment_content_preview">"Ich habe für meine Freundin eine “Gute Besserung“-Karte besorgt.
Sie ist nicht krank oder so, aber sie könnte sich definitiv bessern."</string>
<string name="edit_multi_reddit">"Multireddit bearbeiten"</string>
<string name="delete_multi_reddit">"Multireddit löschen"</string>
<string name="edit_multi_reddit">Multicommunity bearbeiten</string>
<string name="delete_multi_reddit">Multicommunity löschen</string>
<string name="n_awards">"%1$d Auszeichnungen"</string>
<string name="one_award">"1 Auszeichnung"</string>
<string name="report">"Melden"</string>
@@ -822,7 +822,7 @@ Beispiel: DeinPasswort:123456"</string>
<string name="settings_more_tabs_summary">"Mehr Reiter"</string>
<string name="settings_more_tabs_info_summary">"Die folgenden Optionen zu aktivieren, kann zu ungewollten Verhalten führen:
Reiter könnten den Inhalt verlieren, wenn zu anderen gewechselt wird. Selbes Verhalten wie beim Neuladen der Seite."</string>
<string name="settings_more_tabs_show_favorite_subscribed_communities_title">"Favoriten der abonnierten Subreddits anzeigen"</string>
<string name="settings_more_tabs_show_favorite_subscribed_communities_title">Favoriten der abonnierten Communities anzeigen</string>
<string name="settings_more_tabs_show_subscribed_communities_title">"Abonnierte Subreddits anzeigen"</string>
<string name="settings_download_location_title">"Downloadpfad"</string>
<string name="settings_image_download_location_title">"Downloadpfad für Bilder"</string>
@@ -855,7 +855,7 @@ Reiter könnten den Inhalt verlieren, wenn zu anderen gewechselt wird. Selbes Ve
<!-- Fuzzy -->
<string name="settings_data_saving_mode_info_summary">"Im Datensparmodus:
Vorschaubilder haben eine geringere Auflösung.
Reddit-Videos haben eine geringere Auflösung.
Lemmy-Videos haben eine geringere Auflösung.
Automatisches Abspielen von Videos ist deaktiviert."</string>
<string name="settings_translation_title">"Übersetzung"</string>
<string name="settings_translation_summary">"Übersetze diese App auf POEditor. Danke an alle Beitragenden."</string>
@@ -933,10 +933,10 @@ Nachricht: %2$s"</string>
<string name="filtered_posts_activity_subtitle">"Gefilterte Beiträge"</string>
<string name="post_filter_preference_activity_label">"Beitragsfilter"</string>
<string name="search_users_result_activity_label">"Benutzer"</string>
<string name="multireddit_selection_activity_label">"Wähle ein Multireddit"</string>
<string name="multireddit_selection_activity_label">Wähle eine Multicommunity</string>
<string name="action_save_to_database">"In der Datenbank speichern"</string>
<string name="action_read_all_messages">"Alle Nachrichten lesen"</string>
<string name="action_add_to_multireddit">"Zum Multireddit hinzufügen"</string>
<string name="action_add_to_multireddit">Zum Multicommunity hinzufügen</string>
<string name="search_only_communities_hint">"Subreddits durchsuchen"</string>
<string name="search_only_users_hint">"Benutzer durchsuchen"</string>
<string name="post_type_gif">"GIF"</string>
@@ -995,19 +995,19 @@ Nachricht: %2$s"</string>
<string name="post_filter_usage_user_all">"Benutzer"</string>
<!-- This is inconsistant. Sometimes we call it Multireddit, other times MultiReddit. -->
<string name="post_filter_usage_multireddit">"Multireddit: %1$s"</string>
<string name="post_filter_usage_multireddit">Multicommunity: %1$s</string>
<!-- This is inconsistant. Sometimes we call it Multireddit, other times MultiReddit. -->
<string name="post_filter_usage_multireddit_all">"Multireddit"</string>
<string name="post_filter_usage_multireddit_all">Multicommunity</string>
<string name="post_filter_usage_search">"Suche"</string>
<string name="community">"Subreddit"</string>
<string name="user">"Benutzer"</string>
<string name="edit_post_filter_name_of_usage_info">"Leer lassen, um diesen Beitragsfilter auf alle Subreddits / Benutzer / Multireddits anzuwenden"</string>
<string name="edit_post_filter_name_of_usage_info">Leer lassen, um diesen Beitragsfilter auf alle Subreddits / Benutzer / Multicommunities anzuwenden</string>
<string name="read_all_messages_time_limit">"Du machst das zu oft hintereinander. Versuche es später noch einmal. Dies ist eine Beschränkung der Reddit-API."</string>
<string name="read_all_messages_success">"Alle Nachrichten erfolgreich als gelesen markiert"</string>
<string name="read_all_messages_failed">"Kann nicht alle Nachrichten als gelesen markieren"</string>
<string name="add_community_or_user_to_multireddit_success">"%1$s wurde zu Multireddit %2$s hinzugefügt"</string>
<string name="add_community_or_user_to_multireddit_failed">"Konnte %1$s nicht zu Multireddit %2$s hinzufügen"</string>
<string name="add_community_or_user_to_multireddit_success">%1$s wurde zu Multicommunity %2$s hinzugefügt</string>
<string name="add_community_or_user_to_multireddit_failed">Konnte %1$s nicht zu Multicommunity %2$s hinzufügen</string>
<string name="choose_a_user">"Wähle einen Benutzer"</string>
<string name="settings_click_to_show_media_in_gallery_layout">"Antippen, um die Medien in der Galerie-Ansicht anzuzeigen"</string>
<string name="settings_hide_post_type">"Beitragsart verstecken"</string>
@@ -1097,8 +1097,8 @@ Nachricht: %2$s"</string>
<string name="settings_show_only_one_comment_level_indicator">"Nur einen Indikator für die Kommentarebene anzeigen"</string>
<string name="save_comment">"Speichern"</string>
<string name="unsave_comment">"Nicht mehr speichern"</string>
<string name="copy_multi_reddit_path">"Pfad des Multireddit kopieren"</string>
<string name="copy_multi_reddit_path_failed">"Pfad des Multireddit kann nicht kopiert werden"</string>
<string name="copy_multi_reddit_path">Pfad der Multicommunity kopieren</string>
<string name="copy_multi_reddit_path_failed">Pfad der Multicommunity kann nicht kopiert werden</string>
<string name="crash_reports_deleted">"Absturzmeldungen werden gelöscht"</string>
<string name="disable_nsfw_forever_message">"Wenn du diese Option aktivierst, wird NSFW dauerhaft deaktiviert, egal ob die NSFW-Option ein- oder ausgeschaltet ist. Diese Option ist irreversibel, wenn du NSFW wieder einschalten willst, müssen die Daten der App gelöscht werden.
@@ -1125,9 +1125,9 @@ Benenne diese Themen sonst neu."</string>
<string name="settings_enable_material_you_summary">"Infinity Theme ihrem Hintergrund anpassen"</string>
<string name="settings_apply_material_you_title">"Material You anwenden"</string>
<string name="settings_apply_material_you_summary">"Sollte Infinity den Theme nicht gewechselt haben"</string>
<string name="settings_more_tabs_show_favorite_multireddits_title">"Multireddits Favoriten anzeigen"</string>
<string name="settings_more_tabs_show_multireddits_title">"Multireddits anzeigen"</string>
<string name="settings_collapse_reddit_section_title">"Sektion für Reddit zusammenklappen"</string>
<string name="settings_more_tabs_show_favorite_multireddits_title">Multicommunities Favoriten anzeigen</string>
<string name="settings_more_tabs_show_multireddits_title">Multicommunities anzeigen</string>
<string name="settings_collapse_reddit_section_title">Sektion für Lemmy zusammenklappen</string>
<string name="settings_video_player_automatic_landscape_orientation">"Automatisch zum Querformat im Videospieler wechseln"</string>
<string name="settings_remember_muting_option_in_post_feed">"Stummschalt-Option im Beitragsfeed merken"</string>
<string name="link_post_layout_auto">"Automatisch"</string>
@@ -1190,7 +1190,7 @@ Antippen zum Wiederholen."</string>
<string name="title_contains_strings_hint">"Titel: enthält Schlüsselwörter (key1,key2)"</string>
<string name="title_contains_regex_hint">"Titel: enthält Regex"</string>
<string name="contain_domains_hint">"Domains cont"</string>
<string name="anonymous_multireddit_no_community">"Dieses Multireddit hat kein Subreddit!"</string>
<string name="anonymous_multireddit_no_community">Dieses Multicommunity hat kein Subreddit!</string>
<string name="error_fetching_v_redd_it_video_cannot_get_video_url">"Fehler beim Abrufen von v.redd.it video: Kann Video URL nicht finden"</string>
<string name="contain_domain">"Diese Domain containen"</string>
<string name="lock_screen_text">"Ruhig Brauner!!!"</string>
@@ -1256,13 +1256,13 @@ Antippen zum Wiederholen."</string>
<string name="settings_show_fewer_toolbar_options_threshold_title">"Weniger Werkzeugleistenoptionen anzeigen"</string>
<string name="settings_show_fewer_toolbar_options_threshold_summary">"Wert %1$d"</string>
<string name="settings_show_author_avatar_title">"Autoravatar zeigen"</string>
<string name="settings_reddit_user_agreement_title">"Reddit Nutzungsbestimmungen "</string>
<string name="settings_reddit_user_agreement_title">"Lemmy Nutzungsbestimmungen "</string>
<string name="settings_always_show_child_comment_count_title">"Immer die Anzahl von untergeordneten Kommentaren anzeigen"</string>
<string name="settings_hide_upvote_ratio_title">"Upvoteverhaltnis verstecken"</string>
<string name="settings_miscellaneous_dangerous_group_title">"Gefährlich"</string>
<string name="settings_post_feed_max_resolution_warning_title">"Wert erhöhen um Vorschau in höherer Qualität zu zeigen, aber die App kann unerwartet abstürzen."</string>
<string name="settings_post_feed_max_resolution_title">"Beitragsvorschau maximale Auflösung (Höhe * Breite)"</string>
<string name="settings_reddit_video_default_resolution">"Reddit Video Standardauflösung"</string>
<string name="settings_reddit_video_default_resolution">Lemmy Video Standardauflösung</string>
<string name="select_a_ttf_font">"ttf Schriftart Datei auswählen"</string>
<string name="unable_to_get_font_file">"Schriftart konnte nicht geladen werden"</string>
<string name="unable_to_load_font">"Benutzerdefinierte Schriftart konnte nicht geladen werden"</string>

View File

@@ -175,7 +175,7 @@ Toca para reintentar."</string>
<string name="choose_a_communities">"Elige un subreddit"</string>
<string name="rules">"Reglas"</string>
<string name="post_link_hint">"URL"</string>
<string name="communities">"Subreddits"</string>
<string name="communities">Communities</string>
<string name="users">"Usuarios"</string>
<string name="multi_reddits">"Multireddits"</string>
<string name="bottom_sheet_post_text">"Texto"</string>
@@ -401,7 +401,7 @@ Premio means prize, so it's better suited the first word instead of the second o
<string name="settings_reddit_account_title">"Cuenta de Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Compartir"</string>
<string name="settings_share_summary">"Si te gusta esta aplicación ¡Compártela!"</string>
<string name="settings_version_title">"Infinity for Reddit"</string>

View File

@@ -177,9 +177,9 @@
<string name="choose_a_communities">"Choisir une subreddit"</string>
<string name="rules">"Règles"</string>
<string name="post_link_hint">"URL"</string>
<string name="communities">"Subreddits"</string>
<string name="communities">Communities</string>
<string name="users">"Utilisateurs"</string>
<string name="multi_reddits">"Multireddits"</string>
<string name="multi_reddits">MultiCommunity</string>
<string name="bottom_sheet_post_text">"Texte"</string>
<string name="bottom_sheet_post_link">"Lien"</string>
<string name="bottom_sheet_post_image">"Image"</string>
@@ -439,8 +439,8 @@ peut ne pas fonctionner sur Android 11"</string>
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Compte Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Partager"</string>
<string name="settings_share_summary">"Partagez cette application avec d'autres si vous l'appréciez"</string>
<string name="settings_version_title">"Infinity Pour Reddit"</string>

View File

@@ -430,7 +430,7 @@ Behavior -->
<string name="settings_reddit_account_title">"रैडिट खाता "</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"सबरैडिट "</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"साझा करें "</string>
<string name="settings_share_summary">"यदि आप इसका आनंद लेते हैं तो एप्प को अन्य लोगों के साथ साझा करें "</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -400,7 +400,7 @@
<string name="settings_reddit_account_title">"Reddit račun"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Podreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Dijeljenje"</string>
<string name="settings_share_summary">"Ako Vam se aplikacija sviđa, podijelite ju s drugima"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -385,7 +385,7 @@
<string name="settings_reddit_account_title">"Reddit fiók"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Közösség"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Megosztás"</string>
<string name="settings_share_summary">"Ha tetszik az app oszd meg másokkal is"</string>
<string name="settings_version_title">"Infiniti Reddithez"</string>

View File

@@ -164,9 +164,9 @@ Tocca per riprovare."</string>
<string name="choose_a_communities">"Scegli un subreddit"</string>
<string name="rules">"Regole"</string>
<string name="post_link_hint">"URL"</string>
<string name="communities">"Subreddit"</string>
<string name="communities">Communities</string>
<string name="users">"Utenti"</string>
<string name="multi_reddits">"MultiReddit"</string>
<string name="multi_reddits">MultiCommunity</string>
<string name="bottom_sheet_post_text">"Testo"</string>
<string name="bottom_sheet_post_link">"Link"</string>
<string name="bottom_sheet_post_image">"Immagine"</string>
@@ -373,8 +373,8 @@ Tocca per riprovare."</string>
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Account Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Condividi"</string>
<string name="settings_share_summary">"Condividi questa app con altre persone se la apprezzi"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -432,8 +432,8 @@
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Redditアカウント"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"共有"</string>
<string name="settings_share_summary">"このアプリが気に入ったようでしたら、ぜひ他の方々にもご紹介ください"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -166,9 +166,9 @@ Druk om opnieuw te proberen."</string>
<string name="choose_a_communities">"Kies een subreddit"</string>
<string name="rules">"Regels"</string>
<string name="post_link_hint">"URL"</string>
<string name="communities">"Subreddits"</string>
<string name="communities">Communities</string>
<string name="users">"Gebruikers"</string>
<string name="multi_reddits">"MultiReddits"</string>
<string name="multi_reddits">MultiCommunity</string>
<string name="bottom_sheet_post_text">"Tekst"</string>
<string name="bottom_sheet_post_link">"Link"</string>
<string name="bottom_sheet_post_image">"Afbeelding"</string>
@@ -383,8 +383,8 @@ Druk om opnieuw te proberen."</string>
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Reddit-account"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Delen"</string>
<string name="settings_share_summary">"Deel deze app met anderen als je hem graag gebruikt"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -378,8 +378,8 @@
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Konto Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Udostępnij"</string>
<string name="settings_share_summary">"Udostępnij tą aplikację, jeśli ci się ona podoba"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -173,9 +173,9 @@ Toque para tentar novamente."</string>
<string name="choose_a_communities">"Escolha um subreddit"</string>
<string name="rules">"Regras"</string>
<string name="post_link_hint">"URL"</string>
<string name="communities">"Subreddits"</string>
<string name="communities">Communities</string>
<string name="users">"Usuários"</string>
<string name="multi_reddits">"Multireddits"</string>
<string name="multi_reddits">MultiCommunity</string>
<string name="bottom_sheet_post_text">"Texto"</string>
<string name="bottom_sheet_post_link">"Link"</string>
<string name="bottom_sheet_post_image">"Imagem"</string>
@@ -382,8 +382,8 @@ Toque para tentar novamente."</string>
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Conta Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Compartilhar"</string>
<string name="settings_share_summary">"Compartilhe esse App com outros se você está gostando dele"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -15,13 +15,13 @@
<string name="view_message_activity_label">"Caixa de Entrada"</string>
<string name="settings_activity_label">"Definições"</string>
<string name="account_saved_thing_activity_label">"Guardado"</string>
<string name="create_multi_reddit_activity_label">"Criar Multireddit"</string>
<string name="create_multi_reddit_activity_label">"Criar Multicomunidade"</string>
<string name="community_multiselection_activity_label">"Selecionar Comunidades"</string>
<string name="custom_theme_listing_activity_label">"Temas Personalizados"</string>
<string name="customize_theme_activity_label">"Personalizar Tema"</string>
<string name="customize_theme_activity_create_theme_label">"Criar Tema"</string>
<string name="theme_preview_activity_label">"Pré-visualizar Tema"</string>
<string name="edit_multi_reddit_activity_label">"Editar Multireddit"</string>
<string name="edit_multi_reddit_activity_label">"Editar Multicomunidade"</string>
<string name="selected_subeddits_activity_label">"Comunidades selecionadas"</string>
<string name="report_activity_label">"Denunciar"</string>
<string name="view_imgur_media_activity_image_label">"Imagem %1$d/%2$d"</string>
@@ -53,8 +53,8 @@
<string name="action_edit_flair">"Editar Flair"</string>
<string name="action_change_post_layout">"Alterar Visualização de Publicações"</string>
<string name="action_save">"Guardar"</string>
<string name="action_edit_multi_reddit">"Editar MultiReddit"</string>
<string name="action_delete_multi_reddit">"Eliminar MultiReddit"</string>
<string name="action_edit_multi_reddit">"Editar MultiComunidade"</string>
<string name="action_delete_multi_reddit">"Eliminar MultiComunidade"</string>
<string name="action_share">"Partilhar"</string>
<string name="action_preview">"Pré-visualizar"</string>
<string name="action_report">"Denunciar"</string>
@@ -81,7 +81,7 @@ Toque para tentar novamente."</string>
<string name="no_comments">"Sem comentários encontrados"</string>
<string name="no_communities">"Nenhuma comunidade encontrada"</string>
<string name="no_users">"Nenhum utilizador encontrado"</string>
<string name="no_multi_reddits">"Nenhum Multireddit encontrado"</string>
<string name="no_multi_reddits">"Nenhuma Multicomunidade encontrada"</string>
<string name="no_storage_permission">"Sem permissão de armazenamento para guardar este ficheiro"</string>
<string name="load_comments_failed">"Erro ao carregar comentários.
Toque para tentar novamente."</string>
@@ -102,7 +102,7 @@ Toque para tentar novamente."</string>
<string name="since">"Desde:"</string>
<string name="profile">"Perfil"</string>
<string name="subscriptions">"Subscrições"</string>
<string name="multi_reddit">"Multi-reddit"</string>
<string name="multi_reddit">"Multi-comunidade"</string>
<string name="inbox">"Caixa de Entrada"</string>
<string name="upvoted">"Voto Positivo"</string>
<string name="downvoted">"Voto Negativo"</string>
@@ -115,7 +115,7 @@ Toque para tentar novamente."</string>
<string name="cannot_fetch_community_info">"Não é possível obter informações da comunidade"</string>
<string name="cannot_fetch_user_info">"Não é possível obter informações do utilizador"</string>
<string name="cannot_fetch_sidebar">"Não é possível obter informações da barra lateral"</string>
<string name="cannot_fetch_multireddit">"Não é possível obter informações do multireddit"</string>
<string name="cannot_fetch_multireddit">"Não é possível obter informações da multicomunidade"</string>
<string name="subscribe">"Subscrever"</string>
<string name="unsubscribe">"Cancelar subscrição"</string>
<string name="subscribed">"Subscrito"</string>
@@ -171,7 +171,7 @@ Toque para tentar novamente."</string>
<string name="post_link_hint">"URL"</string>
<string name="communities">"Comunidades"</string>
<string name="users">"Utilizadores"</string>
<string name="multi_reddits">"MultiReddits"</string>
<string name="multi_reddits">MultiCommunity</string>
<string name="bottom_sheet_post_text">"Texto"</string>
<string name="bottom_sheet_post_link">"Ligação"</string>
<string name="bottom_sheet_post_image">"Imagem"</string>
@@ -385,13 +385,13 @@ Toque para tentar novamente."</string>
<string name="settings_rate_summary">"Dê-me 5 estrelas que ficarei muito contente"</string>
<string name="settings_email_title">"Email"</string>
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Conta do Reddit"</string>
<string name="settings_reddit_account_title">"Conta do Lemmy"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Comunidade"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Partilhar"</string>
<string name="settings_share_summary">"Se aprecia esta aplicação, partilhe-a com outros"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>
<string name="settings_version_title">"Infinity For Lemmy"</string>
<string name="settings_version_summary">"Versão %s"</string>
<string name="settings_category_customization_title">"Personalização"</string>
<string name="settings_customize_light_theme_title">"Tema Claro"</string>
@@ -414,7 +414,7 @@ Toque para tentar novamente."</string>
<string name="settings_tab_community_name">"Nome da Comunidade (sem prefixo r/)"</string>
<!-- Fuzzy -->
<string name="settings_tab_multi_reddit_name">"Nome MultiReddit (/utilizador/oseunomedeutilizador/m/oseunomemultireddit)"</string>
<string name="settings_tab_multi_reddit_name">"Nome MultiComunidade (/utilizador/oseunomedeutilizador/m/oseunomemulticomunidade)"</string>
<string name="settings_tab_username">"Nome de Utilizador (sem prefixo u/)"</string>
<string name="no_developer_easter_egg">"Aqui não existem opções de programador"</string>
<string name="no_link_available">"Não foi possível obter a ligação"</string>
@@ -452,10 +452,10 @@ Toque para tentar novamente."</string>
<string name="elapsed_time_months_ago">"%1$d Meses"</string>
<string name="elapsed_time_a_year_ago">"1 Ano"</string>
<string name="elapsed_time_years_ago">"%1$d Anos"</string>
<string name="error_getting_multi_reddit_data">"Erro ao obter dados do multireddit"</string>
<string name="error_loading_multi_reddit_list">"Não foi possível sincronizar multireddits"</string>
<string name="error_getting_multi_reddit_data">"Erro ao obter dados da multicomunidade"</string>
<string name="error_loading_multi_reddit_list">"Não foi possível sincronizar multicomunidades"</string>
<string name="error_loading_subscriptions">"Não foi possível sincronizar as subscrições"</string>
<string name="share_this_app">"Check out Infinity for Reddit, an awesome Reddit client!
<string name="share_this_app">"Check out Infinity for Lemmy, an awesome Lemmy client!
https://play.google.com/store/apps/details?id=eu.toldi.infinityforlemmy"</string>
<string name="error_getting_community_name">"Erro ao obter o nome da comunidade"</string>
<string name="share_post_link">"Partilhar Endereço da Publicação"</string>
@@ -483,9 +483,9 @@ https://play.google.com/store/apps/details?id=eu.toldi.infinityforlemmy"</string
<string name="multi_reddit_description_hint">"Descrição"</string>
<string name="private_multi_reddit">"Privado"</string>
<string name="no_multi_reddit_name">"Onde está o nome?"</string>
<string name="create_multi_reddit_failed">"Não é possível criar este multireddit"</string>
<string name="duplicate_multi_reddit">"Este multireddit já existe"</string>
<string name="edit_multi_reddit_failed">"Não é possível editar este multireddit"</string>
<string name="create_multi_reddit_failed">"Não é possível criar esta multicomunidade"</string>
<string name="duplicate_multi_reddit">"Esta multicomunidade já existe"</string>
<string name="edit_multi_reddit_failed">"Não é possível editar esta multicomunidade"</string>
<string name="delete_multi_reddit_success">"Eliminado com sucesso"</string>
<string name="delete_multi_reddit_failed">"Falha ao eliminar"</string>
<string name="delete_multi_reddit_dialog_message">"Tem a certeza?"</string>
@@ -688,7 +688,7 @@ com base no Tema Indigo Amoled"</string>
<string name="delete_all_front_page_scrolled_positions_success">"Eliminação das posições de deslizamento com sucesso"</string>
<string name="reset_all_settings_success">"Todas as definições repostas com sucesso"</string>
<string name="username_preview">"u/Hostilenemy"</string>
<string name="community_preview">"r/Infinity_For_Reddit"</string>
<string name="community_preview">"c/infinityforlemmy"</string>
<string name="primary_text_preview">"Texto Principal"</string>
<string name="secondary_text_preview">"Texto Secundário"</string>
<string name="post_title_preview">"Isto é uma publicação"</string>
@@ -699,8 +699,8 @@ com base no Tema Indigo Amoled"</string>
<string name="author_flair_preview">"Flair do Autor"</string>
<string name="comment_content_preview">"Arranjei um cartão a desejar as \"Melhoras\" à minha namorada.
Ela não está doente nem nada, mas certamente poderá melhorar."</string>
<string name="edit_multi_reddit">"Editar Multireddit"</string>
<string name="delete_multi_reddit">"Eliminar Multireddit"</string>
<string name="edit_multi_reddit">"Editar Multicomunidade"</string>
<string name="delete_multi_reddit">"Eliminar Multicomunidade"</string>
<string name="n_awards">"%1$d Prémios"</string>
<string name="one_award">"1 Prémio"</string>
<string name="report">"Denunciar"</string>
@@ -713,7 +713,7 @@ Ela não está doente nem nada, mas certamente poderá melhorar."</string>
<string name="report_reason_general_child_pornography">"Contém Pornografia Infantil"</string>
<string name="report_reason_general_abusive_content">"Contém Conteúdo Abusivo"</string>
<string name="home">"Início"</string>
<string name="local">"Popular"</string>
<string name="local">"Local"</string>
<string name="notifications">"Notificações"</string>
<string name="messages">"Mensagens"</string>
<string name="message">"Mensagem"</string>
@@ -787,7 +787,7 @@ Os separadores poderão perder todo o conteúdo após alternar entre outros. É
<string name="settings_data_saving_mode">"Modo de Poupança de Dados"</string>
<string name="settings_data_saving_mode_info_summary">"No modo de poupança de dados:
Pré-visualização de imagens em baixa resolução.
Vídeos do Reddit em baixa resolução.
Vídeos do Lemmy em baixa resolução.
Reprodução automática de vídeos desativada."</string>
<string name="settings_translation_title">"Tradução"</string>
<string name="settings_translation_summary">"Traduzir esta aplicação no POEditor. Obrigado a todos os colaboradores."</string>
@@ -855,10 +855,10 @@ Mensagem: %2$s"</string>
<string name="filtered_posts_activity_subtitle">"Publicações Filtradas"</string>
<string name="post_filter_preference_activity_label">"Filtro de Publicações"</string>
<string name="search_users_result_activity_label">"Utilizadores"</string>
<string name="multireddit_selection_activity_label">"Escolher um Multireddit"</string>
<string name="multireddit_selection_activity_label">"Escolher uma Multicomunidade"</string>
<string name="action_save_to_database">"Guardar na Base de Dados"</string>
<string name="action_read_all_messages">"Ler Todas as Mensagens"</string>
<string name="action_add_to_multireddit">"Adicionar ao Multireddit"</string>
<string name="action_add_to_multireddit">"Adicionar à Multicomunidade"</string>
<string name="search_only_communities_hint">"Pesquisar comunidades"</string>
<string name="search_only_users_hint">"Pesquisar utilizadores"</string>
<string name="post_type_gif">"Gif"</string>
@@ -895,7 +895,7 @@ Mensagem: %2$s"</string>
<string name="only_spoiler">"Apenas Spoiler"</string>
<string name="title_excludes_strings_hint">"Título: excluir palavras-chave (palavra1,palavra2)"</string>
<string name="title_excludes_regex_hint">"Título: excluir expressões regulares"</string>
<string name="exclude_communities_hint">"Excluir comunidades (ex.: funny,AskReddit)"</string>
<string name="exclude_communities_hint">"Excluir comunidades (ex.: funny,Asklemmy)"</string>
<string name="exclude_users_hint">"Excluir utilizadores (ex.: Hostilenemy,random)"</string>
<string name="exclude_flairs_hint">"Excluir flairs (ex.: flair1, flair2)"</string>
<string name="contain_flairs_hint">"Contém flairs (ex.: flair1, flair2)"</string>
@@ -915,17 +915,17 @@ Mensagem: %2$s"</string>
<string name="post_filter_usage_community_all">"Comunidade"</string>
<string name="post_filter_usage_user">"Utilizador: %1$s"</string>
<string name="post_filter_usage_user_all">"Utilizador"</string>
<string name="post_filter_usage_multireddit">"MultiReddit: %1$s"</string>
<string name="post_filter_usage_multireddit_all">"MultiReddit"</string>
<string name="post_filter_usage_multireddit">"MultiComunidade: %1$s"</string>
<string name="post_filter_usage_multireddit_all">"MultiComunidade"</string>
<string name="post_filter_usage_search">"Pesquisar"</string>
<string name="community">"Comunidade"</string>
<string name="user">"Utilizador"</string>
<string name="edit_post_filter_name_of_usage_info">"Deixar em branco para aplicar este filtro de publicação a todos os utilizadores / comunidades / multireddit"</string>
<string name="read_all_messages_time_limit">"Está a repetir esta ação com demasiada frequência. Tente novamente mais tarde. Este é o valor limite da API do Reddit."</string>
<string name="edit_post_filter_name_of_usage_info">"Deixar em branco para aplicar este filtro de publicação a todos os utilizadores / comunidades / multilemmy"</string>
<string name="read_all_messages_time_limit">"Está a repetir esta ação com demasiada frequência. Tente novamente mais tarde. Este é o valor limite da API do Lemmy."</string>
<string name="read_all_messages_success">"Todas as mensagens lidas com sucesso"</string>
<string name="read_all_messages_failed">"Não é possível ler todas as mensagens"</string>
<string name="add_community_or_user_to_multireddit_success">"%1$s foi adicionado ao multireddit %2$s"</string>
<string name="add_community_or_user_to_multireddit_failed">"Não é possível adicionar %1$s ao multireddit %2$s"</string>
<string name="add_community_or_user_to_multireddit_success">"%1$s foi adicionado à multicomunidade %2$s"</string>
<string name="add_community_or_user_to_multireddit_failed">"Não é possível adicionar %1$s à multicomunidade %2$s"</string>
<string name="choose_a_user">"Escolher um utilizador"</string>
<string name="settings_click_to_show_media_in_gallery_layout">"Clicar para Mostrar Média na Visualização Galeria"</string>
<string name="settings_hide_post_type">"Esconder Tipo de Publicação"</string>
@@ -1013,8 +1013,8 @@ Mensagem: %2$s"</string>
<string name="settings_show_only_one_comment_level_indicator">"Mostrar Apenas Um Indicador do Nível de Comentário"</string>
<string name="save_comment">"Guardar"</string>
<string name="unsave_comment">"Esquecer"</string>
<string name="copy_multi_reddit_path">"Copiar Caminho do Multireddit"</string>
<string name="copy_multi_reddit_path_failed">"Não é possível copiar o caminho do multireddit"</string>
<string name="copy_multi_reddit_path">"Copiar Caminho da Multicomunidade"</string>
<string name="copy_multi_reddit_path_failed">"Não é possível copiar o caminho da multicomunidade"</string>
<string name="crash_reports_deleted">"Os relatórios de erros eliminados"</string>
<string name="disable_nsfw_forever_message">"Uma vez ativo, todo o conteúdo impróprio será desativado permanentemente, quer a definição de conteúdo 18+ esteja ativa ou não. Esta configuração é irreversível e a única maneira de reativar conteúdo 18+ é limpando os dados da aplicação.
@@ -1027,7 +1027,7 @@ Ainda deseja ativar esta opção?"</string>
<string name="receive_post_reply_notifications">"Receber notificações de respostas de publicações"</string>
<string name="bottom_sheet_post_gallery">"Galeria"</string>
<string name="posting_gallery">"A Publicar Galeria"</string>
<string name="label_reddit">"Reddit"</string>
<string name="label_reddit">"Lemmy"</string>
<string name="settings_default_link_post_layout">"Disposição predefinida de Publicações de Ligação"</string>
<string name="settings_category_material_you_title">"Material You"</string>
<string name="settings_enable_material_you_warning_summary">"Assegure-se de que não tem temas com nome
@@ -1039,9 +1039,9 @@ Caso contrário, altere o nome antes de ativar Material You"</string>
<string name="settings_enable_material_you_summary">"Personalizar Infinity baseado na imagem de fundo"</string>
<string name="settings_apply_material_you_title">"Aplicar Material You"</string>
<string name="settings_apply_material_you_summary">"Em caso do Infinity não alterar o tema"</string>
<string name="settings_more_tabs_show_favorite_multireddits_title">"Mostrar MultiReddit Favorito"</string>
<string name="settings_more_tabs_show_multireddits_title">"Mostrar MultiReddit"</string>
<string name="settings_collapse_reddit_section_title">"Recolher Secção do Reddit"</string>
<string name="settings_more_tabs_show_favorite_multireddits_title">"Mostrar MultiComunidade Favorita"</string>
<string name="settings_more_tabs_show_multireddits_title">"Mostrar MultiComunidade"</string>
<string name="settings_collapse_reddit_section_title">"Recolher Secção do Lemmy"</string>
<string name="settings_video_player_automatic_landscape_orientation">"Alterar para Orientação Paisagem automaticamente no Reprodutor de Vídeo"</string>
<string name="settings_remember_muting_option_in_post_feed">"Lembrar opção sem som no Feed de Publicações"</string>
<string name="link_post_layout_auto">"Auto"</string>
@@ -1064,7 +1064,7 @@ Toque para tentar novamente."</string>
<string name="settings_post_details_title">"Detalhes do Post"</string>
<string name="settings_secure_mode_title">"Modo Seguro"</string>
<string name="error_loading_wiki">"Erro a carregar a Wiki"</string>
<string name="no_wiki">"Este subreddit não tem wiki"</string>
<string name="no_wiki">"Esta comunidade não tem wiki"</string>
<string name="material_you_notification_title">"Aplicando Material You"</string>
<string name="action_go_to_wiki">"Ir para a Wiki"</string>
<string name="about">"Sobre"</string>
@@ -1074,7 +1074,7 @@ Toque para tentar novamente."</string>
<string name="go_to_top">"Ir para Cima"</string>
<string name="title_contains_regex_hint">"Título: contém regex"</string>
<string name="contain_domains_hint">"Contém domínios"</string>
<string name="anonymous_multireddit_no_community">"Este multireddit não tem nenhum subreddit!"</string>
<string name="anonymous_multireddit_no_community">"Esta multicomunidade não tem nenhuma comunidade!"</string>
<string name="contain_domain">"Contém este domínio"</string>
<string name="app_lock_timeout_immediately">"Imediatamente"</string>
<string name="app_lock_timeout_1_min">"1 minuto"</string>
@@ -1092,4 +1092,4 @@ Toque para tentar novamente."</string>
<string name="app_lock_timeout_6_hours">"6 horas"</string>
<string name="app_lock_timeout_12_hours">"12 horas"</string>
<string name="app_lock_timeout_24_hours">"24 horas"</string>
</resources>
</resources>

View File

@@ -402,8 +402,8 @@ Atinge pentru a reîncerca."</string>
<string name="settings_email_summary">"docilealligator.app@gmail.com"</string>
<string name="settings_reddit_account_title">"Cont Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_title">Community</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Distribuie"</string>
<string name="settings_share_summary">"Distribuie această aplicație altor persoane dacă îți place"</string>
<string name="settings_version_title">"Infinit Pentru Reddit"</string>

View File

@@ -389,7 +389,7 @@
<string name="settings_reddit_account_title">"Аккаунт Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Сабреддит"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Поделиться"</string>
<string name="settings_share_summary">"Поделитесь этим приложением с другими людьми, если оно вам нравится"</string>
<string name="settings_version_title">"Infinity для Reddit"</string>

View File

@@ -396,7 +396,7 @@ Tekrar denemek için tıklayın."</string>
<string name="settings_reddit_account_title">"Reddit Hesabı"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Paylaş"</string>
<string name="settings_share_summary">"Bu uygulamayı beğendiyseniz başkalarıyla paylaşın"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -377,7 +377,7 @@
<string name="settings_reddit_account_title">"Обліківка Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Сабредит"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Поширте"</string>
<string name="settings_share_summary">"Поділіться цим застосунком з іншими людьми, якщо він Вам подобається"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -390,7 +390,7 @@ Nhấn để thử lại."</string>
<string name="settings_reddit_account_title">"Tài khoản Reddit"</string>
<string name="settings_reddit_account_summary">"u/Hostilenemy"</string>
<string name="settings_community_title">"Subreddit"</string>
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"Chia sẻ"</string>
<string name="settings_share_summary">"Hãy chia sẻ ứng dụng này với người khác nếu bạn thích nó"</string>
<string name="settings_version_title">"Infinity cho Reddit"</string>

View File

@@ -395,7 +395,7 @@
<string name="settings_community_title">"版块"</string>
<!-- 这个应该不做翻译为好它是指示infinity社区位置的。在关于界面 -->
<string name="settings_community_summary">"r/Infinity_For_Reddit"</string>
<string name="settings_community_summary">!infinityforlemmy@lemdro.id</string>
<string name="settings_share_title">"分享"</string>
<string name="settings_share_summary">"如果您喜欢此应用,可以分享给其他人"</string>
<string name="settings_version_title">"Infinity For Reddit"</string>

View File

@@ -501,47 +501,57 @@
<string-array name="settings_subreddit_default_sort_type">
<item>Hot</item>
<item>New</item>
<item>Rising</item>
<item>Active</item>
<item>Top</item>
<item>Controversial</item>
<item>Most Comments</item>
<item>New Comments</item>
</string-array>
<string-array name="settings_subreddit_default_sort_type_values">
<item>HOT</item>
<item>NEW</item>
<item>RISING</item>
<item>ACTIVE</item>
<item>TOP</item>
<item>CONTROVERSIAL</item>
<item>MOSTCOMMENTS</item>
<item>NEWCOMMENTS</item>
</string-array>
<string-array name="settings_user_default_sort_type">
<item>New</item>
<item>Hot</item>
<item>Old</item>
<item>Top</item>
<item>Controversial</item>
</string-array>
<string-array name="settings_user_default_sort_type_values">
<item>NEW</item>
<item>HOT</item>
<item>OLD</item>
<item>TOP</item>
<item>CONTROVERSIAL</item>
</string-array>
<string-array name="settings_default_sort_time">
<item>Hour</item>
<item>6 Hours</item>
<item>12 Hours</item>
<item>Day</item>
<item>Week</item>
<item>Month</item>
<item>3 Months</item>
<item>6 Months</item>
<item>9 Months</item>
<item>Year</item>
<item>All Time</item>
</string-array>
<string-array name="settings_default_sort_time_values">
<item>HOUR</item>
<item>6HOURS</item>
<item>12HOURS</item>
<item>DAY</item>
<item>WEEK</item>
<item>MONTH</item>
<item>3MONTHS</item>
<item>6MONTHS</item>
<item>9MONTHS</item>
<item>YEAR</item>
<item>ALL</item>
</string-array>

View File

@@ -16,13 +16,13 @@
<string name="view_message_activity_label">Inbox</string>
<string name="settings_activity_label">Settings</string>
<string name="account_saved_thing_activity_label">Saved</string>
<string name="create_multi_reddit_activity_label">Create Multireddit</string>
<string name="create_multi_reddit_activity_label">Create Multicommunity</string>
<string name="community_multiselection_activity_label">Select Communities</string>
<string name="custom_theme_listing_activity_label">Custom Themes</string>
<string name="customize_theme_activity_label">Customize Theme</string>
<string name="customize_theme_activity_create_theme_label">Create Theme</string>
<string name="theme_preview_activity_label">Theme Preview</string>
<string name="edit_multi_reddit_activity_label">Edit Multireddit</string>
<string name="edit_multi_reddit_activity_label">Edit Multicommunity</string>
<string name="selected_subeddits_activity_label">Selected Communities</string>
<string name="report_activity_label">Report</string>
<string name="view_imgur_media_activity_image_label">Image %1$d/%2$d</string>
@@ -38,7 +38,7 @@
<string name="filtered_posts_activity_subtitle">Filtered Posts</string>
<string name="post_filter_preference_activity_label">Post Filter</string>
<string name="search_users_result_activity_label">Users</string>
<string name="multireddit_selection_activity_label">Select a Multireddit</string>
<string name="multireddit_selection_activity_label">Select a Multicommunity</string>
<string name="post_gallery_activity_label">Gallery Post</string>
<string name="trending_activity_label">Trending</string>
<string name="wiki_activity_label">Wiki</string>
@@ -70,8 +70,8 @@
<string name="action_edit_flair">Edit Flair</string>
<string name="action_change_post_layout">Change Post Layout</string>
<string name="action_save">Save</string>
<string name="action_edit_multi_reddit">Edit MultiReddit</string>
<string name="action_delete_multi_reddit">Delete Multireddit</string>
<string name="action_edit_multi_reddit">Edit Multicommunity</string>
<string name="action_delete_multi_reddit">Delete Multicommunity</string>
<string name="action_share">Share</string>
<string name="action_preview">Preview</string>
<string name="action_report">Report</string>
@@ -84,7 +84,7 @@
<string name="action_give_award">Give Award</string>
<string name="action_save_to_database">Save to Database</string>
<string name="action_read_all_messages">Read All Messages</string>
<string name="action_add_to_multireddit">Add to Multireddit</string>
<string name="action_add_to_multireddit">Add to Multicommuity</string>
<string name="action_share_link">Share Link</string>
<string name="action_copy_link">Copy Link</string>
<string name="action_open_external_browser">Open in browser</string>
@@ -114,7 +114,7 @@
<string name="no_comments">No comments found</string>
<string name="no_communities">No communities found</string>
<string name="no_users">No users found</string>
<string name="no_multi_reddits">No Multireddits 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>
@@ -135,7 +135,7 @@
<string name="profile">Profile</string>
<string name="subscriptions">Subscriptions</string>
<string name="multi_reddit">Multireddit</string>
<string name="multi_reddit">Multicommuity</string>
<string name="history">History</string>
<string name="inbox">Inbox</string>
<string name="inbox_with_count">Inbox (%1$,d)</string>
@@ -153,7 +153,7 @@
<string name="invalid_response">Invalid response from the server</string>
<string name="invalid_username_or_password">Invalid username or password</string>
<string name="cannot_fetch_sidebar">Cannot fetch sidebar</string>
<string name="cannot_fetch_multireddit">Cannot fetch multireddit info</string>
<string name="cannot_fetch_multireddit">Cannot fetch multicommunity info</string>
<string name="subscribe">Subscribe</string>
<string name="unsubscribe">Unsubscribe</string>
@@ -226,7 +226,7 @@
<string name="communities">Communities</string>
<string name="users">Users</string>
<string name="multi_reddits">MultiReddits</string>
<string name="multi_reddits">MultiCommunity</string>
<string name="posts">Posts</string>
<string name="comments">Comments</string>
<string name="about">About</string>
@@ -511,14 +511,14 @@
<string name="settings_tab_3_summary">Tab 3</string>
<string name="settings_more_tabs_summary">More Tabs</string>
<string name="settings_more_tabs_info_summary">Enabling the following options will cause an unintended behaviour:\nTabs may lose all the content after switching to others. This is the same as refreshing the page.</string>
<string name="settings_more_tabs_show_favorite_multireddits_title">Show Favorite Multireddits</string>
<string name="settings_more_tabs_show_multireddits_title">Show Multireddits</string>
<string name="settings_more_tabs_show_favorite_multireddits_title">Show Favorite Multicommunities</string>
<string name="settings_more_tabs_show_multireddits_title">Show Multicommunities</string>
<string name="settings_more_tabs_show_favorite_subscribed_communities_title">Show Favorite Subscribed Communities</string>
<string name="settings_more_tabs_show_subscribed_communities_title">Show Subscribed Communities</string>
<string name="settings_tab_title">Title</string>
<string name="settings_tab_post_type">Type</string>
<string name="settings_tab_community_name">Community Name (Without @ instance tag)</string>
<string name="settings_tab_multi_reddit_name">MultiReddit Path (/user/yourusername/m/yourmultiredditname) (only lowercase characters)</string>
<string name="settings_tab_multi_reddit_name">Multicommunity Path (/user/yourusername/m/yourmulticommunityname) (only lowercase characters)</string>
<string name="settings_tab_username">Username (Without u/ prefix)</string>
<string name="no_developer_easter_egg">There\'s no developer options here</string>
<string name="settings_download_location_title">Download Location</string>
@@ -548,7 +548,7 @@
<string name="settings_bottom_app_bar_option_4">Option 4</string>
<string name="settings_bottom_app_bar_fab">Floating Action Button</string>
<string name="settings_data_saving_mode">Data Saving Mode</string>
<string name="settings_data_saving_mode_info_summary">In data saving mode:\nPreview images are in lower resolution.\nReddit videos are in lower resolution.\nVideo autoplay is disabled.</string>
<string name="settings_data_saving_mode_info_summary">In data saving mode: Preview images are in lower resolution. Lemmy videos are in lower resolution. Video autoplay is disabled.</string>
<string name="settings_translation_title">Translation</string>
<string name="settings_translation_summary">Translate this app on POEditor. Thanks to all contributors.</string>
<string name="settings_credits_national_flags">National Flags</string>
@@ -594,7 +594,7 @@
<string name="settings_swipe_between_posts_title">Swipe Between Posts</string>
<string name="settings_navigation_drawer_title">Navigation Drawer</string>
<string name="settings_collapse_account_section_title">Collapse Account Section</string>
<string name="settings_collapse_reddit_section_title">Collapse Reddit Section</string>
<string name="settings_collapse_reddit_section_title">Collapse Lemmy Section</string>
<string name="settings_collapse_post_section_title">Collapse Post Section</string>
<string name="settings_collapse_preferences_section_title">Collapse Preferences Section</string>
<string name="settings_collapse_favorite_communities_section_title">Collapse Favorite Communities Section</string>
@@ -639,13 +639,13 @@
<string name="settings_show_fewer_toolbar_options_threshold_title">Show Fewer Toolbar Options Starting From</string>
<string name="settings_show_fewer_toolbar_options_threshold_summary">Level %1$d</string>
<string name="settings_show_author_avatar_title">Show Author Avatar</string>
<string name="settings_reddit_user_agreement_title">Reddit User Agreement</string>
<string name="settings_reddit_user_agreement_title">Lemmy User Agreement</string>
<string name="settings_always_show_child_comment_count_title">Always Show the Number of Child Comments</string>
<string name="settings_hide_upvote_ratio_title">Hide Upvote Ratio</string>
<string name="settings_miscellaneous_dangerous_group_title">Dangerous</string>
<string name="settings_post_feed_max_resolution_warning_title">Increase the value to show previews in higher resolution, but the app may crash unexpectedly.</string>
<string name="settings_post_feed_max_resolution_title">Post Feed Preview Max Resolution (Width * Height)</string>
<string name="settings_reddit_video_default_resolution">Reddit Video Default Resolution</string>
<string name="settings_reddit_video_default_resolution">Lemmy Video Default Resolution</string>
<string name="settings_easier_to_watch_in_full_screen_title">Easier to Watch in Full Screen</string>
<string name="settings_hide_fab_in_post_feed">Hide FAB in Post Feed</string>
<string name="settings_comment_divider_type">Comment Divider Type</string>
@@ -700,8 +700,8 @@
<string name="elapsed_time_a_year_ago">1 Year</string>
<string name="elapsed_time_years_ago">%1$d Years</string>
<string name="error_getting_multi_reddit_data">Error getting multireddit data</string>
<string name="error_loading_multi_reddit_list">Cannot sync multireddits</string>
<string name="error_getting_multi_reddit_data">Error getting multicommunity data</string>
<string name="error_loading_multi_reddit_list">Cannot sync multicommunities</string>
<string name="error_loading_subscriptions">Cannot sync subscriptions</string>
<string name="share_this_app">Check out Infinity for Lemmy, an awesome Lemmy client!\nhttps://play.google.com/store/apps/details?id=eu.toldi.infinityforlemmy</string>
@@ -742,9 +742,9 @@
<string name="private_multi_reddit">Private</string>
<string name="select_communities_and_users">Select Communities and Users</string>
<string name="no_multi_reddit_name">Where is the name?</string>
<string name="create_multi_reddit_failed">Cannot create this multireddit</string>
<string name="duplicate_multi_reddit">This multireddit already exists</string>
<string name="edit_multi_reddit_failed">Cannot edit this multireddit</string>
<string name="create_multi_reddit_failed">Cannot create this multicommunity</string>
<string name="duplicate_multi_reddit">This multicommunity already exists</string>
<string name="edit_multi_reddit_failed">Cannot edit this multicommunity</string>
<string name="delete_multi_reddit_success">Deleted successfully</string>
<string name="delete_multi_reddit_failed">Delete failed</string>
<string name="delete_multi_reddit_dialog_message">Are you sure?</string>
@@ -981,7 +981,7 @@
<string name="reset_all_settings_success">Reset all settings successfully</string>
<string name="username_preview">\@bazsalanszky@lemmy.toldi.eu</string>
<string name="community_preview">r/Infinity_For_Reddit</string>
<string name="community_preview">!infinityforlemmy@lemdro.id</string>
<string name="primary_text_preview">Primary Text</string>
<string name="secondary_text_preview">Secondary Text</string>
<string name="post_title_preview">This is a post</string>
@@ -992,10 +992,10 @@
<string name="author_flair_preview">Author Flair</string>
<string name="comment_content_preview">I got my girlfriend a “Get better soon” card.\nShe\'s not ill or anything, but she could definitely get better.</string>
<string name="copy_multi_reddit_path">Copy Multireddit\'s Path</string>
<string name="copy_multi_reddit_path_failed">Unable to copy multireddit\'s path</string>
<string name="edit_multi_reddit">Edit Multireddit</string>
<string name="delete_multi_reddit">Delete Multireddit</string>
<string name="copy_multi_reddit_path">Copy Multicommunity\'s Path</string>
<string name="copy_multi_reddit_path_failed">Unable to copy multicommunity\'s path</string>
<string name="edit_multi_reddit">Edit Multicommunity</string>
<string name="delete_multi_reddit">Delete Multicommunity</string>
<string name="n_awards">%1$,d Awards</string>
<string name="one_award">1 Award</string>
@@ -1140,19 +1140,19 @@
<string name="post_filter_usage_community_all">Community</string>
<string name="post_filter_usage_user">User: %1$s</string>
<string name="post_filter_usage_user_all">User</string>
<string name="post_filter_usage_multireddit">MultiReddit: %1$s</string>
<string name="post_filter_usage_multireddit_all">MultiReddit</string>
<string name="post_filter_usage_multireddit">Multicommunity: %1$s</string>
<string name="post_filter_usage_multireddit_all">Multicommunity</string>
<string name="post_filter_usage_search">Search</string>
<string name="community">Community</string>
<string name="user">User</string>
<string name="edit_post_filter_name_of_usage_info">Leave it blank to apply this post filter to all the communities / users / multireddits</string>
<string name="edit_post_filter_name_of_usage_info">Leave it blank to apply this post filter to all the communities / users / multicommunities</string>
<string name="read_all_messages_time_limit">You are doing this too frequently. Try again later. This is Reddit API\'s rate limit.</string>
<string name="read_all_messages_success">Read all messages successfully</string>
<string name="read_all_messages_failed">Unable to read all messages</string>
<string name="add_community_or_user_to_multireddit_success">%1$s is added to multireddit %2$s</string>
<string name="add_community_or_user_to_multireddit_failed">Unable to add %1$s to multireddit %2$s</string>
<string name="add_community_or_user_to_multireddit_success">%1$s is added to multicommunity %2$s</string>
<string name="add_community_or_user_to_multireddit_failed">Unable to add %1$s to multicommunity %2$s</string>
<string name="choose_a_user">Choose a user</string>
@@ -1162,7 +1162,7 @@
<string name="vote">Vote</string>
<string name="anonymous_front_page_no_subscriptions">Start by joining a community!</string>
<string name="anonymous_multireddit_no_community">This multireddit does not have a community!</string>
<string name="anonymous_multireddit_no_community">This multicommunity does not have a community!</string>
<string name="backup_settings_success">Successfully exported settings to the destination directory. The password of the generated zip file is 123321. Please don\'t modify the zip file.</string>
<string name="create_zip_in_destination_directory_failed">Could not create backup zip in the destination directory</string>
@@ -1347,4 +1347,6 @@
<string name="mentions">Mentions</string>
<string name="replies">Replies</string>
<string name="use_circular_fab">Use Circular FAB</string>
<string name="block_community">Block Community\n</string>
<string name="not_implemented">Feature not implemented yet :(</string>
</resources>

View File

@@ -46,11 +46,6 @@
app:key="show_author_avatar"
android:title="@string/settings_show_author_avatar_title" />
<eu.toldi.infinityforlemmy.customviews.CustomFontSwitchPreference
app:defaultValue="false"
app:key="hide_comment_awards"
android:title="@string/settings_hide_comment_awards_title" />
<eu.toldi.infinityforlemmy.customviews.CustomFontSwitchPreference
app:defaultValue="false"
app:key="always_show_child_comment_count"

View File

@@ -27,15 +27,6 @@
app:key="hide_post_type"
app:title="@string/settings_hide_post_type" />
<eu.toldi.infinityforlemmy.customviews.CustomFontSwitchPreference
app:defaultValue="false"
app:key="hide_post_flair"
app:title="@string/settings_hide_post_flair" />
<eu.toldi.infinityforlemmy.customviews.CustomFontSwitchPreference
app:defaultValue="false"
app:key="hide_the_number_of_awards"
app:title="@string/settings_hide_the_number_of_awards" />
<eu.toldi.infinityforlemmy.customviews.CustomFontSwitchPreference
app:defaultValue="false"

View File

@@ -1 +1 @@
A Lemmy client for Android written in Java. It's a fork of the Infinity for Reddit project, currenty in early development.
An Lemmy client for Android, forked from the Infinity for Reddit project.