Compare commits

...

14 Commits

Author SHA1 Message Date
Thomas b9b381a780 Release 3.28.2 2024-03-21 17:57:29 +01:00
Thomas 38b72e7732 align icon 2024-03-21 17:52:34 +01:00
Thomas 86e8e639a3 Create QR-Code for profile URL 2024-03-21 17:24:28 +01:00
Thomas 9907717638 Fix issue - Non clickable messages in threads 2024-03-21 09:53:30 +01:00
Thomas f49fdfa2b9 Merge remote-tracking branch 'origin/develop' into develop 2024-03-21 09:37:18 +01:00
Thomas 91941a562d Fix issue #1047 - Long pronouns displace the user name 2024-03-21 09:36:12 +01:00
ButterflyOfFire 11361f50a6
Translated using Weblate (Kabyle)
Currently translated at 59.0% (701 of 1188 strings)

Co-authored-by: ButterflyOfFire <boffire@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/fedilab/strings/kab/
Translation: Fedilab/Strings
2024-03-17 02:02:07 +01:00
Lukáš Jelínek 963e10eb04
Translated using Weblate (Czech)
Currently translated at 100.0% (1188 of 1188 strings)

Co-authored-by: Lukáš Jelínek <devel@aiken.cz>
Translate-URL: https://hosted.weblate.org/projects/fedilab/strings/cs/
Translation: Fedilab/Strings
2024-03-10 15:02:00 +01:00
ButterflyOfFire 7e82ec918a
Translated using Weblate (Kabyle)
Currently translated at 55.5% (660 of 1188 strings)

Translated using Weblate (Catalan)

Currently translated at 79.1% (940 of 1188 strings)

Co-authored-by: ButterflyOfFire <boffire@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/fedilab/strings/ca/
Translate-URL: https://hosted.weblate.org/projects/fedilab/strings/kab/
Translation: Fedilab/Strings
2024-03-09 09:01:53 +01:00
Max Harmathy 639297df1d
Translated using Weblate (Japanese)
Currently translated at 100.0% (1188 of 1188 strings)

Co-authored-by: Max Harmathy <max.harmathy@web.de>
Translate-URL: https://hosted.weblate.org/projects/fedilab/strings/ja/
Translation: Fedilab/Strings
2024-03-08 01:01:47 +01:00
Alfika07 b54f7ddaf5
Translated using Weblate (Hungarian)
Currently translated at 58.0% (690 of 1188 strings)

Co-authored-by: Alfika07 <alfika07@vivaldi.net>
Translate-URL: https://hosted.weblate.org/projects/fedilab/strings/hu/
Translation: Fedilab/Strings
2024-03-04 21:01:45 +01:00
claleb db4e48eb50
Translated using Weblate (German)
Currently translated at 100.0% (1188 of 1188 strings)

Co-authored-by: claleb <weblate@claleb.de>
Translate-URL: https://hosted.weblate.org/projects/fedilab/strings/de/
Translation: Fedilab/Strings
2024-03-04 21:01:45 +01:00
Integral 43697263a8
Translated using Weblate (Chinese (Simplified))
Currently translated at 5.1% (3 of 58 strings)

Co-authored-by: Integral <integral@member.fsf.org>
Translate-URL: https://hosted.weblate.org/projects/fedilab/description/zh_Hans/
Translation: Fedilab/description
2024-03-04 12:01:52 +01:00
Poesty Li c201b1b918
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (1188 of 1188 strings)

Co-authored-by: Poesty Li <poesty7450@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/fedilab/strings/zh_Hans/
Translation: Fedilab/Strings
2024-03-02 06:02:04 +01:00
19 changed files with 236 additions and 20 deletions

View File

@ -13,8 +13,8 @@ android {
defaultConfig {
minSdk 21
targetSdk 34
versionCode 514
versionName "3.28.1"
versionCode 515
versionName "3.28.2"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
flavorDimensions "default"
@ -190,7 +190,7 @@ dependencies {
implementation 'androidx.media:media:1.7.0'
implementation 'com.github.mancj:MaterialSearchBar:0.8.5'
implementation 'com.github.androidmads:QRGenerator:1.0.1'
implementation 'io.noties.markwon:core:4.6.2'
implementation 'io.noties.markwon:ext-tables:4.6.2'

View File

@ -1,4 +1,9 @@
[
{
"version": "3.28.2",
"code": "515",
"note": "Added:\n- Display a QR code on profiles\n\nFixed:\n- Fix tap on messages in conversations\n- Pronouns taking too much place"
},
{
"version": "3.28.1",
"code": "514",

View File

@ -15,6 +15,10 @@ package app.fedilab.android.mastodon.activities;
* see <http://www.gnu.org/licenses>. */
import static app.fedilab.android.mastodon.helper.LogoHelper.getMainLogo;
import android.content.BroadcastReceiver;
import android.content.ClipData;
import android.content.ClipboardManager;
@ -23,9 +27,13 @@ import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.content.res.ColorStateList;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.Animatable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
@ -39,6 +47,7 @@ import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.view.inputmethod.EditorInfo;
import android.webkit.URLUtil;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
@ -62,6 +71,9 @@ import com.bumptech.glide.request.transition.Transition;
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.tabs.TabLayout;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.lang.ref.WeakReference;
import java.util.ArrayList;
import java.util.Date;
@ -72,12 +84,15 @@ import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import androidmads.library.qrgenearator.QRGContents;
import androidmads.library.qrgenearator.QRGEncoder;
import app.fedilab.android.BaseMainActivity;
import app.fedilab.android.BuildConfig;
import app.fedilab.android.R;
import app.fedilab.android.activities.MainActivity;
import app.fedilab.android.databinding.ActivityProfileBinding;
import app.fedilab.android.databinding.NotificationsRelatedAccountsBinding;
import app.fedilab.android.databinding.PopupQrcodeBinding;
import app.fedilab.android.databinding.TabProfileCustomViewBinding;
import app.fedilab.android.mastodon.client.entities.api.Account;
import app.fedilab.android.mastodon.client.entities.api.Attachment;
@ -275,6 +290,51 @@ public class ProfileActivity extends BaseActivity {
}
});
binding.qrCodeGenerator.setVisibility(View.VISIBLE);
binding.qrCodeGenerator.setOnClickListener(v->{
QRGEncoder qrgEncoder = new QRGEncoder(account.url, null, QRGContents.Type.TEXT, 400);
Drawable logoDrawable = ContextCompat.getDrawable(ProfileActivity.this, R.drawable.fedilab_logo_bubbles);
if (logoDrawable != null) {
Bitmap bitmap = qrgEncoder.getBitmap();
MaterialAlertDialogBuilder alertadd = new MaterialAlertDialogBuilder(ProfileActivity.this);
PopupQrcodeBinding popupQrcodeBinding = PopupQrcodeBinding.inflate(getLayoutInflater());
popupQrcodeBinding.qrcodeImage.setImageBitmap(bitmap);
alertadd.setView(popupQrcodeBinding.getRoot());
alertadd.setNeutralButton(R.string.close, (dialog, which) -> dialog.dismiss());
alertadd.setPositiveButton(R.string.save, (dlg, which) -> {
File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
File targeted_folder = new File(path, getString(R.string.app_name));
if (!targeted_folder.exists()) {
boolean created = targeted_folder.mkdir();
if (!created) {
Toasty.error(ProfileActivity.this, getString(R.string.toast_error), Toasty.LENGTH_SHORT).show();
return;
}
}
String fileName = URLUtil.guessFileName(account.url, null, null);
if (fileName.endsWith(".bin")) {
fileName = fileName.replace(".bin", ".png");
}
fileName = fileName.replaceAll("@","");
File backupFile = new File(targeted_folder.getAbsolutePath() + "/" + fileName);
try (FileOutputStream out = new FileOutputStream(backupFile)) {
final Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
Uri uri = Uri.fromFile(backupFile);
intent.setDataAndType(uri, "image/jpeg");
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, out);
Helper.notify_user(ProfileActivity.this, Helper.getCurrentAccount(ProfileActivity.this), intent, BitmapFactory.decodeResource(getResources(),
getMainLogo(ProfileActivity.this)), Helper.NotifType.STORE, getString(R.string.save_over), getString(R.string.download_from, fileName));
Toasty.success(ProfileActivity.this, getString(R.string.save_over), Toasty.LENGTH_LONG).show();
} catch (IOException e) {
e.printStackTrace();
}
});
alertadd.show();
}
});
//Retrieve relationship with the connected account
List<String> accountListToCheck = new ArrayList<>();

View File

@ -219,6 +219,7 @@ public class Helper {
public static final String ARG_NOTIFICATION_TYPE = "ARG_NOTIFICATION_TYPE";
public static final String ARG_EXCLUDED_NOTIFICATION_TYPE = "ARG_EXCLUDED_NOTIFICATION_TYPE";
public static final String ARG_STATUS = "ARG_STATUS";
public static final String ARG_QR_CODE_URL = "ARG_QR_CODE_URL";
public static final String ARG_FOCUSED_STATUS_URI = "ARG_FOCUSED_STATUS_URI";
public static final String ARG_TIMELINE_REFRESH_ALL = "ARG_TIMELINE_REFRESH_ALL";
public static final String ARG_REFRESH_NOTFICATION = "ARG_REFRESH_NOTFICATION";
@ -910,8 +911,9 @@ public class Helper {
ft = fragmentManager.beginTransaction();
ft.add(containerViewId, fragment, tag);
if (backStackName != null) {
ft = fragmentManager.beginTransaction();
ft.addToBackStack(backStackName);
try {
ft.addToBackStack(backStackName);
}catch (Exception ignored){}
}
if (!fragmentManager.isDestroyed()) {
ft.commit();

View File

@ -0,0 +1,27 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="24dp" android:tint="?attr/colorControlNormal" android:viewportHeight="24"
android:viewportWidth="24" android:width="24dp">
<path android:fillColor="@android:color/white" android:pathData="M3,11h8V3H3V11zM5,5h4v4H5V5z"/>
<path android:fillColor="@android:color/white" android:pathData="M3,21h8v-8H3V21zM5,15h4v4H5V15z"/>
<path android:fillColor="@android:color/white" android:pathData="M13,3v8h8V3H13zM19,9h-4V5h4V9z"/>
<path android:fillColor="@android:color/white" android:pathData="M19,19h2v2h-2z"/>
<path android:fillColor="@android:color/white" android:pathData="M13,13h2v2h-2z"/>
<path android:fillColor="@android:color/white" android:pathData="M15,15h2v2h-2z"/>
<path android:fillColor="@android:color/white" android:pathData="M13,17h2v2h-2z"/>
<path android:fillColor="@android:color/white" android:pathData="M15,19h2v2h-2z"/>
<path android:fillColor="@android:color/white" android:pathData="M17,17h2v2h-2z"/>
<path android:fillColor="@android:color/white" android:pathData="M17,13h2v2h-2z"/>
<path android:fillColor="@android:color/white" android:pathData="M19,15h2v2h-2z"/>
</vector>

View File

@ -140,7 +140,22 @@
app:layout_constraintStart_toStartOf="@id/banner_container"
app:layout_constraintTop_toBottomOf="@id/avatar_container"
tools:text="@tools:sample/first_names" />
<com.google.android.material.button.MaterialButton
android:id="@+id/qr_code_generator"
style="@style/Widget.Material3.Button.OutlinedButton"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_marginStart="10dp"
app:iconGravity="textStart"
app:iconPadding="0dp"
android:contentDescription="@string/qr_code_generator"
android:scaleType="fitCenter"
android:visibility="gone"
app:icon="@drawable/baseline_qr_code_24"
app:layout_constraintStart_toEndOf="@id/account_dn"
app:layout_constraintTop_toTopOf="@id/account_dn"
app:layout_constraintBottom_toBottomOf="@+id/account_dn"
tools:visibility="visible" />
<androidx.appcompat.widget.LinearLayoutCompat
android:id="@+id/account_un_container"
android:layout_width="wrap_content"

View File

@ -168,7 +168,7 @@
app:layout_constraintStart_toEndOf="@+id/display_name"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintEnd_toStartOf="@+id/date_short_container"
android:layout_width="wrap_content"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:visibility="invisible"

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:padding="12dp">
<ImageView
android:contentDescription="@string/qr_code_generator"
android:id="@+id/qrcode_image"
tools:src="@tools:sample/backgrounds/scenic"
android:scaleType="centerInside"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>

View File

@ -805,7 +805,7 @@ Ara ja pots connectar-te al compte escrivint <b>%1$s</b> en el primer camp i fen
<string name="notif_update_push">Un missatge que havies difós ha estat editat</string>
<string name="notif_report">Una usuària ha denunciat</string>
<string name="proxy_protocol_socks">SOCKS</string>
<string name="card_picture">"Imatge de perfil"</string>
<string name="card_picture">Imatge de perfil</string>
<string name="account_silenced">Compte silenciat</string>
<string name="report">Denúncia</string>
<string name="restart_the_app">Reinicia l\'app\?</string>

View File

@ -1087,4 +1087,5 @@
<string name="timeline_scrollbar">Zobrazovat u časových os posuvník</string>
<string name="underline_links">Podtrhávat klikatelné prvky</string>
<string name="Pronouns">Zájmena</string>
<string name="pronouns_support">Podpora zájmen</string>
</resources>

View File

@ -1076,4 +1076,5 @@
<string name="timeline_scrollbar">Bildlaufleiste in der Timeline anzeigen</string>
<string name="set_disable_topbar_scrolling_title">Scrollen der oberen Leiste deaktivieren</string>
<string name="Pronouns">Pronomen</string>
<string name="pronouns_support">Unterstützung von Pronomen</string>
</resources>

View File

@ -17,19 +17,19 @@
<string name="password">Jelszó</string>
<string name="email">E-mail</string>
<string name="accounts">Fiókok</string>
<string name="toots">Tülkök</string>
<string name="toots">Üzenetek</string>
<string name="tags">Cimkék</string>
<string name="save">Mentés</string>
<string name="instance">Szerver</string>
<string name="instance_example">Szerver: mastodon.social</string>
<string name="toast_account_changed" formatted="false">Aktív fiók: %1$s</string>
<string name="add_account">Fiók hozzáadása</string>
<string name="clipboard">A toot tartalma a vágólapra lett másolva</string>
<string name="clipboard_url">A toot URL-je a vágólapra lett másolva</string>
<string name="clipboard">Az üzenet tartalma a vágólapra lett másolva</string>
<string name="clipboard_url">Az üzenet URL-je a vágólapra lett másolva</string>
<string name="camera">Felvétel</string>
<string name="delete_all">Összes törlése</string>
<string name="schedule">Időzítés</string>
<string name="text_size">Szöveg és ikon méret</string>
<string name="text_size">Szövegméret</string>
<string name="next">Következő</string>
<string name="previous">Előző</string>
<string name="open_with">Megnyitás a következővel</string>
@ -43,8 +43,8 @@
<string name="favourite">Kedvencek</string>
<string name="follow">Új követők</string>
<string name="mention">Említések</string>
<string name="reblog">Újratootok</string>
<string name="show_boosts">Újratootok megjelenítése</string>
<string name="reblog">Megtolások</string>
<string name="show_boosts">Megtolások megjelenítése</string>
<string name="show_replies">Válaszok megjelenítése</string>
<string name="action_open_in_web">Megnyitás böngészőben</string>
<string name="translate">Fordítás</string>
@ -570,4 +570,36 @@
<string name="no_distributors_found">No distributors found!</string>
<string name="no_distributors_explanation">You need a distributor for receiving push notifications.\nYou will find more details at %1$s.\n\nYou can also disable push notifications in settings for ignoring that message.</string>
<string name="select_distributors">Select a distributor</string>
<string name="replace_reddit_description">Alternatív felület használata Reddithez</string>
<string name="replace_reddit_host">Reddit felület tartományneve</string>
<string name="replace_instagram_host">Instagram felület tartományneve</string>
<string name="tag_already_followed">Már követed azt a címkét!</string>
<string name="toots_visibility_title">Üzenetek alapértelmezett láthatósága:</string>
<string name="replace_youtube">YouTube</string>
<string name="replace_reddit">Reddit</string>
<string name="replace_youtube_description">Alternatív felület használata YouTube-hoz</string>
<string name="pronouns_support">Névmástámogatás</string>
<string name="notif_display_mentions">Említések</string>
<string name="administrator">Adminisztrátor</string>
<string name="moderator">Moderátor</string>
<string name="replace_youtube_host">YouTube felület tartományneve</string>
<string name="Pronouns">Névmások</string>
<string name="report_val1">Nem tetszik</string>
<string name="notif_display_reblogs">Újraközlések</string>
<string name="admin_scope">Moderátor vagyok</string>
<string name="user">Felhasználó</string>
<string name="proxy_protocol_socks">SOCKS</string>
<string name="show_self_boosts">Önmegtolások megjelenítése</string>
<string name="clipboard_version">Az információ a vágólapra lett másolva</string>
<string name="_new">Új</string>
<string name="notif_display_favourites">Kedvencek</string>
<string name="icon_size">Ikonméret</string>
<string name="proxy_protocol_http">HTTP</string>
<string name="cannot_be_empty">Ez a mező nem lehet üres!</string>
<string name="replace_instagram">Instagram</string>
<string name="replace_instagram_description">Alternatív felület használata Instagramhoz</string>
<string name="lemmy_instance">Lemmy példány</string>
<string name="show_content">Tartalom megjelenítése &gt;</string>
<string name="hide_content">Tartalom elrejtése &lt;</string>
<string name="stop_recording">Felvétel leállítása</string>
</resources>

View File

@ -1065,4 +1065,6 @@
<string name="thread_long_this_message">この返信の投稿を分割しますか?</string>
<string name="thread_long_message_message">サーバーの最大文字数に合わせて投稿は複数の返信に分割されます。</string>
<string name="timeline_scrollbar">タイムラインにスクロールバーを表示する</string>
<string name="Pronouns">代名詞</string>
<string name="pronouns_support">代名詞のサポート</string>
</resources>

View File

@ -24,12 +24,12 @@
<string name="instance_example">Aqeddac: mastodon.social</string>
<string name="toast_account_changed" formatted="false">Iteddu tura akked s umiḍan %1$s</string>
<string name="add_account">Rnu amiḍan</string>
<string name="clipboard">The content of the toot has been copied to the clipboard</string>
<string name="clipboard">Agbur n yizen yettwanɣel ɣer tfelwit n ufus</string>
<string name="clipboard_url">The URL of the toot has been copied to the clipboard</string>
<string name="camera">Takamiṛat</string>
<string name="delete_all">Kkes kullec</string>
<string name="schedule">Sγiwes</string>
<string name="text_size">Tuɣzi n tignit d uḍris</string>
<string name="text_size">Tuɣzi n uḍris</string>
<string name="next">Γer sdat</string>
<string name="previous">Γer deffir</string>
<string name="open_with">Ldi s</string>
@ -143,7 +143,8 @@
<!-- Accounts -->
<string name="no_accounts">Ulac kra n umiḍan ara d-nesken</string>
<string name="no_follow_request">Ulac isuturen n uneḍfar</string>
<string name="status_cnt">Tijewwiqin \n %1$s</string>
<string name="status_cnt">Iznan
\n %1$s</string>
<string name="following_cnt">Yeṭafaṛ \n %1$s</string>
<string name="followers_cnt">Imeḍfaṛen \n %1$s</string>
<string name="reject">Agi</string>
@ -365,8 +366,8 @@
<string name="category">Taggayt</string>
<string name="description">Aglam</string>
<string name="share">Bḍu</string>
<string name="toots_server">Toots (Server)</string>
<string name="toots_client">Toots (Device)</string>
<string name="toots_server">Iznan (Aqeddac)</string>
<string name="toots_client">Iznan (Ibenk)</string>
<string name="settings_category_label_timelines">Timelines</string>
<string name="settings_category_label_interface">Agrudem</string>
<string name="contact">Inermisen</string>
@ -433,7 +434,7 @@
<string name="agreement_check">I agree to %1$s and %2$s</string>
<string name="server_rules">server rules</string>
<string name="tos">terms of service</string>
<string name="sign_up">Sigez</string>
<string name="sign_up">Jerred</string>
<string name="validation_needed">This instance works with invitations. Your account will need to be manually approved by an administrator before being usable.</string>
<string name="password_error">Passwords don\'t match!</string>
<string name="email_error">The email doesn\'t seem to be valid!</string>
@ -570,4 +571,40 @@
<string name="no_distributors_found">No distributors found!</string>
<string name="no_distributors_explanation">You need a distributor for receiving push notifications.\nYou will find more details at %1$s.\n\nYou can also disable push notifications in settings for ignoring that message.</string>
<string name="select_distributors">Select a distributor</string>
<string name="administrator">Anedbal</string>
<string name="compose_shortcut_short_label1">Azen</string>
<string name="title">Azwel</string>
<string name="Suggestions">Isumar</string>
<string name="domains">Tiɣula</string>
<string name="version">Lqem</string>
<string name="reply">Tiririt</string>
<string name="replace_instagram">Instagram</string>
<string name="allow">Sireg</string>
<string name="v_list">Tabdart</string>
<string name="status">Addad</string>
<string name="label_shape">Talɣa</string>
<string name="label_rectangle">Asrem</string>
<string name="label_line">Izirig</string>
<string name="pinned">Yettwasenṭeḍ</string>
<string name="restart">Ales tanekra</string>
<string name="exit">Tuffɣa</string>
<string name="translator">Imsuqqel</string>
<string name="replace_reddit">Reddit</string>
<string name="proxy_protocol_socks">SOCKS</string>
<string name="keepon">Kemmel</string>
<string name="notif_display_favourites">Ismenyifen</string>
<string name="unfollow">Ur ṭṭafar ara</string>
<string name="profiles">Imaɣnuyen</string>
<string name="fails">Tuccḍiwin</string>
<string name="notif_display_updates">Ileqman</string>
<string name="proxy_protocol">Aneggaf</string>
<string name="user">Aseqdac</string>
<string name="proxy_protocol_http">HTTP</string>
<string name="_new">Amaynut</string>
<string name="replace_youtube">YouTube</string>
<string name="replace_twitter">Twitter</string>
<string name="set_translator">Imsuqqel</string>
<string name="category_music">Aẓawan</string>
<string name="other">Wayeḍ</string>
<string name="auto">Amurman</string>
</resources>

View File

@ -1067,4 +1067,12 @@
<string name="thread_long_message_message">消息将分为几个回复,以满足您所在实例的最大字数。</string>
<string name="thread_long_this_message">是否将长消息分为回复?</string>
<string name="clipboard_version">信息已复制到剪贴板</string>
<string name="Pronouns">性别代词</string>
<string name="timeline_scrollbar">显示时间线上的滚动条</string>
<string name="pronouns_support">性别代词支持</string>
<string name="set_disable_topbar_scrolling_title">禁用顶栏滚动</string>
<string name="set_display_relative_date">显示消息的相对日期</string>
<string name="copy_version">复制信息</string>
<string name="tag_already_followed">您已经关注了该话题标签!</string>
<string name="underline_links">带下划线的可点击元素</string>
</resources>

View File

@ -583,6 +583,7 @@
<string name="icons_color">Color of bottom icons in timelines</string>
<string name="logo_of_the_instance">Logo of the instance</string>
<string name="edit_profile">Edit profile</string>
<string name="qr_code_generator">QR generator</string>
<string name="make_an_action">Make an action</string>
<string name="translation">Translation</string>
<string name="text_color_title">Text color</string>

View File

@ -0,0 +1,6 @@
Added:
- Display a QR code on profiles
Fixed:
- Fix tap on messages in conversations
- Pronouns taking too much place

View File

@ -0,0 +1 @@
此版本应能修复崩溃 (TransactionTooLargeException)。如果仍出现崩溃,请通过 F-droid 回滚。

View File

@ -0,0 +1 @@
Fedilab