diff --git a/TMessagesProj/src/main/java/org/telegram/android/MessagesController.java b/TMessagesProj/src/main/java/org/telegram/android/MessagesController.java index ea7256952..205034341 100644 --- a/TMessagesProj/src/main/java/org/telegram/android/MessagesController.java +++ b/TMessagesProj/src/main/java/org/telegram/android/MessagesController.java @@ -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); } diff --git a/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java b/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java index a22bb8623..7d5074797 100644 --- a/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java +++ b/TMessagesProj/src/main/java/org/telegram/ui/ChatActivity.java @@ -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) { diff --git a/TMessagesProj/src/main/java/org/telegram/ui/PhotoViewer.java b/TMessagesProj/src/main/java/org/telegram/ui/PhotoViewer.java index a1178e161..3e70e6b9c 100644 --- a/TMessagesProj/src/main/java/org/telegram/ui/PhotoViewer.java +++ b/TMessagesProj/src/main/java/org/telegram/ui/PhotoViewer.java @@ -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(); } diff --git a/TMessagesProj/src/main/java/org/telegram/ui/SettingsActivity.java b/TMessagesProj/src/main/java/org/telegram/ui/SettingsActivity.java index fdcc3dd53..1c10cb54c 100644 --- a/TMessagesProj/src/main/java/org/telegram/ui/SettingsActivity.java +++ b/TMessagesProj/src/main/java/org/telegram/ui/SettingsActivity.java @@ -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); } diff --git a/TMessagesProj/src/main/java/org/telegram/ui/SettingsChangeUsernameActivity.java b/TMessagesProj/src/main/java/org/telegram/ui/SettingsChangeUsernameActivity.java index bf01f63f4..f6cb32d16 100644 --- a/TMessagesProj/src/main/java/org/telegram/ui/SettingsChangeUsernameActivity.java +++ b/TMessagesProj/src/main/java/org/telegram/ui/SettingsChangeUsernameActivity.java @@ -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); diff --git a/TMessagesProj/src/main/java/org/telegram/ui/Views/NumberPicker.java b/TMessagesProj/src/main/java/org/telegram/ui/Views/NumberPicker.java index 6dbffc09a..e91a71138 100644 --- a/TMessagesProj/src/main/java/org/telegram/ui/Views/NumberPicker.java +++ b/TMessagesProj/src/main/java/org/telegram/ui/Views/NumberPicker.java @@ -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 mSelectorIndexToStringCache = new SparseArray(); 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(); diff --git a/TMessagesProj/src/main/res/values-ar/strings.xml b/TMessagesProj/src/main/res/values-ar/strings.xml index 8bbcb33ac..9e24a7e9f 100644 --- a/TMessagesProj/src/main/res/values-ar/strings.xml +++ b/TMessagesProj/src/main/res/values-ar/strings.xml @@ -193,7 +193,6 @@ الهاتف إبدأ محادثة سرية حدث خطأ. - لا يمكن إنشاء محادثة سرية مع %1$s.\n\n%2$s يستخدم إصدار قديم من تيليجرام ولا بد أن يقوم بالتحديث أولًا. محادثة سرية مفتاح التشفير عداد التدمير الذاتي @@ -212,6 +211,8 @@ يمكنك اختيار اسم مستخدم في ]]>تيليجرام]]>. إذا قمت بذلك، سيستطيع الناس إيجادك باستخدام الاسم المستخدم والتواصل معك من دون معرفة رقمك.
]]>يمكنك استخدام ]]>حروف اللغة الإنجليزية]]>, ]]>وأرقامها]]> و كذلك الخط. لا بد من استخدام ]]>٥]]> حروف على الأقل.
جاري مراجعة اسم المستخدم... %1$s متاح. + None + An error occurred تم تعيين كافة الإشعارات افتراضيا حجم نص الرسائل diff --git a/TMessagesProj/src/main/res/values-de/strings.xml b/TMessagesProj/src/main/res/values-de/strings.xml index 33b1f40c7..3fe8b822f 100644 --- a/TMessagesProj/src/main/res/values-de/strings.xml +++ b/TMessagesProj/src/main/res/values-de/strings.xml @@ -193,7 +193,6 @@ TELEFON Geheimen Chat starten Es ist ein Fehler aufgetreten. - Geheimer Chat konnte mit %1$s nicht gestartet werden.\n\n%2$s benutzt eine ältere Version von Telegram und muss diese erst aktualisieren. Geheimer Chat Geheimer Schlüssel Selbstzerstörungs-Timer @@ -212,6 +211,8 @@ Wähle einen Benutzernamen, wenn du von anderen bei]]>Telegram]]>gefunden werden willst – ohne, dass sie deine Nummer kennen müssen.
]]>Erlaubt sind ]]>a–z]]>, ]]>0–9]]> und Unterstriche. Die Mindestlänge beträgt ]]>5]]> Zeichen.
Prüfe Benutzername... %1$s ist verfügbar. + None + An error occurred Alle Einstellungen für Mitteilungen zurücksetzen Textgröße für Nachrichten diff --git a/TMessagesProj/src/main/res/values-es/strings.xml b/TMessagesProj/src/main/res/values-es/strings.xml index 87f411494..2eecba922 100644 --- a/TMessagesProj/src/main/res/values-es/strings.xml +++ b/TMessagesProj/src/main/res/values-es/strings.xml @@ -193,7 +193,6 @@ TELÉFONO Iniciar chat secreto Ocurrió un error. - No podemos crear un chat secreto con %1$s.\n\n%2$s está usando una versión antigua de Telegram y debe actualizarla. Chat secreto Clave de cifrado Autodestrucción @@ -212,6 +211,8 @@ Puedes elegir un apodo en ]]>Telegram]]>. Si lo haces, otras personas te podrán encontrar por ese apodo y contactarte sin saber tu número de teléfono.
]]>Puedes usar ]]>a–z]]>, ]]>0–9]]> y guiones bajos. La longitud mínima es de ]]>5]]> caracteres.
Verificando apodo... %1$s está disponible. + None + An error occurred Restablecer las notificaciones Tamaño del texto diff --git a/TMessagesProj/src/main/res/values-it/strings.xml b/TMessagesProj/src/main/res/values-it/strings.xml index 90f500a90..0b37c2682 100644 --- a/TMessagesProj/src/main/res/values-it/strings.xml +++ b/TMessagesProj/src/main/res/values-it/strings.xml @@ -193,7 +193,6 @@ TELEFONO Inizia chat segreta Si è verificato un errore. - Impossibile creare una chat segreta con %1$s.\n\n%2$s sta usando una vecchia versione di Telegram e deve prima aggiornarla. Chat segreta Chiave di cifratura Timer di autodistruzione @@ -212,6 +211,8 @@ Puoi scegliere un nome utente su ]]>Telegram]]>. Se lo fai, le altre persone potranno trovarti tramite questo nome utente e contattarti senza conoscere il tuo numero di telefono.
]]>Puoi usare ]]>a–z]]>, ]]>0–9]]> e underscore. La lunghezza minima è di ]]>5]]> caratteri.
Controllando il nome utente... %1$s è disponibile. + None + An error occurred Ripristina tutte le impostazioni di notifica predefinite Dimensione testo messaggi diff --git a/TMessagesProj/src/main/res/values-ko/strings.xml b/TMessagesProj/src/main/res/values-ko/strings.xml index 955bc6632..3aa93cccd 100644 --- a/TMessagesProj/src/main/res/values-ko/strings.xml +++ b/TMessagesProj/src/main/res/values-ko/strings.xml @@ -192,7 +192,6 @@ 전화번호 비밀대화 시작 오류가 발생했습니다. - %1$s님의 텔레그램 버전이 낮아 비밀대화를 시작할 수 없습니다.\n\n비밀대화를 시작하려면 %2$s님이 텔레그램을 업데이트해야 합니다. 비밀대화 암호화 키 자동삭제 타이머 @@ -211,6 +210,8 @@ You can choose a username on ]]>Telegram]]>. If you do, other people will be able to find you by this username and contact you without knowing your phone number.
]]>You can use ]]>a–z]]>, ]]>0–9]]> and underscores. Minimum length is ]]>5]]> characters.
Checking username... %1$s is available. + None + An error occurred 모든 알림 설정이 초기화되었습니다 채팅 글자 크기 diff --git a/TMessagesProj/src/main/res/values-nl/strings.xml b/TMessagesProj/src/main/res/values-nl/strings.xml index 489f024a8..7916a2fbf 100644 --- a/TMessagesProj/src/main/res/values-nl/strings.xml +++ b/TMessagesProj/src/main/res/values-nl/strings.xml @@ -193,7 +193,6 @@ TELEFOON Geheime chat starten Er is een fout opgetreden. - Kan geen geheime chat starten met %1$s.\n\n%2$s gebruikt een oudere versie van Telegram en moet eerst een update installeren. Geheime chat Encryptiesleutel Zelfvernietigingstimer @@ -212,6 +211,8 @@ Je kan een gebruikersnaam kiezen voor ]]>Telegram]]>. Hiermee kunnen anderen je vinden en contact met je opnemen zonder je telefoonnummer te weten.
]]>Je mag ]]>a–z]]>, ]]>0–9]]> en liggend streepje gebruiken. De minimale lengte is ]]>5]]> tekens.
Gebruikersnaam controleren. %1$s is beschikbaar. + None + An error occurred Alle meldingsinstellingen herstellen Tekstgrootte berichten diff --git a/TMessagesProj/src/main/res/values-pt-rBR/strings.xml b/TMessagesProj/src/main/res/values-pt-rBR/strings.xml index 98ca4144c..a6270eed6 100644 --- a/TMessagesProj/src/main/res/values-pt-rBR/strings.xml +++ b/TMessagesProj/src/main/res/values-pt-rBR/strings.xml @@ -193,7 +193,6 @@ TELEFONE Iniciar Conversa Secreta Ocorreu um erro. - 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. Conversa Secreta Chave criptográfica Tempo de autodestruição @@ -212,6 +211,8 @@ Você pode escolher um nome de usuário no ]]>Telegram]]>. Assim, outras pessoas poderão te encontrar pelo nome de usuário e entrar em contato sem precisar saber seu telefone.
]]>Você pode usar ]]>a–z]]>, ]]>0–9]]> e underline. O tamanho mínimo é ]]>5]]> caracteres.
Verificando nome de usuário... %1$s está disponível. + None + An error occurred Restaurar todas as configurações de notificação Tamanho do texto nas mensagens diff --git a/TMessagesProj/src/main/res/values-pt-rPT/strings.xml b/TMessagesProj/src/main/res/values-pt-rPT/strings.xml index 86c2b4279..b11dad27f 100644 --- a/TMessagesProj/src/main/res/values-pt-rPT/strings.xml +++ b/TMessagesProj/src/main/res/values-pt-rPT/strings.xml @@ -193,7 +193,6 @@ TELEFONE Iniciar Conversa Secreta Ocorreu um erro. - 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. Conversa Secreta Chave criptográfica Tempo de autodestruição @@ -212,6 +211,8 @@ Você pode escolher um nome de usuário no ]]>Telegram]]>. Assim, outras pessoas poderão te encontrar pelo nome de usuário e entrar em contato sem precisar saber seu telefone.
]]>Você pode usar ]]>a–z]]>, ]]>0–9]]> e underline. O tamanho mínimo é ]]>5]]> caracteres.
Verificando nome de usuário... %1$s está disponível. + None + An error occurred Restaurar todas as configurações de notificação Tamanho do texto nas mensagens diff --git a/TMessagesProj/src/main/res/values/strings.xml b/TMessagesProj/src/main/res/values/strings.xml index 5b0071ea5..afb85da55 100644 --- a/TMessagesProj/src/main/res/values/strings.xml +++ b/TMessagesProj/src/main/res/values/strings.xml @@ -51,6 +51,7 @@ Delete and exit Hidden Name Select Chat + Tap and hold to view %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. Broadcast List @@ -193,7 +194,6 @@ PHONE Start Secret Chat An error occurred. - Cannot create a secret chat with %1$s.\n\n%2$s is using an older version of Telegram and needs to update first. Secret Chat Encryption Key Self-Destruct Timer @@ -202,6 +202,7 @@ Unknown INFO Phone + Username Your Username Sorry, this username is already taken. @@ -212,6 +213,8 @@ You can choose a username on ]]>Telegram]]>. If you do, other people will be able to find you by this username and contact you without knowing your phone number.
]]>You can use ]]>a–z]]>, ]]>0–9]]> and underscores. Minimum length is ]]>5]]> characters.
Checking username... %1$s is available. + None + An error occurred. Reset all notification settings to default Messages Text Size @@ -383,6 +386,7 @@ forward from my name Send messages to %1$s? Forward messages to %1$s? + Sorry, this feature is currently not available in your country. Telegram Fast