Merge tag '2.37.2.0'

This commit is contained in:
Michael Kirk 2019-03-14 11:42:44 -07:00
commit 95b11ddf8c
10 changed files with 130 additions and 39 deletions

View File

@ -475,6 +475,7 @@
4C1885D2218F8E1C00B67051 /* PhotoGridViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C1885D1218F8E1C00B67051 /* PhotoGridViewCell.swift */; };
4C20B2B720CA0034001BAC90 /* ThreadViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4542DF51208B82E9007B4E76 /* ThreadViewModel.swift */; };
4C20B2B920CA10DE001BAC90 /* ConversationSearchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C20B2B820CA10DE001BAC90 /* ConversationSearchViewController.swift */; };
4C21D5D6223A9DC500EF8A77 /* UIAlerts+iOS9.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C21D5D5223A9DC500EF8A77 /* UIAlerts+iOS9.m */; };
4C23A5F2215C4ADE00534937 /* SheetViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C23A5F1215C4ADE00534937 /* SheetViewController.swift */; };
4C2F454F214C00E1004871FF /* AvatarTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4C2F454E214C00E1004871FF /* AvatarTableViewCell.swift */; };
4C3E245C21F29FCE000AE092 /* Toast.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CA5F792211E1F06008C2708 /* Toast.swift */; };
@ -1223,6 +1224,7 @@
4C1D233A218B6CDB00A0598F /* th */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = th; path = translations/th.lproj/Localizable.strings; sourceTree = "<group>"; };
4C1D233B218B6D3100A0598F /* tr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = tr; path = translations/tr.lproj/Localizable.strings; sourceTree = "<group>"; };
4C20B2B820CA10DE001BAC90 /* ConversationSearchViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConversationSearchViewController.swift; sourceTree = "<group>"; };
4C21D5D5223A9DC500EF8A77 /* UIAlerts+iOS9.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "UIAlerts+iOS9.m"; sourceTree = "<group>"; };
4C23A5F1215C4ADE00534937 /* SheetViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SheetViewController.swift; sourceTree = "<group>"; };
4C2F454E214C00E1004871FF /* AvatarTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AvatarTableViewCell.swift; sourceTree = "<group>"; };
4C3EF7FC2107DDEE0007EBF7 /* ParamParserTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ParamParserTest.swift; sourceTree = "<group>"; };
@ -2664,6 +2666,7 @@
FCFA64B11A24F29E0007FB87 /* UI Categories */ = {
isa = PBXGroup;
children = (
4C21D5D5223A9DC500EF8A77 /* UIAlerts+iOS9.m */,
45C0DC1A1E68FE9000E04C47 /* UIApplication+OWS.swift */,
45C0DC1D1E69011F00E04C47 /* UIStoryboard+OWS.swift */,
EF764C331DB67CC5000D9A87 /* UIViewController+Permissions.h */,
@ -3677,6 +3680,7 @@
34D1F0841F8678AA0066283D /* ConversationInputToolbar.m in Sources */,
457F671B20746193000EABCD /* QuotedReplyPreview.swift in Sources */,
34A6C28021E503E700B5B12E /* OWSImagePickerController.swift in Sources */,
4C21D5D6223A9DC500EF8A77 /* UIAlerts+iOS9.m in Sources */,
34DBF004206BD5A500025978 /* OWSBubbleView.m in Sources */,
3496957021A301A100DCFE74 /* OWSBackupIO.m in Sources */,
34E88D262098C5AE00A608F4 /* ContactViewController.swift in Sources */,

View File

@ -0,0 +1,85 @@
//
// Copyright (c) 2019 Open Whisper Systems. All rights reserved.
//
#import <objc/runtime.h>
@implementation UIAlertController (iOS9)
+ (void)load {
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
// On iOS9, avoids an exception when presenting an alert controller.
//
// *** Assertion failure in -[UIAlertController supportedInterfaceOrientations], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3512.30.14/UIAlertController.m:542
// Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'UIAlertController:supportedInterfaceOrientations was invoked recursively!'
//
// I'm not sure when this was introduced, or the exact root casue, but this quick workaround
// seems reasonable given the small size of our iOS9 userbase.
if (@available(iOS 10, *)) {
return;
}
Class class = [self class];
// supportedInterfaceOrientation
SEL originalOrientationSelector = @selector(supportedInterfaceOrientations);
SEL swizzledOrientationSelector = @selector(ows_iOS9Alerts_swizzle_supportedInterfaceOrientation);
Method originalOrientationMethod = class_getInstanceMethod(class, originalOrientationSelector);
Method swizzledOrientationMethod = class_getInstanceMethod(class, swizzledOrientationSelector);
BOOL didAddOrientationMethod = class_addMethod(class,
originalOrientationSelector,
method_getImplementation(swizzledOrientationMethod),
method_getTypeEncoding(swizzledOrientationMethod));
if (didAddOrientationMethod) {
class_replaceMethod(class,
swizzledOrientationSelector,
method_getImplementation(originalOrientationMethod),
method_getTypeEncoding(originalOrientationMethod));
} else {
method_exchangeImplementations(originalOrientationMethod, swizzledOrientationMethod);
}
// shouldAutorotate
SEL originalAutorotateSelector = @selector(shouldAutorotate);
SEL swizzledAutorotateSelector = @selector(ows_iOS9Alerts_swizzle_shouldAutorotate);
Method originalAutorotateMethod = class_getInstanceMethod(class, originalAutorotateSelector);
Method swizzledAutorotateMethod = class_getInstanceMethod(class, swizzledAutorotateSelector);
BOOL didAddAutorotateMethod = class_addMethod(class,
originalAutorotateSelector,
method_getImplementation(swizzledAutorotateMethod),
method_getTypeEncoding(swizzledAutorotateMethod));
if (didAddAutorotateMethod) {
class_replaceMethod(class,
swizzledAutorotateSelector,
method_getImplementation(originalAutorotateMethod),
method_getTypeEncoding(originalAutorotateMethod));
} else {
method_exchangeImplementations(originalAutorotateMethod, swizzledAutorotateMethod);
}
});
}
#pragma mark - Method Swizzling
- (UIInterfaceOrientationMask)ows_iOS9Alerts_swizzle_supportedInterfaceOrientation
{
OWSLogInfo(@"swizzled");
return UIInterfaceOrientationMaskAllButUpsideDown;
}
- (BOOL)ows_iOS9Alerts_swizzle_shouldAutorotate
{
OWSLogInfo(@"swizzled");
return NO;
}
@end

View File

@ -113,7 +113,9 @@ extension UserNotificationPresenterAdaptee: NotificationPresenterAdaptee {
content.categoryIdentifier = category.identifier
content.userInfo = userInfo
let isAppActive = UIApplication.shared.applicationState == .active
content.sound = sound?.notificationSound(isQuiet: isAppActive)
if let sound = sound, sound != OWSSound.none {
content.sound = sound.notificationSound(isQuiet: isAppActive)
}
var notificationIdentifier: String = UUID().uuidString
if let replacingIdentifier = replacingIdentifier {

View File

@ -1533,7 +1533,7 @@
"ONBOARDING_PERMISSIONS_TITLE" = "Signal can let you know when you get a message (and who it is from)";
/* Title of the 'onboarding phone number' view. */
"ONBOARDING_PHONE_NUMBER_TITLE" = "Enter your phone number to get started";
"ONBOARDING_PHONE_NUMBER_TITLE" = "Začněte zadáním telefoního čísla";
/* Label indicating that the phone number is invalid in the 'onboarding phone number' view. */
"ONBOARDING_PHONE_NUMBER_VALIDATION_WARNING" = "Neplatné číslo";
@ -1545,7 +1545,7 @@
"ONBOARDING_PROFILE_NAME_PLACEHOLDER" = "Your Name";
/* Title of the 'onboarding profile' view. */
"ONBOARDING_PROFILE_TITLE" = "Set up your profile";
"ONBOARDING_PROFILE_TITLE" = "Nastavit váš profil";
/* Link to the 'terms and privacy policy' in the 'onboarding splash' view. */
"ONBOARDING_SPLASH_TERM_AND_PRIVACY_POLICY" = "Smluvní podmínky a zásady ochrany osobních údajů";

View File

@ -1057,7 +1057,7 @@
"HOME_VIEW_CONVERSATION_SEARCHBAR_PLACEHOLDER" = "Suchen";
/* Format string for a label offering to start a new conversation with your contacts, if you have 1 Signal contact. Embeds: {{The name of 1 of your Signal contacts}}. */
"HOME_VIEW_FIRST_CONVERSATION_OFFER_1_CONTACT_FORMAT" = "Einige deiner Kontakte sind bereits bei Signal, darunter %@.";
"HOME_VIEW_FIRST_CONVERSATION_OFFER_1_CONTACT_FORMAT" = "Einige deiner Kontakte sind bereits bei Signal, darunter %@";
/* Format string for a label offering to start a new conversation with your contacts, if you have 2 Signal contacts. Embeds: {{The names of 2 of your Signal contacts}}. */
"HOME_VIEW_FIRST_CONVERSATION_OFFER_2_CONTACTS_FORMAT" = "Einige deiner Kontakte sind bereits bei Signal, darunter %@ und %@";
@ -1102,7 +1102,7 @@
"IN_CALL_CONNECTING" = "Verbinden …";
/* Call setup status label */
"IN_CALL_RECONNECTING" = "Verbindung wird wiederhergestellt …";
"IN_CALL_RECONNECTING" = "Neu verbinden …";
/* Call setup status label */
"IN_CALL_RINGING" = "Klingeln …";
@ -1503,7 +1503,7 @@
"NOTIFICATIONS_SHOW" = "Anzeigen";
/* No comment provided by engineer. */
"OK" = "O. K.";
"OK" = "Okay";
/* The first explanation in the 'onboarding 2FA' view. */
"ONBOARDING_2FA_EXPLANATION_1" = "Für diese Rufnummer ist eine Registrierungssperre aktiviert. Bitte gib die PIN für die Registrierungssperre ein.";

View File

@ -1533,7 +1533,7 @@
"ONBOARDING_PERMISSIONS_TITLE" = "Signal can let you know when you get a message (and who it is from)";
/* Title of the 'onboarding phone number' view. */
"ONBOARDING_PHONE_NUMBER_TITLE" = "Enter your phone number to get started";
"ONBOARDING_PHONE_NUMBER_TITLE" = "Sisesta alustamiseks oma telefoninumber";
/* Label indicating that the phone number is invalid in the 'onboarding phone number' view. */
"ONBOARDING_PHONE_NUMBER_VALIDATION_WARNING" = "Vigane number";
@ -1545,7 +1545,7 @@
"ONBOARDING_PROFILE_NAME_PLACEHOLDER" = "Your Name";
/* Title of the 'onboarding profile' view. */
"ONBOARDING_PROFILE_TITLE" = "Set up your profile";
"ONBOARDING_PROFILE_TITLE" = "Seadista oma profiil";
/* Link to the 'terms and privacy policy' in the 'onboarding splash' view. */
"ONBOARDING_SPLASH_TERM_AND_PRIVACY_POLICY" = "Tingimused ja privaatsuspoliitika";

View File

@ -1048,7 +1048,7 @@
"GROUP_YOU_LEFT" = "Elhagytad a csoportot.";
/* Label for 'archived conversations' button. */
"HOME_VIEW_ARCHIVED_CONVERSATIONS" = "Archived Conversations";
"HOME_VIEW_ARCHIVED_CONVERSATIONS" = "Archív beszélgetések";
/* Table cell subtitle label for a conversation the user has blocked. */
"HOME_VIEW_BLOCKED_CONVERSATION" = "Letiltva";
@ -1114,7 +1114,7 @@
"IN_CALL_TERMINATED" = "Hívás vége";
/* Label reminding the user that they are in archive mode. */
"INBOX_VIEW_ARCHIVE_MODE_REMINDER" = "These conversations are archived and will only appear in the Inbox if new messages are received.";
"INBOX_VIEW_ARCHIVE_MODE_REMINDER" = "Ezek a beszélgetések archiválva vannak, ezért csak akkor jelennek meg újra a bejövő üzenet közt, ha újabb üzenet érkezik.";
/* Message shown in the home view when the inbox is empty. */
"INBOX_VIEW_EMPTY_INBOX" = "Dobj a postaládádba valamit, hogy ne legyen olyan magányos! Láss hozzá, és üzenj egy barátodnak!";

View File

@ -1533,7 +1533,7 @@
"ONBOARDING_PERMISSIONS_TITLE" = "Signal can let you know when you get a message (and who it is from)";
/* Title of the 'onboarding phone number' view. */
"ONBOARDING_PHONE_NUMBER_TITLE" = "Enter your phone number to get started";
"ONBOARDING_PHONE_NUMBER_TITLE" = "Skriv inn telefonnummeret ditt for å komme i gang";
/* Label indicating that the phone number is invalid in the 'onboarding phone number' view. */
"ONBOARDING_PHONE_NUMBER_VALIDATION_WARNING" = "Ugyldig nummer";

View File

@ -1057,16 +1057,16 @@
"HOME_VIEW_CONVERSATION_SEARCHBAR_PLACEHOLDER" = "Buscar";
/* Format string for a label offering to start a new conversation with your contacts, if you have 1 Signal contact. Embeds: {{The name of 1 of your Signal contacts}}. */
"HOME_VIEW_FIRST_CONVERSATION_OFFER_1_CONTACT_FORMAT" = "Some of your contacts are already on Signal, including %@.";
"HOME_VIEW_FIRST_CONVERSATION_OFFER_1_CONTACT_FORMAT" = "Alguns dos seus contatos já estão no Signal, inclusive %@.";
/* Format string for a label offering to start a new conversation with your contacts, if you have 2 Signal contacts. Embeds: {{The names of 2 of your Signal contacts}}. */
"HOME_VIEW_FIRST_CONVERSATION_OFFER_2_CONTACTS_FORMAT" = "Some of your contacts are already on Signal, including %@ and %@";
"HOME_VIEW_FIRST_CONVERSATION_OFFER_2_CONTACTS_FORMAT" = "Alguns dos seus contatos já estão no Signal, inclusive %@ e %@";
/* Format string for a label offering to start a new conversation with your contacts, if you have at least 3 Signal contacts. Embeds: {{The names of 3 of your Signal contacts}}. */
"HOME_VIEW_FIRST_CONVERSATION_OFFER_3_CONTACTS_FORMAT" = "Some of your contacts are already on Signal, including %@, %@ and %@";
"HOME_VIEW_FIRST_CONVERSATION_OFFER_3_CONTACTS_FORMAT" = "Alguns dos seus contatos já estão no Signal, inclusive %@, %@ e %@";
/* A label offering to start a new conversation with your contacts, if you have no Signal contacts. */
"HOME_VIEW_FIRST_CONVERSATION_OFFER_NO_CONTACTS" = "Start your first conversation here.";
"HOME_VIEW_FIRST_CONVERSATION_OFFER_NO_CONTACTS" = "Inicie sua primeira conversa aqui.";
/* Format string when search returns no results. Embeds {{search term}} */
"HOME_VIEW_SEARCH_NO_RESULTS_FORMAT" = "Nenhum resultado encontrado para '%@'";
@ -1087,10 +1087,10 @@
"IMAGE_EDITOR_RESET_BUTTON" = "Reiniciar";
/* Label for button that rotates image 45 degrees. */
"IMAGE_EDITOR_ROTATE_45_BUTTON" = "Rotate 45°";
"IMAGE_EDITOR_ROTATE_45_BUTTON" = "Girar 45°";
/* Label for button that rotates image 90 degrees. */
"IMAGE_EDITOR_ROTATE_90_BUTTON" = "Rotate 90°";
"IMAGE_EDITOR_ROTATE_90_BUTTON" = "Girar 90°";
/* Momentarily shown to the user when attempting to select more images than is allowed. Embeds {{max number of items}} that can be shared. */
"IMAGE_PICKER_CAN_SELECT_NO_MORE_TOAST_FORMAT" = "Você não pode compartilhar mais de %@ itens.";
@ -1509,82 +1509,82 @@
"ONBOARDING_2FA_EXPLANATION_1" = "Este número de telefone está com o Bloqueio de Cadastro ativo. Por favor, insira o PIN de Desbloqueio de Cadastro.";
/* The first explanation in the 'onboarding 2FA' view. */
"ONBOARDING_2FA_EXPLANATION_2" = "Your Registration Lock PIN is separate from the automated verification code that was sent to your phone during the last step.";
"ONBOARDING_2FA_EXPLANATION_2" = "Seu PIN de Bloqueio de Cadastro é diferente do código de verificação automático que foi enviado para o seu celular na última etapa.";
/* Label for the 'forgot 2FA PIN' link in the 'onboarding 2FA' view. */
"ONBOARDING_2FA_FORGOT_PIN_LINK" = "I forgot my PIN";
"ONBOARDING_2FA_FORGOT_PIN_LINK" = "Esqueci meu PIN";
/* Title of the 'onboarding 2FA' view. */
"ONBOARDING_2FA_TITLE" = "Bloqueio de Cadastro";
/* Title of the 'onboarding Captcha' view. */
"ONBOARDING_CAPTCHA_TITLE" = "Add a touch of humanity to your messages";
"ONBOARDING_CAPTCHA_TITLE" = "Adicione um toque de humanidade às suas mensagens";
/* Label for the 'give access' button in the 'onboarding permissions' view. */
"ONBOARDING_PERMISSIONS_ENABLE_PERMISSIONS_BUTTON" = "Enable Permissions";
"ONBOARDING_PERMISSIONS_ENABLE_PERMISSIONS_BUTTON" = "Habilitar permissões";
/* Explanation in the 'onboarding permissions' view. */
"ONBOARDING_PERMISSIONS_EXPLANATION" = "Your contact information is always transmitted securely.";
"ONBOARDING_PERMISSIONS_EXPLANATION" = "As suas informações de contato são sempre transmitidas com segurança.";
/* Label for the 'not now' button in the 'onboarding permissions' view. */
"ONBOARDING_PERMISSIONS_NOT_NOW_BUTTON" = "Agora Não";
/* Title of the 'onboarding permissions' view. */
"ONBOARDING_PERMISSIONS_TITLE" = "Signal can let you know when you get a message (and who it is from)";
"ONBOARDING_PERMISSIONS_TITLE" = "O Signal pode avisar quando você receber uma mensagem (e quem a mandou)";
/* Title of the 'onboarding phone number' view. */
"ONBOARDING_PHONE_NUMBER_TITLE" = "Enter your phone number to get started";
"ONBOARDING_PHONE_NUMBER_TITLE" = "Insira seu número de telefone para começar";
/* Label indicating that the phone number is invalid in the 'onboarding phone number' view. */
"ONBOARDING_PHONE_NUMBER_VALIDATION_WARNING" = "Número inválido";
/* Explanation in the 'onboarding profile' view. */
"ONBOARDING_PROFILE_EXPLANATION" = "Signal profiles are end-to-end encrypted and the Signal service never has access to this information.";
"ONBOARDING_PROFILE_EXPLANATION" = "Os perfis do Signal são criptografados de ponta a ponta, e o Signal jamais tem acesso a estas informações.";
/* Placeholder text for the profile name in the 'onboarding profile' view. */
"ONBOARDING_PROFILE_NAME_PLACEHOLDER" = "Your Name";
"ONBOARDING_PROFILE_NAME_PLACEHOLDER" = "Seu nome";
/* Title of the 'onboarding profile' view. */
"ONBOARDING_PROFILE_TITLE" = "Set up your profile";
"ONBOARDING_PROFILE_TITLE" = "Crie seu perfil";
/* Link to the 'terms and privacy policy' in the 'onboarding splash' view. */
"ONBOARDING_SPLASH_TERM_AND_PRIVACY_POLICY" = "Termos & Política de Privacidade";
/* Title of the 'onboarding splash' view. */
"ONBOARDING_SPLASH_TITLE" = "Take privacy with you.\nBe yourself in every message.";
"ONBOARDING_SPLASH_TITLE" = "Leve a privacidade consigo.\nSeja você em cada mensagem.";
/* Label for the link that lets users change their phone number in the onboarding views. */
"ONBOARDING_VERIFICATION_BACK_LINK" = "Número errado?";
/* Format for the label of the 'sent code' label of the 'onboarding verification' view. Embeds {{the time until the code can be resent}}. */
"ONBOARDING_VERIFICATION_CODE_COUNTDOWN_FORMAT" = "I didn't get a code (available in %@)";
"ONBOARDING_VERIFICATION_CODE_COUNTDOWN_FORMAT" = "Não recebi um código (disponível em %@)";
/* Label indicating that the verification code is incorrect in the 'onboarding verification' view. */
"ONBOARDING_VERIFICATION_INVALID_CODE" = "This code is incorrect";
"ONBOARDING_VERIFICATION_INVALID_CODE" = "O código está incorreto";
/* Label for link that can be used when the original code did not arrive. */
"ONBOARDING_VERIFICATION_ORIGINAL_CODE_MISSING_LINK" = "I didn't get a code";
"ONBOARDING_VERIFICATION_ORIGINAL_CODE_MISSING_LINK" = "Não recebi um código";
/* Message for the 'resend code' alert in the 'onboarding verification' view. */
"ONBOARDING_VERIFICATION_RESEND_CODE_ALERT_MESSAGE" = "Please ensure that you have cellular service and can receive SMS messages.";
"ONBOARDING_VERIFICATION_RESEND_CODE_ALERT_MESSAGE" = "Por favor, verifique se o seu celular está com sinal e pode receber mensagens de SMS.";
/* Title for the 'resend code' alert in the 'onboarding verification' view. */
"ONBOARDING_VERIFICATION_RESEND_CODE_ALERT_TITLE" = "No code?";
"ONBOARDING_VERIFICATION_RESEND_CODE_ALERT_TITLE" = "Nada de código?";
/* Label for the 'resend code by SMS' button in the 'onboarding verification' view. */
"ONBOARDING_VERIFICATION_RESEND_CODE_BY_SMS_BUTTON" = "Resend code";
"ONBOARDING_VERIFICATION_RESEND_CODE_BY_SMS_BUTTON" = "Reenviar código";
/* Label for the 'resend code by voice' button in the 'onboarding verification' view. */
"ONBOARDING_VERIFICATION_RESEND_CODE_BY_VOICE_BUTTON" = "Ligue para mim";
/* Label for link that can be used when the resent code did not arrive. */
"ONBOARDING_VERIFICATION_RESENT_CODE_MISSING_LINK" = "Still no code?";
"ONBOARDING_VERIFICATION_RESENT_CODE_MISSING_LINK" = "Ainda nada de código?";
/* Format for the title of the 'onboarding verification' view. Embeds {{the user's phone number}}. */
"ONBOARDING_VERIFICATION_TITLE_DEFAULT_FORMAT" = "Enter the code we sent to %@";
"ONBOARDING_VERIFICATION_TITLE_DEFAULT_FORMAT" = "Insira o código que enviamos para %@";
/* Format for the title of the 'onboarding verification' view after the verification code has been resent. Embeds {{the user's phone number}}. */
"ONBOARDING_VERIFICATION_TITLE_RESENT_FORMAT" = "We just resent a code to %@";
"ONBOARDING_VERIFICATION_TITLE_RESENT_FORMAT" = "Acabamos de reenviar um código para %@";
/* Button text which opens the settings app */
"OPEN_SETTINGS_BUTTON" = "Configurações";
@ -2412,7 +2412,7 @@
"UNKNOWN_CONTACT_NAME" = "Contato Desconhecido";
/* Label for unknown countries. */
"UNKNOWN_COUNTRY_NAME" = "Unknown Country";
"UNKNOWN_COUNTRY_NAME" = "País desconhecido";
/* Indicates an unknown or unrecognizable value. */
"UNKNOWN_VALUE" = "Desconhecida/o";

View File

@ -1114,7 +1114,7 @@
"IN_CALL_TERMINATED" = "Končan klic.";
/* Label reminding the user that they are in archive mode. */
"INBOX_VIEW_ARCHIVE_MODE_REMINDER" = "These conversations are archived and will only appear in the Inbox if new messages are received.";
"INBOX_VIEW_ARCHIVE_MODE_REMINDER" = "Ti pogovori so premaknjeni v arhiv in se bodo znova pojavili v nabiralniku samo, če prejmete novo sporočilo.";
/* Message shown in the home view when the inbox is empty. */
"INBOX_VIEW_EMPTY_INBOX" = "Vaš poštni nabiralnik je lačen nove pošte. ;-) Začnite s sporočilom prijatelju!";