Merge branch 'master' into donations

# Conflicts:
#	mastodon/build.gradle
This commit is contained in:
Grishka 2024-07-03 01:30:43 +03:00
commit db84317f7f
7 changed files with 45 additions and 14 deletions

View File

@ -13,8 +13,8 @@ android {
applicationId "org.joinmastodon.android"
minSdk 23
targetSdk 34
versionCode 107
versionName "2.5.4"
versionCode 108
versionName "2.5.6"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

View File

@ -281,11 +281,11 @@ public class AccountSessionManager{
}
}
if(loadedInstances){
maybeUpdateCustomEmojis(domains);
maybeUpdateInstanceInfo(domains);
}
}
private void maybeUpdateCustomEmojis(Set<String> domains){
private void maybeUpdateInstanceInfo(Set<String> domains){
long now=System.currentTimeMillis();
for(String domain:domains){
Long lastUpdated=instancesLastUpdated.get(domain);
@ -399,7 +399,7 @@ public class AccountSessionManager{
}
if(!loadedInstances){
loadedInstances=true;
MastodonAPIController.runInBackground(()->maybeUpdateCustomEmojis(domains));
MastodonAPIController.runInBackground(()->maybeUpdateInstanceInfo(domains));
}
}

View File

@ -691,7 +691,7 @@ public class InstanceCatalogSignupFragment extends InstanceCatalogFragment{
boolean found=false;
for(int i=0;i<list.getChildCount();i++){
RecyclerView.ViewHolder holder=list.getChildViewHolder(list.getChildAt(i));
if(holder.getAbsoluteAdapterPosition()==mergeAdapter.getPositionForAdapter(adapter)+idx && holder instanceof InstanceViewHolder ivh){
if(holder instanceof InstanceViewHolder ivh && holder.getAbsoluteAdapterPosition()==mergeAdapter.getPositionForAdapter(adapter)+idx){
ivh.radioButton.setChecked(false);
found=true;
break;

View File

@ -27,11 +27,7 @@ public class CardViewModel{
this.parentObject=parentObject;
this.imageRequest=TextUtils.isEmpty(card.image) ? null : new UrlImageLoaderRequest(card.image, V.dp(width), V.dp(height));
Account authorAccount;
if(card.authors!=null && !card.authors.isEmpty() && card.authors.get(0).account!=null)
authorAccount=card.authors.get(0).account;
else
authorAccount=card.authorAccount;
Account authorAccount=getAuthorAccount();
if(authorAccount!=null){
parsedAuthorName=new SpannableStringBuilder(authorAccount.displayName);
@ -46,7 +42,7 @@ public class CardViewModel{
}
public int getImageCount(){
return 1+(card.authorAccount!=null ? (1+authorNameEmojiHelper.getImageCount()) : 0);
return 1+(getAuthorAccount()!=null ? (1+authorNameEmojiHelper.getImageCount()) : 0);
}
public ImageLoaderRequest getImageRequest(int index){
@ -56,4 +52,11 @@ public class CardViewModel{
default -> authorNameEmojiHelper.getImageRequest(index-2);
};
}
public Account getAuthorAccount(){
if(card.authors!=null && !card.authors.isEmpty() && card.authors.get(0).account!=null)
return card.authors.get(0).account;
else
return card.authorAccount;
}
}

View File

@ -189,7 +189,7 @@ public class LinkCardHolder<T extends LinkCardHolder.LinkCardProvider> extends S
private void onAuthorChipClick(View v){
Bundle args=new Bundle();
args.putString("account", accountID);
args.putParcelable("profileAccount", Parcels.wrap(item.getCard().card.authorAccount));
args.putParcelable("profileAccount", Parcels.wrap(item.getCard().getAuthorAccount()));
Nav.go(activity, ProfileFragment.class, args);
}

View File

@ -754,7 +754,7 @@ Kuo daugiau žmonių seki, tuo aktyvesnis ir įdomesnis jis bus.</string>
<string name="handle_server_explanation_own">Tavo skaitmeniniai namai, kuriuose saugomi visi tavo įrašai. Nepatinka šis? Bet kada perkelk serverius ir atsivesk bei savo sekėjus.</string>
<string name="handle_explanation_own">Kadangi tavo socialinis medijos vardas pasako, kas ir kur esi, žmonės gali bendrauti su tavimi visame socialiniame internete, kurį sudaro &lt;a&gt;„ActivityPub“ veikiančios platformos&lt;/a&gt;.</string>
<string name="what_is_activitypub_title">Kas yra „ActivityPub“?</string>
<string name="what_is_activitypub">„ActivityPub“ tai tarsi kalba, kuria „Mastodon“ kalba su kitais socialiniais tinklais.\n\nTai leidžia tau bendrauti su žmonėmis ne tik „Mastodon“ tinkle, bet ir įvairiose socialinėse programėlėse.</string>
<string name="what_is_activitypub">„ActivityPub“ tai tarsi kalba, kuria „Mastodon“ kalba su kitais socialiniais tinklais.\n\nTai leidžia tau bendrauti su žmonėmis ne tik „Mastodon“ platformoje, bet ir įvairiose socialinėse programėlėse.</string>
<string name="handle_copied">Socialinis medijos vardas nukopijuotas į iškarpinę.</string>
<string name="qr_code">QR kodas</string>
<string name="scan_qr_code">Nuskaityti QR kodą</string>

View File

@ -352,7 +352,9 @@
<string name="login_subtitle">Увійдіть за допомогою сервера, де ви створили свій обліковий запис.</string>
<string name="server_url">URL-адреса сервера</string>
<string name="server_filter_any_language">Будь-яка мова</string>
<string name="server_filter_instant_signup">Миттєва реєстрація</string>
<string name="server_filter_manual_review">Ручна перевірка</string>
<string name="server_filter_any_signup_speed">Будь-яка швидкість реєстрації</string>
<string name="server_filter_region_europe">Європа</string>
<string name="server_filter_region_north_america">Північна Америка</string>
<string name="server_filter_region_south_america">Південна Америка</string>
@ -781,4 +783,30 @@
<string name="notification_filter_following">Люди, на яких ви не підписані</string>
<string name="notification_filter_following_explanation">Доки ви не схвалюєте їх вручну</string>
<string name="notification_filter_followers">Люди, які не підписані на вас</string>
<string name="notification_filter_followers_explanation">Включаючи людей, які підписані на вас менш ніж три дні</string>
<string name="notification_filter_new_accounts">Нові облікові записи</string>
<string name="notification_filter_new_accounts_explanation">Створені за останні 30 днів</string>
<string name="notification_filter_mentions">Небажані приватні згадки</string>
<string name="notification_filter_mentions_explanation">Відфільтровується, якщо це не відповідь на вашу власну згадку або якщо ви відстежуєте відправника</string>
<string name="allow_notifications">Дозволити сповіщення</string>
<string name="mute_notifications">Відхилити запит на сповіщення</string>
<string name="notifications_from_user">Сповіщення від %s</string>
<string name="notifications_muted">Сповіщення від %s було відхилено.</string>
<string name="notifications_allowed">%s тепер з\'явиться у вашому списку сповіщень.</string>
<string name="visibility_subtitle_public">Усі з Mastodon та поза Mastodon</string>
<string name="visibility_subtitle_unlisted">Менше алгоритмічних фанфар</string>
<string name="visibility_subtitle_followers">Лише ваші підписники</string>
<string name="visibility_subtitle_private">Усі згадані в дописі</string>
<string name="view_boosts">Переглянути поширення</string>
<string name="view_favorites">Подивитися обране</string>
<string name="undo_reblog">Скасувати поширення</string>
<string name="undo_favorite">Скасувати вибране</string>
<string name="could_not_reach_server">Не вдалося зв\'язатися з сервером. Перевірте підключення та повторіть спробу?</string>
<string name="connection_timed_out">Час очікування запиту минув. Перевірте підключення і повторіть спробу?</string>
<string name="server_error">Щось пішло не так при спілкуванні з вашим сервером. Це, скоріше за все, не ваша помилка. Спробувати ще раз?</string>
<string name="not_found">Можливо, його видалили, або його взагалі ніколи не існувало.</string>
<string name="no_servers_found">Не знайдено серверів для \"%s\"</string>
<string name="signup_username_taken">Це ім\'я вже зайнято. Спробуйте інше, або &lt;a&gt;оберіть інший сервер&lt;/a&gt;.</string>
<string name="signup_email_invalid">Це не схоже на дійсну адресу електронної пошти.</string>
<string name="signup_email_taken">Адреса пошти вже використана. Ви &lt;a&gt;забули ваш пароль&lt;/a&gt;?</string>
</resources>