Bug fixes

This commit is contained in:
DrKLO 2014-10-22 14:11:47 +04:00
parent ef2b368b65
commit e3d2b9cece
15 changed files with 89 additions and 42 deletions

View file

@ -4147,7 +4147,7 @@ public class MessagesController implements NotificationCenter.NotificationCenter
}
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle(LocaleController.getString("AppName", R.string.AppName));
builder.setMessage(LocaleController.formatString("CreateEncryptedChatOutdatedError", R.string.CreateEncryptedChatOutdatedError, user.first_name, user.first_name));
builder.setMessage(LocaleController.getString("CreateEncryptedChatError", R.string.CreateEncryptedChatError));
builder.setPositiveButton(LocaleController.getString("OK", R.string.OK), null);
builder.show().setCanceledOnTouchOutside(true);
}

View file

@ -849,6 +849,7 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not
}
startX = x;
startY = y;
chatListView.setOnItemClickListener(null);
openSecretPhotoRunnable = new Runnable() {
@Override
public void run() {
@ -857,7 +858,6 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not
}
chatListView.requestDisallowInterceptTouchEvent(true);
chatListView.setOnItemLongClickListener(null);
chatListView.setOnItemClickListener(null);
chatListView.setLongClickable(false);
openSecretPhotoRunnable = null;
if (sendSecretMessageRead(messageObject)) {
@ -882,18 +882,31 @@ public class ChatActivity extends BaseFragment implements NotificationCenter.Not
if (event.getAction() == MotionEvent.ACTION_UP || event.getAction() == MotionEvent.ACTION_CANCEL || event.getAction() == MotionEvent.ACTION_POINTER_UP) {
if (openSecretPhotoRunnable != null) {
AndroidUtilities.CancelRunOnUIThread(openSecretPhotoRunnable);
AndroidUtilities.RunOnUIThread(new Runnable() {
@Override
public void run() {
chatListView.setOnItemClickListener(onItemClickListener);
}
}, 150);
openSecretPhotoRunnable = null;
try {
Toast.makeText(v.getContext(), LocaleController.getString("PhotoTip", R.string.PhotoTip), Toast.LENGTH_SHORT).show();
} catch (Exception e) {
FileLog.e("tmessages", e);
}
} else {
if (SecretPhotoViewer.getInstance().isVisible()) {
AndroidUtilities.RunOnUIThread(new Runnable() {
@Override
public void run() {
chatListView.setOnItemLongClickListener(onItemLongClickListener);
chatListView.setOnItemClickListener(onItemClickListener);
chatListView.setOnItemLongClickListener(onItemLongClickListener);
chatListView.setLongClickable(true);
}
});
SecretPhotoViewer.getInstance().closePhoto();
} else {
chatListView.setOnItemClickListener(onItemClickListener);
}
}
} else if (event.getAction() != MotionEvent.ACTION_DOWN) {

View file

@ -101,6 +101,7 @@ public class PhotoViewer implements NotificationCenter.NotificationCenterDelegat
private View pickerView;
private TextView doneButtonTextView;
private TextView doneButtonBadgeTextView;
private ImageView shareButton;
private boolean canShowBottom = true;
private boolean overlayViewVisible = true;
@ -595,7 +596,7 @@ public class PhotoViewer implements NotificationCenter.NotificationCenterDelegat
bottomLayout.setLayoutParams(layoutParams);
bottomLayout.setBackgroundColor(0x7F000000);
ImageView shareButton = new ImageView(containerView.getContext());
shareButton = new ImageView(containerView.getContext());
shareButton.setImageResource(R.drawable.ic_ab_share_white);
shareButton.setScaleType(ImageView.ScaleType.CENTER);
shareButton.setBackgroundResource(R.drawable.bar_selector_white);
@ -1159,6 +1160,12 @@ public class PhotoViewer implements NotificationCenter.NotificationCenterDelegat
} else {
menuItem.hideSubItem(gallery_menu_showall);
}
if ((int) currentDialogId == 0) {
menuItem.hideSubItem(gallery_menu_save);
shareButton.setVisibility(View.GONE);
} else {
shareButton.setVisibility(View.VISIBLE);
}
setImageIndex(0, true);
} else if (fileLocation != null) {
avatarsUserId = object.user_id;
@ -1166,6 +1173,7 @@ public class PhotoViewer implements NotificationCenter.NotificationCenterDelegat
imagesArrLocationsSizes.add(object.size);
avatarsArr.add(new TLRPC.TL_photoEmpty());
bottomLayout.setVisibility(View.GONE);
shareButton.setVisibility(View.VISIBLE);
menuItem.hideSubItem(gallery_menu_showall);
setImageIndex(0, true);
currentUserAvatarLocation = fileLocation;
@ -1194,6 +1202,12 @@ public class PhotoViewer implements NotificationCenter.NotificationCenterDelegat
}
}
}
if ((int) currentDialogId == 0) {
menuItem.hideSubItem(gallery_menu_save);
shareButton.setVisibility(View.GONE);
} else {
shareButton.setVisibility(View.VISIBLE);
}
opennedFromMedia = true;
setImageIndex(index, true);
} else if (photos != null) {
@ -1203,6 +1217,7 @@ public class PhotoViewer implements NotificationCenter.NotificationCenterDelegat
setImageIndex(index, true);
pickerView.setVisibility(View.VISIBLE);
bottomLayout.setVisibility(View.GONE);
shareButton.setVisibility(View.VISIBLE);
canShowBottom = false;
updateSelectedCount();
}

View file

@ -1001,7 +1001,7 @@ public class SettingsActivity extends BaseFragment implements NotificationCenter
if (user != null && user.username != null && user.username.length() != 0) {
detailTextView.setText("@" + user.username);
} else {
detailTextView.setText("-");
detailTextView.setText(LocaleController.getString("UsernameEmpty", R.string.UsernameEmpty));
}
divider.setVisibility(View.INVISIBLE);
}

View file

@ -202,8 +202,10 @@ public class SettingsChangeUsernameActivity extends BaseFragment {
builder.setMessage(LocaleController.getString("UsernameInvalid", R.string.UsernameInvalid));
} else if (error.equals("USERNAME_OCCUPIED")) {
builder.setMessage(LocaleController.getString("UsernameInUse", R.string.UsernameInUse));
} else if (error.equals("USERNAMES_UNAVAILABLE")) {
builder.setMessage(LocaleController.getString("FeatureUnavailable", R.string.FeatureUnavailable));
} else {
builder.setMessage(error);
builder.setMessage(LocaleController.getString("ErrorOccurred", R.string.ErrorOccurred));
}
builder.setPositiveButton(LocaleController.getString("OK", R.string.OK), null);
showAlertDialog(builder);

View file

@ -57,14 +57,14 @@ public class NumberPicker extends LinearLayout {
private static final int DEFAULT_LAYOUT_RESOURCE_ID = 0;
private static final int SIZE_UNSPECIFIED = -1;
private final TextView mInputText;
private final int mSelectionDividersDistance;
private final int mMinHeight;
private final int mMaxHeight;
private final int mMinWidth;
private TextView mInputText;
private int mSelectionDividersDistance;
private int mMinHeight;
private int mMaxHeight;
private int mMinWidth;
private int mMaxWidth;
private final boolean mComputeMaxWidth;
private final int mTextSize;
private boolean mComputeMaxWidth;
private int mTextSize;
private int mSelectorTextGapHeight;
private String[] mDisplayedValues;
private int mMinValue;
@ -76,13 +76,13 @@ public class NumberPicker extends LinearLayout {
private long mLongPressUpdateInterval = DEFAULT_LONG_PRESS_UPDATE_INTERVAL;
private final SparseArray<String> mSelectorIndexToStringCache = new SparseArray<String>();
private final int[] mSelectorIndices = new int[SELECTOR_WHEEL_ITEM_COUNT];
private final Paint mSelectorWheelPaint;
private final Drawable mVirtualButtonPressedDrawable;
private Paint mSelectorWheelPaint;
private Drawable mVirtualButtonPressedDrawable;
private int mSelectorElementHeight;
private int mInitialScrollOffset = Integer.MIN_VALUE;
private int mCurrentScrollOffset;
private final Scroller mFlingScroller;
private final Scroller mAdjustScroller;
private Scroller mFlingScroller;
private Scroller mAdjustScroller;
private int mPreviousScrollerY;
private ChangeCurrentByOneFromLongPressCommand mChangeCurrentByOneFromLongPressCommand;
private float mLastDownEventY;
@ -93,9 +93,9 @@ public class NumberPicker extends LinearLayout {
private int mMinimumFlingVelocity;
private int mMaximumFlingVelocity;
private boolean mWrapSelectorWheel;
private final int mSolidColor;
private final Drawable mSelectionDivider;
private final int mSelectionDividerHeight;
private int mSolidColor;
private Drawable mSelectionDivider;
private int mSelectionDividerHeight;
private int mScrollState = OnScrollListener.SCROLL_STATE_IDLE;
private boolean mIngonreMoveEvents;
private int mTopSelectionDividerTop;
@ -103,7 +103,7 @@ public class NumberPicker extends LinearLayout {
private int mLastHoveredChildVirtualViewId;
private boolean mIncrementVirtualButtonPressed;
private boolean mDecrementVirtualButtonPressed;
private final PressedStateHelper mPressedStateHelper;
private PressedStateHelper mPressedStateHelper;
private int mLastHandledDownDpadKeyCode = -1;
public interface OnValueChangeListener {
@ -122,17 +122,7 @@ public class NumberPicker extends LinearLayout {
public String format(int value);
}
public NumberPicker(Context context) {
this(context, null);
}
public NumberPicker(Context context, AttributeSet attrs) {
this(context, attrs, 0);
}
public NumberPicker(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
private void init() {
mSolidColor = 0;
mSelectionDivider = getResources().getDrawable(R.drawable.numberpicker_selection_divider);
@ -169,7 +159,7 @@ public class NumberPicker extends LinearLayout {
mInputText.setBackgroundResource(0);
mInputText.setTextSize(TypedValue.COMPLEX_UNIT_SP, 18);
ViewConfiguration configuration = ViewConfiguration.get(context);
ViewConfiguration configuration = ViewConfiguration.get(getContext());
mTouchSlop = configuration.getScaledTouchSlop();
mMinimumFlingVelocity = configuration.getScaledMinimumFlingVelocity();
mMaximumFlingVelocity = configuration.getScaledMaximumFlingVelocity() / SELECTOR_MAX_FLING_VELOCITY_ADJUSTMENT;
@ -191,6 +181,21 @@ public class NumberPicker extends LinearLayout {
updateInputTextView();
}
public NumberPicker(Context context) {
super(context);
init();
}
public NumberPicker(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public NumberPicker(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
@Override
protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
final int msrdWdth = getMeasuredWidth();

View file

@ -193,7 +193,6 @@
<string name="PHONE">الهاتف</string>
<string name="StartEncryptedChat">إبدأ محادثة سرية</string>
<string name="CreateEncryptedChatError">حدث خطأ.</string>
<string name="CreateEncryptedChatOutdatedError">لا يمكن إنشاء محادثة سرية مع %1$s.\n\n%2$s يستخدم إصدار قديم من تيليجرام ولا بد أن يقوم بالتحديث أولًا.</string>
<string name="SecretTitle">محادثة سرية</string>
<string name="EncryptionKey">مفتاح التشفير</string>
<string name="MessageLifetime">عداد التدمير الذاتي</string>
@ -212,6 +211,8 @@
<string name="UsernameHelp">يمكنك اختيار اسم مستخدم في <![CDATA[<b>]]>تيليجرام<![CDATA[</b>]]>. إذا قمت بذلك، سيستطيع الناس إيجادك باستخدام الاسم المستخدم والتواصل معك من دون معرفة رقمك.<![CDATA[<br><br>]]>يمكنك استخدام <![CDATA[<b>]]>حروف اللغة الإنجليزية<![CDATA[</b>]]>, <![CDATA[<b>]]>وأرقامها<![CDATA[</b>]]> و كذلك الخط. لا بد من استخدام <![CDATA[<b>]]>٥<![CDATA[</b>]]> حروف على الأقل.</string>
<string name="UsernameChecking">جاري مراجعة اسم المستخدم...</string>
<string name="UsernameAvailable">%1$s متاح.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred</string>
<!--settings view-->
<string name="ResetNotificationsText">تم تعيين كافة الإشعارات افتراضيا</string>
<string name="TextSize">حجم نص الرسائل</string>

View file

@ -193,7 +193,6 @@
<string name="PHONE">TELEFON</string>
<string name="StartEncryptedChat">Geheimen Chat starten</string>
<string name="CreateEncryptedChatError">Es ist ein Fehler aufgetreten.</string>
<string name="CreateEncryptedChatOutdatedError">Geheimer Chat konnte mit %1$s nicht gestartet werden.\n\n%2$s benutzt eine ältere Version von Telegram und muss diese erst aktualisieren.</string>
<string name="SecretTitle">Geheimer Chat</string>
<string name="EncryptionKey">Geheimer Schlüssel</string>
<string name="MessageLifetime">Selbstzerstörungs-Timer</string>
@ -212,6 +211,8 @@
<string name="UsernameHelp">Wähle einen Benutzernamen, wenn du von anderen bei<![CDATA[<b>]]>Telegram<![CDATA[</b>]]>gefunden werden willst ohne, dass sie deine Nummer kennen müssen.<![CDATA[<br><br>]]>Erlaubt sind <![CDATA[<b>]]>az<![CDATA[<b>]]>, <![CDATA[<b>]]>09<![CDATA[<b>]]> und Unterstriche. Die Mindestlänge beträgt <![CDATA[<b>]]>5<![CDATA[<b>]]> Zeichen.</string>
<string name="UsernameChecking">Prüfe Benutzername...</string>
<string name="UsernameAvailable">%1$s ist verfügbar.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred</string>
<!--settings view-->
<string name="ResetNotificationsText">Alle Einstellungen für Mitteilungen zurücksetzen</string>
<string name="TextSize">Textgröße für Nachrichten</string>

View file

@ -193,7 +193,6 @@
<string name="PHONE">TELÉFONO</string>
<string name="StartEncryptedChat">Iniciar chat secreto</string>
<string name="CreateEncryptedChatError">Ocurrió un error.</string>
<string name="CreateEncryptedChatOutdatedError">No podemos crear un chat secreto con %1$s.\n\n%2$s está usando una versión antigua de Telegram y debe actualizarla.</string>
<string name="SecretTitle">Chat secreto</string>
<string name="EncryptionKey">Clave de cifrado</string>
<string name="MessageLifetime">Autodestrucción</string>
@ -212,6 +211,8 @@
<string name="UsernameHelp">Puedes elegir un apodo en <![CDATA[<b>]]>Telegram<![CDATA[</b>]]>. Si lo haces, otras personas te podrán encontrar por ese apodo y contactarte sin saber tu número de teléfono.<![CDATA[<br><br>]]>Puedes usar <![CDATA[<b>]]>az<![CDATA[</b>]]>, <![CDATA[<b>]]>09<![CDATA[</b>]]> y guiones bajos. La longitud mínima es de <![CDATA[<b>]]>5<![CDATA[</b>]]> caracteres.</string>
<string name="UsernameChecking">Verificando apodo...</string>
<string name="UsernameAvailable">%1$s está disponible.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred</string>
<!--settings view-->
<string name="ResetNotificationsText">Restablecer las notificaciones</string>
<string name="TextSize">Tamaño del texto</string>

View file

@ -193,7 +193,6 @@
<string name="PHONE">TELEFONO</string>
<string name="StartEncryptedChat">Inizia chat segreta</string>
<string name="CreateEncryptedChatError">Si è verificato un errore.</string>
<string name="CreateEncryptedChatOutdatedError">Impossibile creare una chat segreta con %1$s.\n\n%2$s sta usando una vecchia versione di Telegram e deve prima aggiornarla.</string>
<string name="SecretTitle">Chat segreta</string>
<string name="EncryptionKey">Chiave di cifratura</string>
<string name="MessageLifetime">Timer di autodistruzione</string>
@ -212,6 +211,8 @@
<string name="UsernameHelp">Puoi scegliere un nome utente su <![CDATA[<b>]]>Telegram<![CDATA[</b>]]>. Se lo fai, le altre persone potranno trovarti tramite questo nome utente e contattarti senza conoscere il tuo numero di telefono.<![CDATA[<br><br>]]>Puoi usare <![CDATA[<b>]]>az<![CDATA[</b>]]>, <![CDATA[<b>]]>09<![CDATA[</b>]]> e underscore. La lunghezza minima è di <![CDATA[<b>]]>5<![CDATA[</b>]]> caratteri.</string>
<string name="UsernameChecking">Controllando il nome utente...</string>
<string name="UsernameAvailable">%1$s è disponibile.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred</string>
<!--settings view-->
<string name="ResetNotificationsText">Ripristina tutte le impostazioni di notifica predefinite</string>
<string name="TextSize">Dimensione testo messaggi</string>

View file

@ -192,7 +192,6 @@
<string name="PHONE">전화번호</string>
<string name="StartEncryptedChat">비밀대화 시작</string>
<string name="CreateEncryptedChatError">오류가 발생했습니다.</string>
<string name="CreateEncryptedChatOutdatedError">%1$s님의 텔레그램 버전이 낮아 비밀대화를 시작할 수 없습니다.\n\n비밀대화를 시작하려면 %2$s님이 텔레그램을 업데이트해야 합니다.</string>
<string name="SecretTitle">비밀대화</string>
<string name="EncryptionKey">암호화 키</string>
<string name="MessageLifetime">자동삭제 타이머</string>
@ -211,6 +210,8 @@
<string name="UsernameHelp">You can choose a username on <![CDATA[<b>]]>Telegram<![CDATA[</b>]]>. If you do, other people will be able to find you by this username and contact you without knowing your phone number.<![CDATA[<br><br>]]>You can use <![CDATA[<b>]]>az<![CDATA[</b>]]>, <![CDATA[<b>]]>09<![CDATA[</b>]]> and underscores. Minimum length is <![CDATA[<b>]]>5<![CDATA[</b>]]> characters.</string>
<string name="UsernameChecking">Checking username...</string>
<string name="UsernameAvailable">%1$s is available.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred</string>
<!--settings view-->
<string name="ResetNotificationsText">모든 알림 설정이 초기화되었습니다</string>
<string name="TextSize">채팅 글자 크기</string>

View file

@ -193,7 +193,6 @@
<string name="PHONE">TELEFOON</string>
<string name="StartEncryptedChat">Geheime chat starten</string>
<string name="CreateEncryptedChatError">Er is een fout opgetreden.</string>
<string name="CreateEncryptedChatOutdatedError">Kan geen geheime chat starten met %1$s.\n\n%2$s gebruikt een oudere versie van Telegram en moet eerst een update installeren.</string>
<string name="SecretTitle">Geheime chat</string>
<string name="EncryptionKey">Encryptiesleutel</string>
<string name="MessageLifetime">Zelfvernietigingstimer</string>
@ -212,6 +211,8 @@
<string name="UsernameHelp">Je kan een gebruikersnaam kiezen voor <![CDATA[<b>]]>Telegram<![CDATA[</b>]]>. Hiermee kunnen anderen je vinden en contact met je opnemen zonder je telefoonnummer te weten.<![CDATA[<br><br>]]>Je mag <![CDATA[<b>]]>az<![CDATA[</b>]]>, <![CDATA[<b>]]>09<![CDATA[</b>]]> en liggend streepje gebruiken. De minimale lengte is <![CDATA[<b>]]>5<![CDATA[</b>]]> tekens.</string>
<string name="UsernameChecking">Gebruikersnaam controleren.</string>
<string name="UsernameAvailable">%1$s is beschikbaar.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred</string>
<!--settings view-->
<string name="ResetNotificationsText">Alle meldingsinstellingen herstellen</string>
<string name="TextSize">Tekstgrootte berichten</string>

View file

@ -193,7 +193,6 @@
<string name="PHONE">TELEFONE</string>
<string name="StartEncryptedChat">Iniciar Conversa Secreta</string>
<string name="CreateEncryptedChatError">Ocorreu um erro.</string>
<string name="CreateEncryptedChatOutdatedError">Não é possível criar uma conversa secreta com %1$s.\n\n%2$s está usando uma versão antiga do Telegram e precisa ser atualizada.</string>
<string name="SecretTitle">Conversa Secreta</string>
<string name="EncryptionKey">Chave criptográfica</string>
<string name="MessageLifetime">Tempo de autodestruição</string>
@ -212,6 +211,8 @@
<string name="UsernameHelp">Você pode escolher um nome de usuário no <![CDATA[<b>]]>Telegram<![CDATA[</b>]]>. Assim, outras pessoas poderão te encontrar pelo nome de usuário e entrar em contato sem precisar saber seu telefone. <![CDATA[<br><br>]]>Você pode usar <![CDATA[<b>]]>az<![CDATA[</b>]]>, <![CDATA[<b>]]>09<![CDATA[</b>]]> e underline. O tamanho mínimo é <![CDATA[<b>]]>5<![CDATA[</b>]]> caracteres.</string>
<string name="UsernameChecking">Verificando nome de usuário...</string>
<string name="UsernameAvailable">%1$s está disponível.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred</string>
<!--settings view-->
<string name="ResetNotificationsText">Restaurar todas as configurações de notificação</string>
<string name="TextSize">Tamanho do texto nas mensagens</string>

View file

@ -193,7 +193,6 @@
<string name="PHONE">TELEFONE</string>
<string name="StartEncryptedChat">Iniciar Conversa Secreta</string>
<string name="CreateEncryptedChatError">Ocorreu um erro.</string>
<string name="CreateEncryptedChatOutdatedError">Não é possível criar uma conversa secreta com %1$s.\n\n%2$s está usando uma versão antiga do Telegram e precisa ser atualizada.</string>
<string name="SecretTitle">Conversa Secreta</string>
<string name="EncryptionKey">Chave criptográfica</string>
<string name="MessageLifetime">Tempo de autodestruição</string>
@ -212,6 +211,8 @@
<string name="UsernameHelp">Você pode escolher um nome de usuário no <![CDATA[<b>]]>Telegram<![CDATA[</b>]]>. Assim, outras pessoas poderão te encontrar pelo nome de usuário e entrar em contato sem precisar saber seu telefone. <![CDATA[<br><br>]]>Você pode usar <![CDATA[<b>]]>az<![CDATA[</b>]]>, <![CDATA[<b>]]>09<![CDATA[</b>]]> e underline. O tamanho mínimo é <![CDATA[<b>]]>5<![CDATA[</b>]]> caracteres.</string>
<string name="UsernameChecking">Verificando nome de usuário...</string>
<string name="UsernameAvailable">%1$s está disponível.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred</string>
<!--settings view-->
<string name="ResetNotificationsText">Restaurar todas as configurações de notificação</string>
<string name="TextSize">Tamanho do texto nas mensagens</string>

View file

@ -51,6 +51,7 @@
<string name="DeleteChat">Delete and exit</string>
<string name="HiddenName">Hidden Name</string>
<string name="SelectChat">Select Chat</string>
<string name="PhotoTip">Tap and hold to view</string>
<string name="CompatibilityChat">%1$s is using an older version of Telegram, so secret photos will be shown in compatibility mode.\n\nOnce %2$s updates Telegram, photos with timers for 1 minute or less will start working in \'Tap and hold to view\' mode, and you will be notified whenever the other party takes a screenshot.</string>
<!--broadcasts-->
<string name="BroadcastList">Broadcast List</string>
@ -193,7 +194,6 @@
<string name="PHONE">PHONE</string>
<string name="StartEncryptedChat">Start Secret Chat</string>
<string name="CreateEncryptedChatError">An error occurred.</string>
<string name="CreateEncryptedChatOutdatedError">Cannot create a secret chat with %1$s.\n\n%2$s is using an older version of Telegram and needs to update first.</string>
<string name="SecretTitle">Secret Chat</string>
<string name="EncryptionKey">Encryption Key</string>
<string name="MessageLifetime">Self-Destruct Timer</string>
@ -202,6 +202,7 @@
<string name="NumberUnknown">Unknown</string>
<string name="Info">INFO</string>
<string name="Phone">Phone</string>
<!--usernames-->
<string name="Username">Username</string>
<string name="UsernamePlaceholder">Your Username</string>
<string name="UsernameInUse">Sorry, this username is already taken.</string>
@ -212,6 +213,8 @@
<string name="UsernameHelp">You can choose a username on <![CDATA[<b>]]>Telegram<![CDATA[</b>]]>. If you do, other people will be able to find you by this username and contact you without knowing your phone number.<![CDATA[<br><br>]]>You can use <![CDATA[<b>]]>az<![CDATA[</b>]]>, <![CDATA[<b>]]>09<![CDATA[</b>]]> and underscores. Minimum length is <![CDATA[<b>]]>5<![CDATA[</b>]]> characters.</string>
<string name="UsernameChecking">Checking username...</string>
<string name="UsernameAvailable">%1$s is available.</string>
<string name="UsernameEmpty">None</string>
<string name="ErrorOccurred">An error occurred.</string>
<!--settings view-->
<string name="ResetNotificationsText">Reset all notification settings to default</string>
<string name="TextSize">Messages Text Size</string>
@ -383,6 +386,7 @@
<string name="ForwardFromMyName">forward from my name</string>
<string name="SendMessagesToGroup">Send messages to %1$s?</string>
<string name="ForwardMessagesToGroup">Forward messages to %1$s?</string>
<string name="FeatureUnavailable">Sorry, this feature is currently not available in your country.</string>
<!--Intro view-->
<string name="Page1Title">Telegram</string>
<string name="Page2Title">Fast</string>