Update exteraGram Preferences

Co-Authored-By: immat0x1 <73192010+immat0x1@users.noreply.github.com>
This commit is contained in:
Ivan K
2022-04-09 13:59:02 +03:00
parent a0c64538f4
commit 7e15bbd92c
17 changed files with 193 additions and 51 deletions

View File

@@ -250,7 +250,7 @@ public class AppearancePreferencesEntry extends BaseFragment {
} else if (position == useSystemEmojiRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("UseSystemEmoji", R.string.UseSystemEmoji), SharedConfig.useSystemEmoji, true);
} else if (position == blurForAllThemesRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("BlurForAllThemes", R.string.BlurForAllThemes), ExteraConfig.blurForAllThemes, true);
textCheckCell.setTextAndCheck(LocaleController.getString("BlurForAllThemes", R.string.BlurForAllThemes), ExteraConfig.blurForAllThemes, false);
} else if (position == hideAllChatsRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("HideAllChats", R.string.HideAllChats), ExteraConfig.hideAllChats, true);
} else if (position == hideProxySponsorRow) {
@@ -264,7 +264,7 @@ public class AppearancePreferencesEntry extends BaseFragment {
} else if (position == disableVibrationRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("DisableVibration", R.string.DisableVibration), ExteraConfig.disableVibration, true);
} else if (position == forceTabletModeRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("ForceTabletMode", R.string.ForceTabletMode), ExteraConfig.forceTabletMode, true);
textCheckCell.setTextAndCheck(LocaleController.getString("ForceTabletMode", R.string.ForceTabletMode), ExteraConfig.forceTabletMode, false);
}
break;
}

View File

@@ -366,7 +366,7 @@ public class ChatsPreferencesEntry extends BaseFragment {
if (position == hideStickerTimeRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("StickerTime", R.string.StickerTime), ExteraConfig.hideStickerTime, true);
} else if (position == unlimitedRecentStickersRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("UnlimitedRecentStickers", R.string.UnlimitedRecentStickers), ExteraConfig.unlimitedRecentStickers, true);
textCheckCell.setTextAndCheck(LocaleController.getString("UnlimitedRecentStickers", R.string.UnlimitedRecentStickers), ExteraConfig.unlimitedRecentStickers, false);
} else if (position == hideSendAsChannelRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("HideSendAsChannel", R.string.HideSendAsChannel), ExteraConfig.hideSendAsChannel, true);
} else if (position == hideKeyboardOnScrollRow) {
@@ -374,7 +374,7 @@ public class ChatsPreferencesEntry extends BaseFragment {
} else if (position == archiveOnPullRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("ArchiveOnPull", R.string.ArchiveOnPull), ExteraConfig.archiveOnPull, true);
} else if (position == dateOfForwardedMsgRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("DateOfForwardedMsg", R.string.DateOfForwardedMsg), ExteraConfig.dateOfForwardedMsg, true);
textCheckCell.setTextAndCheck(LocaleController.getString("DateOfForwardedMsg", R.string.DateOfForwardedMsg), ExteraConfig.dateOfForwardedMsg, false);
} else if (position == disableReactionsRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("DisableReactions", R.string.DisableReactions), ExteraConfig.disableReactions, true);
} else if (position == rearVideoMessagesRow) {
@@ -386,7 +386,7 @@ public class ChatsPreferencesEntry extends BaseFragment {
} else if (position == pauseOnMinimizeRow) {
textCheckCell.setTextAndValueAndCheck(LocaleController.getString("PauseOnMinimize", R.string.PauseOnMinimize), LocaleController.getString("POMDescription", R.string.POMDescription), ExteraConfig.pauseOnMinimize, true, true);
} else if (position == disablePlaybackRow) {
textCheckCell.setTextAndValueAndCheck(LocaleController.getString("DisablePlayback", R.string.DisablePlayback), LocaleController.getString("DPDescription", R.string.DPDescription), ExteraConfig.disablePlayback, true, true);
textCheckCell.setTextAndValueAndCheck(LocaleController.getString("DisablePlayback", R.string.DisablePlayback), LocaleController.getString("DPDescription", R.string.DPDescription), ExteraConfig.disablePlayback, true, false);
}
break;
}

View File

@@ -239,7 +239,7 @@ public class DrawerPreferencesEntry extends BaseFragment {
} else if (position == inviteFriendsRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("InviteFriends", R.string.InviteFriends), ExteraConfig.inviteFriends, true);
} else if (position == telegramFeaturesRow) {
textCheckCell.setTextAndCheck(LocaleController.getString("TelegramFeatures", R.string.TelegramFeatures), ExteraConfig.telegramFeatures, true);
textCheckCell.setTextAndCheck(LocaleController.getString("TelegramFeatures", R.string.TelegramFeatures), ExteraConfig.telegramFeatures, false);
}
break;
case 4:

View File

@@ -0,0 +1,108 @@
/*
* This is the source code of exteraGram for Android (8.6.2)
* It is licensed under GNU GPL v. 2 or later.
* You should have received a copy of the license in this archive (see LICENSE).
*
* Copyright @immat0x1, 2022
*/
package com.exteragram.messenger.preferences;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffColorFilter;
import android.util.TypedValue;
import android.view.Gravity;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.TextView;
import org.telegram.messenger.AndroidUtilities;
import org.telegram.ui.ActionBar.Theme;
import org.telegram.ui.Components.LayoutHelper;
public class InfoSettingsCell extends FrameLayout {
private TextView textView;
private TextView valueTextView;
private ImageView imageView;
private boolean needDivider;
private boolean multiline;
public InfoSettingsCell(Context context) {
super(context);
textView = new TextView(context);
textView.setTextColor(Theme.getColor(Theme.key_windowBackgroundWhiteBlackText));
textView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 18);
textView.setLines(1);
textView.setMaxLines(1);
textView.setSingleLine(true);
textView.setGravity(Gravity.CENTER);
addView(textView, LayoutHelper.createFrame(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.CENTER | Gravity.TOP, 50, 148, 50, 0));
valueTextView = new TextView(context);
valueTextView.setTextColor(Theme.getColor(Theme.key_windowBackgroundWhiteGrayText2));
valueTextView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 13);
valueTextView.setGravity(Gravity.CENTER);
valueTextView.setLines(1);
valueTextView.setMaxLines(1);
valueTextView.setSingleLine(true);
valueTextView.setPadding(0, 0, 0, 0);
addView(valueTextView, LayoutHelper.createFrame(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.CENTER | Gravity.TOP, 70, 178, 70, 20));
imageView = new ImageView(context);
imageView.setScaleType(ImageView.ScaleType.CENTER);
imageView.setColorFilter(new PorterDuffColorFilter(Theme.getColor(Theme.key_windowBackgroundWhiteBlackText), PorterDuff.Mode.MULTIPLY));
addView(imageView, LayoutHelper.createFrame(108, 108, Gravity.CENTER | Gravity.TOP, 0, 20, 0, 0));
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
if (!multiline) {
super.onMeasure(MeasureSpec.makeMeasureSpec(MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.EXACTLY), MeasureSpec.makeMeasureSpec(AndroidUtilities.dp(64) + (needDivider ? 1 : 0), MeasureSpec.EXACTLY));
} else {
super.onMeasure(MeasureSpec.makeMeasureSpec(MeasureSpec.getSize(widthMeasureSpec), MeasureSpec.EXACTLY), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
}
}
public void setMultilineDetail(boolean value) {
multiline = value;
if (value) {
valueTextView.setLines(0);
valueTextView.setMaxLines(0);
valueTextView.setSingleLine(false);
valueTextView.setPadding(0, 0, 0, AndroidUtilities.dp(12));
} else {
valueTextView.setLines(1);
valueTextView.setMaxLines(1);
valueTextView.setSingleLine(true);
valueTextView.setPadding(0, 0, 0, 0);
}
}
public void setTextAndValueAndIcon(String text, CharSequence value, int resId, boolean divider) {
textView.setText(text);
valueTextView.setText(value);
imageView.setImageResource(resId);
textView.setPadding(0, 0, 0, 0);
valueTextView.setPadding(0, 0, 0, 0);
needDivider = divider;
setWillNotDraw(!divider);
}
@Override
public void invalidate() {
super.invalidate();
textView.invalidate();
}
@Override
protected void onDraw(Canvas canvas) {
if (needDivider && Theme.dividerPaint != null) {
canvas.drawLine(getMeasuredWidth(), getMeasuredHeight() - 1, 0, getMeasuredHeight() - 1, Theme.dividerPaint);
}
}
}

View File

@@ -23,12 +23,9 @@ import org.telegram.ui.ActionBar.Theme;
import org.telegram.ui.Cells.HeaderCell;
import org.telegram.ui.Cells.ShadowSectionCell;
import org.telegram.ui.Cells.TextCell;
import org.telegram.ui.Cells.TextDetailSettingsCell;
import org.telegram.ui.Components.LayoutHelper;
import org.telegram.ui.Components.RecyclerListView;
import com.exteragram.messenger.ExteraConfig;
public class MainPreferencesEntry extends BaseFragment {
private int rowCount;
private ListAdapter listAdapter;
@@ -39,6 +36,7 @@ public class MainPreferencesEntry extends BaseFragment {
private int drawerRow;
private int dividerInfoRow;
private int dividerExteraInfoRow;
private int infoHeaderRow;
private int aboutExteraRow;
@@ -111,20 +109,24 @@ public class MainPreferencesEntry extends BaseFragment {
@SuppressLint("NotifyDataSetChanged")
private void updateRowsId() {
rowCount = 0;
infoHeaderRow = rowCount++;
aboutExteraRow = rowCount++;
sourceCodeRow = rowCount++;
channelRow = rowCount++;
groupRow = rowCount++;
dividerInfoRow = rowCount++;
dividerExteraInfoRow = rowCount++;
categoryHeaderRow = rowCount++;
appearanceRow = rowCount++;
chatsRow = rowCount++;
drawerRow = rowCount++;
dividerInfoRow = rowCount++;
infoHeaderRow = rowCount++;
channelRow = rowCount++;
groupRow = rowCount++;
sourceCodeRow = rowCount++;
if (listAdapter != null) {
listAdapter.notifyDataSetChanged();
}
@@ -160,7 +162,7 @@ public class MainPreferencesEntry extends BaseFragment {
case 2:
TextCell textCell = (TextCell) holder.itemView;
if (position == sourceCodeRow) {
textCell.setText(LocaleController.getString("SourceCode", R.string.SourceCode), true);
textCell.setTextAndValueAndIcon(LocaleController.getString("SourceCode", R.string.SourceCode), "Github", R.drawable.msg_report_spam, false);
} else if (position == channelRow) {
textCell.setTextAndValueAndIcon(LocaleController.getString("Channel", R.string.Channel), "@exteragram", R.drawable.msg_channel, true);
} else if (position == groupRow) {
@@ -170,7 +172,7 @@ public class MainPreferencesEntry extends BaseFragment {
} else if (position == chatsRow) {
textCell.setTextAndIcon(LocaleController.getString("Chats", R.string.Chats), R.drawable.menu_chats, true);
} else if (position == drawerRow) {
textCell.setTextAndIcon(LocaleController.getString("Drawer", R.string.Drawer), R.drawable.msg_list, true);
textCell.setTextAndIcon(LocaleController.getString("Drawer", R.string.Drawer), R.drawable.msg_list, false);
}
textCell.setTextColor(Theme.getColor(Theme.key_windowBackgroundWhiteBlackText));
break;
@@ -179,17 +181,17 @@ public class MainPreferencesEntry extends BaseFragment {
if (position == categoryHeaderRow) {
headerCell.setText(LocaleController.getString("Categories", R.string.Categories));
} else if (position == infoHeaderRow){
headerCell.setText(LocaleController.getString("About", R.string.About));
headerCell.setText(LocaleController.getString("Links", R.string.Links));
}
break;
case 4:
TextDetailSettingsCell textDetailCell = (TextDetailSettingsCell) holder.itemView;
InfoSettingsCell textDetailCell = (InfoSettingsCell) holder.itemView;
textDetailCell.setMultilineDetail(true);
if (position == aboutExteraRow) {
if (BuildVars.isBetaApp()) {
textDetailCell.setTextAndValue("exteraGram β | v" + BuildVars.BUILD_VERSION_STRING, LocaleController.getString("AboutExteraDescription", R.string.AboutExteraDescription), true);
textDetailCell.setTextAndValueAndIcon("exteraGram β | v" + BuildVars.BUILD_VERSION_STRING, LocaleController.getString("AboutExteraDescription", R.string.AboutExteraDescription), R.drawable.ic_logo_foreground, false);
} else {
textDetailCell.setTextAndValue("exteraGram | v" + BuildVars.BUILD_VERSION_STRING, LocaleController.getString("AboutExteraDescription", R.string.AboutExteraDescription), true);
textDetailCell.setTextAndValueAndIcon("exteraGram | v" + BuildVars.BUILD_VERSION_STRING, LocaleController.getString("AboutExteraDescription", R.string.AboutExteraDescription), R.drawable.ic_logo_foreground, false);
}
}
break;
@@ -216,7 +218,7 @@ public class MainPreferencesEntry extends BaseFragment {
view.setBackgroundColor(Theme.getColor(Theme.key_windowBackgroundWhite));
break;
case 4:
view = new TextDetailSettingsCell(mContext);
view = new InfoSettingsCell(mContext);
view.setBackgroundColor(Theme.getColor(Theme.key_windowBackgroundWhite));
break;
default:
@@ -228,7 +230,7 @@ public class MainPreferencesEntry extends BaseFragment {
}
@Override
public int getItemViewType(int position) {
if (position == dividerInfoRow) {
if (position == dividerInfoRow || position == dividerExteraInfoRow) {
return 1;
} else if (position == appearanceRow || position == chatsRow || position == drawerRow ||
position == channelRow || position == groupRow || position == sourceCodeRow) {

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Open VIP can improve the speed of decompilation, resource code translate to name automatically and activate the smart editing and automatic completion function-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="108dp"
android:width="108dp"
android:viewportWidth="108.0"
android:viewportHeight="108.0">
<path
android:fillColor="#FFFFFFFF"
android:pathData="M54,54m-50,0a50,50 0,1 1,100 0a50,50 0,1 1,-100 0"
android:fillAlpha="0.5" />
</vector>

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="108dp"
android:width="108dp"
android:viewportWidth="108.0"
android:viewportHeight="108.0">
<path
android:fillColor="#FFFFFFFF"
android:pathData="M54,54m-54,0a54,54 0,1 1,108 0a54,54 0,1 1,-108 0"
android:fillAlpha="0.1" />
<path
android:fillColor="#FFFFFFFF"
android:pathData="M70.803,32.191C75.023,30.798 77.525,33.057 76.183,37.293C72.812,47.94 66.196,67.363 61.988,79.627C60.888,82.832 55.788,82.707 54.509,79.569C52.314,74.184 49.08,67.918 44.669,63.35C40.45,58.982 34.543,55.824 29.297,53.666C26.103,52.352 25.991,46.982 29.271,45.9L70.803,32.191Z"
android:fillAlpha="0.4" />
</vector>

View File

@@ -6,13 +6,13 @@
<string name="SaveMessage">Захаваць паведамленне</string>
<!-- Main Menu (about) -->
<string name="About">Аб exteraGram</string>
<string name="Links">Спасылкі</string>
<string name="AboutExteraDescription">Эксперыментальны кліент Telegram на аснове афіцыйных крыніц Telegram!</string>
<string name="SourceCode">Зыходны код exteraGram</string>
<string name="SourceCode">Зыходны код</string>
<string name="Channel">Канал</string>
<string name="Chats">Чаты</string>
<string name="Preferences">Настройкі extera</string>
<string name="Preferences">Настройкі exteraGram</string>
<string name="RestartRequired">Перазапусціце праграму, каб уступіць у сілу.</string>
<string name="Categories">Катыгорыі</string>

View File

@@ -6,13 +6,13 @@
<string name="SaveMessage">Nachricht speichern</string>
<!-- Main Menu (about) -->
<string name="About">Über exteraGram</string>
<string name="Links">Verknüpfungen</string>
<string name="AboutExteraDescription">Experimenteller Telegram-Client basierend auf offiziellen Telegram-Quellen!</string>
<string name="SourceCode">exteraGram\'s Quelltext</string>
<string name="SourceCode">Quelltext</string>
<string name="Channel">Kanal</string>
<string name="Chats">Chats</string>
<string name="Preferences">extera Einstellungen</string>
<string name="Preferences">exteraGram Einstellungen</string>
<string name="RestartRequired">App neu starten, damit es wirksam wird.</string>
<string name="Categories">Kategorien</string>

View File

@@ -5,7 +5,7 @@
<string name="ToBeginning">Saltar al inicio</string>
<!-- Main Menu (about) -->
<string name="AboutExtera">Acerca de exteraGram</string>
<string name="Links">Enlaces</string>
<string name="AboutExteraDescription">¡Cliente experimental de Telegram basado en fuentes oficiales de Telegram!</string>
<string name="Website">Miembros de exteraSquad</string>
<string name="Github">Código fuente de exteraGram</string>
@@ -14,7 +14,7 @@
<string name="languageEnglish">Inglés</string>
<string name="languageRussian">Ruso</string>
<string name="Preferences">Preferencias de extera</string>
<string name="Preferences">Preferencias de exteraGram</string>
<string name="RestartRequired">Reinicie la aplicación para que tenga efecto.</string>
<string name="Categories">Categorías</string>

View File

@@ -7,7 +7,7 @@
<string name="MutualContact">contact mutuel</string>
<string name="ToBeginning">To beginning</string>
<!-- Main Menu (about) -->
<string name="AboutExtera">À propos dexteraGram</string>
<string name="Links">Liens</string>
<string name="AboutExteraDescription">Client Telegram expérimental basé sur les sources officielles de Telegram!</string>
<string name="Website">membres de l\'exteraSquad</string>
<string name="Github">code source de l\'exteraGram</string>
@@ -15,7 +15,7 @@
<string name="Chat">Bot Telgram</string>
<string name="languageEnglish">Anglais</string>
<string name="languageRussian">Russe</string>
<string name="Preferences">préférences extera</string>
<string name="Preferences">préférences exteraGram</string>
<string name="RestartRequired">Redémarrer AirDroid pour prendre en compte les changements.</string>
<string name="Categories">Catégories</string>
<string name="Chats">Échanges</string>

View File

@@ -7,7 +7,7 @@
<string name="MutualContact">相互の連絡先</string>
<string name="ToBeginning">To beginning</string>
<!-- Main Menu (about) -->
<string name="AboutExtera">外部グラムについて</string>
<string name="Links">リンク</string>
<string name="AboutExteraDescription">公式のTelegramのソースに基づいて実験的なTelegramクライアント</string>
<string name="Website">外部分隊メンバー</string>
<string name="Github">exteraGramのソース コード</string>
@@ -15,7 +15,7 @@
<string name="Chat">\? Telegramチャット</string>
<string name="languageEnglish">日本語</string>
<string name="languageRussian">ロシア語</string>
<string name="Preferences">extera の設定</string>
<string name="Preferences">exteraGram の設定</string>
<string name="RestartRequired">有効にするには、AirDroidを再起動してください。</string>
<string name="Categories">カテゴリー</string>
<string name="Chats">チャット</string>

View File

@@ -7,7 +7,7 @@
<string name="MutualContact">wzajemny kontakt</string>
<string name="ToBeginning">To beginning</string>
<!-- Main Menu (about) -->
<string name="AboutExtera">O ExteraGram</string>
<string name="Links">Spinki do mankietów</string>
<string name="AboutExteraDescription">Eksperymentalny klient Telegram oparty na oficjalnych źródłach Telegram!</string>
<string name="Website">członkowie oddziału zewnętrznego</string>
<string name="Github">kod źródłowy zewnętrznego Gram-a</string>
@@ -15,7 +15,7 @@
<string name="Chat">Telegram</string>
<string name="languageEnglish">Angielski</string>
<string name="languageRussian">Rosyjski</string>
<string name="Preferences">preferencje extera</string>
<string name="Preferences">preferencje exteraGram</string>
<string name="RestartRequired">Zrestartuj AirDroid\'a, aby wprowadzić zmiany.</string>
<string name="Categories">Kategorie</string>
<string name="Chats">Czaty</string>

View File

@@ -6,13 +6,13 @@
<string name="SaveMessage">Сохранить сообщение</string>
<!-- Main Menu (about) -->
<string name="About">Об exteraGram</string>
<string name="Links">Ссылки</string>
<string name="AboutExteraDescription">Экспериментальный Telegram-клиент, основанный на официальном исходном коде Telegram!</string>
<string name="SourceCode">Исходный код exteraGram</string>
<string name="SourceCode">Исходный код</string>
<string name="Channel">Канал в Telegram</string>
<string name="Chats">Чаты</string>
<string name="Preferences">Настройки extera</string>
<string name="Preferences">Настройки exteraGram</string>
<string name="RestartRequired">Перезагрузите приложение, чтобы изменения вступили в силу.</string>
<string name="Categories">Категории</string>
@@ -28,12 +28,13 @@
<string name="HidePhoneNumber">Скрыть номер телефона</string>
<string name="ShowID">Показывать ID в профиле</string>
<string name="ChatsOnTitle">\"Чаты\" вместо \"exteraGram\"</string>
<string name="DisableVibration">Отключить вибрацию</string>
<string name="ForceTabletMode">Планшетный режим</string>
<!-- Chats -->
<string name="StickerSize">Размер стикера</string>
<string name="StickerTime">Скрыть время под стикером</string>
<string name="UnlimitedRecentStickers">Unlimited recent stickers</string>
<string name="UnlimitedRecentStickers">Неограниченные стикеры</string>
<string name="StickerSizeDialogMessageReplyTo">мяу</string>
<string name="StickerSizeDialogMessage">ооо, ну какой же он милашкин!</string>
@@ -51,7 +52,7 @@
<string name="PauseOnMinimize">Автопауза</string>
<string name="POMDescription">Останавливает видео, когда девайс блокируется или приложение сворачивается</string>
<string name="DisablePlayback">Отключить проигрывание</string>
<string name="DPDescription">Отключает проигрывание, когда кнопка громкости нажата</string>
<string name="DPDescription">Отключает автоматическое проигрывание видео при нажатии на кнопку громкости</string>
<string name="Drawer">Боковое меню</string>
<string name="Attention">ВНИМАНИЕ!</string>
@@ -63,6 +64,10 @@
<string name="LightMonetTheme">Светлая</string>
<string name="GMTDescription">Эта функция позволяет создать тему, основанную на системных цветах\n\nПосле нажатия на кнопку выберите чат, где будет сохранена тема</string>
<string name="EnterID">Введите ID</string>
<string name="TrackSaved">Трек сохранен</string>
<string name="ChannelToSaveDescription">Введите ID канала/чата/пользователя, куда будет сохраняться музыка</string>
<string name="ConfirmCall">Подтверждение звонка</string>
<string name="CallTo">Позвонить **%1$s**?</string>
</resources>
</resources>

View File

@@ -5,7 +5,7 @@
<string name="ToBeginning">На початок</string>
<!-- Main Menu (about) -->
<string name="AboutExtera">Про exteraGram</string>
<string name="Links">Посилання</string>
<string name="AboutExteraDescription">Експерементальний клієнт Telegram, що працює на офіційному вихідному коді Telegram!</string>
<string name="Website">Команда exteraSquad</string>
<string name="Github">Вихідний код exteraGram</string>
@@ -14,7 +14,7 @@
<string name="languageEnglish">Англійська</string>
<string name="languageRussian">Російська</string>
<string name="Preferences">Налаштування extera</string>
<string name="Preferences">Налаштування exteraGram</string>
<string name="RestartRequired">Перезапустіть застосунок, щоб зміни вступили в силу.</string>
<string name="Categories">Категорії</string>

View File

@@ -7,7 +7,7 @@
<string name="MutualContact">双向联系人</string>
<string name="ToBeginning">To beginning</string>
<!-- Main Menu (about) -->
<string name="AboutExtera">关于exteraGram</string>
<string name="Links">链接</string>
<string name="AboutExteraDescription">基于官方Telegram源码制作的第三方客户端</string>
<string name="Website">exteraSquad开发成员</string>
<string name="Github">exteraGram开源代码</string>
@@ -15,7 +15,7 @@
<string name="Chat">Telegram交流群组</string>
<string name="languageEnglish">英语交流</string>
<string name="languageRussian">俄语交流</string>
<string name="Preferences">extera 设置</string>
<string name="Preferences">exteraGram 设置</string>
<string name="RestartRequired">重启应用以生效</string>
<string name="Categories">设置分类</string>
<string name="Chats">对话</string>

View File

@@ -9,13 +9,13 @@
<string name="SaveMessage">Save message</string>
<!-- Main Menu (about) -->
<string name="About">About exteraGram</string>
<string name="Links">Links</string>
<string name="AboutExteraDescription">Experimental Telegram client based on official Telegram sources!</string>
<string name="SourceCode">exteraGram\'s Source Code</string>
<string name="SourceCode">Source code</string>
<string name="Channel">Channel</string>
<string name="Chats">Chats</string>
<string name="Preferences">extera Preferences</string>
<string name="Preferences">exteraGram Preferences</string>
<string name="RestartRequired">Restart the app to take effect.</string>
<string name="Categories">Categories</string>