Merge remote-tracking branch 'megalodon_main/main'

# Conflicts:
#	README.md
#	mastodon/build.gradle
#	mastodon/src/main/java/org/joinmastodon/android/GlobalUserPreferences.java
#	mastodon/src/main/java/org/joinmastodon/android/PushNotificationReceiver.java
#	mastodon/src/main/java/org/joinmastodon/android/fragments/HomeTimelineFragment.java
#	mastodon/src/main/java/org/joinmastodon/android/fragments/ThreadFragment.java
#	mastodon/src/main/java/org/joinmastodon/android/model/Status.java
#	mastodon/src/main/java/org/joinmastodon/android/ui/displayitems/ExtendedFooterStatusDisplayItem.java
#	mastodon/src/main/res/values-it-rIT/strings_sk.xml
#	metadata/de-DE/changelogs/83.txt
#	metadata/de-DE/changelogs/94.txt
#	metadata/en-US/changelogs/94.txt
#	metadata/es/changelogs/94.txt
#	metadata/fr/title.txt
#	metadata/my-MM/title.txt
#	metadata/my/short_description.txt
#	metadata/pt-PT/changelogs/59.txt
#	metadata/pt-PT/changelogs/61.txt
#	metadata/pt-PT/full_description.txt
#	metadata/pt-PT/short_description.txt
#	metadata/pt-PT/title.txt
This commit is contained in:
LucasGGamerM
2023-06-13 14:03:50 -03:00
62 changed files with 944 additions and 471 deletions

View File

@@ -15,7 +15,7 @@ public abstract class BaseModel implements Cloneable{
/**
* indicates the profile has been fetched from a foreign instance.
*
* @see MastodonAPIRequest#execRemote
* @see org.joinmastodon.android.api.MastodonAPIRequest#execRemote
*/
public transient boolean isRemote;

View File

@@ -35,7 +35,7 @@ public class Status extends BaseModel implements DisplayItemsParent, Searchable{
public Instant createdAt;
@RequiredField
public Account account;
// @RequiredField
// @RequiredField
public String content;
@RequiredField
public StatusPrivacy visibility;
@@ -178,9 +178,10 @@ public class Status extends BaseModel implements DisplayItemsParent, Searchable{
return strippedText;
}
public boolean canBeBoosted(String accountID){
return (visibility==StatusPrivacy.PUBLIC || visibility==StatusPrivacy.UNLISTED || visibility==StatusPrivacy.LOCAL
|| (visibility==StatusPrivacy.PRIVATE && account.id.equals(AccountSessionManager.getInstance().getAccount(accountID).self.id)));
public boolean isReblogPermitted(String accountID){
return visibility.isReblogPermitted(account.id.equals(
AccountSessionManager.getInstance().getAccount(accountID).self.id
));
}
public static Status ofFake(String id, String text, Instant createdAt) {

View File

@@ -14,7 +14,7 @@ public enum StatusPrivacy{
@SerializedName("local")
LOCAL(4); // akkoma
private int privacy;
private final int privacy;
StatusPrivacy(int privacy) {
this.privacy = privacy;
@@ -24,6 +24,13 @@ public enum StatusPrivacy{
return privacy > other.getPrivacy();
}
public boolean isReblogPermitted(boolean isOwnStatus){
return (this == StatusPrivacy.PUBLIC ||
this == StatusPrivacy.UNLISTED ||
this == StatusPrivacy.LOCAL ||
(this == StatusPrivacy.PRIVATE && isOwnStatus));
}
public int getPrivacy() {
return privacy;
}