Copione merged onto master

master
blallo 2020-09-10 00:00:39 +02:00
commit e0878c5d90
129 changed files with 1789 additions and 740 deletions

View File

@ -80,8 +80,8 @@ protobuf {
}
}
def canonicalVersionCode = 704
def canonicalVersionName = "4.71.1"
def canonicalVersionCode = 705
def canonicalVersionName = "4.71.2"
def postFixSize = 10
def abiPostFix = ['universal' : 0,
@ -122,7 +122,7 @@ android {
buildConfigField "String", "CONTENT_PROXY_HOST", "\"contentproxy.signal.org\""
buildConfigField "int", "CONTENT_PROXY_PORT", "443"
buildConfigField "String", "SIGNAL_AGENT", "\"OWA\""
buildConfigField "String", "CDS_MRENCLAVE", "\"a3bfdf9717e35ce4f6fd3888133d65a71a880cd6a26c41d1e47647ed3e7704fa\""
buildConfigField "String", "CDS_MRENCLAVE", "\"c98e00a4e3ff977a56afefe7362a27e4961e4f19e211febfbb19b897e6b80b15\""
buildConfigField "String", "KBS_ENCLAVE_NAME", "\"fe7c1bfae98f9b073d220366ea31163ee82f6d04bead774f71ca8e5c40847bfe\""
buildConfigField "String", "KBS_SERVICE_ID", "\"fe7c1bfae98f9b073d220366ea31163ee82f6d04bead774f71ca8e5c40847bfe\""
buildConfigField "String", "KBS_MRENCLAVE", "\"a3baab19ef6ce6f34ab9ebb25ba722725ae44a8872dc0ff08ad6d83a9489de87\""

View File

@ -523,6 +523,11 @@
<activity android:name=".groups.ui.chooseadmin.ChooseNewAdminActivity"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize|uiMode"/>
<activity android:name=".megaphone.ClientDeprecatedActivity"
android:theme="@style/Theme.Signal.DayNight.NoActionBar"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize|uiMode"
android:launchMode="singleTask" />
<service android:enabled="true" android:name="org.thoughtcrime.securesms.service.WebRtcCallService"/>
<service android:enabled="true" android:name=".service.ApplicationMigrationService"/>
<service android:enabled="true" android:exported="false" android:name=".service.KeyCachingService"/>

View File

@ -96,9 +96,7 @@ public class APNGParser {
}
}
} catch (IOException e) {
if (!(e instanceof FormatException)) {
e.printStackTrace();
}
return false;
}
return false;
}

View File

@ -48,6 +48,7 @@ import org.thoughtcrime.securesms.jobs.MultiDeviceContactUpdateJob;
import org.thoughtcrime.securesms.jobs.PushNotificationReceiveJob;
import org.thoughtcrime.securesms.jobs.RefreshPreKeysJob;
import org.thoughtcrime.securesms.jobs.RetrieveProfileJob;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.logging.AndroidLogger;
import org.thoughtcrime.securesms.logging.CustomSignalProtocolLogger;
import org.thoughtcrime.securesms.logging.Log;
@ -70,6 +71,7 @@ import org.thoughtcrime.securesms.service.UpdateApkRefreshListener;
import org.thoughtcrime.securesms.storage.StorageSyncHelper;
import org.thoughtcrime.securesms.util.FeatureFlags;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
import org.thoughtcrime.securesms.util.Util;
import org.thoughtcrime.securesms.util.concurrent.SignalExecutors;
import org.thoughtcrime.securesms.util.dynamiclanguage.DynamicLanguageContextWrapper;
import org.webrtc.voiceengine.WebRtcAudioManager;
@ -157,6 +159,7 @@ public class ApplicationContext extends MultiDexApplication implements DefaultLi
KeyCachingService.onAppForegrounded(this);
ApplicationDependencies.getFrameRateTracker().begin();
ApplicationDependencies.getMegaphoneRepository().onAppForegrounded();
checkBuildExpiration();
}
@Override
@ -192,6 +195,13 @@ public class ApplicationContext extends MultiDexApplication implements DefaultLi
return persistentLogger;
}
public void checkBuildExpiration() {
if (Util.getTimeUntilBuildExpiry() <= 0 && !SignalStore.misc().isClientDeprecated()) {
Log.w(TAG, "Build expired!");
SignalStore.misc().markClientDeprecated();
}
}
private void initializeSecurityProvider() {
try {
Class.forName("org.signal.aesgcmprovider.AesGcmCipher");

View File

@ -2,16 +2,25 @@ package org.thoughtcrime.securesms.components.reminder;
import android.content.Context;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.util.PlayStoreUtil;
import org.thoughtcrime.securesms.util.Util;
import androidx.annotation.NonNull;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.util.PlayStoreUtil;
import java.util.List;
/**
* Showed when a build has fully expired (either via the compile-time constant, or remote
* deprecation).
*/
public class ExpiredBuildReminder extends Reminder {
public ExpiredBuildReminder(final Context context) {
super(context.getString(R.string.reminder_header_expired_build),
context.getString(R.string.reminder_header_expired_build_details));
super(null, context.getString(R.string.ExpiredBuildReminder_this_version_of_signal_has_expired));
setOkListener(v -> PlayStoreUtil.openPlayStoreOrOurApkDownloadPage(context));
addAction(new Action(context.getString(R.string.ExpiredBuildReminder_update_now), R.id.reminder_action_update_now));
}
@Override
@ -19,8 +28,17 @@ public class ExpiredBuildReminder extends Reminder {
return false;
}
public static boolean isEligible() {
return Util.getDaysTillBuildExpiry() <= 0;
@Override
public List<Action> getActions() {
return super.getActions();
}
@Override
public @NonNull Importance getImportance() {
return Importance.TERMINAL;
}
public static boolean isEligible() {
return SignalStore.misc().isClientDeprecated();
}
}

View File

@ -6,20 +6,24 @@ import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.util.PlayStoreUtil;
import org.thoughtcrime.securesms.util.Util;
import java.util.concurrent.TimeUnit;
/**
* Reminder that is shown when a build is getting close to expiry (either because of the
* compile-time constant, or remote deprecation).
*/
public class OutdatedBuildReminder extends Reminder {
public OutdatedBuildReminder(final Context context) {
super(context.getString(R.string.reminder_header_outdated_build),
getPluralsText(context));
super(null, getPluralsText(context));
setOkListener(v -> PlayStoreUtil.openPlayStoreOrOurApkDownloadPage(context));
addAction(new Action(context.getString(R.string.OutdatedBuildReminder_update_now), R.id.reminder_action_update_now));
}
private static CharSequence getPluralsText(final Context context) {
int days = Util.getDaysTillBuildExpiry() - 1;
if (days == 0) {
return context.getString(R.string.reminder_header_outdated_build_details_today);
}
return context.getResources().getQuantityString(R.plurals.reminder_header_outdated_build_details, days, days);
int days = getDaysUntilExpiry() - 1;
return context.getResources().getQuantityString(R.plurals.OutdatedBuildReminder_your_version_of_signal_will_expire_in_n_days, days, days);
}
@Override
@ -28,7 +32,10 @@ public class OutdatedBuildReminder extends Reminder {
}
public static boolean isEligible() {
return Util.getDaysTillBuildExpiry() <= 10;
return getDaysUntilExpiry() <= 10;
}
private static int getDaysUntilExpiry() {
return (int) TimeUnit.MILLISECONDS.toDays(Util.getTimeUntilBuildExpiry());
}
}

View File

@ -58,7 +58,7 @@ public abstract class Reminder {
return Importance.NORMAL;
}
public void addAction(@NonNull Action action) {
protected void addAction(@NonNull Action action) {
actions.add(action);
}
@ -71,7 +71,7 @@ public abstract class Reminder {
}
public enum Importance {
NORMAL, ERROR
NORMAL, ERROR, TERMINAL
}
public final class Action {

View File

@ -1,8 +1,6 @@
package org.thoughtcrime.securesms.components.reminder;
import android.annotation.TargetApi;
import android.content.Context;
import android.os.Build.VERSION_CODES;
import android.text.TextUtils;
import android.util.AttributeSet;
import android.view.LayoutInflater;
@ -19,7 +17,6 @@ import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.util.ViewUtil;
import java.util.List;
@ -48,7 +45,6 @@ public final class ReminderView extends FrameLayout {
initialize();
}
@TargetApi(VERSION_CODES.HONEYCOMB)
public ReminderView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
initialize();
@ -56,14 +52,14 @@ public final class ReminderView extends FrameLayout {
private void initialize() {
LayoutInflater.from(getContext()).inflate(R.layout.reminder_header, this, true);
progressBar = ViewUtil.findById(this, R.id.reminder_progress);
progressText = ViewUtil.findById(this, R.id.reminder_progress_text);
container = ViewUtil.findById(this, R.id.container);
closeButton = ViewUtil.findById(this, R.id.cancel);
title = ViewUtil.findById(this, R.id.reminder_title);
text = ViewUtil.findById(this, R.id.reminder_text);
space = ViewUtil.findById(this, R.id.reminder_space);
actionsRecycler = ViewUtil.findById(this, R.id.reminder_actions);
progressBar = findViewById(R.id.reminder_progress);
progressText = findViewById(R.id.reminder_progress_text);
container = findViewById(R.id.container);
closeButton = findViewById(R.id.cancel);
title = findViewById(R.id.reminder_title);
text = findViewById(R.id.reminder_text);
space = findViewById(R.id.reminder_space);
actionsRecycler = findViewById(R.id.reminder_actions);
}
public void showReminder(final Reminder reminder) {
@ -76,9 +72,26 @@ public final class ReminderView extends FrameLayout {
title.setVisibility(GONE);
space.setVisibility(VISIBLE);
}
if (!reminder.isDismissable()) {
space.setVisibility(GONE);
}
text.setText(reminder.getText());
container.setBackgroundResource(reminder.getImportance() == Reminder.Importance.ERROR ? R.drawable.reminder_background_error
: R.drawable.reminder_background_normal);
switch (reminder.getImportance()) {
case NORMAL:
container.setBackgroundResource(R.drawable.reminder_background_normal);
break;
case ERROR:
container.setBackgroundResource(R.drawable.reminder_background_error);
break;
case TERMINAL:
container.setBackgroundResource(R.drawable.reminder_background_terminal);
break;
default:
throw new IllegalStateException();
}
setOnClickListener(reminder.getOkListener());

View File

@ -98,12 +98,12 @@ public class PictureInPictureGestureHelper extends GestureDetector.SimpleOnGestu
}
public void clearVerticalBoundaries() {
setVerticalBoundaries(0, parent.getMeasuredHeight());
setVerticalBoundaries(parent.getTop(), parent.getMeasuredHeight() + parent.getTop());
}
public void setVerticalBoundaries(int topBoundary, int bottomBoundary) {
extraPaddingTop = topBoundary;
extraPaddingBottom = parent.getMeasuredHeight() - bottomBoundary;
extraPaddingTop = topBoundary - parent.getTop();
extraPaddingBottom = parent.getMeasuredHeight() + parent.getTop() - bottomBoundary;
if (isAnimating) {
fling();

View File

@ -216,6 +216,8 @@ public class DirectoryHelper {
return;
}
Stopwatch stopwatch = new Stopwatch("refresh");
DirectoryResult result;
if (FeatureFlags.cds()) {
@ -224,6 +226,8 @@ public class DirectoryHelper {
result = ContactDiscoveryV1.getDirectoryResult(databaseNumbers, systemNumbers);
}
stopwatch.split("network");
if (result.getNumberRewrites().size() > 0) {
Log.i(TAG, "[getDirectoryResult] Need to rewrite some numbers.");
recipientDatabase.updatePhoneNumbers(result.getNumberRewrites());
@ -238,10 +242,16 @@ public class DirectoryHelper {
.map(recipientDatabase::getOrInsertFromE164)
.collect(Collectors.toSet());
stopwatch.split("process-cds");
recipientDatabase.bulkUpdatedRegisteredStatus(uuidMap, inactiveIds);
stopwatch.split("update-registered");
updateContactsDatabase(context, activeIds, true, result.getNumberRewrites());
stopwatch.split("contacts-db");
if (TextSecurePreferences.isMultiDevice(context)) {
ApplicationDependencies.getJobManager().add(new MultiDeviceContactUpdateJob());
}
@ -258,6 +268,8 @@ public class DirectoryHelper {
} else {
TextSecurePreferences.setHasSuccessfullyRetrievedDirectory(context, true);
}
stopwatch.stop(TAG);
}

View File

@ -240,6 +240,7 @@ import org.thoughtcrime.securesms.util.FeatureFlags;
import org.thoughtcrime.securesms.util.IdentityUtil;
import org.thoughtcrime.securesms.util.MediaUtil;
import org.thoughtcrime.securesms.util.MessageUtil;
import org.thoughtcrime.securesms.util.PlayStoreUtil;
import org.thoughtcrime.securesms.util.ServiceUtil;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
import org.thoughtcrime.securesms.util.TextSecurePreferences.MediaKeyboardMode;
@ -1685,6 +1686,7 @@ public class ConversationActivity extends PassphraseRequiredActivity
reminderView.get().showReminder(new UnauthorizedReminder(this));
} else if (ExpiredBuildReminder.isEligible()) {
reminderView.get().showReminder(new ExpiredBuildReminder(this));
reminderView.get().setOnActionClickListener(this::handleReminderAction);
} else if (ServiceOutageReminder.isEligible(this)) {
ApplicationDependencies.getJobManager().add(new ServiceOutageDetectionJob());
reminderView.get().showReminder(new ServiceOutageReminder(this));
@ -1710,6 +1712,9 @@ public class ConversationActivity extends PassphraseRequiredActivity
case R.id.reminder_action_view_insights:
InsightsLauncher.showInsightsDashboard(getSupportFragmentManager());
break;
case R.id.reminder_action_update_now:
PlayStoreUtil.openPlayStoreOrOurApkDownloadPage(this);
break;
default:
throw new IllegalArgumentException("Unknown ID: " + reminderActionId);
}

View File

@ -56,6 +56,7 @@ import androidx.appcompat.widget.TooltipCompat;
import androidx.core.content.res.ResourcesCompat;
import androidx.core.view.ViewCompat;
import androidx.lifecycle.DefaultLifecycleObserver;
import androidx.lifecycle.LifecycleObserver;
import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.ProcessLifecycleOwner;
import androidx.lifecycle.ViewModelProviders;
@ -117,6 +118,7 @@ import org.thoughtcrime.securesms.service.KeyCachingService;
import org.thoughtcrime.securesms.sms.MessageSender;
import org.thoughtcrime.securesms.storage.StorageSyncHelper;
import org.thoughtcrime.securesms.util.AvatarUtil;
import org.thoughtcrime.securesms.util.PlayStoreUtil;
import org.thoughtcrime.securesms.util.ServiceUtil;
import org.thoughtcrime.securesms.util.SnapToTopDataObserver;
import org.thoughtcrime.securesms.util.StickyHeaderDecoration;
@ -176,6 +178,7 @@ public class ConversationListFragment extends MainFragment implements ActionMode
private ViewGroup megaphoneContainer;
private SnapToTopDataObserver snapToTopDataObserver;
private Drawable archiveDrawable;
private LifecycleObserver visibilityLifecycleObserver;
public static ConversationListFragment newInstance() {
return new ConversationListFragment();
@ -214,6 +217,7 @@ public class ConversationListFragment extends MainFragment implements ActionMode
cameraFab.show();
reminderView.setOnDismissListener(this::updateReminders);
reminderView.setOnActionClickListener(this::onReminderAction);
list.setLayoutManager(new LinearLayoutManager(requireActivity()));
list.setItemAnimator(new DeleteItemAnimator());
@ -272,6 +276,7 @@ public class ConversationListFragment extends MainFragment implements ActionMode
public void onStart() {
super.onStart();
ConversationFragment.prepare(requireContext());
ProcessLifecycleOwner.get().getLifecycle().addObserver(visibilityLifecycleObserver);
}
@Override
@ -283,6 +288,12 @@ public class ConversationListFragment extends MainFragment implements ActionMode
EventBus.getDefault().unregister(this);
}
@Override
public void onStop() {
super.onStop();
ProcessLifecycleOwner.get().getLifecycle().removeObserver(visibilityLifecycleObserver);
}
@Override
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
menu.clear();
@ -412,6 +423,12 @@ public class ConversationListFragment extends MainFragment implements ActionMode
viewModel.onMegaphoneCompleted(event);
}
private void onReminderAction(@IdRes int reminderActionId) {
if (reminderActionId == R.id.reminder_action_update_now) {
PlayStoreUtil.openPlayStoreOrOurApkDownloadPage(requireContext());
}
}
private void hideKeyboard() {
InputMethodManager imm = ServiceUtil.getInputMethodManager(requireContext());
imm.hideSoftInputFromWindow(requireView().getWindowToken(), 0);
@ -508,12 +525,12 @@ public class ConversationListFragment extends MainFragment implements ActionMode
viewModel.getConversationList().observe(getViewLifecycleOwner(), this::onSubmitList);
viewModel.hasNoConversations().observe(getViewLifecycleOwner(), this::updateEmptyState);
ProcessLifecycleOwner.get().getLifecycle().addObserver(new DefaultLifecycleObserver() {
visibilityLifecycleObserver = new DefaultLifecycleObserver() {
@Override
public void onStart(@NonNull LifecycleOwner owner) {
viewModel.onVisible();
}
});
};
}
private void onSearchResultChanged(@Nullable SearchResult result) {

View File

@ -15,6 +15,7 @@ import com.google.android.gms.common.util.ArrayUtils;
import net.sqlcipher.database.SQLiteConstraintException;
import net.sqlcipher.database.SQLiteDatabase;
import org.signal.storageservice.protos.groups.local.DecryptedGroup;
import org.signal.zkgroup.InvalidInputException;
import org.signal.zkgroup.groups.GroupMasterKey;
import org.signal.zkgroup.profiles.ProfileKey;
@ -28,8 +29,9 @@ import org.thoughtcrime.securesms.database.model.ThreadRecord;
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.groups.GroupId;
import org.thoughtcrime.securesms.groups.v2.ProfileKeySet;
import org.thoughtcrime.securesms.groups.v2.processing.GroupsV2StateProcessor;
import org.thoughtcrime.securesms.jobs.RefreshAttributesJob;
import org.thoughtcrime.securesms.jobs.WakeGroupV2Job;
import org.thoughtcrime.securesms.jobs.RequestGroupV2InfoJob;
import org.thoughtcrime.securesms.logging.Log;
import org.thoughtcrime.securesms.profiles.AvatarHelper;
import org.thoughtcrime.securesms.profiles.ProfileName;
@ -860,7 +862,17 @@ public class RecipientDatabase extends Database {
GroupId.V2 groupId = GroupId.v2(insert.getMasterKey());
Recipient recipient = Recipient.externalGroup(context, groupId);
ApplicationDependencies.getJobManager().add(new WakeGroupV2Job(insert.getMasterKey()));
Log.i(TAG, "Creating restore placeholder for " + groupId);
DatabaseFactory.getGroupDatabase(context)
.create(insert.getMasterKey(),
DecryptedGroup.newBuilder()
.setRevision(GroupsV2StateProcessor.RESTORE_PLACEHOLDER_REVISION)
.build());
Log.i(TAG, "Scheduling request for latest group info for " + groupId);
ApplicationDependencies.getJobManager().add(new RequestGroupV2InfoJob(groupId));
threadDatabase.setArchived(recipient.getId(), insert.isArchived());
needsRefresh.add(recipient.getId());

View File

@ -24,6 +24,7 @@ import org.thoughtcrime.securesms.mms.DecryptableStreamUriLoader.DecryptableUri;
import org.thoughtcrime.securesms.stickers.BlessedPacks;
import org.thoughtcrime.securesms.stickers.StickerPackInstallEvent;
import org.thoughtcrime.securesms.util.CursorUtil;
import org.thoughtcrime.securesms.util.SqlUtil;
import org.thoughtcrime.securesms.util.Util;
import java.io.Closeable;
@ -105,6 +106,12 @@ public class StickerDatabase extends Database {
contentValues.put(FILE_RANDOM, fileInfo.getRandom());
long id = databaseHelper.getWritableDatabase().insert(TABLE_NAME, null, contentValues);
if (id == -1) {
String selection = PACK_ID + " = ? AND " + STICKER_ID + " = ? AND " + COVER + " = ?";
String[] args = SqlUtil.buildArgs(sticker.getPackId(), sticker.getStickerId(), (sticker.isCover() ? 1 : 0));
id = databaseHelper.getWritableDatabase().update(TABLE_NAME, contentValues, selection, args);
}
if (id > 0) {
notifyStickerListeners();

View File

@ -21,8 +21,9 @@ final class GroupStateMapper {
private static final String TAG = Log.tag(GroupStateMapper.class);
static final int LATEST = Integer.MAX_VALUE;
static final int PLACEHOLDER_REVISION = -1;
static final int LATEST = Integer.MAX_VALUE;
static final int PLACEHOLDER_REVISION = -1;
static final int RESTORE_PLACEHOLDER_REVISION = -2;
private static final Comparator<ServerGroupLogEntry> BY_REVISION = (o1, o2) -> Integer.compare(o1.getRevision(), o2.getRevision());

View File

@ -65,9 +65,20 @@ public final class GroupsV2StateProcessor {
private static final String TAG = Log.tag(GroupsV2StateProcessor.class);
public static final int LATEST = GroupStateMapper.LATEST;
public static final int LATEST = GroupStateMapper.LATEST;
/**
* Used to mark a group state as a placeholder when there is partial knowledge (title and avater)
* gathered from a group join link.
*/
public static final int PLACEHOLDER_REVISION = GroupStateMapper.PLACEHOLDER_REVISION;
/**
* Used to mark a group state as a placeholder when you have no knowledge at all of the group
* e.g. from a group master key from a storage service restore.
*/
public static final int RESTORE_PLACEHOLDER_REVISION = GroupStateMapper.RESTORE_PLACEHOLDER_REVISION;
private final Context context;
private final JobManager jobManager;
private final RecipientDatabase recipientDatabase;
@ -176,7 +187,8 @@ public final class GroupsV2StateProcessor {
if (inputGroupState == null) {
try {
inputGroupState = queryServer(localState, revision == LATEST && localState == null);
boolean latestRevisionOnly = revision == LATEST && (localState == null || localState.getRevision() == GroupsV2StateProcessor.RESTORE_PLACEHOLDER_REVISION);
inputGroupState = queryServer(localState, latestRevisionOnly);
} catch (GroupNotAMemberException e) {
if (localState != null && signedGroupChange != null) {
try {
@ -212,7 +224,12 @@ public final class GroupsV2StateProcessor {
updateLocalDatabaseGroupState(inputGroupState, newLocalState);
determineProfileSharing(inputGroupState, newLocalState);
insertUpdateMessages(timestamp, advanceGroupStateResult.getProcessedLogEntries());
if (localState != null && localState.getRevision() == GroupsV2StateProcessor.RESTORE_PLACEHOLDER_REVISION) {
Log.i(TAG, "Inserting single update message for restore placeholder");
insertUpdateMessages(timestamp, Collections.singleton(new LocalGroupLogEntry(newLocalState, null)));
} else {
insertUpdateMessages(timestamp, advanceGroupStateResult.getProcessedLogEntries());
}
persistLearnedProfileKeys(inputGroupState);
GlobalGroupState remainingWork = advanceGroupStateResult.getNewGlobalGroupState();

View File

@ -101,7 +101,6 @@ public final class JobManagerFactories {
put(StorageAccountRestoreJob.KEY, new StorageAccountRestoreJob.Factory());
put(RequestGroupV2InfoWorkerJob.KEY, new RequestGroupV2InfoWorkerJob.Factory());
put(RequestGroupV2InfoJob.KEY, new RequestGroupV2InfoJob.Factory());
put(WakeGroupV2Job.KEY, new WakeGroupV2Job.Factory());
put(GroupV2UpdateSelfProfileKeyJob.KEY, new GroupV2UpdateSelfProfileKeyJob.Factory());
put(RetrieveProfileAvatarJob.KEY, new RetrieveProfileAvatarJob.Factory());
put(RetrieveProfileJob.KEY, new RetrieveProfileJob.Factory());
@ -153,6 +152,7 @@ public final class JobManagerFactories {
put("Argon2TestJob", new FailingJob.Factory());
put("Argon2TestMigrationJob", new PassingMigrationJob.Factory());
put("StorageKeyRotationMigrationJob", new PassingMigrationJob.Factory());
put("WakeGroupV2Job", new FailingJob.Factory());
}};
}

View File

@ -8,9 +8,8 @@ import org.thoughtcrime.securesms.attachments.Attachment;
import org.thoughtcrime.securesms.database.AttachmentDatabase;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.jobmanager.Job;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.logging.Log;
import org.thoughtcrime.securesms.mms.MediaConstraints;
import org.thoughtcrime.securesms.transport.UndeliverableMessageException;
import org.thoughtcrime.securesms.util.Util;
import java.util.List;
@ -26,7 +25,7 @@ public abstract class SendJob extends BaseJob {
@Override
public final void onRun() throws Exception {
if (Util.getDaysTillBuildExpiry() <= 0) {
if (SignalStore.misc().isClientDeprecated()) {
throw new TextSecureExpiredException(String.format("TextSecure expired (build %d, now %d)",
BuildConfig.BUILD_TIMESTAMP,
System.currentTimeMillis()));

View File

@ -5,15 +5,18 @@ import androidx.annotation.NonNull;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.StickerDatabase;
import org.thoughtcrime.securesms.database.model.IncomingSticker;
import org.thoughtcrime.securesms.database.model.StickerRecord;
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.jobmanager.Data;
import org.thoughtcrime.securesms.jobmanager.Job;
import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint;
import org.thoughtcrime.securesms.logging.Log;
import org.thoughtcrime.securesms.mms.PartAuthority;
import org.thoughtcrime.securesms.util.Hex;
import org.whispersystems.signalservice.api.SignalServiceMessageReceiver;
import org.whispersystems.signalservice.api.push.exceptions.PushNetworkException;
import java.io.FileNotFoundException;
import java.io.InputStream;
import java.util.concurrent.TimeUnit;
@ -76,9 +79,16 @@ public class StickerDownloadJob extends BaseJob {
protected void onRun() throws Exception {
StickerDatabase db = DatabaseFactory.getStickerDatabase(context);
if (db.getSticker(sticker.getPackId(), sticker.getStickerId(), sticker.isCover()) != null) {
Log.w(TAG, "Sticker already downloaded.");
return;
StickerRecord stickerRecord = db.getSticker(sticker.getPackId(), sticker.getStickerId(), sticker.isCover());
if (stickerRecord != null) {
try (InputStream stream = PartAuthority.getAttachmentStream(context, stickerRecord.getUri())) {
if (stream != null) {
Log.w(TAG, "Sticker already downloaded.");
return;
}
} catch (FileNotFoundException e) {
Log.w(TAG, "Sticker file no longer exists, downloading again.");
}
}
if (!db.isPackInstalled(sticker.getPackId()) && !sticker.isCover()) {

View File

@ -1,134 +0,0 @@
package org.thoughtcrime.securesms.jobs;
import androidx.annotation.NonNull;
import org.signal.zkgroup.InvalidInputException;
import org.signal.zkgroup.groups.GroupMasterKey;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.GroupDatabase;
import org.thoughtcrime.securesms.database.MessageDatabase;
import org.thoughtcrime.securesms.database.model.databaseprotos.DecryptedGroupV2Context;
import org.thoughtcrime.securesms.groups.GroupChangeBusyException;
import org.thoughtcrime.securesms.groups.GroupId;
import org.thoughtcrime.securesms.groups.GroupManager;
import org.thoughtcrime.securesms.groups.GroupNotAMemberException;
import org.thoughtcrime.securesms.groups.GroupProtoUtil;
import org.thoughtcrime.securesms.groups.v2.processing.GroupsV2StateProcessor;
import org.thoughtcrime.securesms.jobmanager.Data;
import org.thoughtcrime.securesms.jobmanager.Job;
import org.thoughtcrime.securesms.jobmanager.impl.NetworkConstraint;
import org.thoughtcrime.securesms.logging.Log;
import org.thoughtcrime.securesms.mms.MmsException;
import org.thoughtcrime.securesms.mms.OutgoingGroupUpdateMessage;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.util.Hex;
import org.whispersystems.libsignal.util.guava.Optional;
import org.whispersystems.signalservice.api.groupsv2.NoCredentialForRedemptionTimeException;
import org.whispersystems.signalservice.api.push.exceptions.PushNetworkException;
import java.io.IOException;
import java.util.Collections;
import java.util.concurrent.TimeUnit;
/**
* Use to create and show a thread for an unknown GV2 group.
*/
public final class WakeGroupV2Job extends BaseJob {
public static final String KEY = "WakeGroupV2Job";
private static final String TAG = Log.tag(WakeGroupV2Job.class);
private static final String KEY_GROUP_MASTER_KEY = "group_id";
private final GroupMasterKey groupMasterKey;
public WakeGroupV2Job(@NonNull GroupMasterKey groupMasterKey) {
this(new Parameters.Builder()
.setQueue("RequestGroupV2InfoJob::" + GroupId.v2(groupMasterKey))
.addConstraint(NetworkConstraint.KEY)
.setLifespan(TimeUnit.DAYS.toMillis(1))
.setMaxAttempts(Parameters.UNLIMITED)
.build(),
groupMasterKey);
}
private WakeGroupV2Job(@NonNull Parameters parameters, @NonNull GroupMasterKey groupMasterKey) {
super(parameters);
this.groupMasterKey = groupMasterKey;
}
@Override
public @NonNull Data serialize() {
return new Data.Builder().putString(KEY_GROUP_MASTER_KEY, Hex.toStringCondensed(groupMasterKey.serialize()))
.build();
}
@Override
public @NonNull String getFactoryKey() {
return KEY;
}
@Override
public void onRun() throws IOException, GroupNotAMemberException, GroupChangeBusyException {
Log.i(TAG, "Waking group");
GroupDatabase groupDatabase = DatabaseFactory.getGroupDatabase(context);
GroupId.V2 groupId = GroupId.v2(groupMasterKey);
if (groupDatabase.findGroup(groupId)) {
Log.w(TAG, "Group already exists " + groupId);
return;
} else {
GroupManager.updateGroupFromServer(context, groupMasterKey, GroupsV2StateProcessor.LATEST, System.currentTimeMillis(), null);
Log.i(TAG, "Group created " + groupId);
}
Optional<GroupDatabase.GroupRecord> group = groupDatabase.getGroup(groupId);
if (!group.isPresent()) {
Log.w(TAG, "Failed to create group from server " + groupId);
return;
}
Log.i(TAG, "Waking group " + groupId);
try {
Recipient groupRecipient = Recipient.externalGroup(context, groupId);
long threadId = DatabaseFactory.getThreadDatabase(context).getThreadIdFor(groupRecipient);
GroupDatabase.V2GroupProperties v2GroupProperties = group.get().requireV2GroupProperties();
DecryptedGroupV2Context decryptedGroupV2Context = GroupProtoUtil.createDecryptedGroupV2Context(v2GroupProperties.getGroupMasterKey(), v2GroupProperties.getDecryptedGroup(), null, null);
MessageDatabase mmsDatabase = DatabaseFactory.getMmsDatabase(context);
OutgoingGroupUpdateMessage outgoingMessage = new OutgoingGroupUpdateMessage(groupRecipient, decryptedGroupV2Context, null, System.currentTimeMillis(), 0, false, null, Collections.emptyList(), Collections.emptyList(), Collections.emptyList());
long messageId = mmsDatabase.insertMessageOutbox(outgoingMessage, threadId, false, null);
mmsDatabase.markAsSent(messageId, true);
} catch (MmsException e) {
Log.w(TAG, e);
}
}
@Override
public boolean onShouldRetry(@NonNull Exception e) {
return e instanceof PushNetworkException ||
e instanceof NoCredentialForRedemptionTimeException ||
e instanceof GroupChangeBusyException;
}
@Override
public void onFailure() {
}
public static final class Factory implements Job.Factory<WakeGroupV2Job> {
@Override
public @NonNull WakeGroupV2Job create(@NonNull Parameters parameters, @NonNull Data data) {
try {
return new WakeGroupV2Job(parameters,
new GroupMasterKey(Hex.fromStringCondensed(data.getString(KEY_GROUP_MASTER_KEY))));
} catch (InvalidInputException | IOException e) {
throw new AssertionError(e);
}
}
}
}

View File

@ -8,6 +8,7 @@ public final class MiscellaneousValues extends SignalStoreValues {
private static final String MESSAGE_REQUEST_ENABLE_TIME = "message_request_enable_time";
private static final String LAST_PROFILE_REFRESH_TIME = "misc.last_profile_refresh_time";
private static final String USERNAME_SHOW_REMINDER = "username.show.reminder";
private static final String CLIENT_DEPRECATED = "misc.client_deprecated";
MiscellaneousValues(@NonNull KeyValueStore store) {
super(store);
@ -45,4 +46,16 @@ public final class MiscellaneousValues extends SignalStoreValues {
public boolean shouldShowUsernameReminder() {
return getBoolean(USERNAME_SHOW_REMINDER, true);
}
public boolean isClientDeprecated() {
return getBoolean(CLIENT_DEPRECATED, false);
}
public void markClientDeprecated() {
putBoolean(CLIENT_DEPRECATED, true);
}
public void clearClientDeprecated() {
putBoolean(CLIENT_DEPRECATED, false);
}
}

View File

@ -17,6 +17,7 @@ import com.google.android.collect.Sets;
import org.thoughtcrime.securesms.logging.Log;
import org.thoughtcrime.securesms.stickers.StickerUrl;
import org.thoughtcrime.securesms.util.DateUtils;
import org.thoughtcrime.securesms.util.Util;
import org.whispersystems.libsignal.util.guava.Optional;
import org.whispersystems.signalservice.api.util.OptionalUtil;
@ -203,18 +204,11 @@ public final class LinkPreviewUtil {
@SuppressLint("ObsoleteSdkInt")
public long getDate() {
SimpleDateFormat format;
if (Build.VERSION.SDK_INT == 0 || Build.VERSION.SDK_INT >= 24) {
format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX", Locale.getDefault());
} else {
format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ", Locale.getDefault());
}
return Stream.of(values.get(KEY_PUBLISHED_TIME_1),
values.get(KEY_PUBLISHED_TIME_2),
values.get(KEY_MODIFIED_TIME_1),
values.get(KEY_MODIFIED_TIME_2))
.map(dateString -> parseDate(format, dateString))
.map(DateUtils::parseIso8601)
.filter(time -> time > 0)
.findFirst()
.orElse(0L);
@ -223,19 +217,6 @@ public final class LinkPreviewUtil {
public @NonNull Optional<String> getDescription() {
return OptionalUtil.absentIfEmpty(values.get(KEY_DESCRIPTION_URL));
}
private static long parseDate(DateFormat dateFormat, String dateString) {
if (Util.isEmpty(dateString)) {
return 0;
}
try {
return dateFormat.parse(dateString).getTime();
} catch (ParseException e) {
Log.w(TAG, "Failed to parse date.", e);
return 0;
}
}
}
public interface HtmlDecoder {

View File

@ -0,0 +1,62 @@
package org.thoughtcrime.securesms.megaphone;
import android.os.Bundle;
import androidx.appcompat.app.AlertDialog;
import org.thoughtcrime.securesms.PassphraseRequiredActivity;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.util.DynamicNoActionBarTheme;
import org.thoughtcrime.securesms.util.DynamicTheme;
import org.thoughtcrime.securesms.util.PlayStoreUtil;
import org.thoughtcrime.securesms.util.Util;
/**
* Shown when a users build fully expires. Controlled by {@link Megaphones.Event#CLIENT_DEPRECATED}.
*/
public class ClientDeprecatedActivity extends PassphraseRequiredActivity {
private final DynamicTheme theme = new DynamicNoActionBarTheme();
@Override
protected void onCreate(Bundle savedInstanceState, boolean ready) {
setContentView(R.layout.client_deprecated_activity);
findViewById(R.id.client_deprecated_update_button).setOnClickListener(v -> onUpdateClicked());
findViewById(R.id.client_deprecated_dont_update_button).setOnClickListener(v -> onDontUpdateClicked());
}
@Override
protected void onPreCreate() {
theme.onCreate(this);
}
@Override
protected void onResume() {
super.onResume();
theme.onResume(this);
}
@Override
public void onBackPressed() {
// Disabled
}
private void onUpdateClicked() {
PlayStoreUtil.openPlayStoreOrOurApkDownloadPage(this);
}
private void onDontUpdateClicked() {
new AlertDialog.Builder(this)
.setTitle(R.string.ClientDeprecatedActivity_warning)
.setMessage(R.string.ClientDeprecatedActivity_your_version_of_signal_has_expired_you_can_view_your_message_history)
.setPositiveButton(R.string.ClientDeprecatedActivity_dont_update, (dialog, which) -> {
ApplicationDependencies.getMegaphoneRepository().markFinished(Megaphones.Event.CLIENT_DEPRECATED, () -> {
Util.runOnMain(this::finish);
});
})
.setNegativeButton(android.R.string.cancel, (dialog, which) -> dialog.dismiss())
.show();
}
}

View File

@ -20,7 +20,7 @@ public class Megaphone {
private final Event event;
private final Style style;
private final boolean mandatory;
private final Priority priority;
private final boolean canSnooze;
private final int titleRes;
private final int bodyRes;
@ -33,7 +33,7 @@ public class Megaphone {
private Megaphone(@NonNull Builder builder) {
this.event = builder.event;
this.style = builder.style;
this.mandatory = builder.mandatory;
this.priority = builder.priority;
this.canSnooze = builder.canSnooze;
this.titleRes = builder.titleRes;
this.bodyRes = builder.bodyRes;
@ -48,8 +48,8 @@ public class Megaphone {
return event;
}
public boolean isMandatory() {
return mandatory;
public @NonNull Priority getPriority() {
return priority;
}
public boolean canSnooze() {
@ -97,7 +97,7 @@ public class Megaphone {
private final Event event;
private final Style style;
private boolean mandatory;
private Priority priority;
private boolean canSnooze;
private int titleRes;
private int bodyRes;
@ -111,13 +111,14 @@ public class Megaphone {
public Builder(@NonNull Event event, @NonNull Style style) {
this.event = event;
this.style = style;
this.priority = Priority.DEFAULT;
}
/**
* Prioritizes this megaphone over others that do not set this flag.
*/
public @NonNull Builder setMandatory(boolean mandatory) {
this.mandatory = mandatory;
public @NonNull Builder setPriority(@NonNull Priority priority) {
this.priority = priority;
return this;
}
@ -192,6 +193,20 @@ public class Megaphone {
POPUP
}
enum Priority {
DEFAULT(0), HIGH(1), CLIENT_EXPIRATION(1000);
int priorityValue;
Priority(int priorityValue) {
this.priorityValue = priorityValue;
}
public int getPriorityValue() {
return priorityValue;
}
}
public interface EventListener {
void onEvent(@NonNull Megaphone megaphone, @NonNull MegaphoneActionController listener);
}

View File

@ -5,6 +5,7 @@ import android.content.Context;
import androidx.annotation.AnyThread;
import androidx.annotation.MainThread;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.WorkerThread;
import com.annimon.stream.Collectors;
@ -100,6 +101,11 @@ public class MegaphoneRepository {
@AnyThread
public void markFinished(@NonNull Event event) {
markFinished(event, null);
}
@AnyThread
public void markFinished(@NonNull Event event, @Nullable Runnable onComplete) {
executor.execute(() -> {
MegaphoneRecord record = databaseCache.get(event);
if (record != null && record.isFinished()) {
@ -108,6 +114,10 @@ public class MegaphoneRepository {
database.markFinished(event);
resetDatabaseCache();
if (onComplete != null) {
onComplete.run();
}
});
}

View File

@ -34,12 +34,12 @@ import java.util.Objects;
* Creating a new megaphone:
* - Add an enum to {@link Event}
* - Return a megaphone in {@link #forRecord(Context, MegaphoneRecord)}
* - Include the event in {@link #buildDisplayOrder()}
* - Include the event in {@link #buildDisplayOrder(Context)}
*
* Common patterns:
* - For events that have a snooze-able recurring display schedule, use a {@link RecurringSchedule}.
* - For events guarded by feature flags, set a {@link ForeverSchedule} with false in
* {@link #buildDisplayOrder()}.
* {@link #buildDisplayOrder(Context)}.
* - For events that change, return different megaphones in {@link #forRecord(Context, MegaphoneRecord)}
* based on whatever properties you're interested in.
*/
@ -65,15 +65,9 @@ public final class Megaphones {
.map(Map.Entry::getKey)
.map(records::get)
.map(record -> Megaphones.forRecord(context, record))
.sortBy(m -> -m.getPriority().getPriorityValue())
.toList();
boolean hasOptional = Stream.of(megaphones).anyMatch(m -> !m.isMandatory());
boolean hasMandatory = Stream.of(megaphones).anyMatch(Megaphone::isMandatory);
if (hasOptional && hasMandatory) {
megaphones = Stream.of(megaphones).filter(Megaphone::isMandatory).toList();
}
if (megaphones.size() > 0) {
return megaphones.get(0);
} else {
@ -93,6 +87,7 @@ public final class Megaphones {
put(Event.MESSAGE_REQUESTS, shouldShowMessageRequestsMegaphone() ? ALWAYS : NEVER);
put(Event.MENTIONS, shouldShowMentionsMegaphone() ? ALWAYS : NEVER);
put(Event.LINK_PREVIEWS, shouldShowLinkPreviewsMegaphone(context) ? ALWAYS : NEVER);
put(Event.CLIENT_DEPRECATED, SignalStore.misc().isClientDeprecated() ? ALWAYS : NEVER);
}};
}
@ -110,6 +105,8 @@ public final class Megaphones {
return buildMentionsMegaphone();
case LINK_PREVIEWS:
return buildLinkPreviewsMegaphone();
case CLIENT_DEPRECATED:
return buildClientDeprecatedMegaphone(context);
default:
throw new IllegalArgumentException("Event not handled!");
}
@ -117,14 +114,14 @@ public final class Megaphones {
private static @NonNull Megaphone buildReactionsMegaphone() {
return new Megaphone.Builder(Event.REACTIONS, Megaphone.Style.REACTIONS)
.setMandatory(false)
.setPriority(Megaphone.Priority.DEFAULT)
.build();
}
private static @NonNull Megaphone buildPinsForAllMegaphone(@NonNull MegaphoneRecord record) {
if (PinsForAllSchedule.shouldDisplayFullScreen(record.getFirstVisible(), System.currentTimeMillis())) {
return new Megaphone.Builder(Event.PINS_FOR_ALL, Megaphone.Style.FULLSCREEN)
.setMandatory(true)
.setPriority(Megaphone.Priority.HIGH)
.enableSnooze(null)
.setOnVisibleListener((megaphone, listener) -> {
if (new NetworkConstraint.Factory(ApplicationDependencies.getApplication()).create().isMet()) {
@ -134,7 +131,7 @@ public final class Megaphones {
.build();
} else {
return new Megaphone.Builder(Event.PINS_FOR_ALL, Megaphone.Style.BASIC)
.setMandatory(true)
.setPriority(Megaphone.Priority.HIGH)
.setImage(R.drawable.kbs_pin_megaphone)
.setTitle(R.string.KbsMegaphone__create_a_pin)
.setBody(R.string.KbsMegaphone__pins_keep_information_thats_stored_with_signal_encrytped)
@ -184,7 +181,7 @@ public final class Megaphones {
private static @NonNull Megaphone buildMessageRequestsMegaphone(@NonNull Context context) {
return new Megaphone.Builder(Event.MESSAGE_REQUESTS, Megaphone.Style.FULLSCREEN)
.disableSnooze()
.setMandatory(true)
.setPriority(Megaphone.Priority.HIGH)
.setOnVisibleListener(((megaphone, listener) -> {
listener.onMegaphoneNavigationRequested(new Intent(context, MessageRequestMegaphoneActivity.class),
ConversationListFragment.MESSAGE_REQUESTS_REQUEST_CODE_CREATE_NAME);
@ -202,7 +199,17 @@ public final class Megaphones {
private static @NonNull Megaphone buildLinkPreviewsMegaphone() {
return new Megaphone.Builder(Event.LINK_PREVIEWS, Megaphone.Style.LINK_PREVIEWS)
.setMandatory(true)
.setPriority(Megaphone.Priority.HIGH)
.build();
}
private static @NonNull Megaphone buildClientDeprecatedMegaphone(@NonNull Context context) {
return new Megaphone.Builder(Event.CLIENT_DEPRECATED, Megaphone.Style.FULLSCREEN)
.disableSnooze()
.setPriority(Megaphone.Priority.HIGH)
.setOnVisibleListener((megaphone, listener) -> {
listener.onMegaphoneNavigationRequested(new Intent(context, ClientDeprecatedActivity.class));
})
.build();
}
@ -224,7 +231,8 @@ public final class Megaphones {
PIN_REMINDER("pin_reminder"),
MESSAGE_REQUESTS("message_requests"),
MENTIONS("mentions"),
LINK_PREVIEWS("link_previews");
LINK_PREVIEWS("link_previews"),
CLIENT_DEPRECATED("client_deprecated");
private final String key;

View File

@ -75,6 +75,7 @@ public class ApplicationMigrations {
if (!isUpdate(context)) {
Log.d(TAG, "Not an update. Skipping.");
VersionTracker.updateLastSeenVersion(context);
return;
}

View File

@ -0,0 +1,41 @@
package org.thoughtcrime.securesms.net;
import androidx.annotation.NonNull;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.logging.Log;
import org.whispersystems.signalservice.api.push.exceptions.DeprecatedVersionException;
import java.io.IOException;
import okhttp3.Interceptor;
import okhttp3.MediaType;
import okhttp3.Protocol;
import okhttp3.Response;
import okhttp3.ResponseBody;
/**
* Disallows network requests when your client has been deprecated. When the client is deprecated,
* we simply fake a 499 response.
*/
public final class DeprecatedClientPreventionInterceptor implements Interceptor {
private static final String TAG = Log.tag(DeprecatedClientPreventionInterceptor.class);
@Override
public @NonNull Response intercept(@NonNull Chain chain) throws IOException {
if (SignalStore.misc().isClientDeprecated()) {
Log.w(TAG, "Preventing request because client is deprecated.");
return new Response.Builder()
.request(chain.request())
.protocol(Protocol.HTTP_1_1)
.receivedResponseAtMillis(System.currentTimeMillis())
.message("")
.body(ResponseBody.create(null, ""))
.code(499)
.build();
} else {
return chain.proceed(chain.request());
}
}
}

View File

@ -0,0 +1,31 @@
package org.thoughtcrime.securesms.net;
import androidx.annotation.NonNull;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.logging.Log;
import java.io.IOException;
import okhttp3.Interceptor;
import okhttp3.Response;
/**
* Marks the client as remotely-deprecated when it receives a 499 response.
*/
public final class RemoteDeprecationDetectorInterceptor implements Interceptor {
private static final String TAG = Log.tag(RemoteDeprecationDetectorInterceptor.class);
@Override
public @NonNull Response intercept(@NonNull Chain chain) throws IOException {
Response response = chain.proceed(chain.request());
if (response.code() == 499 && !SignalStore.misc().isClientDeprecated()) {
Log.w(TAG, "Received 499. Client version is deprecated.");
SignalStore.misc().markClientDeprecated();
}
return response;
}
}

View File

@ -10,6 +10,6 @@ import org.thoughtcrime.securesms.BuildConfig;
public class StandardUserAgentInterceptor extends UserAgentInterceptor {
public StandardUserAgentInterceptor() {
super("Signal-Android " + BuildConfig.VERSION_NAME + " (API " + Build.VERSION.SDK_INT + ")");
super("Signal-Android/" + BuildConfig.VERSION_NAME + " Android/" + Build.VERSION.SDK_INT);
}
}

View File

@ -7,6 +7,8 @@ import androidx.annotation.Nullable;
import org.thoughtcrime.securesms.BuildConfig;
import org.thoughtcrime.securesms.net.CustomDns;
import org.thoughtcrime.securesms.net.RemoteDeprecationDetectorInterceptor;
import org.thoughtcrime.securesms.net.DeprecatedClientPreventionInterceptor;
import org.thoughtcrime.securesms.net.SequentialDns;
import org.thoughtcrime.securesms.net.StandardUserAgentInterceptor;
import org.thoughtcrime.securesms.util.Base64;
@ -21,6 +23,7 @@ import org.whispersystems.signalservice.internal.configuration.SignalServiceUrl;
import org.whispersystems.signalservice.internal.configuration.SignalStorageUrl;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
@ -161,7 +164,7 @@ public class SignalServiceNetworkAccess {
final SignalStorageUrl omanGoogleStorage = new SignalStorageUrl("https://www.google.com.om/storage", SERVICE_REFLECTOR_HOST, trustStore, GMAIL_CONNECTION_SPEC);
final SignalStorageUrl qatarGoogleStorage = new SignalStorageUrl("https://www.google.com.qa/storage", SERVICE_REFLECTOR_HOST, trustStore, GMAIL_CONNECTION_SPEC);
final List<Interceptor> interceptors = Collections.singletonList(new StandardUserAgentInterceptor());
final List<Interceptor> interceptors = Arrays.asList(new StandardUserAgentInterceptor(), new RemoteDeprecationDetectorInterceptor(), new DeprecatedClientPreventionInterceptor());
final Optional<Dns> dns = Optional.of(DNS);
final byte[] zkGroupServerPublicParams;

View File

@ -13,7 +13,7 @@ import java.util.concurrent.TimeUnit;
public class DirectoryRefreshListener extends PersistentAlarmManagerListener {
private static final long INTERVAL = TimeUnit.HOURS.toMillis(6);
private static final long INTERVAL = TimeUnit.HOURS.toMillis(24);
@Override
protected long getNextScheduledExecutionTime(Context context) {

View File

@ -16,13 +16,18 @@
*/
package org.thoughtcrime.securesms.util;
import android.annotation.SuppressLint;
import android.content.Context;
import android.os.Build;
import android.text.format.DateFormat;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.logging.Log;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
@ -170,4 +175,33 @@ public class DateUtils extends android.text.format.DateUtils {
private static String getLocalizedPattern(String template, Locale locale) {
return DateFormat.getBestDateTimePattern(locale, template);
}
/**
* e.g. 2020-09-04T19:17:51Z
* https://www.iso.org/iso-8601-date-and-time-format.html
*
* Note: SDK_INT == 0 check needed to pass unit tests due to JVM date parser differences.
*
* @return The timestamp if able to be parsed, otherwise -1.
*/
@SuppressLint("ObsoleteSdkInt")
public static long parseIso8601(@Nullable String date) {
SimpleDateFormat format;
if (Build.VERSION.SDK_INT == 0 || Build.VERSION.SDK_INT >= 24) {
format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX", Locale.getDefault());
} else {
format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZ", Locale.getDefault());
}
if (Util.isEmpty(date)) {
return -1;
}
try {
return format.parse(date).getTime();
} catch (ParseException e) {
Log.w(TAG, "Failed to parse date.", e);
return -1;
}
}
}

View File

@ -64,6 +64,7 @@ public final class FeatureFlags {
private static final String MENTIONS = "android.mentions";
private static final String VERIFY_V2 = "android.verifyV2";
private static final String PHONE_NUMBER_PRIVACY_VERSION = "android.phoneNumberPrivacyVersion";
private static final String CLIENT_EXPIRATION = "android.clientExpiration";
/**
* We will only store remote values for flags in this set. If you want a flag to be controllable
@ -82,7 +83,8 @@ public final class FeatureFlags {
INTERNAL_USER,
USERNAMES,
MENTIONS,
VERIFY_V2
VERIFY_V2,
CLIENT_EXPIRATION
);
/**
@ -107,7 +109,8 @@ public final class FeatureFlags {
GROUPS_V2_CREATE_VERSION,
GROUPS_V2_JOIN_VERSION,
VERIFY_V2,
CDS_VERSION
CDS_VERSION,
CLIENT_EXPIRATION
);
/**
@ -280,6 +283,11 @@ public final class FeatureFlags {
return getBoolean(VERIFY_V2, false);
}
/** The raw client expiration JSON string. */
public static String clientExpiration() {
return getString(CLIENT_EXPIRATION, null);
}
/**
* Whether the user can choose phone number privacy settings, and;
* Whether to fetch and store the secondary certificate
@ -463,6 +471,20 @@ public final class FeatureFlags {
return defaultValue;
}
private static String getString(@NonNull String key, String defaultValue) {
String forced = (String) FORCED_VALUES.get(key);
if (forced != null) {
return forced;
}
Object remote = REMOTE_VALUES.get(key);
if (remote instanceof String) {
return (String) remote;
}
return defaultValue;
}
private static Map<String, Object> parseStoredConfig(String stored) {
Map<String, Object> parsed = new HashMap<>();
@ -511,14 +533,11 @@ public final class FeatureFlags {
}
}
private static final class MissingFlagRequirementError extends Error {
}
@VisibleForTesting
static final class UpdateResult {
private final Map<String, Object> memory;
private final Map<String, Object> disk;
private final Map<String, Change> memoryChanges;
private final Map<String, Change> memoryChanges;
UpdateResult(@NonNull Map<String, Object> memory, @NonNull Map<String, Object> disk, @NonNull Map<String, Change> memoryChanges) {
this.memory = memory;

View File

@ -0,0 +1,89 @@
package org.thoughtcrime.securesms.util;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.VisibleForTesting;
import com.annimon.stream.Stream;
import com.fasterxml.jackson.annotation.JsonProperty;
import org.thoughtcrime.securesms.BuildConfig;
import org.thoughtcrime.securesms.logging.Log;
import java.io.IOException;
import java.util.Objects;
import java.util.concurrent.TimeUnit;
public final class RemoteDeprecation {
private static final String TAG = Log.tag(RemoteDeprecation.class);
private RemoteDeprecation() { }
/**
* @return The amount of time (in milliseconds) until this client version expires, or -1 if
* there's no pending expiration.
*/
public static long getTimeUntilDeprecation() {
return getTimeUntilDeprecation(FeatureFlags.clientExpiration(), System.currentTimeMillis(), BuildConfig.VERSION_NAME);
}
/**
* @return The amount of time (in milliseconds) until this client version expires, or -1 if
* there's no pending expiration.
*/
@VisibleForTesting
static long getTimeUntilDeprecation(String json, long currentTime, @NonNull String currentVersion) {
if (Util.isEmpty(json)) {
return -1;
}
try {
SemanticVersion ourVersion = Objects.requireNonNull(SemanticVersion.parse(currentVersion));
ClientExpiration[] expirations = JsonUtils.fromJson(json, ClientExpiration[].class);
ClientExpiration expiration = Stream.of(expirations)
.filter(c -> c.getVersion() != null && c.getExpiration() != -1)
.filter(c -> c.requireVersion().compareTo(ourVersion) > 0)
.sortBy(ClientExpiration::getExpiration)
.findFirst()
.orElse(null);
if (expiration != null) {
return Math.max(expiration.getExpiration() - currentTime, 0);
}
} catch (IOException e) {
Log.w(TAG, e);
}
return -1;
}
private static final class ClientExpiration {
@JsonProperty
private final String minVersion;
@JsonProperty
private final String iso8601;
ClientExpiration(@Nullable @JsonProperty("minVersion") String minVersion,
@Nullable @JsonProperty("iso8601") String iso8601)
{
this.minVersion = minVersion;
this.iso8601 = iso8601;
}
public @Nullable SemanticVersion getVersion() {
return SemanticVersion.parse(minVersion);
}
public @NonNull SemanticVersion requireVersion() {
return Objects.requireNonNull(getVersion());
}
public long getExpiration() {
return DateUtils.parseIso8601(iso8601);
}
}
}

View File

@ -0,0 +1,70 @@
package org.thoughtcrime.securesms.util;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.annimon.stream.ComparatorCompat;
import java.util.Comparator;
import java.util.Objects;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public final class SemanticVersion implements Comparable<SemanticVersion> {
private static final Pattern VERSION_PATTERN = Pattern.compile("^([0-9]+)\\.([0-9]+)\\.([0-9]+)$");
private static final Comparator<SemanticVersion> MAJOR_COMPARATOR = (s1, s2) -> Integer.compare(s1.major, s2.major);
private static final Comparator<SemanticVersion> MINOR_COMPARATOR = (s1, s2) -> Integer.compare(s1.minor, s2.minor);
private static final Comparator<SemanticVersion> PATCH_COMPARATOR = (s1, s2) -> Integer.compare(s1.patch, s2.patch);
private static final Comparator<SemanticVersion> COMPARATOR = ComparatorCompat.chain(MAJOR_COMPARATOR)
.thenComparing(MINOR_COMPARATOR)
.thenComparing(PATCH_COMPARATOR);
private final int major;
private final int minor;
private final int patch;
public SemanticVersion(int major, int minor, int patch) {
this.major = major;
this.minor = minor;
this.patch = patch;
}
public static @Nullable SemanticVersion parse(@Nullable String value) {
if (value == null) {
return null;
}
Matcher matcher = VERSION_PATTERN.matcher(value);
if (Util.isEmpty(value) || !matcher.matches()) {
return null;
}
int major = Integer.parseInt(matcher.group(1));
int minor = Integer.parseInt(matcher.group(2));
int patch = Integer.parseInt(matcher.group(3));
return new SemanticVersion(major, minor, patch);
}
@Override
public int compareTo(SemanticVersion other) {
return COMPARATOR.compare(this, other);
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
SemanticVersion that = (SemanticVersion) o;
return major == that.major &&
minor == that.minor &&
patch == that.patch;
}
@Override
public int hashCode() {
return Objects.hash(major, minor, patch);
}
}

View File

@ -49,6 +49,7 @@ import com.google.i18n.phonenumbers.Phonenumber;
import org.thoughtcrime.securesms.BuildConfig;
import org.thoughtcrime.securesms.components.ComposeText;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.logging.Log;
import org.thoughtcrime.securesms.mms.OutgoingLegacyMmsConnection;
import org.whispersystems.libsignal.util.guava.Optional;
@ -77,6 +78,8 @@ import java.util.concurrent.TimeUnit;
public class Util {
private static final String TAG = Util.class.getSimpleName();
private static final long BUILD_LIFESPAN = TimeUnit.DAYS.toMillis(90);
private static volatile Handler handler;
public static <T> List<T> asList(T... elements) {
@ -458,9 +461,25 @@ public class Util {
return secret;
}
public static int getDaysTillBuildExpiry() {
int age = (int) TimeUnit.MILLISECONDS.toDays(System.currentTimeMillis() - BuildConfig.BUILD_TIMESTAMP);
return 90 - age;
/**
* @return The amount of time (in ms) until this build of Signal will be considered 'expired'.
* Takes into account both the build age as well as any remote deprecation values.
*/
public static long getTimeUntilBuildExpiry() {
if (SignalStore.misc().isClientDeprecated()) {
return 0;
}
long buildAge = System.currentTimeMillis() - BuildConfig.BUILD_TIMESTAMP;
long timeUntilBuildDeprecation = BUILD_LIFESPAN - buildAge;
long timeUntilRemoteDeprecation = RemoteDeprecation.getTimeUntilDeprecation();
if (timeUntilRemoteDeprecation != -1) {
long timeUntilDeprecation = Math.min(timeUntilBuildDeprecation, timeUntilRemoteDeprecation);
return Math.max(timeUntilDeprecation, 0);
} else {
return Math.max(timeUntilBuildDeprecation, 0);
}
}
@TargetApi(VERSION_CODES.LOLLIPOP)

View File

@ -3,10 +3,15 @@ package org.thoughtcrime.securesms.util;
import android.content.Context;
import androidx.annotation.NonNull;
import org.thoughtcrime.securesms.keyvalue.SignalStore;
import org.thoughtcrime.securesms.logging.Log;
import java.io.IOException;
public class VersionTracker {
private static final String TAG = Log.tag(VersionTracker.class);
public static int getLastSeenVersion(@NonNull Context context) {
return TextSecurePreferences.getLastVersionCode(context);
}
@ -14,7 +19,13 @@ public class VersionTracker {
public static void updateLastSeenVersion(@NonNull Context context) {
try {
int currentVersionCode = Util.getCanonicalVersionCode();
TextSecurePreferences.setLastVersionCode(context, currentVersionCode);
int lastVersionCode = TextSecurePreferences.getLastVersionCode(context);
if (currentVersionCode != lastVersionCode) {
Log.i(TAG, "Upgraded from " + lastVersionCode + " to " + currentVersionCode);
SignalStore.misc().clearClientDeprecated();
TextSecurePreferences.setLastVersionCode(context, currentVersionCode);
}
} catch (IOException ioe) {
throw new AssertionError(ioe);
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@color/core_grey_85" />
<item android:state_focused="true" android:drawable="@color/core_black" />
<item android:drawable="@color/core_black" />
</selector>

View File

@ -0,0 +1,62 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingStart="32dp"
android:paddingEnd="32dp"
android:paddingTop="20dp"
android:paddingBottom="20dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toTopOf="@id/client_deprecated_update_button"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:srcCompat="@drawable/ic_signal_logo_large" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="27dp"
android:text="@string/ClientDeprecatedActivity_update_signal"
style="@style/Signal.Text.Headline"
android:textStyle="bold"
android:gravity="center" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:text="@string/ClientDeprecatedActivity_this_version_of_the_app_is_no_longer_supported"
style="@style/Signal.Text.Body"
android:gravity="center" />
</LinearLayout>
<Button
android:id="@+id/client_deprecated_update_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/ClientDeprecatedActivity_update"
style="@style/Button.Primary"
app:layout_constraintBottom_toTopOf="@id/client_deprecated_dont_update_button"/>
<Button
android:id="@+id/client_deprecated_dont_update_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/ClientDeprecatedActivity_dont_update"
style="@style/Button.Borderless.LowPriority"
app:layout_constraintBottom_toBottomOf="parent"/>
</androidx.constraintlayout.widget.ConstraintLayout>

View File

@ -22,7 +22,7 @@
android:clipToPadding="false"
android:clipChildren="false">
<ImageView
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/reply_icon"
android:layout_width="@dimen/conversation_item_reply_size"
android:layout_height="@dimen/conversation_item_reply_size"

View File

@ -22,7 +22,7 @@
android:clipToPadding="false"
android:clipChildren="false">
<ImageView
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/reply_icon"
android:layout_width="@dimen/conversation_item_reply_size"
android:layout_height="@dimen/conversation_item_reply_size"

View File

@ -20,7 +20,7 @@
android:clipChildren="false"
android:clipToPadding="false">
<ImageView
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/reply_icon"
android:layout_width="@dimen/conversation_item_reply_size"
android:layout_height="@dimen/conversation_item_reply_size"

View File

@ -20,7 +20,7 @@
android:clipChildren="false"
android:clipToPadding="false">
<ImageView
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/reply_icon"
android:layout_width="@dimen/conversation_item_reply_size"
android:layout_height="@dimen/conversation_item_reply_size"

View File

@ -5,7 +5,7 @@
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textColor="@color/white"
android:textSize="16sp"
android:textSize="14sp"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:layout_marginStart="3dp"

View File

@ -44,12 +44,12 @@
android:id="@+id/reminder_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginTop="14dp"
android:layout_marginStart="16dp"
android:layout_marginTop="20dp"
android:layout_marginBottom="6dp"
android:textColor="@color/white"
android:textSize="20sp"
android:textStyle="bold"
android:fontFamily="sans-serif-medium"
app:layout_constraintBottom_toTopOf="@id/reminder_text"
app:layout_constraintStart_toEndOf="@id/reminder_progress"
app:layout_constraintTop_toTopOf="parent"
@ -62,17 +62,17 @@
android:layout_height="wrap_content"
android:layout_marginStart="12dp"
android:layout_marginEnd="12dp"
style="@style/Signal.Text.Preview"
android:textColor="@color/white"
android:textSize="16sp"
app:layout_constraintBottom_toTopOf="@id/reminder_actions"
app:layout_constraintEnd_toStartOf="@id/reminder_space"
app:layout_constraintStart_toEndOf="@id/reminder_progress"
app:layout_constraintTop_toBottomOf="@id/reminder_title"
app:layout_goneMarginBottom="12dp"
app:layout_goneMarginBottom="16dp"
app:layout_goneMarginEnd="16dp"
app:layout_goneMarginStart="16dp"
app:layout_goneMarginTop="15dp"
tools:text="Take your conversation with Jules Bonnot to the next level." />
app:layout_goneMarginTop="16dp"
tools:text="Take your conversation with Otto Octavius to the next level." />
<Space
android:id="@+id/reminder_space"
@ -103,6 +103,7 @@
android:orientation="horizontal"
android:overScrollMode="never"
android:visibility="gone"
tools:visibility="visible"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"

View File

@ -2059,18 +2059,18 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">نسخ إلى الحافظة</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">قارن مع الحافظة</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">لقد انتهت صلاحية هذه النسخة من Signal.</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">لقد انتهت صلاحية هذه النسخة من Signal.</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="zero">سوف تنتهي صلاحية إصدارة Signal المستخدمة خلال %d يوم. أنقر من اجل التحديث إلى أحدث نسخة. </item>
<item quantity="one">سوف تنتهي صلاحية إصدارة Signal المستخدمة خلال %d يوم. أنقر من اجل التحديث إلى أحدث نسخة.</item>
<item quantity="two">سوف تنتهي صلاحية إصدارة Signal المستخدمة خلال %d يوم. أنقر من اجل التحديث إلى أحدث نسخة.</item>
<item quantity="few">سوف تنتهي صلاحية إصدارة Signal المستخدمة خلال %d يوم. أنقر من اجل التحديث إلى أحدث نسخة.</item>
<item quantity="many">سوف تنتهي صلاحية إصدارة Signal المستخدمة خلال %d يوم. أنقر من اجل التحديث إلى أحدث نسخة.</item>
<item quantity="other">سوف تنتهي صلاحية هذه النسخة من Signal خلال %dيوم. انقر للتحديث لآخر إصدار.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">ستنتهي صلاحية هذه النسخة من Signal اليوم. انقر للتحديث لآخر إصدار.</string>
<string name="reminder_header_expired_build">لقد انتهت صلاحية هذه النسخة من Signal!</string>
<string name="reminder_header_expired_build_details">لن ترسل الرسائل بنجاح بعد الآن. ألمس لتحديث التطبيق.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">ستنتهي صلاحية هذه النسخة من Signal اليوم. انقر للتحديث لآخر إصدار.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">لقد انتهت صلاحية هذه النسخة من Signal!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">لن ترسل الرسائل بنجاح بعد الآن. ألمس لتحديث التطبيق.</string> -->
<string name="reminder_header_sms_default_title">الاستخدام كالتطبيق الافتراضي لرسائل SMS</string>
<string name="reminder_header_sms_default_text">انقر لجعل Signal التطبيق الافتراضي لرسائل SMS.</string>
<string name="reminder_header_sms_import_title">استيراد رسائل SMS من النظام</string>

View File

@ -1209,14 +1209,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Mübadilə buferinə köçür</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Mübadilə buferi ilə müqayisə et</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Sənin Signal-ının vaxtı ötüb</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Sənin Signal-ının vaxtı ötüb</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Sənin Signal-ının %d gündən sonra vaxtı bitəcək. Ən son versiyaya yeniləmək üçün kliklə.</item>
<item quantity="other">Sənin Signal-ının %d gündən sonra vaxtı bitəcək. Ən son versiyaya yeniləmək üçün kliklə.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Sənin Signal-ının vaxtı bugün bitir. Ən son versiyaya yeniləmək üçün kliklə.</string>
<string name="reminder_header_expired_build">Signal-ın versiyasının vaxtı bitib!</string>
<string name="reminder_header_expired_build_details">Mesajlar artıq göndərilə bilməyəcək. Ən sonr versiyaya yeniləmək üçün kliklə.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Sənin Signal-ının vaxtı bugün bitir. Ən son versiyaya yeniləmək üçün kliklə.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Signal-ın versiyasının vaxtı bitib!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Mesajlar artıq göndərilə bilməyəcək. Ən sonr versiyaya yeniləmək üçün kliklə.</string> -->
<string name="reminder_header_sms_default_title">Əsas SMS aplikasiyası kimi istifadə et</string>
<string name="reminder_header_sms_default_text">Signal-ı əsas SMS aplikasiyası etmək üçün kliklə.</string>
<string name="reminder_header_sms_import_title">Sistem SMS-ni daxil et</string>

View File

@ -1250,14 +1250,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Копиране</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Сравняване с копирани</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Вашата версия на Signal е стара</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Вашата версия на Signal е стара</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Вашата версия на Сигнал ще изтече след %d ден. Натиснете, за да я обновите до най-новата версия.</item>
<item quantity="other">Вашата версия на Signal ще изтече след %d дена. Натиснете, за да я обновите до най-новата версия.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Вашата версия на Signal ще изтече днес. Натиснете, за да обновите до най-новата версия.</string>
<string name="reminder_header_expired_build">Вашата версия на Signal е изтекла!</string>
<string name="reminder_header_expired_build_details">Съобщенията няма да бъдат успешно изпращани от сега нататък. Натиснете, за да обновите до най-новата версия.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Вашата версия на Signal ще изтече днес. Натиснете, за да обновите до най-новата версия.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Вашата версия на Signal е изтекла!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Съобщенията няма да бъдат успешно изпращани от сега нататък. Натиснете, за да обновите до най-новата версия.</string> -->
<string name="reminder_header_sms_default_title">Използване като SMS програма по подразбиране</string>
<string name="reminder_header_sms_default_text">Натисни, за да направиш Signal своята SMS програма по подразбиране.</string>
<string name="reminder_header_sms_import_title">Внасяне на системните SMS-и</string>

View File

@ -1653,14 +1653,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">ক্লিপবোর্ডে অনুলিপি করুন</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">ক্লিপবোর্ডের সাথে তুলনা করুন</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">আপনার Signal সংস্করণটি পুরানো</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">আপনার Signal সংস্করণটি পুরানো</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">আপনার Signal সংস্করণ %d দিন পরে বাতিল হয়ে যাবে। অতি সাম্প্রতিক সংস্করণে আপডেট করতে আলতো চাপুন।</item>
<item quantity="other">আপনার Signal সংস্করণ %d দিনের মধ্যেই বাতিল হয়ে যাবে। অতি সাম্প্রতিক সংস্করণে আপডেট করতে আলতো চাপুন।</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">আপনার Signal সংস্করণ আজ বাতিল হয়ে যাবে। অতি সাম্প্রতিক সংস্করণে আপডেট করতে আলতো চাপুন।</string>
<string name="reminder_header_expired_build">আপনার Signal সংস্করণ বাতিল হয়ে গেছে।</string>
<string name="reminder_header_expired_build_details">বার্তা সফলভাবে আর প্রেরণ করবে না। অতি সাম্প্রতিক সংস্করণে আপডেট করতে আলতো চাপুন।</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">আপনার Signal সংস্করণ আজ বাতিল হয়ে যাবে। অতি সাম্প্রতিক সংস্করণে আপডেট করতে আলতো চাপুন।</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">আপনার Signal সংস্করণ বাতিল হয়ে গেছে।</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">বার্তা সফলভাবে আর প্রেরণ করবে না। অতি সাম্প্রতিক সংস্করণে আপডেট করতে আলতো চাপুন।</string> -->
<string name="reminder_header_sms_default_title">ডিফল্ট এসএমএস অ্যাপ হিসাবে ব্যবহার করুন</string>
<string name="reminder_header_sms_default_text">Signal কে আপনার ডিফল্ট এসএমএস অ্যাপ করতে আলতো চাপুন।</string>
<string name="reminder_header_sms_import_title">সিস্টেম এসএমএস আমদানি করুন</string>

View File

@ -467,6 +467,7 @@
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">Zahtjevi za članstvo na čekanju</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">Nema zahtjeva za članstvo.</string>
<string name="RequestingMembersFragment_explanation">Osobe s ovog popisa pokušavaju pristupiti grupi putem linka za grupu.</string>
<string name="RequestingMembersFragment_added_s">Uvršten/a \"%1$s\"</string>
<string name="RequestingMembersFragment_denied_s">Odbijen/a \"%1$s\"</string>
<!--AddMembersActivity-->
@ -637,6 +638,7 @@
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_links_coming_soon">Uskoro: linkovi za grupe</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal_to_use_group_links">Ažurirajte Signal da biste mogli koristiti grupne linkove</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_coming_soon">Pristupanje grupi putem linka nije još podržano u Signalu. To će biti moguće u jednoj od narednih verzija.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">Verzija Signala koju koristite ne podržava linkove za grupu. Instalirajte zadnju verziju da biste se mogli priključiti ovoj grupi putem linka.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal">Ažurirajte Signal</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_link_is_not_valid">Link za grupu nije ispravan</string>
<!--GV2 Request confirmation dialog-->
@ -884,10 +886,25 @@
<string name="MessageRecord_s_changed_who_can_edit_group_membership_to_s">%1$s je promijenio/la ovlasti za upravljanje članstvom u grupi na \"%2$s\".</string>
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">Ko može upravljati članstvom u grupi promijenjeno je u \"%1$s\".</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Aktivirali ste link za grupu bez administratorskog odobrenja.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Aktivirali ste link za grupu sa administratorskim odobrenjem.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Isključili ste link za grupu.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">%1$s je aktivirao/la link za grupu bez administratorskog odobrenja.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">%1$s je aktivirao/la link za grupu sa administratorskim odobrenjem.</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s je isključio/la link za grupu.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">Link za grupu aktiviran je bez administratorskog odobrenja.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">Link za grupu aktiviran je sa administratorskim odobrenjem.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">Link za grupu je isključen.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Kreirali ste iznova link za grupu.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s je iznova kreirao/la link za grupu.</string>
<string name="MessageRecord_the_group_link_has_been_reset">Link za grupu iznova je kreiran.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Pristupili ste grupi putem linka za grupu.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s je pristupio/la grupi putem linka za grupu.</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">Poslali ste zahtjev za pristupanje grupi.</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s traži odobrenje da pristupi grupi putem linka za grupu.</string>
<!--GV2 group link approvals-->
<string name="MessageRecord_s_approved_your_request_to_join_the_group">%1$s odobrio/la je Vaš zahtjev za pristupanje grupi.</string>
<string name="MessageRecord_s_approved_a_request_to_join_the_group_from_s">%1$s odobrio/la je zahtjev za pristupanje grupi koji je uputio/la %2$s.</string>
@ -1476,6 +1493,7 @@
<!--safety_number_change_dialog-->
<string name="safety_number_change_dialog__safety_number_changes">Promjene sigurnosnog broja</string>
<string name="safety_number_change_dialog__send_anyway">Svakako pošalji</string>
<string name="safety_number_change_dialog__call_anyway">Svakako nazovi</string>
<string name="safety_number_change_dialog__the_following_people_may_have_reinstalled_or_changed_devices">Ove su osobe možda iznova instalirale Signal ili promijenile uređaj. Potvrdite svoj sigurnosni broj s njima da osigurate privatnost.</string>
<string name="safety_number_change_dialog__view">Pregled</string>
<string name="safety_number_change_dialog__previous_verified">Ranije potvrđeno</string>
@ -1777,6 +1795,7 @@
<string name="preferences__slow">Spora</string>
<string name="preferences__help">Pomoć</string>
<string name="preferences__advanced">Napredno</string>
<string name="preferences__donate_to_signal">Donirajte za Signal</string>
<string name="preferences__privacy">Privatnost</string>
<string name="preferences__mms_user_agent">MMS User Agent</string>
<string name="preferences__advanced_mms_access_point_names">Ručna MMS podešavanja</string>
@ -1790,6 +1809,8 @@
<string name="preferences__chats">Poruke i datoteke</string>
<string name="preferences__storage">Memorija</string>
<string name="preferences__conversation_length_limit">Maksimalni broj poruka</string>
<string name="preferences__keep_messages">Zadrži poruke</string>
<string name="preferences__clear_message_history">Izbriši historiju poruka</string>
<string name="preferences__linked_devices">Povezani uređaji</string>
<string name="preferences__light_theme">Svijetla</string>
<string name="preferences__dark_theme">Tamna</string>
@ -1819,17 +1840,34 @@
<string name="preferences_chats__when_using_wifi">Prilikom korištenja Wi-Fi konekcije</string>
<string name="preferences_chats__when_roaming">Prilikom roaminga</string>
<string name="preferences_chats__media_auto_download">Automatsko preuzimanje datoteka</string>
<string name="preferences_chats__message_history">Historija poruka</string>
<string name="preferences_storage__storage_usage">Korištenje memorije</string>
<string name="preferences_storage__photos">Slike</string>
<string name="preferences_storage__videos">Videozapisi</string>
<string name="preferences_storage__files">Datoteke</string>
<string name="preferences_storage__audio">Zvuk</string>
<string name="preferences_storage__review_storage">Provjerite memoriju</string>
<string name="preferences_storage__delete_older_messages">Izbrisati starije poruke?</string>
<string name="preferences_storage__clear_message_history">Izbrisati historiju poruka?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Ovo će bespovratno izbrisati svu historiju poruka i datoteke s Vašeg uređaja koji su stariji od %1$s.</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Ovo će bespovratno svesti sve konverzacije na %1$s posljednjih poruka.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Ovo će bespovratno izbrisati svu historiju poruka i datoteke s Vašeg uređaja.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Jeste li sigurni da želite izbrisati historiju poruka?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">Cijela historija poruka bit će bespovratno uklonjena. Ova se akcija ne može opozvati.</string>
<string name="preferences_storage__delete_all_now">Izbriši sve odmah</string>
<string name="preferences_storage__forever">Zauvijek</string>
<string name="preferences_storage__one_year">1 godina</string>
<string name="preferences_storage__six_months">6 mjeseci</string>
<string name="preferences_storage__thirty_days">30 dana</string>
<string name="preferences_storage__none">Nijedno</string>
<string name="preferences_storage__s_messages">%1$s poruka</string>
<string name="preferences_storage__custom">Ostalo</string>
<string name="preferences_Storage__custom_conversation_length_limit">Maksimalni broj poruka</string>
<string name="preferences_advanced__use_system_emoji">Koristi sistemske emoji sličice</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Onemogući Signalovu ugrađenu podršku za emoji sličice</string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">Preusmjeri sve pozive na Signal server kako bi Vaša IP adresa bila skrivena od sagovornika. Aktiviranjem ove opcije smanjit će se kvalitet poziva.</string>
<string name="preferences_advanced__always_relay_calls">Uvijek preusmjeri pozive</string>
<string name="preferences_app_protection__who_can">Ko može…</string>
<string name="preferences_app_protection__app_access">Pristup aplikaciji</string>
<string name="preferences_app_protection__communication">Komunikacija</string>
<string name="preferences_chats__chats">Razgovori</string>
@ -1854,6 +1892,7 @@
<string name="preferences_notifications__notify_me">Obavijesti me</string>
<string name="preferences_notifications__receive_notifications_when_youre_mentioned_in_muted_chats">Primiti obavještenja kad Vas neko spomene u prigušenim konverzacijama</string>
<string name="preferences_setup_a_username">Podesite korisničko ime</string>
<string name="configurable_single_select__customize_option">Prilagodi</string>
<!--Internal only preferences-->
<!--****************************************-->
<!--menus-->
@ -1943,15 +1982,15 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopiraj u međuspremnik</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Uporedi sa međuspremnikom</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Vaša je verzija Signala stara</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Vaša je verzija Signala stara</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Vaša verzija Signala ističe za %d dan. Pritisnite da preuzmete zadnju verziju.</item>
<item quantity="few">Vaša verzija Signala ističe za %d dana. Pritisnite da preuzmete zadnju verziju.</item>
<item quantity="other">Vaša verzija Signala ističe za %d dana. Pritisnite da preuzmete zadnju verziju.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Vaša verzija Signala ističe danas. Pritisnite da preuzmete zadnju verziju.</string>
<string name="reminder_header_expired_build">Vaša je verzija Signala istekla!</string>
<string name="reminder_header_expired_build_details">Poruke se više neće slati. Pritisnite da preuzmete zadnju verziju.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Vaša verzija Signala ističe danas. Pritisnite da preuzmete zadnju verziju.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Vaša je verzija Signala istekla!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Poruke se više neće slati. Pritisnite da preuzmete zadnju verziju.</string> -->
<string name="reminder_header_sms_default_title">Koristi kao glavnu aplikaciju za SMS</string>
<string name="reminder_header_sms_default_text">Pritisnite da Signal učinite svojom glavnom aplikacijom za slanje SMS poruka</string>
<string name="reminder_header_sms_import_title">Unesi sistemske SMS poruke</string>
@ -2160,6 +2199,14 @@
<string name="RegistrationActivity_code_support_subject">Signal registracija potvrda kōda za Android</string>
<string name="BackupUtil_never">Nikad</string>
<string name="BackupUtil_unknown">Nepoznato</string>
<string name="preferences_app_protection__see_my_phone_number">Vidi moj telefonski broj</string>
<string name="preferences_app_protection__find_me_by_phone_number">Pronađi me putem telefonskog broja</string>
<string name="PhoneNumberPrivacy_everyone">Svako</string>
<string name="PhoneNumberPrivacy_my_contacts">Moji kontakti</string>
<string name="PhoneNumberPrivacy_nobody">Niko</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Vaš telefonski broj bit će dostupan svim osobama i grupama s kojima razmijenite poruke.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Svako ko ima Vaš telefonski broj zabilježen među kontaktima vidjet će Vas i među svojim kontaktima na Signalu. Drugi će Vas moći pronaći pomoću pretrage.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Samo Vaši kontakti moći će vidjeti Vaš telefonski broj na Signalu.</string>
<string name="preferences_app_protection__screen_lock">Zaključavanje ekrana</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Zaključaj pristup Signalu pomoću Androidovog zaključavanja ekrana ili otiska prsta</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">Zaključavanje ekrana nakon neaktivnosti</string>

View File

@ -1717,6 +1717,7 @@ S\'ha rebut un missatge d\'intercanvi de claus per a una versió del protocol no
<string name="preferences__slow">Lent</string>
<string name="preferences__help">Ajuda</string>
<string name="preferences__advanced">Avançat</string>
<string name="preferences__donate_to_signal">Feu una donació a Signal</string>
<string name="preferences__privacy">Privadesa</string>
<string name="preferences__mms_user_agent">Agent usuari dels MMS</string>
<string name="preferences__advanced_mms_access_point_names">Configuració manual dels MMS</string>
@ -1884,14 +1885,14 @@ S\'ha rebut un missatge d\'intercanvi de claus per a una versió del protocol no
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copia al porta-retalls</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Compara amb el porta-retalls</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">La vostra versió del Signal és obsoleta</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">La vostra versió del Signal és obsoleta</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">La vostra versió del Signal caducarà d\'aquí %d dia. Premeu per a actualitzar-la a la versió més recent.</item>
<item quantity="other">La vostra versió del Signal caducarà d\'aquí %d dies. Premeu per a actualitzar-la a la versió més recent.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">La vostra versió del Signal caducarà avui. Premeu per actualitzar-la a la versió més recent.</string>
<string name="reminder_header_expired_build">La vostra versió del Signal ha caducat!</string>
<string name="reminder_header_expired_build_details">El missatges no s\'enviaran correctament. Premeu per actualitzar-la a la versió més recent.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">La vostra versió del Signal caducarà avui. Premeu per actualitzar-la a la versió més recent.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">La vostra versió del Signal ha caducat!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">El missatges no s\'enviaran correctament. Premeu per actualitzar-la a la versió més recent.</string> -->
<string name="reminder_header_sms_default_title">Usa-la com a aplicació d\'SMS predeterminada</string>
<string name="reminder_header_sms_default_text">Premeu per establir el Signal com a aplicació predeterminada per a SMS.</string>
<string name="reminder_header_sms_import_title">Importació dels SMS del sistema</string>

View File

@ -485,6 +485,7 @@
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">Čekající žádosti o členství</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">Ždáné žádosti o členství k zobrazení</string>
<string name="RequestingMembersFragment_explanation">Lidé na tomto seznamu se pokouší připojit k této skupině pomocí skupinového odkazu.</string>
<string name="RequestingMembersFragment_added_s">Přidán \"%1$s\"</string>
<string name="RequestingMembersFragment_denied_s">Odmítnut \"%1$s\"</string>
<!--AddMembersActivity-->
@ -664,6 +665,7 @@
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_links_coming_soon">Těšte se na skupinové odkazy</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal_to_use_group_links">Aktualizujte Signal pro používání skupinových odkazů</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_coming_soon">Připojení ke skupině pomocí odkazu ještě není v Signalu podporováno. Tato funkce bude zahrnuta v nadcházející aktualizaci.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">Verze Signalu, kterou používáte, nepodporuje skupinové odkazy. Aktualizujte na nejnovější verzi pro připojení k této skupině pomocí odkazu.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal">Aktualizovat Signal</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_link_is_not_valid">Skupinový odkaz je neplatný</string>
<!--GV2 Request confirmation dialog-->
@ -923,10 +925,25 @@
<string name="MessageRecord_s_changed_who_can_edit_group_membership_to_s">%1$s změnil, kdo může upravovat členství ve skupině, na \"%2$s\".</string>
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">Osoba oprávněná upravovat členství ve skupině byla změněna na \"%1$s\".</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Zapnuli jste skupinový odkaz bez schvalování správcem.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Zapnuli jste skupinový odkaz se schvalováním správcem.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Vypnuli jste skupinový odkaz.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">%1$s zapnul skupinový odkaz bez schvalování správcem.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">%1$s zapnul skupinový odkaz se schvalováním správcem.</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s vypnul skupinový odkaz.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">Skupinový odkaz bez schvalování správcem byl zapnut.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">Skupinový odkaz se schvalováním správcem byl zapnut.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">Skupinový odkaz byl vypnut.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Obnovili jste skupinový odkaz.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s obnovil skupinový odkaz.</string>
<string name="MessageRecord_the_group_link_has_been_reset">Skupinový odkaz byl obnoven.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Připojili jste se ke skupině pomocí skupinového odkazu.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s se připojil ke skupině pomocí skupinového odkazu.</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">Odeslali jste požadavek na vstup do skupiny.</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s požádal o připojení pomocí skupinového odkazu.</string>
<!--GV2 group link approvals-->
<string name="MessageRecord_s_approved_your_request_to_join_the_group">%1$s schválil váš požadavek na připojení ke skupině.</string>
<string name="MessageRecord_s_approved_a_request_to_join_the_group_from_s">%1$s schválil požadavek na připojení ke skupině od %2$s.</string>
@ -1521,6 +1538,7 @@ Obdržen požadavek na výměnu klíčů pro neplatnou verzi protokolu.
<!--safety_number_change_dialog-->
<string name="safety_number_change_dialog__safety_number_changes">Změny bezpečnostního čísla</string>
<string name="safety_number_change_dialog__send_anyway">Přesto poslat</string>
<string name="safety_number_change_dialog__call_anyway">Přesto zavolat</string>
<string name="safety_number_change_dialog__the_following_people_may_have_reinstalled_or_changed_devices">Následující lidé možná přeinstalovali nebo změnili zařízení. Ověřte s nimi své bezpečnostní číslo pro zajištění soukromí.</string>
<string name="safety_number_change_dialog__view">Zobrazit</string>
<string name="safety_number_change_dialog__previous_verified">Předchozí ověřeno</string>
@ -1830,6 +1848,7 @@ Obdržen požadavek na výměnu klíčů pro neplatnou verzi protokolu.
<string name="preferences__slow">Pomalu</string>
<string name="preferences__help">Nápověda</string>
<string name="preferences__advanced">Rozšířené možnosti</string>
<string name="preferences__donate_to_signal">Podpořte Signal finančně</string>
<string name="preferences__privacy">Soukromí</string>
<string name="preferences__mms_user_agent">MMS User Agent</string>
<string name="preferences__advanced_mms_access_point_names">Manuální nastavení MMS</string>
@ -1843,6 +1862,8 @@ Obdržen požadavek na výměnu klíčů pro neplatnou verzi protokolu.
<string name="preferences__chats">Konverzace a média</string>
<string name="preferences__storage">Úložiště</string>
<string name="preferences__conversation_length_limit">Limit délky konverzací</string>
<string name="preferences__keep_messages">Zachovat zprávy</string>
<string name="preferences__clear_message_history">Vyčistit historii zpráv</string>
<string name="preferences__linked_devices">Propojená zařízení</string>
<string name="preferences__light_theme">Světlý</string>
<string name="preferences__dark_theme">Tmavý</string>
@ -1872,17 +1893,32 @@ Obdržen požadavek na výměnu klíčů pro neplatnou verzi protokolu.
<string name="preferences_chats__when_using_wifi">Při použití WiFi</string>
<string name="preferences_chats__when_roaming">Při roamingu</string>
<string name="preferences_chats__media_auto_download">Automatické stahování multimédií</string>
<string name="preferences_chats__message_history">Historie zpráv</string>
<string name="preferences_storage__storage_usage">Využití úložiště</string>
<string name="preferences_storage__photos">Fotografie</string>
<string name="preferences_storage__videos">Videa</string>
<string name="preferences_storage__files">Soubory</string>
<string name="preferences_storage__audio">Audio</string>
<string name="preferences_storage__review_storage">Zkontrolovat úložiště</string>
<string name="preferences_storage__delete_older_messages">Smazat starší zprávy?</string>
<string name="preferences_storage__clear_message_history">Smazat historii zpráv?</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Tímto trvale zkrátíte všechny konverzace na %1$s nejnovějších zpráv.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Jste si jistí, že chcete smazat celou historii zpráv?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">Celá historie zpráv bude trvale odstraněna. Tuto akci nelze vrátit zpět.</string>
<string name="preferences_storage__delete_all_now">Vše nyní smazat</string>
<string name="preferences_storage__forever">Navždy</string>
<string name="preferences_storage__one_year">1 rok</string>
<string name="preferences_storage__six_months">6 měsíců</string>
<string name="preferences_storage__thirty_days">30 dní</string>
<string name="preferences_storage__none">Nic</string>
<string name="preferences_storage__s_messages">%1$s zpráv</string>
<string name="preferences_storage__custom">Vlastní</string>
<string name="preferences_Storage__custom_conversation_length_limit">Vlastní limit délky konverzace</string>
<string name="preferences_advanced__use_system_emoji">Použít systémové smajlíky</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Zakázat použití interních smajlíků aplikace Signal </string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">Přenášet všechna volání přes servery Signal, aby nedošlo k odhalení vaší IP adresy volanému. Povolením dojde ke zhoršení kvality hovoru.</string>
<string name="preferences_advanced__always_relay_calls">Vždy předávat hovory</string>
<string name="preferences_app_protection__who_can">Kdo může…</string>
<string name="preferences_app_protection__app_access">Přístup aplikace</string>
<string name="preferences_app_protection__communication">Komunikace</string>
<string name="preferences_chats__chats">Konverzace</string>
@ -1907,6 +1943,7 @@ Obdržen požadavek na výměnu klíčů pro neplatnou verzi protokolu.
<string name="preferences_notifications__notify_me">Upozornit mne</string>
<string name="preferences_notifications__receive_notifications_when_youre_mentioned_in_muted_chats">Přijmout upozornění při zmínce ve ztišených rozhovorech</string>
<string name="preferences_setup_a_username">Nastavit uživatelské jméno</string>
<string name="configurable_single_select__customize_option">Nastavit předvolbu</string>
<!--Internal only preferences-->
<!--****************************************-->
<!--menus-->
@ -1996,16 +2033,16 @@ Obdržen požadavek na výměnu klíčů pro neplatnou verzi protokolu.
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Zkopírovat do schránky</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Porovnat se schránkou</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Vaše verze aplikace Signal je zastaralá</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Vaše verze aplikace Signal je zastaralá</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Platnost vaší verze aplikace Signal skončí za %d den. Dotykem aktualizujte na nejnovější verzi.</item>
<item quantity="few">Platnost vaší verze aplikace Signal skončí za %d dny. Dotykem aktualizujte na nejnovější verzi.</item>
<item quantity="many">Platnost vaší verze aplikace Signal skončí za %d dnů. Dotykem aktualizujte na nejnovější verzi.</item>
<item quantity="other">Platnost vaší verze aplikace Signal skončí za %d dnů. Klepnutím aktualizujte na nejnovější verzi.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Platnost vaší verze aplikace Signal skončí dnes. Klepnutím aktualizujte na nejnovější verzi.</string>
<string name="reminder_header_expired_build">Platnost vaší verze aplikace Signal vypršela!</string>
<string name="reminder_header_expired_build_details">Zprávy nemohou být úspěšně odesílány. Klepnutím aktualizujte na nejnovější verzi.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Platnost vaší verze aplikace Signal skončí dnes. Klepnutím aktualizujte na nejnovější verzi.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Platnost vaší verze aplikace Signal vypršela!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Zprávy nemohou být úspěšně odesílány. Klepnutím aktualizujte na nejnovější verzi.</string> -->
<string name="reminder_header_sms_default_title">Nastavit jako výchozí aplikaci pro SMS</string>
<string name="reminder_header_sms_default_text">Klepnutím nastavíte Signal jako výchozí SMS aplikaci.</string>
<string name="reminder_header_sms_import_title">Importovat SMS ze systému</string>
@ -2221,6 +2258,14 @@ Obdržen požadavek na výměnu klíčů pro neplatnou verzi protokolu.
<string name="RegistrationActivity_code_support_subject">Registrace Signalu - ověřovací kód pro Android</string>
<string name="BackupUtil_never">Nikdy</string>
<string name="BackupUtil_unknown">Neznámý</string>
<string name="preferences_app_protection__see_my_phone_number">Vidět mé telefonní číslo</string>
<string name="preferences_app_protection__find_me_by_phone_number">Najít mé telefonní číslo</string>
<string name="PhoneNumberPrivacy_everyone">Všichni</string>
<string name="PhoneNumberPrivacy_my_contacts">Moje kontakty</string>
<string name="PhoneNumberPrivacy_nobody">Nikdo</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Vaše telefonní číslo bude viditelné pro všechny lidi a skupiny, kterým pošlete zprávu.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Kdokoli, kdo má vaše telefonní číslo ve svých kontaktech, vás bude vidět jako kontakt v Signalu. Ostatní vás budou schopni najít vyhledáváním.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Pouze vaše kontakty budou v Signalu vidět vaše telefonní číslo.</string>
<string name="preferences_app_protection__screen_lock">Zámek obrazovky</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Zamknout přístup k Signalu zámkem obrazovky Androidu nebo otiskem prstu</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">Časový limit neaktivity zámku obrazovky</string>

View File

@ -1931,16 +1931,16 @@ Send neges heb ei ddiogelu?</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copïo i\'r clipfwrdd</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Cymharu â\'r clipfwrdd</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Mae\'ch fersiwn o Signal yn hen</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Mae\'ch fersiwn o Signal yn hen</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Bydd eich fersiwn o Signal yn dod i ben ymhen %d diwrnod. Tapiwch i ddiweddaru i\'r fersiwn ddiweddaraf.</item>
<item quantity="two">Bydd eich fersiwn o Signal yn dod i ben ymhen %d diwrnod. Tapiwch i ddiweddaru i\'r fersiwn ddiweddaraf.</item>
<item quantity="many">Bydd eich fersiwn o Signal yn dod i ben ymhen %d diwrnod. Tapiwch i ddiweddaru i\'r fersiwn ddiweddaraf.</item>
<item quantity="other">Bydd eich fersiwn o Signal yn dod i ben ymhen %d diwrnod. Tapiwch i ddiweddaru i\'r fersiwn ddiweddaraf.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Bydd eich fersiwn o Signal yn dod i ben heddiw. Tapiwch i ddiweddaru i\'r fersiwn ddiweddaraf.</string>
<string name="reminder_header_expired_build">Mae\'ch fersiwn o Signal wedi dod i ben!</string>
<string name="reminder_header_expired_build_details">Ni fydd negeseuon bellach yn cael eu hanfon yn llwyddiannus. Tapiwch i ddiweddaru i\'r fersiwn ddiweddaraf.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Bydd eich fersiwn o Signal yn dod i ben heddiw. Tapiwch i ddiweddaru i\'r fersiwn ddiweddaraf.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Mae\'ch fersiwn o Signal wedi dod i ben!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Ni fydd negeseuon bellach yn cael eu hanfon yn llwyddiannus. Tapiwch i ddiweddaru i\'r fersiwn ddiweddaraf.</string> -->
<string name="reminder_header_sms_default_title">Defnyddio fel yr ap SMS rhagosodedig</string>
<string name="reminder_header_sms_default_text">Tapio i wneud Signal eich ap SMS.</string>
<string name="reminder_header_sms_import_title">Mewnforio SMS y system</string>

View File

@ -860,7 +860,7 @@
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Du nulstiller gruppelinket.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s nulstiller gruppelinket.</string>
<string name="MessageRecord_the_group_link_has_been_reset">Gruppelink blev nulstillet.</string>
<string name="MessageRecord_the_group_link_has_been_reset">Gruppelinket blev nulstillet.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Du deltager i gruppen via gruppelinket.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s deltager i gruppen via gruppelinket.</string>
@ -1741,6 +1741,7 @@ Modtog en nøgle besked, for en ugyldig protokol-version
<string name="preferences__slow">Langsom</string>
<string name="preferences__help">Hjælp</string>
<string name="preferences__advanced">Avanceret</string>
<string name="preferences__donate_to_signal">Doner til Signal</string>
<string name="preferences__privacy">Privatliv</string>
<string name="preferences__mms_user_agent">MMS brugeragent</string>
<string name="preferences__advanced_mms_access_point_names">Manuelle MMS indstillinger</string>
@ -1794,9 +1795,7 @@ Modtog en nøgle besked, for en ugyldig protokol-version
<string name="preferences_storage__review_storage">Vis hukommelse</string>
<string name="preferences_storage__delete_older_messages">Slet ældre beskeder?</string>
<string name="preferences_storage__clear_message_history">Ryd beskedhistorik?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Dette sletter al beskedhistorik og medier permanent fra din enhed, der er ældre end %1$s.</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Dette vil reducere alle samtaler permanent til de %1$s seneste beskeder.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Dette sletter al beskedhistorik og medier permanent fra din enhed.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Er du sikker på, du vil slette al beskedhistorik?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">Al beskedhistorik fjernes permanent. Denne handling kan ikke fortrydes.</string>
<string name="preferences_storage__delete_all_now">Slet det hele nu</string>
@ -1927,14 +1926,14 @@ Modtog en nøgle besked, for en ugyldig protokol-version
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopiér til udklipsholder</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Sammenlign med udklipsholder</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Din version af Signal er forældet</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Din version af Signal er forældet</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Din version af Signal udløber om %d dage. Tap for at opdatere til den nyeste version</item>
<item quantity="other">Din version af Signal vil udløbe om %d dage. Tap for at opdatere til den nyeste version</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Din version af Signal udløber i dag. Tap for at opdatere til den nyeste version</string>
<string name="reminder_header_expired_build">Din version af Signal er udløbet!</string>
<string name="reminder_header_expired_build_details">Beskeder kan ikke længere sendes korrekt. Tap for at opdatere til den seneste version</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Din version af Signal udløber i dag. Tap for at opdatere til den nyeste version</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Din version af Signal er udløbet!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Beskeder kan ikke længere sendes korrekt. Tap for at opdatere til den seneste version</string> -->
<string name="reminder_header_sms_default_title">Anvend som standard SMS app</string>
<string name="reminder_header_sms_default_text">Tap for at gøre Signal til din standard SMS app</string>
<string name="reminder_header_sms_import_title">Importér system SMS\'er</string>

View File

@ -284,7 +284,7 @@
<string name="ConversationFragment_deleting_messages">Nachrichten werden gelöscht </string>
<string name="ConversationFragment_delete_for_me">Für mich löschen</string>
<string name="ConversationFragment_delete_for_everyone">Für jeden löschen</string>
<string name="ConversationFragment_this_message_will_be_permanently_deleted_for_everyone">Diese Nachricht wird für jeden Teilnehmer der Unterhaltung dauerhaft gelöscht. Gruppenmitglieder werden sehen können, dass du eine Nachricht gelöscht hast.</string>
<string name="ConversationFragment_this_message_will_be_permanently_deleted_for_everyone">Diese Nachricht wird für jeden Teilnehmer der Unterhaltung unwiderruflich gelöscht. Gruppenmitglieder werden sehen können, dass du eine Nachricht gelöscht hast.</string>
<string name="ConversationFragment_quoted_message_not_found">Originalnachricht nicht gefunden</string>
<string name="ConversationFragment_quoted_message_no_longer_available">Originalnachricht nicht mehr verfügbar</string>
<string name="ConversationFragment_failed_to_open_message">Nachricht konnte nicht geöffnet werden</string>
@ -586,7 +586,7 @@
<!--GroupLinkShareQrDialogFragment-->
<string name="GroupLinkShareQrDialogFragment__qr_code">QR-Code</string>
<string name="GroupLinkShareQrDialogFragment__people_who_scan_this_code_will">Personen, die diesen Code einscannen, können deiner Gruppe beitreten. Neue Mitglieder müssen jedoch von einem Admin bestätigt werden, falls du diese Einstellung eingeschaltet hast.</string>
<string name="GroupLinkShareQrDialogFragment__share_code">Code teilen</string>
<string name="GroupLinkShareQrDialogFragment__share_code">QR-Code teilen</string>
<!--GV2 Invite Revoke confirmation dialog-->
<string name="InviteRevokeConfirmationDialog_revoke_own_single_invite">Möchtest du deine an %1$s versendete Einladung widerrufen?</string>
<plurals name="InviteRevokeConfirmationDialog_revoke_others_invites">
@ -847,14 +847,14 @@
<string name="MessageRecord_s_changed_who_can_edit_group_membership_to_s">%1$s hat die Bearbeitungsberechtigten für die Gruppenmitgliedschaft zu »%2$s« geändert.</string>
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">Die Bearbeitungsberechtigten für die Gruppenmitgliedschaft wurden zu »%1$s« geändert.</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Du hast den Gruppen-Link ohne Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Du hast den Gruppen-Link mit Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Du hast den Gruppen-Link mit ausgeschalteter Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Du hast den Gruppen-Link mit eingeschalteter Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Du hast den Gruppen-Link deaktiviert.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">»%1$s« hat den Gruppen-Link ohne Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">»%1$s« hat den Gruppen-Link mit Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">»%1$s« hat den Gruppen-Link mit ausgeschalteter Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">»%1$s« hat den Gruppen-Link mit eingeschalteter Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_s_turned_off_the_group_link">»%1$s« hat den Gruppen-Link deaktiviert.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">Der Gruppen-Link ohne Admin-Bestätigung wurde aktiviert.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">Der Gruppen-Link mit Admin-Bestätigung wurde aktiviert.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">Der Gruppen-Link wurde mit ausgeschalteter Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">Der Gruppen-Link wurde mit eingeschalteter Admin-Bestätigung aktiviert.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">Der Gruppen-Link wurde deaktiviert.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Du hast den Gruppen-Link zurückgesetzt.</string>
@ -1569,7 +1569,7 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="registration_activity__verify_your_number">Verifiziere deine Rufnummer</string>
<string name="registration_activity__please_enter_your_mobile_number_to_receive_a_verification_code_carrier_rates_may_apply">Bitte gib deine Rufnummer ein, um einen Verifikationscode zu erhalten. Dabei können Mobilfunkgebühren anfallen.</string>
<!--recipients_panel-->
<string name="recipients_panel__to"><small>Name/Rufnummer eingeben</small></string>
<string name="recipients_panel__to"><small>Name/Nummer eingeben</small></string>
<string name="recipients_panel__add_members">Mitglieder hinzufügen</string>
<!--unknown_sender_view-->
<string name="unknown_sender_view__the_sender_is_not_in_your_contact_list">Der Absender ist nicht in deiner Kontaktliste</string>
@ -1730,6 +1730,7 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="preferences__slow">Langsam</string>
<string name="preferences__help">Hilfe</string>
<string name="preferences__advanced">Weitere Einstellungen</string>
<string name="preferences__donate_to_signal">An Signal spenden</string>
<string name="preferences__privacy">Datenschutz</string>
<string name="preferences__mms_user_agent">MMS-Benutzer-Agent</string>
<string name="preferences__advanced_mms_access_point_names">Manuelle MMS-Einstellungen</string>
@ -1783,9 +1784,9 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="preferences_storage__review_storage">Speicherinhalte überprüfen</string>
<string name="preferences_storage__delete_older_messages">Ältere Nachrichten löschen?</string>
<string name="preferences_storage__clear_message_history">Nachrichtenverlauf löschen?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Dies wird alle Nachrichtenverläufe und Medien, die älter als %1$s sind, dauerhaft von deinem Gerät löschen.</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Dies löscht sofort alle Nachrichten bis auf die letzten %1$s Nachrichten je Unterhaltung.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Dies wird alle Nachrichtenverläufe und Medien dauerhaft von deinem Gerät löschen.</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Dies wird alle Nachrichtenverläufe und Medieninhalte, die älter als %1$s sind, unwiderruflich von deinem Gerät löschen.</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Dies wird alle Nachrichten bis auf die letzten %1$s Nachrichten je Unterhaltung unwiderruflich löschen.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Dies wird alle Nachrichtenverläufe und Medieninhalte unwiderruflich von deinem Gerät löschen.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Möchtest du wirklich alle Nachrichtenverläufe löschen?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">Alle Nachrichtenverläufe werden dauerhaft gelöscht. Dies kann nicht rückgängig gemacht werden.</string>
<string name="preferences_storage__delete_all_now">Alle jetzt löschen</string>
@ -1796,12 +1797,12 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="preferences_storage__none">Keine</string>
<string name="preferences_storage__s_messages">%1$s Nachrichten</string>
<string name="preferences_storage__custom">Personalisiert</string>
<string name="preferences_Storage__custom_conversation_length_limit">personalisierte Höchstzahl an Nachrichten</string>
<string name="preferences_Storage__custom_conversation_length_limit">Höchstzahl an Nachrichten</string>
<string name="preferences_advanced__use_system_emoji">System-Emojis verwenden</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Integrierte Emojis deaktivieren und stattdessen System-Emojis verwenden</string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">Alle Anrufe über den Signal-Server leiten, um die eigene IP-Adresse gegenüber Kontakten nicht offenzulegen. Dies verringert die Anrufqualität.</string>
<string name="preferences_advanced__always_relay_calls">Anrufe immer indirekt</string>
<string name="preferences_app_protection__who_can">Wer kann…</string>
<string name="preferences_app_protection__who_can">Wer kann </string>
<string name="preferences_app_protection__app_access">App-Zugriff</string>
<string name="preferences_app_protection__communication">Kommunikation</string>
<string name="preferences_chats__chats">Unterhaltungen</string>
@ -1826,7 +1827,7 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="preferences_notifications__notify_me">Mich benachrichtigen</string>
<string name="preferences_notifications__receive_notifications_when_youre_mentioned_in_muted_chats">Benachrichtigungen erhalten, wenn du in stummgeschalteten Unterhaltungen erwähnt wirst</string>
<string name="preferences_setup_a_username">Benutzername einrichten</string>
<string name="configurable_single_select__customize_option">Einstellungen anpassen</string>
<string name="configurable_single_select__customize_option">Option anpassen</string>
<!--Internal only preferences-->
<!--****************************************-->
<!--menus-->
@ -1871,7 +1872,7 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="conversation_list_search_description">Suchen</string>
<string name="conversation_list__pinned">Angeheftet</string>
<string name="conversation_list__chats">Unterhaltungen</string>
<string name="conversation_list__you_can_only_pin_up_to_d_chats">Du kannst nur bis zu %1$d Unterhaltungen anheften</string>
<string name="conversation_list__you_can_only_pin_up_to_d_chats">Du kannst maximal %1$d Unterhaltungen anheften</string>
<!--conversation_list_item_view-->
<string name="conversation_list_item_view__contact_photo_image">Kontaktbild</string>
<string name="conversation_list_item_view__archived">Archiviert</string>
@ -1916,14 +1917,14 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="verify_display_fragment_context_menu__copy_to_clipboard">In Zwischenablage kopieren</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Mit Zwischenablage vergleichen</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Deine Signal-Version ist veraltet</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Deine Signal-Version ist veraltet</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Deine Version von Signal wird in %d Tag ablaufen. Bitte antippen, um auf die neueste Version zu aktualisieren.</item>
<item quantity="other">Deine Version von Signal wird in %d Tagen ablaufen. Bitte antippen, um auf die neueste Version zu aktualisieren.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Deine Version von Signal wird heute ablaufen. Bitte antippen, um auf die neueste Version zu aktualisieren.</string>
<string name="reminder_header_expired_build">Deine Signal-Version ist abgelaufen!</string>
<string name="reminder_header_expired_build_details">Es können keine Nachrichten mehr versendet werden. Bitte antippen, um auf die neueste Version zu aktualisieren.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Deine Version von Signal wird heute ablaufen. Bitte antippen, um auf die neueste Version zu aktualisieren.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Deine Signal-Version ist abgelaufen!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Es können keine Nachrichten mehr versendet werden. Bitte antippen, um auf die neueste Version zu aktualisieren.</string> -->
<string name="reminder_header_sms_default_title">Als Standard-SMS-App verwenden</string>
<string name="reminder_header_sms_default_text">Antippen, um Signal als Standard-SMS-App zu verwenden.</string>
<string name="reminder_header_sms_import_title">System-SMS importieren</string>
@ -2125,14 +2126,14 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="RegistrationActivity_code_support_subject">Signal-Registrierung Verifikationscode für Android</string>
<string name="BackupUtil_never">Nie</string>
<string name="BackupUtil_unknown">Unbekannt</string>
<string name="preferences_app_protection__see_my_phone_number">meine Telefonnummer sehen</string>
<string name="preferences_app_protection__find_me_by_phone_number">mich über die Telefonnummer finden</string>
<string name="preferences_app_protection__see_my_phone_number">meine Rufnummer sehen</string>
<string name="preferences_app_protection__find_me_by_phone_number">mich über die Rufnummer finden</string>
<string name="PhoneNumberPrivacy_everyone">Jeder</string>
<string name="PhoneNumberPrivacy_my_contacts">Meine Kontakte</string>
<string name="PhoneNumberPrivacy_nobody">Niemand</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Deine Telefonnummer ist sichtbar für alle Personen und Gruppen, mit denen du dich unterhälst.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Jeder, der deine Telefonnummer in seinen Kontakten hat, sieht dich als Kontakt in Signal. Andere können dich per Suche finden.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Nur deine Kontakte sehen deine Telefonnummer in Signal.</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Deine Rufnummer ist sichtbar für alle Personen und Gruppen, mit denen du dich unterhälst.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Jeder, der deine Rufnummer in seinen Kontakten gespeichert hat, sieht dich als Kontakt in Signal. Alle anderen können dich per Suche finden.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Nur deine Kontakte sehen deine Rufnummer in Signal.</string>
<string name="preferences_app_protection__screen_lock">Bildschirmsperre</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Zugriff auf Signal mit Android-Bildschirmsperre oder Fingerabdruck sperren</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">Autom. Sperre bei Inaktivität</string>
@ -2141,7 +2142,7 @@ Schlüsselaustausch-Nachricht für eine ungültige Protokollversion empfangen</s
<string name="preferences_app_protection__change_your_pin">PIN ändern</string>
<string name="preferences_app_protection__pin_reminders">PIN-Erinnerungen</string>
<string name="preferences_app_protection__pins_keep_information_stored_with_signal_encrypted">PINs halten deine bei Signal gespeicherten Informationen verschlüsselt, sodass nur du auf sie zugreifen kannst. Falls du Signal erneut installierst, werden so dein Profil und deine Einstellungen und Kontakte wiederhergestellt.</string>
<string name="preferences_app_protection__add_extra_security_by_requiring_your_signal_pin_to_register">Als zusätzliches Sicherheitsmerkmal deine Signal-PIN erforderlich machen, sobald du deine Telefonnummer erneut bei Signal registrierst.</string>
<string name="preferences_app_protection__add_extra_security_by_requiring_your_signal_pin_to_register">Als zusätzliches Sicherheitsmerkmal deine Signal-PIN erforderlich machen, sobald du deine Rufnummer erneut bei Signal registrierst.</string>
<string name="preferences_app_protection__reminders_help_you_remember_your_pin">Erinnerungen helfen dir beim Merken deiner PIN, da diese nicht wiederhergestellt werden kann. Sie wird mit der Zeit seltener abgefragt.</string>
<string name="preferences_app_protection__turn_off">Ausschalten</string>
<string name="preferences_app_protection__confirm_pin">PIN bestätigen</string>

View File

@ -879,7 +879,7 @@
<string name="MessageRecord_you_canceled_your_request_to_join_the_group">Ακύρωσες το αίτημά σου για είσοδο στην ομάδα.</string>
<string name="MessageRecord_s_canceled_their_request_to_join_the_group">Ο/Η %1$s ακύρωσε το αίτημά του/της για είσοδο στην ομάδα.</string>
<!--End of GV2 specific update messages-->
<string name="MessageRecord_your_safety_number_with_s_has_changed">Ο αριθμός ασφαλείας σπυ με τον/την %s έχει αλλάξει.</string>
<string name="MessageRecord_your_safety_number_with_s_has_changed">Ο αριθμός ασφαλείας σου με τον/την %s έχει αλλάξει.</string>
<string name="MessageRecord_you_marked_your_safety_number_with_s_verified">Σημείωσες τον αριθμό ασφαλείας σου με τον/την %s ως επιβεβαιωμένο</string>
<string name="MessageRecord_you_marked_your_safety_number_with_s_verified_from_another_device">Σημείωσες τον αριθμό ασφαλείας σου με τον/την %s ως επιβεβαιωμένο από άλλη συσκευή</string>
<string name="MessageRecord_you_marked_your_safety_number_with_s_unverified">Σημείωσες τον αριθμό ασφαλείας σου με τον/την %s ως μη επιβεβαιωμένο</string>
@ -1736,6 +1736,7 @@
<string name="preferences__slow">Αργό</string>
<string name="preferences__help">Βοήθεια</string>
<string name="preferences__advanced">Για προχωρημένους</string>
<string name="preferences__donate_to_signal">Κάνε μια δωρεά στο Signal</string>
<string name="preferences__privacy">Ιδιωτικότητα</string>
<string name="preferences__mms_user_agent">MMS User Agent</string>
<string name="preferences__advanced_mms_access_point_names">Ρυθμίσεις MMS</string>
@ -1923,14 +1924,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Αντιγραφή στο πρόχειρο</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Σύγκριση με το πρόχειρο</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Η έκδοση του Signal σου είναι παλιά</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Η έκδοση του Signal σου είναι παλιά</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Η έκδοση Signal σου θα λήξει σε %d ημέρα. Πάτα για να αναβαθμίσεις στην πιο πρόσφατη έκδοση.</item>
<item quantity="other">Η έκδοση Signal σου θα λήξει σε %d ημέρες. Πάτα για να αναβαθμίσεις στην πιο πρόσφατη έκδοση. </item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Η έκδοση του Signal σου θα λήξει σήμερα. Πάτα για να αναβαθμίσεις στην πιο πρόσφατη έκδοση.</string>
<string name="reminder_header_expired_build">Η έκδοση του Signal σου έχει λήξει!</string>
<string name="reminder_header_expired_build_details">Τα μηνύματα δεν θα στέλνονται πια με επιτυχία. Πάτα για να αναβαθμίσεις στην πιο πρόσφατη έκδοση.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Η έκδοση του Signal σου θα λήξει σήμερα. Πάτα για να αναβαθμίσεις στην πιο πρόσφατη έκδοση.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Η έκδοση του Signal σου έχει λήξει!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Τα μηνύματα δεν θα στέλνονται πια με επιτυχία. Πάτα για να αναβαθμίσεις στην πιο πρόσφατη έκδοση.</string> -->
<string name="reminder_header_sms_default_title">Χρήση ως προκαθορισμένη εφαρμογή για τα SMS</string>
<string name="reminder_header_sms_default_text">Πάτα για να κάνεις το Signal την προκαθορισμένη εφαρμογή για τα SMS.</string>
<string name="reminder_header_sms_import_title">Εισαγωγή SMS συστήματος</string>

View File

@ -1888,14 +1888,14 @@ Ricevis mesaĝon pri interŝanĝo de ŝlosiloj por nevalida protokola versio.
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopii al tondujo</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Kompari kun la tondujo</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Via Signal-versio estas neĝisdata</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Via Signal-versio estas neĝisdata</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Via Signal-versio senvalidiĝos post %d tago. Tuŝetu por ĝisdatigi al plej nova versio.</item>
<item quantity="other">Via Signal-versio senvalidiĝos post %d tagoj. Tuŝetu por ĝisdatigi al plej nova versio.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Via Signal-versio senvalidiĝos hodiaŭ. Tuŝetu por ĝisdatigi al plej nova versio.</string>
<string name="reminder_header_expired_build">Via Signal-versio senvalidiĝis!</string>
<string name="reminder_header_expired_build_details">Mesaĝoj ne plu sendiĝos sukcese. Tuŝetu por ĝisdatigi al plej nova versio.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Via Signal-versio senvalidiĝos hodiaŭ. Tuŝetu por ĝisdatigi al plej nova versio.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Via Signal-versio senvalidiĝis!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Mesaĝoj ne plu sendiĝos sukcese. Tuŝetu por ĝisdatigi al plej nova versio.</string> -->
<string name="reminder_header_sms_default_title">Uzi kiel defaŭltan SMS-aplikaĵon</string>
<string name="reminder_header_sms_default_text">Tuŝetu, por ke Signal estu via defaŭlta SMS-aplikaĵo.</string>
<string name="reminder_header_sms_import_title">Importi SMS-ojn el la sistemo</string>

View File

@ -1741,6 +1741,7 @@ Se recibió un mensaje de intercambio de claves para una versión no válida del
<string name="preferences__slow">Lento</string>
<string name="preferences__help">Ayuda</string>
<string name="preferences__advanced">Avanzado</string>
<string name="preferences__donate_to_signal">Donar a Signal</string>
<string name="preferences__privacy">Privacidad</string>
<string name="preferences__mms_user_agent">Agente de usuari* de MMS</string>
<string name="preferences__advanced_mms_access_point_names">Configuración manual de MMS</string>
@ -1880,7 +1881,7 @@ Se recibió un mensaje de intercambio de claves para una versión no válida del
<!--conversation_list-->
<string name="conversation_list_settings_shortcut">Atajo a ajustes</string>
<string name="conversation_list_search_description">Buscar</string>
<string name="conversation_list__pinned">Fijado</string>
<string name="conversation_list__pinned">Chat(s) fijado(s)</string>
<string name="conversation_list__chats">Chats</string>
<string name="conversation_list__you_can_only_pin_up_to_d_chats">Puedes fijar hasta %1$d chats destacados</string>
<!--conversation_list_item_view-->
@ -1928,14 +1929,14 @@ Se recibió un mensaje de intercambio de claves para una versión no válida del
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copiar al portapapeles</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Comparar con el portapapeles</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Tu versión de Signal está obsoleta</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Tu versión de Signal está obsoleta</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Esta versión de Signal caducará en %d día. Toca para actualizar a la versión más reciente.</item>
<item quantity="other">Esta versión de Signal caducará en %d días. Toca para actualizar a la versión más reciente.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Esta versión de Signal caduca hoy. Toca para actualizarla a la versión más reciente.</string>
<string name="reminder_header_expired_build">¡Esta versión de Signal ha caducado!</string>
<string name="reminder_header_expired_build_details">Ya no se mandarán más mensajes. Toca para actualizar a la versión más reciente.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Esta versión de Signal caduca hoy. Toca para actualizarla a la versión más reciente.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">¡Esta versión de Signal ha caducado!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Ya no se mandarán más mensajes. Toca para actualizar a la versión más reciente.</string> -->
<string name="reminder_header_sms_default_title">Usar como aplicación de SMS predeterminada</string>
<string name="reminder_header_sms_default_text">Toca para hacer de Signal tu aplicación de SMS predeterminada.</string>
<string name="reminder_header_sms_import_title">Importar SMS del sistema</string>

View File

@ -1660,6 +1660,7 @@
<string name="preferences__slow">Aeglane</string>
<string name="preferences__help">Abi</string>
<string name="preferences__advanced">Täpsem</string>
<string name="preferences__donate_to_signal">Anneta Signal-ile</string>
<string name="preferences__privacy">Privaatsus</string>
<string name="preferences__mms_user_agent">MMS kasutajaagent</string>
<string name="preferences__advanced_mms_access_point_names">Käsitsi määratud MMS-seaded</string>
@ -1826,14 +1827,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopeeri lõikelauale</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Võrdle lõikelauaga</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Sinu Signali versioon on aegunud</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Sinu Signali versioon on aegunud</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Sinu Signali versioon aegub %d päeva pärast. Koputa, et uuendada uusimale versioonile.</item>
<item quantity="other">Sinu Signali versioon aegub %d päeva pärast. Koputa, et uuendada uusimale versioonile.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Sinu Signali versioon aegub täna. Koputa, et uuendada uusimale versioonile.</string>
<string name="reminder_header_expired_build">Sinu Signali versioon on aegunud!</string>
<string name="reminder_header_expired_build_details">Sõnumeid ei saadeta enam edukalt. Koputa, et uuendada uusimale versioonile.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Sinu Signali versioon aegub täna. Koputa, et uuendada uusimale versioonile.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Sinu Signali versioon on aegunud!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Sõnumeid ei saadeta enam edukalt. Koputa, et uuendada uusimale versioonile.</string> -->
<string name="reminder_header_sms_default_title">Kasuta vaikimisi SMS-rakendusena</string>
<string name="reminder_header_sms_default_text">Koputa, et teha Signal SMSi vaikerakenduseks.</string>
<string name="reminder_header_sms_import_title">Impordi süsteemi SMSid</string>

View File

@ -1773,14 +1773,14 @@ Inportatu \'SMSBackup and Restorekin\' bateragarria den enkriptatu gabeko babesk
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopiatu arbelera</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Arbelarekin konparatu</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Zure Signal bertsioa zaharkitua dago</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Zure Signal bertsioa zaharkitua dago</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Zure Signal-en bertsioa egun %d barru iraungiko da. Sakatu azkenengo bertsiora eguneratzeko.</item>
<item quantity="other">Zure Signal-en bertsioa %d egun barru iraungiko da. Sakatu azkenengo bertsiora eguneratzeko.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Gaur amaituko da zure Signal bertsioa erabiltzeko epea. Ukitu azken bertsioara eguneratzeko.</string>
<string name="reminder_header_expired_build">Amaitu da zure Signal bertsioa erabiltzeko epea!</string>
<string name="reminder_header_expired_build_details">Mezuak ezingo dira bidali. Ukitu azken bertsiora eguneratzeko.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Gaur amaituko da zure Signal bertsioa erabiltzeko epea. Ukitu azken bertsioara eguneratzeko.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Amaitu da zure Signal bertsioa erabiltzeko epea!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Mezuak ezingo dira bidali. Ukitu azken bertsiora eguneratzeko.</string> -->
<string name="reminder_header_sms_default_title">Lehenetsitako SMS aplikazio gisa erabili</string>
<string name="reminder_header_sms_default_text">Ukitu Signal zure SMS aplikazio lehenetsia bihurtzeko</string>
<string name="reminder_header_sms_import_title">Importatu sistemaren SMS mezuak</string>

View File

@ -1841,14 +1841,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">کپی به کلیپ بورد</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">مقایسه با کلیپ بورد</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">نسخه Signal شما قدیمی است.</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">نسخه Signal شما قدیمی است.</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">نسخهٔ Signal شما بعد از %d روز منقضی خواهد شد. برای به‌روزرسانی به آخرین نسخه ضربه بزنید.</item>
<item quantity="other">نسخهٔ Signal شما بعد از %d روز منقضی خواهد شد. برای به‌روزرسانی به آخرین نسخه ضربه بزنید.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">نسخهٔ Signal شما امروز منقضی می‌شود. برای به‌روزرسانی به آخرین نسخه ضربه بزنید.</string>
<string name="reminder_header_expired_build">نسخهٔ Signal شما منقضی است.</string>
<string name="reminder_header_expired_build_details">پیام‌ها دیگر با موفقیت ارسال نخواهند شد. برای به‌روزرسانی به آخرین نسخه ضربه بزنید.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">نسخهٔ Signal شما امروز منقضی می‌شود. برای به‌روزرسانی به آخرین نسخه ضربه بزنید.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">نسخهٔ Signal شما منقضی است.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">پیام‌ها دیگر با موفقیت ارسال نخواهند شد. برای به‌روزرسانی به آخرین نسخه ضربه بزنید.</string> -->
<string name="reminder_header_sms_default_title">استفاده به صورت برنامهٔ پیش‌فرض پیامک</string>
<string name="reminder_header_sms_default_text">برای تبدیل Signal به برنامهٔ پیش‌فرض پیامک خود ضربه بزنید.</string>
<string name="reminder_header_sms_import_title">وارد کردن پیامک‌های سیستم</string>

View File

@ -449,6 +449,7 @@
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">Odottavat jäsenpyynnöt</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">Ei odottavia jäsenpyyntöjä.</string>
<string name="RequestingMembersFragment_explanation">Tässä luettelossa olevat henkilöt yrittävät liittyä ryhmään ryhmälinkin kautta.</string>
<string name="RequestingMembersFragment_added_s">Lisäsi \"%1$s\"</string>
<string name="RequestingMembersFragment_denied_s">Hylkäsi \"%1$s\"</string>
<!--AddMembersActivity-->
@ -610,6 +611,7 @@
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_links_coming_soon">Ryhmälinkit tulossa pian</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal_to_use_group_links">Päivitä Signal käyttääksesi ryhmälinkkejä</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_coming_soon">Signal ei vielä tue ryhmään liittymistä linkin kautta. Tämä ominaisuus julkaistaan tulevassa päivityksessä.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">Käyttämäsi versio Signalista ei tue ryhmälinkkejä. Päivitä uusimpaan versioon liittyäksesi tähän ryhmään linkin kautta.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal">Päivitä Signal</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_link_is_not_valid">Ryhmälinkki ei ole kelvollinen</string>
<!--GV2 Request confirmation dialog-->
@ -845,10 +847,19 @@
<string name="MessageRecord_s_changed_who_can_edit_group_membership_to_s">%1$s muutti kuka voi muokata ryhmän jäsenyyttä käyttäjiin \"%2$s\".</string>
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">Ryhmän jäsenyyttä voi nyt muokata \"%1$s\".</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_off_the_group_link">Poistit ryhmälinkin käytöstä.</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s poisti ryhmälinkin käytöstä.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">Ryhmälinkki on poistettu käytöstä.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Sinä uudelleenasetit ryhmälinkin.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s uudelleenasetti ryhmälinkin.</string>
<string name="MessageRecord_the_group_link_has_been_reset">Ryhmälinkki on asetettu uudelleen.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Liityit ryhmään ryhmälinkin kautta.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s liittyi ryhmään ryhmälinkin kautta.</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">Lähetit pyynnön liittyä ryhmään.</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s pyytää liittyä ryhmään ryhmälinkin kautta.</string>
<!--GV2 group link approvals-->
<string name="MessageRecord_s_approved_your_request_to_join_the_group">%1$s hyväksyi pyyntösi liittyä ryhmään.</string>
<string name="MessageRecord_s_approved_a_request_to_join_the_group_from_s">%1$s hyväksyi henkilön %2$s pyynnön liittyä ryhmään.</string>
@ -1424,6 +1435,7 @@ Vastaanotetiin avaintenvaihtoviesti, joka kuuluu väärälle protokollaversiolle
<!--safety_number_change_dialog-->
<string name="safety_number_change_dialog__safety_number_changes">Turvanumeroiden vaihdot</string>
<string name="safety_number_change_dialog__send_anyway">Lähetä joka tapauksessa</string>
<string name="safety_number_change_dialog__call_anyway">Soita joka tapauksessa</string>
<string name="safety_number_change_dialog__the_following_people_may_have_reinstalled_or_changed_devices">Seuraavat henkilöt ovat saattaneet uudelleenasentaa tai vaihtaneet laitteita. Varmenna turvanumerosi heidän kanssaan yksityisyyden takaamiseksi.</string>
<string name="safety_number_change_dialog__view">Näytä</string>
<string name="safety_number_change_dialog__previous_verified">Aikaisemmin varmennettu</string>
@ -1717,6 +1729,7 @@ Vastaanotetiin avaintenvaihtoviesti, joka kuuluu väärälle protokollaversiolle
<string name="preferences__slow">Hidas</string>
<string name="preferences__help">Tuki </string>
<string name="preferences__advanced">Lisäasetukset</string>
<string name="preferences__donate_to_signal">Lahjoita Signalille</string>
<string name="preferences__privacy">Yksityisyys</string>
<string name="preferences__mms_user_agent">MMS User Agent</string>
<string name="preferences__advanced_mms_access_point_names">Manuaaliset MMS-asetukset</string>
@ -1730,6 +1743,8 @@ Vastaanotetiin avaintenvaihtoviesti, joka kuuluu väärälle protokollaversiolle
<string name="preferences__chats">Keskustelut ja liitetiedostot</string>
<string name="preferences__storage">Tallennustila</string>
<string name="preferences__conversation_length_limit">Keskustelun pituusraja</string>
<string name="preferences__keep_messages">Säilytä viestit</string>
<string name="preferences__clear_message_history">Tyhjennä viestihistoria</string>
<string name="preferences__linked_devices">Yhdistetyt laitteet</string>
<string name="preferences__light_theme">Vaalea</string>
<string name="preferences__dark_theme">Tumma</string>
@ -1759,18 +1774,34 @@ Vastaanotetiin avaintenvaihtoviesti, joka kuuluu väärälle protokollaversiolle
<string name="preferences_chats__when_using_wifi">Wi-Fi-verkossa</string>
<string name="preferences_chats__when_roaming">Roaming-tilassa</string>
<string name="preferences_chats__media_auto_download">Liitetiedostojen automaattinen lataus</string>
<string name="preferences_chats__message_history">Viestihistoria</string>
<string name="preferences_storage__storage_usage">Tallennustilan käyttö</string>
<string name="preferences_storage__photos">Kuvat</string>
<string name="preferences_storage__videos">Videot</string>
<string name="preferences_storage__files">Tiedostot</string>
<string name="preferences_storage__audio">Äänitiedosto</string>
<string name="preferences_storage__review_storage">Tarkista tallennustila</string>
<string name="preferences_storage__delete_older_messages">Poistetaanko vanhemmat viestit?</string>
<string name="preferences_storage__clear_message_history">Tyhjennetäänkö viestihistoria?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Tämä poistaa pysyvästi kaikki viestit ja mediatiedostot laitteeltasi, jotka ovat vanhempia kuin %1$s.</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Tämä rajaa kaikki keskustelut pysyvästi %1$s viimeisimpään viestiin.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Tämä poistaa pysyvästi kaikki viestit ja mediatiedostot laitteeltasi.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Haluatko varmasti poistaa kaiken viestihistorian?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">Kaikki viestihistoria poistetaan pysyvästi. Tätä toimintoa ei voi kumota.</string>
<string name="preferences_storage__delete_all_now">Poista kaikki nyt</string>
<string name="preferences_storage__forever">Ikuisesti</string>
<string name="preferences_storage__one_year">1 vuosi</string>
<string name="preferences_storage__six_months">6 kuukautta</string>
<string name="preferences_storage__thirty_days">30 päivää</string>
<string name="preferences_storage__none">Ei mitään</string>
<string name="preferences_storage__s_messages">%1$s viestiä</string>
<string name="preferences_storage__custom">Mukautettu</string>
<string name="preferences_Storage__custom_conversation_length_limit">Mukautettu keskustelun pituusraja</string>
<string name="preferences_advanced__use_system_emoji">Käytä järjestelmän hymiöitä</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Ota Signalin oletushymiöt pois käytöstä</string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">Välitä kaikki puhelut Signal-palvelimen kautta välttääksesi IP-osoitteesi paljastumista yhteystiedollesi. Tämä toiminto heikentää puhelun laatua.</string>
<string name="preferences_advanced__always_relay_calls">Välitä aina kaikki puhelut</string>
<string name="preferences_app_protection__who_can">Kuka voi…</string>
<string name="preferences_app_protection__app_access">Sovelluksen käyttö</string>
<string name="preferences_app_protection__communication">Kommunikointi</string>
<string name="preferences_chats__chats">Keskustelut</string>
@ -1795,6 +1826,7 @@ Vastaanotetiin avaintenvaihtoviesti, joka kuuluu väärälle protokollaversiolle
<string name="preferences_notifications__notify_me">Ilmoita minulle</string>
<string name="preferences_notifications__receive_notifications_when_youre_mentioned_in_muted_chats">Vastaanota ilmoituksia, kun sinut mainitaan mykistetyissä keskusteluissa</string>
<string name="preferences_setup_a_username">Aseta käyttäjätunnus</string>
<string name="configurable_single_select__customize_option">Mukauta vaihtoehto</string>
<!--Internal only preferences-->
<!--****************************************-->
<!--menus-->
@ -1884,14 +1916,14 @@ Vastaanotetiin avaintenvaihtoviesti, joka kuuluu väärälle protokollaversiolle
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopioi leikepöydälle</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Vertaa leikepöytään</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Käyttämäsi Signalin versio on vanhentunut!</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Käyttämäsi Signalin versio on vanhentunut!</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Käyttämäsi Signalin versio vanhenee %d päivässä. Napauta päivittääksesi viimeisimpään versioon.</item>
<item quantity="other">Käyttämäsi Signalin versio vanhenee %d päivässä. Napauta päivittääksesi viimeisimpään versioon.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Käyttämäsi Signalin versio vanhenee tänään. Napauta päivittääksesi viimeisimpään versioon.</string>
<string name="reminder_header_expired_build">Käyttämäsi Signalin versio on vanhentunut!</string>
<string name="reminder_header_expired_build_details">Viestien lähetys ei enää onnistu. Napauta päivittääksesi viimeisimpään versioon.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Käyttämäsi Signalin versio vanhenee tänään. Napauta päivittääksesi viimeisimpään versioon.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Käyttämäsi Signalin versio on vanhentunut!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Viestien lähetys ei enää onnistu. Napauta päivittääksesi viimeisimpään versioon.</string> -->
<string name="reminder_header_sms_default_title">Käytä oletuksena tekstiviesteille?</string>
<string name="reminder_header_sms_default_text">Napauta, jos haluat tehdä Signalista oletustekstiviestisovelluksesi.</string>
<string name="reminder_header_sms_import_title">Tuo järjestelmän tekstiviestit</string>
@ -2093,7 +2125,14 @@ Vastaanotetiin avaintenvaihtoviesti, joka kuuluu väärälle protokollaversiolle
<string name="RegistrationActivity_code_support_subject">Signalin rekisteröinti - vahvistuskoodi Androidille</string>
<string name="BackupUtil_never">ei koskaan</string>
<string name="BackupUtil_unknown">Tuntematon</string>
<string name="PhoneNumberPrivacy_nobody">Ei kenellekkään</string>
<string name="preferences_app_protection__see_my_phone_number">Nähdä minun puhelinnumero</string>
<string name="preferences_app_protection__find_me_by_phone_number">Löytää minut puhelinnumeron perusteella</string>
<string name="PhoneNumberPrivacy_everyone">Kaikki</string>
<string name="PhoneNumberPrivacy_my_contacts">Yhteystietoni</string>
<string name="PhoneNumberPrivacy_nobody">Ei kukaan</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Puhelinnumerosi näkyy kaikille ihmisille ja ryhmille, joille lähetät viestejä.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Jokainen, jolla on puhelinnumerosi yhteystiedoissa, näkee sinut yhteystietona Signalissa. Muut voivat löytää sinut haun kautta.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Vain yhteystietosi näkevät puhelinnumerosi Signalissa.</string>
<string name="preferences_app_protection__screen_lock">Näytön lukitus</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Lukitse Signal Androidin näytön lukituksella tai sormenjäljellä</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">Automaattisen näytön lukituksen odotusaika</string>

View File

@ -449,6 +449,7 @@
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">Demandes de membres en attente</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">Il ny a aucune demande de membre à afficher.</string>
<string name="RequestingMembersFragment_explanation">Des personnes de cette liste tentent de se joindre à ce groupe grâce au lien de groupe.</string>
<string name="RequestingMembersFragment_added_s">« %1$s » a été ajouté</string>
<string name="RequestingMembersFragment_denied_s">« %1$s » a été refusé</string>
<!--AddMembersActivity-->
@ -845,11 +846,17 @@
<string name="MessageRecord_s_changed_who_can_edit_group_membership_to_s">%1$s a changé qui peut modifier les membres du groupe en « %2$s ».</string>
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">Qui peut modifier les membres du groupe a été changé en « %1$s ».</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Vous avez activé le lien de groupe partageable avec approbation dun administrateur.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Vous avez désactivé le lien de groupe partageable.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Vous avez activé le lien de groupe et lapprobation dun administrateur est désactivée.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Vous avez activé le lien de groupe et lapprobation dun administrateur est activée.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Vous avez désactivé le lien de groupe.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">%1$s a activé le lien de groupe et lapprobation dun administrateur est désactivée.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">%1$s a activé le lien de groupe et lapprobation dun administrateur est activée.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">Le lien de groupe a été activé et lapprobation dun administrateur est désactivée.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">Le lien de groupe a été activé et lapprobation dun administrateur est activée.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Vous avez réinitialisé le lien de groupe.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Vous avez rejoint le groupe grâce au lien de groupe.</string>
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Vous êtes joint au groupe grâce au lien de groupe.</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">Vous avez demandé à vous joindre au groupe.</string>
<!--GV2 group link approvals-->
@ -1716,6 +1723,7 @@
<string name="preferences__slow">Lent</string>
<string name="preferences__help">Aide </string>
<string name="preferences__advanced">Avancés</string>
<string name="preferences__donate_to_signal">Faire un don à Signal</string>
<string name="preferences__privacy">Confidentialité</string>
<string name="preferences__mms_user_agent">Agent utilisateur MMS</string>
<string name="preferences__advanced_mms_access_point_names">Paramètres manuels de messagerie multimédia</string>
@ -1765,7 +1773,7 @@
<string name="preferences_storage__audio">Son</string>
<string name="preferences_storage__review_storage">État de la mémoire</string>
<string name="preferences_storage__one_year">1 an</string>
<string name="preferences_storage__none">Aucune</string>
<string name="preferences_storage__none">Aucun</string>
<string name="preferences_storage__custom">Personnalisé</string>
<string name="preferences_advanced__use_system_emoji">Utiliser les émojis du système</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Désactiver la prise en charge des émojis intégrés à Signal</string>
@ -1837,7 +1845,7 @@
<!--conversation_list-->
<string name="conversation_list_settings_shortcut">Raccourci des paramètres</string>
<string name="conversation_list_search_description">Chercher</string>
<string name="conversation_list__pinned">Épinglé</string>
<string name="conversation_list__pinned">Épinglée</string>
<string name="conversation_list__chats">Conversations</string>
<string name="conversation_list__you_can_only_pin_up_to_d_chats">Vous pouvez seulement épingler jusquà %1$d conversations</string>
<!--conversation_list_item_view-->
@ -1884,14 +1892,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copier dans le presse-papiers</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Comparer avec le presse-papiers</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Votre version de Signal est désuète</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Votre version de Signal est désuète</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Votre version de Signal expirera dans %d jour. Touchez pour passer à la version la plus récente.</item>
<item quantity="other">Votre version de Signal expirera dans %d jours. Touchez pour passer à la version la plus récente.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Votre version de Signal expirera aujourdhui. Touchez pour passer à la version la plus récente.</string>
<string name="reminder_header_expired_build">Cette version de Signal est expirée.</string>
<string name="reminder_header_expired_build_details">Les messages ne seront plus envoyés correctement. Touchez pour passer à la version la plus récente.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Votre version de Signal expirera aujourdhui. Touchez pour passer à la version la plus récente.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Cette version de Signal est expirée.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Les messages ne seront plus envoyés correctement. Touchez pour passer à la version la plus récente.</string> -->
<string name="reminder_header_sms_default_title">Utiliser comme appli de textos par défaut</string>
<string name="reminder_header_sms_default_text">Touchez pour faire de Signal votre appli de texto par défaut.</string>
<string name="reminder_header_sms_import_title">Importer les textos du système</string>

View File

@ -1071,10 +1071,10 @@ a shonrú</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Macasamhlaigh chuig an ghearrthaisce</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Cuir i gcomórtas leis an ngearrthaisce</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Tá an leagan de Signal a bhfuil agat seanda</string>
<string name="reminder_header_outdated_build_details_today">Rachaidh do leagan Signal as bhfeidhm inniu. Cnag chun é a nuashonrú chuig an leagan is deanaí.</string>
<string name="reminder_header_expired_build">Tá an leagan de Signal atá agat as feidhm!</string>
<string name="reminder_header_expired_build_details">Ní sheolfar go rathúil teachtaireachtaí a thuilleadh. Cnag chun é a nuashonrú chuig an leagan is déanaí.</string>
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Tá an leagan de Signal a bhfuil agat seanda</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Rachaidh do leagan Signal as bhfeidhm inniu. Cnag chun é a nuashonrú chuig an leagan is deanaí.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Tá an leagan de Signal atá agat as feidhm!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Ní sheolfar go rathúil teachtaireachtaí a thuilleadh. Cnag chun é a nuashonrú chuig an leagan is déanaí.</string> -->
<string name="reminder_header_sms_default_title">Úsáid mar aip SMS réamhshocrú</string>
<string name="reminder_header_sms_default_text">Cnag chun Signal a úsáid mar aip SMS réamhshocrú</string>
<string name="reminder_header_sms_import_title">Tabhair isteach SMS an chórais</string>

View File

@ -1560,14 +1560,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copiar ao portapapeis</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Comparar co portapapeis</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">A túa versión de Signal está desactualizada</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">A túa versión de Signal está desactualizada</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">A túa versión de Signal caduca en %d día. Toca para actualizar á versión máis recente.</item>
<item quantity="other">A túa versión de Signal caduca en %d días. Toca para actualizar á versión máis recente.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">A túa versión de Signal caduca hoxe. Toca para actualizar á versión máis recente.</string>
<string name="reminder_header_expired_build">A túa versión de Signal caducou!</string>
<string name="reminder_header_expired_build_details">As mensaxes non se enviarán satisfactoriamente. Toca para actualizar á versión máis recente.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">A túa versión de Signal caduca hoxe. Toca para actualizar á versión máis recente.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">A túa versión de Signal caducou!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">As mensaxes non se enviarán satisfactoriamente. Toca para actualizar á versión máis recente.</string> -->
<string name="reminder_header_sms_default_title">Aplicación predefinida das SMS</string>
<string name="reminder_header_sms_default_text">Toca para facer de Signal a túa aplicación predefinida de SMS</string>
<string name="reminder_header_sms_import_title">Importar SMS do sistema</string>

View File

@ -1432,14 +1432,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">ક્લિપબોર્ડ પર કૉપી કરેલું</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">ક્લિપબોર્ડ સાથે તુલના કરો</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">તમારું Signal નું વર્ઝન જૂનું છે</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">તમારું Signal નું વર્ઝન જૂનું છે</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">તમારું Signal નું વર્ઝન %d દિવસો સમાપ્ત થશે. સૌથી તાજેતરના વર્ઝન પર અપડેટ કરવા માટે ટેપ કરો.</item>
<item quantity="other">તમારું Signal નું વર્ઝન%d દિવસોમાં સમાપ્ત થશે. સૌથી તાજેતરના વર્ઝન પર અપડેટ કરવા માટે ટેપ કરો.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">તમારું Signal નું વર્ઝન આજે સમાપ્ત થશે. સૌથી તાજેતરના વર્ઝન પર અપડેટ કરવા માટે ટેપ કરો.</string>
<string name="reminder_header_expired_build">તમારું Signal નું વર્ઝન સમાપ્ત થઈ ગયું છે!</string>
<string name="reminder_header_expired_build_details">મેસેજ હવે સફળતાપૂર્વક મોકલશે નહીં. સૌથી તાજેતરના વર્ઝન પર અપડેટ કરવા માટે ટેપ કરો.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">તમારું Signal નું વર્ઝન આજે સમાપ્ત થશે. સૌથી તાજેતરના વર્ઝન પર અપડેટ કરવા માટે ટેપ કરો.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">તમારું Signal નું વર્ઝન સમાપ્ત થઈ ગયું છે!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">મેસેજ હવે સફળતાપૂર્વક મોકલશે નહીં. સૌથી તાજેતરના વર્ઝન પર અપડેટ કરવા માટે ટેપ કરો.</string> -->
<string name="reminder_header_sms_default_title">ડિફોલ્ટ SMS એપ્લિકેશન તરીકે ઉપયોગ કરો</string>
<string name="reminder_header_sms_default_text">તમારી ડિફોલ્ટ SMS એપ્લિકેશન Signal બનાવવા માટે ટેપ કરો.</string>
<string name="reminder_header_sms_import_title">સિસ્ટમ SMS ઇમ્પોર્ટ કરો</string>

View File

@ -1436,14 +1436,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kwafa zuwa allon rubutu</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Hada da allon rubutu</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Sigar Signal dinka/ki ya tsufa</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Sigar Signal dinka/ki ya tsufa</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Sigar Signal dinka/ki zai zo karshen aiki cikin kwana %d. Taba domin sabuntawa zuwa sabon sigar.</item>
<item quantity="other">Saura kwana %d wannan sigar Signal din zata daina aiki a naurarka/ki. Taba do saukar da sabuwar ingantacciyar manhajar Signal..</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Yau ne ranar wa\'adin sigar Signal dinka/ki. Taba domin sabunta zuwa mafi sabon siga.</string>
<string name="reminder_header_expired_build">Sigar Signal dinka/ki ya zo karshen aiki!</string>
<string name="reminder_header_expired_build_details">Za\'a daina samun nasarar aikar da sakonni. Taba domin sabunta zuwa mafi sabon sigar.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Yau ne ranar wa\'adin sigar Signal dinka/ki. Taba domin sabunta zuwa mafi sabon siga.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Sigar Signal dinka/ki ya zo karshen aiki!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Za\'a daina samun nasarar aikar da sakonni. Taba domin sabunta zuwa mafi sabon sigar.</string> -->
<string name="reminder_header_sms_default_title">Yi amfani dashi a matsayin tanadadden manhajar SMS</string>
<string name="reminder_header_sms_default_text">Taba domin mayar da Signal tanadadden manhajarka/ki wajen tura sakonin SMS dinka/ki.</string>
<string name="reminder_header_sms_import_title">Shigar da SMS din na\'ura</string>

View File

@ -1443,14 +1443,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">क्लिपबोर्ड पर कॉपी करें</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">क्लिपबोर्ड के साथ तुलना करें</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Signal का आपका वर्ज़न पुराना है</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Signal का आपका वर्ज़न पुराना है</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Signal का आपका वर्ज़न %d दिनों में समाप्त हो जाएगा। नवीनतम वर्ज़न में अपडेट करने के लिए टैप करें।</item>
<item quantity="other">Signal का आपका वर्ज़न %d दिनों में समाप्त हो जाएगा। नवीनतम वर्ज़न में अपडेट करने के लिए टैप करें।</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Signal का आपका वर्ज़न आज समाप्त हो जाएगा। नवीनतम वर्ज़न में अपडेट करने के लिए टैप करें।</string>
<string name="reminder_header_expired_build">Signal का आपका वर्ज़न समाप्त हो गया है!</string>
<string name="reminder_header_expired_build_details">मेसेज अब सफलतापूर्वक नहीं भेजे जाएंगे। नवीनतम वर्ज़न में अपडेट करने के लिए टैप करें।</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Signal का आपका वर्ज़न आज समाप्त हो जाएगा। नवीनतम वर्ज़न में अपडेट करने के लिए टैप करें।</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Signal का आपका वर्ज़न समाप्त हो गया है!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">मेसेज अब सफलतापूर्वक नहीं भेजे जाएंगे। नवीनतम वर्ज़न में अपडेट करने के लिए टैप करें।</string> -->
<string name="reminder_header_sms_default_title">डिफ़ॉल्ट SMS ऐप के रूप में उपयोग करें</string>
<string name="reminder_header_sms_default_text">अपने डिफ़ॉल्ट SMS ऐप को Signal करने के लिए टैप करें</string>
<string name="reminder_header_sms_import_title">सिस्टम SMS आयात करें</string>

View File

@ -1462,15 +1462,15 @@ Uvezi nekriptiranu kopiju. Kompatibilno s \'SMSBackup And Restore\'.</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopiraj u međuspremnik</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Usporedi s međuspremnikom</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Vaša Signal inačica je istekla!</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Vaša Signal inačica je istekla!</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Vaša verzija Signala ističe za %d dan. Dodirnite za ažuriranje najnovije verzije.</item>
<item quantity="few">Vaša verzija Signala ističe za %d dana. Dodirnite za ažuriranje najnovije verzije.</item>
<item quantity="other">Vaša verzija Signal-a ističe za %d dana. Dodirnite za ažuriranje najnovije verzije.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Vaša će verzija Signala isteći danas. Dodirnite za ažuriranje na najnoviju inačicu.</string>
<string name="reminder_header_expired_build">Vaša je verzija Signala istekla!</string>
<string name="reminder_header_expired_build_details">Poruke više neće moći biti uspješno poslane. Pritisnite za ažuriranje na najnoviju inačicu.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Vaša će verzija Signala isteći danas. Dodirnite za ažuriranje na najnoviju inačicu.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Vaša je verzija Signala istekla!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Poruke više neće moći biti uspješno poslane. Pritisnite za ažuriranje na najnoviju inačicu.</string> -->
<string name="reminder_header_sms_default_title">Koristi kao zadanu SMS aplikaciju</string>
<string name="reminder_header_sms_default_text">Pritisnite kako biste postavili Signal kao zadanu SMS aplikaciju.</string>
<string name="reminder_header_sms_import_title">Uvezi SMS poruke sustava</string>

View File

@ -1726,6 +1726,7 @@ Kulcs-csere üzenet érkezett érvénytelen protokoll verzióhoz.
<string name="preferences__slow">Lassú</string>
<string name="preferences__help">Súgó</string>
<string name="preferences__advanced">Haladó</string>
<string name="preferences__donate_to_signal">Adomány a Signal számára</string>
<string name="preferences__privacy">Adatvédelem</string>
<string name="preferences__mms_user_agent">MMS User Agent</string>
<string name="preferences__advanced_mms_access_point_names">Manuális MMS beállítások</string>
@ -1893,14 +1894,14 @@ Kulcs-csere üzenet érkezett érvénytelen protokoll verzióhoz.
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Másolás vágólapra</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Összehasonlítás vágólappal</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">A Signal-od verziója elavult</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">A Signal-od verziója elavult</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">A Signal-od verziója %d nap múlva lejár. Érints a legutóbbi verzióra történő frissítéshez.</item>
<item quantity="other">A Signal-od verziója %d nap múlva lejár. Koppints ide a legfrissebb verzióra történő frissítéshez.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">A Signal-od verziója ma le fog járni. Koppints ide a legfrissebb verzióra történő frissítéshez.</string>
<string name="reminder_header_expired_build">A Signal-od verziója lejárt!</string>
<string name="reminder_header_expired_build_details">A továbbiakban üzeneteidet nem lehet sikeresen elküldeni. Koppints ide a legfrissebb verzióra történő frissítéshez.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">A Signal-od verziója ma le fog járni. Koppints ide a legfrissebb verzióra történő frissítéshez.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">A Signal-od verziója lejárt!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">A továbbiakban üzeneteidet nem lehet sikeresen elküldeni. Koppints ide a legfrissebb verzióra történő frissítéshez.</string> -->
<string name="reminder_header_sms_default_title">Alapértelmezett SMS alkalmazás</string>
<string name="reminder_header_sms_default_text">Koppints a Signal alapértelmezett SMS alkalmazássá tételéhez.</string>
<string name="reminder_header_sms_import_title">SMS-ek importálása</string>

View File

@ -1593,13 +1593,13 @@ Menerima pesan pertukaran kunci untuk versi protokol yang tidak valid.
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Salin ke papan klip</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Bandingkan dengan papan klip</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Versi Signal Anda terlalu lama</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Versi Signal Anda terlalu lama</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="other">Versi Signal Anda akan berakhir dalam %d hari. Ketuk untuk memperbarui ke versi terkini.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Versi Signal Anda akan berakhir hari ini. Ketuk untuk memperbarui ke versi terkini.</string>
<string name="reminder_header_expired_build">Versi Signal Anda telah kedaluwarsa!</string>
<string name="reminder_header_expired_build_details">Pesan tidak lagi dapat dikirim. Ketuk untuk memperbarui ke versi terkini.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Versi Signal Anda akan berakhir hari ini. Ketuk untuk memperbarui ke versi terkini.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Versi Signal Anda telah kedaluwarsa!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Pesan tidak lagi dapat dikirim. Ketuk untuk memperbarui ke versi terkini.</string> -->
<string name="reminder_header_sms_default_title">Gunakan sebagai aplikasi SMS utama</string>
<string name="reminder_header_sms_default_text">Ketuk untuk membuat Signal menjadi aplikasi SMS utama Anda.</string>
<string name="reminder_header_sms_import_title">Impor sistem SMS</string>

View File

@ -449,6 +449,7 @@
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">Richieste di diventare membro in attesa</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">Nessuna richiesta di diventare membro da mostrare.</string>
<string name="RequestingMembersFragment_explanation">Le persone in questo elenco stanno tentando di unirsi a questo gruppo tramite il link del gruppo.</string>
<string name="RequestingMembersFragment_added_s">Aggiunto \"%1$s\"</string>
<string name="RequestingMembersFragment_denied_s">Rifiutato \"%1$s\"</string>
<!--AddMembersActivity-->
@ -610,6 +611,7 @@
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_links_coming_soon">Link dei gruppi presto disponibili</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal_to_use_group_links">Aggiorna Signal per utilizzare i link dei gruppi</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_coming_soon">Unirsi a un gruppo tramite un link non è ancora supportato da Signal. Questa funzione verrà rilasciata in un prossimo aggiornamento.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">La versione di Signal che stai utilizzando non supporta i link dei gruppi. Aggiorna alla versione più recente per unirti a questo gruppo tramite link.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal">Aggiorna Signal</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_link_is_not_valid">Il link del gruppo non è valido</string>
<!--GV2 Request confirmation dialog-->
@ -848,12 +850,22 @@
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Hai attivato il link del gruppo senza l\'approvazione degli amministratori.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Hai attivato il link del gruppo con l\'approvazione degli amministratori.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Hai disattivato il link del gruppo.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">%1$s ha attivato il link del gruppo senza l\'approvazione degli amministratori.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">%1$s ha attivato il link del gruppo con l\'approvazione degli amministratori.</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s ha disattivato il link del gruppo.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">Il link del gruppo è stato attivato senza l\'approvazione degli amministratori.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">Il link del gruppo è stato attivato con l\'approvazione degli amministratori.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">Il link del gruppo è stato disattivato.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Hai reimpostato il link del gruppo.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s ha reimpostato il link del gruppo.</string>
<string name="MessageRecord_the_group_link_has_been_reset">Il link del gruppo è stato reimpostato.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Ti sei unito al gruppo tramite il link del gruppo.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s si è unito al gruppo tramite il link del gruppo.</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">Hai inviato una richiesta a unirsi al gruppo.</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s ha richiesto di unirsi tramite il link del gruppo.</string>
<!--GV2 group link approvals-->
<string name="MessageRecord_s_approved_your_request_to_join_the_group">%1$s ha approvato la tua richiesta di unirti al gruppo.</string>
<string name="MessageRecord_s_approved_a_request_to_join_the_group_from_s">%1$s ha approvato una richiesta di unirsi al gruppo da %2$s.</string>
@ -1435,6 +1447,7 @@
<!--safety_number_change_dialog-->
<string name="safety_number_change_dialog__safety_number_changes">Modifiche al numero di sicurezza</string>
<string name="safety_number_change_dialog__send_anyway">Invia comunque</string>
<string name="safety_number_change_dialog__call_anyway">Chiama comunque</string>
<string name="safety_number_change_dialog__the_following_people_may_have_reinstalled_or_changed_devices">Le seguenti persone potrebbero aver reinstallato o cambiato i dispositivi. Verifica il tuo numero di sicurezza con loro per garantire la privacy.</string>
<string name="safety_number_change_dialog__view">Mostra</string>
<string name="safety_number_change_dialog__previous_verified">Verificato in precedenza</string>
@ -1728,6 +1741,7 @@
<string name="preferences__slow">Lento</string>
<string name="preferences__help">Aiuto</string>
<string name="preferences__advanced">Avanzate</string>
<string name="preferences__donate_to_signal">Dona a Signal</string>
<string name="preferences__privacy">Privacy</string>
<string name="preferences__mms_user_agent">User agent MMS</string>
<string name="preferences__advanced_mms_access_point_names">Impostazioni manuali MMS</string>
@ -1741,6 +1755,8 @@
<string name="preferences__chats">Chat e download</string>
<string name="preferences__storage">Memoria</string>
<string name="preferences__conversation_length_limit">Limite di lunghezza conversazione</string>
<string name="preferences__keep_messages">Conserva i messaggi</string>
<string name="preferences__clear_message_history">Cancella la cronologia dei messaggi</string>
<string name="preferences__linked_devices">Dispositivi collegati</string>
<string name="preferences__light_theme">Chiaro</string>
<string name="preferences__dark_theme">Scuro</string>
@ -1770,19 +1786,34 @@
<string name="preferences_chats__when_using_wifi">Via Wi-Fi</string>
<string name="preferences_chats__when_roaming">In roaming</string>
<string name="preferences_chats__media_auto_download">Download automatico file</string>
<string name="preferences_chats__message_history">Cronologia dei messaggi</string>
<string name="preferences_storage__storage_usage">Utilizzo memoria</string>
<string name="preferences_storage__photos">Foto</string>
<string name="preferences_storage__videos">Video</string>
<string name="preferences_storage__files">File</string>
<string name="preferences_storage__audio">Audio</string>
<string name="preferences_storage__review_storage">Esamina memoria</string>
<string name="preferences_storage__delete_older_messages">Eliminare i messaggi più vecchi?</string>
<string name="preferences_storage__clear_message_history">Cancellare la cronologia dei messaggi?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Questo eliminerà permanentemente tutta la cronologia dei messaggi e i contenuti multimediali dal tuo dispositivo più vecchi di %1$s.</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Questo ridurrà permanentemente tutte le conversazioni ai %1$s messaggi più recenti.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Questo eliminerà permanentemente tutta la cronologia dei messaggi e i contenuti multimediali dal tuo dispositivo.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Sei sicuro di voler eliminare tutta la cronologia dei messaggi?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">Tutta la cronologia dei messaggi verrà rimossa definitivamente. Questa azione non può essere annullata.</string>
<string name="preferences_storage__delete_all_now">Elimina tutto ora</string>
<string name="preferences_storage__forever">Per sempre</string>
<string name="preferences_storage__one_year">1 anno</string>
<string name="preferences_storage__six_months">6 mesi</string>
<string name="preferences_storage__thirty_days">30 giorni</string>
<string name="preferences_storage__none">Nessuno</string>
<string name="preferences_storage__s_messages">%1$s messaggi</string>
<string name="preferences_storage__custom">Personalizzato</string>
<string name="preferences_Storage__custom_conversation_length_limit">Limite di lunghezza delle conversazioni personalizzato</string>
<string name="preferences_advanced__use_system_emoji">Usa le emoji di sistema</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Disattiva le emoji di Signal</string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">Ritrasmetti le chiamate attraverso i server di Signal per non rivelare il tuo indirizzo IP ai tuoi contatti. Abilitandolo verrà ridotta la qualità della chiamata.</string>
<string name="preferences_advanced__always_relay_calls">Ritrasmetti sempre le chiamate</string>
<string name="preferences_app_protection__who_can">Chi può…</string>
<string name="preferences_app_protection__app_access">Accesso app</string>
<string name="preferences_app_protection__communication">Comunicazione</string>
<string name="preferences_chats__chats">Conversazioni</string>
@ -1807,6 +1838,7 @@
<string name="preferences_notifications__notify_me">Notificami</string>
<string name="preferences_notifications__receive_notifications_when_youre_mentioned_in_muted_chats">Ricevi le notifiche quando vieni menzionato nelle chat mutate</string>
<string name="preferences_setup_a_username">Imposta un nome utente</string>
<string name="configurable_single_select__customize_option">Personalizza opzione</string>
<!--Internal only preferences-->
<!--****************************************-->
<!--menus-->
@ -1896,14 +1928,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copia negli appunti</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Confronta con gli appunti</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">La tua versione di Signal è vecchia</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">La tua versione di Signal è vecchia</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">La tua versione di Signal scadrà in %d giorno. Tocca per aggiornare alla versione più recente.</item>
<item quantity="other">La tua versione di Signal scadrà in %d giorni. Tocca per aggiornare alla versione più recente.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">La tua versione di Signal scade oggi. Premi per aggiornare alla versione più recente.</string>
<string name="reminder_header_expired_build">La tua versione di Signal è scaduta!</string>
<string name="reminder_header_expired_build_details">I messaggi non vengono più inviati con successo. Premi per aggiornare alla versione più recente.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">La tua versione di Signal scade oggi. Premi per aggiornare alla versione più recente.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">La tua versione di Signal è scaduta!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">I messaggi non vengono più inviati con successo. Premi per aggiornare alla versione più recente.</string> -->
<string name="reminder_header_sms_default_title">Usa come app per tutti gli SMS</string>
<string name="reminder_header_sms_default_text">Tocca per usare Signal come applicazione di default per gli SMS.</string>
<string name="reminder_header_sms_import_title">Importa gli SMS di sistema</string>
@ -2105,7 +2137,13 @@
<string name="RegistrationActivity_code_support_subject">Registrazione Signal - Codice di verifica per Android</string>
<string name="BackupUtil_never">Mai</string>
<string name="BackupUtil_unknown">Sconosciuto</string>
<string name="preferences_app_protection__see_my_phone_number">Vedere il mio numero di telefono</string>
<string name="preferences_app_protection__find_me_by_phone_number">Trovarmi tramite numero di telefono</string>
<string name="PhoneNumberPrivacy_everyone">Chiunque</string>
<string name="PhoneNumberPrivacy_my_contacts">I miei contatti</string>
<string name="PhoneNumberPrivacy_nobody">Nessuno</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Il tuo numero di telefono sarà visibile a tutte le persone e ai gruppi a cui invii messaggi.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Chiunque abbia il tuo numero nei suoi contatti telefonici lo vedrà anche su Signal. Gli altri potranno trovarti nella ricerca.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Solo i tuoi contatti vedranno il tuo numero di telefono su Signal.</string>
<string name="preferences_app_protection__screen_lock">Blocco schermo</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Blocca l\'accesso a Signal con il blocco schermo di Android o la tua impronta digitale</string>

View File

@ -1831,6 +1831,7 @@
<string name="preferences__slow">איטי</string>
<string name="preferences__help">עזרה</string>
<string name="preferences__advanced">מתקדם</string>
<string name="preferences__donate_to_signal">תרום אל Signal</string>
<string name="preferences__privacy">פרטיות</string>
<string name="preferences__mms_user_agent">סוכן משתמש MMS</string>
<string name="preferences__advanced_mms_access_point_names">הגדרות MMS ידניות</string>
@ -1998,16 +1999,16 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">העתק ללוח העריכה</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">השווה עם לוח העריכה</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">גרסת Signal שלך אינה עדכנית</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">גרסת Signal שלך אינה עדכנית</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">גרסת Signal שלך תפוג תוך יום %d. הקש כדי לעדכן אל הגרסה העדכנית ביותר.</item>
<item quantity="two">גרסת Signal שלך תפוג תוך %d ימים. הקש כדי לעדכן אל הגרסה העדכנית ביותר.</item>
<item quantity="many">גרסת Signal שלך תפוג תוך %d ימים. הקש כדי לעדכן אל הגרסה העדכנית ביותר.</item>
<item quantity="other">גרסת Signal שלך תפוג תוך %d ימים. הקש כדי לעדכן אל הגרסה העדכנית ביותר.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">גרסת Signal שלך תפוג היום. הקש כדי לעדכן לגרסה העדכנית ביותר.</string>
<string name="reminder_header_expired_build">גרסת Signal שלך פגה!</string>
<string name="reminder_header_expired_build_details">הודעות לא יישלחו יותר בהצלחה. הקש כדי לעדכן אל הגרסה העדכנית ביותר.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">גרסת Signal שלך תפוג היום. הקש כדי לעדכן לגרסה העדכנית ביותר.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">גרסת Signal שלך פגה!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">הודעות לא יישלחו יותר בהצלחה. הקש כדי לעדכן אל הגרסה העדכנית ביותר.</string> -->
<string name="reminder_header_sms_default_title">השתמש כיישום המסרונים ברירת המחדל</string>
<string name="reminder_header_sms_default_text">הקש כדי להפוך את Signal ליישום המסרונים ברירת המחדל שלך.</string>
<string name="reminder_header_sms_import_title">ייבא מסרוני מערכת</string>

View File

@ -431,6 +431,7 @@
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">保留中のメンバー申請</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">メンバー申請はありません。</string>
<string name="RequestingMembersFragment_explanation">このリストの人々が、グループリンクからグループ参加を申請しています。</string>
<string name="RequestingMembersFragment_added_s">「%1$s」を追加しました</string>
<string name="RequestingMembersFragment_denied_s">「%1$s」を拒否しました</string>
<!--AddMembersActivity-->
@ -583,6 +584,7 @@
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_links_coming_soon">グループリンクのご案内</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal_to_use_group_links">グループリンクを使用するためSignalをアップデート</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_coming_soon">リンク経由でのグループ参加は、Signalではまだ対応していません。この機能は今後のアップデートで提供されます。</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">このバージョンのSignalはグループリンクをサポートしていません。リンク経由でこのグループに参加するには、最新バージョンにアップデートしてください。</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal">Signalをアップデート</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_link_is_not_valid">グループリンクが正しくありません</string>
<!--GV2 Request confirmation dialog-->
@ -807,12 +809,18 @@
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">グループ情報を編集できるユーザーが「%1$s」に変更されました。</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_off_the_group_link">グループリンクを無効にしました。</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s がグループリンクを無効にしました。</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">グループリンクが無効になりました。</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">グループリンクをリセットしました。</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s がグループリンクをリセットしました。</string>
<string name="MessageRecord_the_group_link_has_been_reset">グループリンクがリセットされました。</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">グループリンクからグループに参加しました。</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s がグループリンクからグループに参加しました。</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">グループ参加を申請しました。</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s がグループリンクから参加を申請しました。</string>
<!--GV2 group link approvals-->
<string name="MessageRecord_s_approved_your_request_to_join_the_group">%1$s がグループ参加申請を承認しました。</string>
<string name="MessageRecord_s_approved_a_request_to_join_the_group_from_s">%1$s が %2$s からのグループ参加申請を承認しました。</string>
@ -1377,6 +1385,7 @@
<!--safety_number_change_dialog-->
<string name="safety_number_change_dialog__safety_number_changes">安全番号の変更</string>
<string name="safety_number_change_dialog__send_anyway">とにかく送信する</string>
<string name="safety_number_change_dialog__call_anyway">とにかく発信する</string>
<string name="safety_number_change_dialog__the_following_people_may_have_reinstalled_or_changed_devices">以下の方はアプリを再インストールしたか端末を変更した可能性があります。プライバシーを保証するために安全番号を検証してください。</string>
<string name="safety_number_change_dialog__view">表示する</string>
<string name="safety_number_change_dialog__previous_verified">以前に検証済み</string>
@ -1662,6 +1671,7 @@
<string name="preferences__slow">遅い</string>
<string name="preferences__help">ヘルプ</string>
<string name="preferences__advanced">詳細設定</string>
<string name="preferences__donate_to_signal">Signalへの寄付</string>
<string name="preferences__privacy">プライバシー</string>
<string name="preferences__mms_user_agent">MMSユーザエージェント</string>
<string name="preferences__advanced_mms_access_point_names">手動MMS設定</string>
@ -1675,6 +1685,8 @@
<string name="preferences__chats">チャットとメディア</string>
<string name="preferences__storage">ストレージ</string>
<string name="preferences__conversation_length_limit">会話の長さ制限</string>
<string name="preferences__keep_messages">メッセージの保存期間</string>
<string name="preferences__clear_message_history">メッセージ履歴を消去する</string>
<string name="preferences__linked_devices">リンク済み端末</string>
<string name="preferences__light_theme">ライト</string>
<string name="preferences__dark_theme">ダーク</string>
@ -1704,15 +1716,27 @@
<string name="preferences_chats__when_using_wifi">Wi-Fi利用時</string>
<string name="preferences_chats__when_roaming">ローミング時</string>
<string name="preferences_chats__media_auto_download">メディアの自動ダウンロード</string>
<string name="preferences_chats__message_history">メッセージ履歴</string>
<string name="preferences_storage__storage_usage">ストレージ使用量</string>
<string name="preferences_storage__photos">写真</string>
<string name="preferences_storage__videos">動画</string>
<string name="preferences_storage__files">ファイル</string>
<string name="preferences_storage__audio">音声</string>
<string name="preferences_storage__review_storage">ストレージを確認</string>
<string name="preferences_storage__delete_older_messages">より古いメッセージを消去しますか?</string>
<string name="preferences_storage__clear_message_history">メッセージ履歴を消去しますか?</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">すべての会話で最新%1$s件のメッセージを残して完全に削除します。</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">本当にすべてのメッセージ履歴を削除しますか?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">すべてのメッセージ履歴を完全に削除します。取り消しはできません。</string>
<string name="preferences_storage__delete_all_now">すべて削除する</string>
<string name="preferences_storage__forever">永久</string>
<string name="preferences_storage__one_year">1年</string>
<string name="preferences_storage__six_months">6か月</string>
<string name="preferences_storage__thirty_days">30日</string>
<string name="preferences_storage__none">なし</string>
<string name="preferences_storage__s_messages">%1$s件</string>
<string name="preferences_storage__custom">カスタム</string>
<string name="preferences_Storage__custom_conversation_length_limit">会話の長さ制限</string>
<string name="preferences_advanced__use_system_emoji">システムの絵文字を使う</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Signal独自の絵文字を無効にします</string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">すべての通話をSignalサーバで中継して、相手にIPアドレスを知られることを防ぎます。ただし通話の品質は下がります。</string>
@ -1830,13 +1854,13 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">クリップボードにコピー</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">クリップボードと比較</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Signalのバージョンが古すぎます</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Signalのバージョンが古すぎます</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="other">このバージョンのSignalは%d日後に期限が切れます。タップして最新版にアップデートしてください。</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">このバージョンのSignalは本日で期限が切れます。タップして最新版にアップデートしてください。</string>
<string name="reminder_header_expired_build">このバージョンのSignalは期限が切れました</string>
<string name="reminder_header_expired_build_details">メッセージを送ることができなくなりました。タップして最新版にアップデートしてください。</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">このバージョンのSignalは本日で期限が切れます。タップして最新版にアップデートしてください。</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">このバージョンのSignalは期限が切れました</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">メッセージを送ることができなくなりました。タップして最新版にアップデートしてください。</string> -->
<string name="reminder_header_sms_default_title">既定のSMSアプリにする</string>
<string name="reminder_header_sms_default_text">タップしてSignalを規定のSMSアプリにします。</string>
<string name="reminder_header_sms_import_title">システムSMSのインポート</string>
@ -2031,7 +2055,13 @@
<string name="RegistrationActivity_code_support_subject">Signal登録 - Android用認証コード</string>
<string name="BackupUtil_never">なし</string>
<string name="BackupUtil_unknown">不明</string>
<string name="preferences_app_protection__see_my_phone_number">私の電話番号を見る</string>
<string name="preferences_app_protection__find_me_by_phone_number">電話番号で私を見つける</string>
<string name="PhoneNumberPrivacy_everyone">全員</string>
<string name="PhoneNumberPrivacy_my_contacts">自分の連絡先</string>
<string name="PhoneNumberPrivacy_nobody">無人</string>
<string name="PhoneNumberPrivacy_everyone_see_description">あなたの電話番号は、メッセージを送信したすべての相手とグループに表示されます。</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">あなたの連絡先だけが、Signal上であなたの電話番号を見ることができます。</string>
<string name="preferences_app_protection__screen_lock">画面ロック</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">SignalをAndroidの画面ロックや指紋認証でロックします</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">画面ロックの無操作タイムアウト</string>

View File

@ -1423,13 +1423,13 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Salin dhateng clipboard</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Bandingaken kaliyan clipboard</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Versi Signal sampeyan sampun dangu</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Versi Signal sampeyan sampun dangu</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="other">Versi Signal sampeyan bakal kedaluwaran saksampune %d dinten. Tutul kangge ngenggalaken dados versi paling enggal.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Versi Signal sampeyan bakal kedaluwarsa dinten niki. Tutul kangge ngenggalaken dados versi paling enggal.</string>
<string name="reminder_header_expired_build">Versi Signal sampeyan sampun kedaluwarsa!</string>
<string name="reminder_header_expired_build_details">Pesen bakalan mboten saged dipunkirimaken sacara leres. Tutul kangge ngenggalaken dados versi paling enggal.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Versi Signal sampeyan bakal kedaluwarsa dinten niki. Tutul kangge ngenggalaken dados versi paling enggal.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Versi Signal sampeyan sampun kedaluwarsa!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Pesen bakalan mboten saged dipunkirimaken sacara leres. Tutul kangge ngenggalaken dados versi paling enggal.</string> -->
<string name="reminder_header_sms_default_title">Ginakaken dados aplikasi SMS default</string>
<string name="reminder_header_sms_default_text">Tutul kangge ngginakaken Signal dados aplikasi SMS default.</string>
<string name="reminder_header_sms_import_title">Impor SMS sistem</string>

View File

@ -1659,13 +1659,13 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">ចម្លងទៅ clipboard</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">ប្រៀបធៀបជាមួយ clipboard</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">កំណែSignalរបស់អ្នកបានផុតកំណត់</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">កំណែSignalរបស់អ្នកបានផុតកំណត់</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="other">ជំនាន់Signalរបស់អ្នក នឹងផុតកំណត់ក្នុងពេល %d ថ្ងៃ។ ចុច ធ្វើបច្ចុប្បន្នភាពទៅកាន់ជំនាន់ចុងក្រោយបំផុត។</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">កំណែSignalរបស់អ្នកនឹងផុតកំណត់ថ្ងៃនេះ។ ចុច បច្ចុប្បន្នភាពទៅកាន់កំណែចុងក្រោយបំផុត។</string>
<string name="reminder_header_expired_build">កំណែស៊ីហ្គណ​លរបស់អ្នកបានផុតកំណត់!</string>
<string name="reminder_header_expired_build_details">សារនឹងបញ្ជូនទៅដោយបានមិនជោគជ័យ។ ចុចធ្វើបច្ចុប្បន្នភាពទៅកាន់កំណែចុងក្រោយបំផុត។</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">កំណែSignalរបស់អ្នកនឹងផុតកំណត់ថ្ងៃនេះ។ ចុច បច្ចុប្បន្នភាពទៅកាន់កំណែចុងក្រោយបំផុត។</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">កំណែស៊ីហ្គណ​លរបស់អ្នកបានផុតកំណត់!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">សារនឹងបញ្ជូនទៅដោយបានមិនជោគជ័យ។ ចុចធ្វើបច្ចុប្បន្នភាពទៅកាន់កំណែចុងក្រោយបំផុត។</string> -->
<string name="reminder_header_sms_default_title">ប្រើជាកម្មវិធីផ្ញើសារ</string>
<string name="reminder_header_sms_default_text">ចុច ដើម្បីដាក់ Signal ជាកម្មវិធី​ផ្ញើសាររបស់អ្នក​</string>
<string name="reminder_header_sms_import_title">នាំចូលប្រព័ន្ធ SMS</string>

View File

@ -1478,14 +1478,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">ಕ್ಲಿಪ್‌ಬೋರ್ಡ್‌ ಗೆ ನಕಲಿಸಿ</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">ಕ್ಲಿಪ್‌ಬೋರ್ಡ್‌ ಜೊತೆ ಹೋಲಿಸಿ</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">ನಿಮ್ಮ Signal ನ ಆವೃತ್ತಿ ಹಳೆಯದು</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">ನಿಮ್ಮ Signal ನ ಆವೃತ್ತಿ ಹಳೆಯದು</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">ನಿಮ್ಮ ನ ಆವೃತ್ತಿ Signal ರಲ್ಲಿ ಮುಕ್ತಾಯಗೊಳ್ಳುತ್ತದೆ %d ದಿನ. ಟ್ಯಾಪ್ ಮಾಡಿ ಗೆ ನವೀಕರಿಸಿ ತೀರಾ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗೆ.</item>
<item quantity="other">ನಿಮ್ಮ Signal ಆವೃತ್ತಿಯು %d ದಿನಗಳಲ್ಲಿ ಮುಕ್ತಾಯಗೊಳ್ಳುತ್ತದೆ. ತೀರಾ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗೆ ನವೀಕರಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">ನಿಮ್ಮ Signal ಆವೃತ್ತಿಯು ಇಂದು ವಾಯಿದೆ ಮೀರಲಿದೆ. ತೀರಾ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗೆ ನವೀಕರಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ.</string>
<string name="reminder_header_expired_build">ನಿಮ್ಮ Signal ಆವೃತ್ತಿಯ ವಾಯಿದೆ ಮುಗಿದಿದೆ!</string>
<string name="reminder_header_expired_build_details">ಸಂದೇಶಗಳನ್ನು ಇನ್ನು ಮುಂದೆ ಯಶಸ್ವಿಯಾಗಿ ಕಳುಹಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ತೀರಾ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗೆ ನವೀಕರಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">ನಿಮ್ಮ Signal ಆವೃತ್ತಿಯು ಇಂದು ವಾಯಿದೆ ಮೀರಲಿದೆ. ತೀರಾ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗೆ ನವೀಕರಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">ನಿಮ್ಮ Signal ಆವೃತ್ತಿಯ ವಾಯಿದೆ ಮುಗಿದಿದೆ!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">ಸಂದೇಶಗಳನ್ನು ಇನ್ನು ಮುಂದೆ ಯಶಸ್ವಿಯಾಗಿ ಕಳುಹಿಸಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ. ತೀರಾ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗೆ ನವೀಕರಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ.</string> -->
<string name="reminder_header_sms_default_title">ಡೀಫಾಲ್ಟ್ ಎಸ್‌ಎಂಎಸ್ ಆ್ಯಪ್ ಆಗಿ ಬಳಸಿ </string>
<string name="reminder_header_sms_default_text">Signal ಅನ್ನು ನಿಮ್ಮ ಡೀಫಾಲ್ಟ್ ಎಸ್‌ಎಂಎಸ್ ಆ್ಯಪ್ ಆಗಿಸಲು ಟ್ಯಾಪ್ ಮಾಡಿ.</string>
<string name="reminder_header_sms_import_title">ಸಿಸ್ಟಂ ಎಸ್‌ಎಂಎಸ್ ಇಂಪೋರ್ಟ್ ಮಾಡಿ</string>

View File

@ -1477,13 +1477,13 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">클립보드에 복사</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">클립보드와 비교</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">설치된 Signal 버전이 곧 만료됨</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">설치된 Signal 버전이 곧 만료됨</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="other">%d일 후 Signal 버전이 만료됩니다. 탭하여 최신 버전으로 업데이트하세요.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">설치된 Signal 버전이 오늘 만료됩니다. 탭하여 최신 버전으로 업데이트하세요.</string>
<string name="reminder_header_expired_build">설치된 Signal 버전이 만료되었습니다!</string>
<string name="reminder_header_expired_build_details">메시지가 더 이상 전송되지 않습니다. 탭하여 최신 버전으로 업데이트하세요.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">설치된 Signal 버전이 오늘 만료됩니다. 탭하여 최신 버전으로 업데이트하세요.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">설치된 Signal 버전이 만료되었습니다!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">메시지가 더 이상 전송되지 않습니다. 탭하여 최신 버전으로 업데이트하세요.</string> -->
<string name="reminder_header_sms_default_title">기본 SMS 앱으로 사용</string>
<string name="reminder_header_sms_default_text">탭하여 Signal을 기본 SMS 앱으로 설정하세요.</string>
<string name="reminder_header_sms_import_title">시스템 SMS 가져오기</string>

View File

@ -1151,14 +1151,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopî ser rûnûsgehê bike</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Bi rûnûsgehê re bide ber hev</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Guhertoya Signala te êdî kevn bûye</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Guhertoya Signala te êdî kevn bûye</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Guhertoya Signala te dê piştî %d rojê kevin bibe. Ji bo wê hildemînî guhertoya herî nû bitepîne.</item>
<item quantity="other">Guhertoya Signala te dê piştî %d rojan kevin bibe. Ji bo wê hildemînî guhertoya herî nû bitepîne.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Guhertoya Signala te dê îro kevin bibe. Ji bo wê hildemînî guhertoya herî nû bitepîne.</string>
<string name="reminder_header_expired_build">Guhertoya Signala te êdî kevn bûye!</string>
<string name="reminder_header_expired_build_details">Êdî peyam nikarin bên şandin. Bo Signalê hildemînî guhertoya herî nû bitepîne.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Guhertoya Signala te dê îro kevin bibe. Ji bo wê hildemînî guhertoya herî nû bitepîne.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Guhertoya Signala te êdî kevn bûye!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Êdî peyam nikarin bên şandin. Bo Signalê hildemînî guhertoya herî nû bitepîne.</string> -->
<string name="reminder_header_sms_default_title">Wek bernameya SMSê ya jixweber bi kar bîne.</string>
<string name="reminder_header_sms_default_text">Ji bo Signalê wek bernameya SMSê ya sereke bi kar bînî bitepîne.</string>
<string name="reminder_header_sms_import_title">SMSên pergalê bihundirîne</string>

View File

@ -723,10 +723,10 @@ gy\'olonze (%s) sintuufu.</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">copinga ku clipbodi</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">geraageranya ne kilipuboodi</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Version yo eya Signal ya yitako dda</string>
<string name="reminder_header_outdated_build_details_today">Version yo eya Sgnal ya kugwako leero.Nyiga ode ku version empya kweyo</string>
<string name="reminder_header_expired_build">Version ya Signal yo yagwaako!</string>
<string name="reminder_header_expired_build_details">Obubaka tebujjakusobla kwewereza bukungi.konakookufuna vazoni empya</string>
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Version yo eya Signal ya yitako dda</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Version yo eya Sgnal ya kugwako leero.Nyiga ode ku version empya kweyo</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Version ya Signal yo yagwaako!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Obubaka tebujjakusobla kwewereza bukungi.konakookufuna vazoni empya</string> -->
<string name="reminder_header_sms_default_title">gikozese nga app yo gyofunirako obubaka</string>
<string name="reminder_header_sms_default_text">konako okuffula Signal app yo gyofunirako obubaka</string>
<string name="reminder_header_sms_import_title">Yingiza system SMS</string>

View File

@ -1849,6 +1849,7 @@
<string name="preferences__slow">Lėtas</string>
<string name="preferences__help">Pagalba</string>
<string name="preferences__advanced">Išplėstiniai</string>
<string name="preferences__donate_to_signal">Paaukokite Signal programėlei</string>
<string name="preferences__privacy">Privatumas</string>
<string name="preferences__mms_user_agent">MMS naudotojo agentas</string>
<string name="preferences__advanced_mms_access_point_names">Rankiniai MMS nustatymai</string>
@ -1902,6 +1903,7 @@
<string name="preferences_storage__review_storage">Peržiūrėti saugyklą</string>
<string name="preferences_storage__delete_older_messages">Ištrinti senesnes žinutes?</string>
<string name="preferences_storage__clear_message_history">Išvalyti žinučių istoriją?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Tai visam laikui ištrins visą žinučių istoriją ir mediją iš jūsų įrenginio, kuri senesnė nei %1$s</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Tai visam laikui išvalys visus pokalbius iki %1$s naujausių žinučių.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Tai visam laikui ištrins visą žinučių istoriją ir mediją iš jūsų įrenginio.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Ar tikrai norite ištrinti visą žinučių istoriją?</string>
@ -2034,16 +2036,16 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopijuoti į iškarpinę</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Palyginti su iškarpine</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Jūsų Signal versija yra pasenusi</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Jūsų Signal versija yra pasenusi</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Jūsų Signal versija nustos galioti po %d dienos. Bakstelėkite, norėdami atnaujinti į naujausią versiją.</item>
<item quantity="few">Jūsų Signal versija nustos galioti po %d dienų. Bakstelėkite, norėdami atnaujinti į naujausią versiją.</item>
<item quantity="many">Jūsų Signal versija nustos galioti po %d dienų. Bakstelėkite, norėdami atnaujinti į naujausią versiją.</item>
<item quantity="other">Jūsų Signal versija nustos galioti po %d dienų. Bakstelėkite, norėdami atnaujinti į naujausią versiją.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Šiandien nustos galioti jūsų Signal versija. Bakstelėkite, kad atnaujintumėte į naujausią versiją.</string>
<string name="reminder_header_expired_build">Jūsų Signal versijos galiojimas baigėsi!</string>
<string name="reminder_header_expired_build_details">Žinutės daugiau nebebus siunčiamos sėkmingai. Bakstelėkite, kad atnaujintumėte į naujausią versiją.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Šiandien nustos galioti jūsų Signal versija. Bakstelėkite, kad atnaujintumėte į naujausią versiją.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Jūsų Signal versijos galiojimas baigėsi!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Žinutės daugiau nebebus siunčiamos sėkmingai. Bakstelėkite, kad atnaujintumėte į naujausią versiją.</string> -->
<string name="reminder_header_sms_default_title">Naudoti kaip numatytąją SMS programėlę</string>
<string name="reminder_header_sms_default_text">Bakstelėkite, kad padarytumėte Signal savo numatytąja SMS programėle.</string>
<string name="reminder_header_sms_import_title">Importuoti sistemos SMS</string>
@ -2264,6 +2266,9 @@
<string name="PhoneNumberPrivacy_everyone">Visi</string>
<string name="PhoneNumberPrivacy_my_contacts">Mano adresatai</string>
<string name="PhoneNumberPrivacy_nobody">Niekas</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Jūsų telefono numeris bus matomas visiems žmonėms, kuriems rašysite žinutes ir grupėms, kuriose rašysite žinutes.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Bet kuris žmogus, turintis jūsų telefono numerį savo adresatuose, matys jus kaip Signal adresatą. Kiti žmonės galės rasti jus paieškoje.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Jūsų telefono numerį Signal programėlėje matys tik jūsų adresatai.</string>
<string name="preferences_app_protection__screen_lock">Ekrano užraktas</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Užrakinti prieigą prie Signal, naudojant Android ekrano užraktą ar piršto atspaudą</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">Ekrano užrakto neveiklumui skirtas laikas</string>

View File

@ -1654,15 +1654,15 @@ Saņemts nederīgas protokola versijas atslēgas apmaiņas ziņojums.
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopēt starpenē</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Salīdzināt ar starpeni</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Jūsu Signal versija ir novecojusi/norakstāma</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Jūsu Signal versija ir novecojusi/norakstāma</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="zero">Jūsu Signal versija nestrādās pēc %d dienas. Pieskarieties, lai atjauninātu uz jaunāko versiju.</item>
<item quantity="one">Jūsu Signal versija nestrādās pēc %d dienas. Pieskarieties, lai atjauninātu uz jaunāko versiju.</item>
<item quantity="other">Šī Jūsu Signāla versija nestrādās pēc %d dienām. Pieskarieties, lai iegūtu lietotnes jaunāko versiju.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Jūsu Signāla versija šodien pārstās darboties. Pieskarieties, lai iegūtu lietotnes jaunāko versiju.</string>
<string name="reminder_header_expired_build">Jūsu Signāla versija ir norakstīta/novecojusi!</string>
<string name="reminder_header_expired_build_details">Ziņas vairs netiks veiksmīgi nosūtītas. Pieskarieties, lai iegūtu lietotnes jaunāko versiju.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Jūsu Signāla versija šodien pārstās darboties. Pieskarieties, lai iegūtu lietotnes jaunāko versiju.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Jūsu Signāla versija ir norakstīta/novecojusi!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Ziņas vairs netiks veiksmīgi nosūtītas. Pieskarieties, lai iegūtu lietotnes jaunāko versiju.</string> -->
<string name="reminder_header_sms_default_title">Izmantot kā noklusējuma SMS lietotni</string>
<string name="reminder_header_sms_default_text">Pieskaries, lai padarītu Signāla par noklusēto SMS lietotni</string>
<string name="reminder_header_sms_import_title">Importēt sistēmas SMS</string>

View File

@ -538,7 +538,7 @@
<string name="text_secure_normal__help">Помош</string>
<!--verify_display_fragment-->
<!--reminder_header-->
<string name="reminder_header_outdated_build">Вашата верзија на Signal е застарена.</string>
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Вашата верзија на Signal е застарена.</string> -->
<string name="reminder_header_sms_default_title">Користи како стандардна СМС апликација</string>
<string name="reminder_header_share_title">Покани ги твиоте пријатели!</string>
<!--media_preview-->

View File

@ -1726,14 +1726,14 @@ grūpp apḍē</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">ക്ലിപ്പ്ബോർഡിലേയ്ക്ക് പകർത്തുക</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">ക്ലിപ്പ്ബോർഡുമായി താരതമ്യം ചെയ്യുക</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">നിങ്ങളുടെ Signal-ന്റെ പതിപ്പ് കാലഹരണപ്പെട്ടു</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">നിങ്ങളുടെ Signal-ന്റെ പതിപ്പ് കാലഹരണപ്പെട്ടു</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">നിങ്ങളുടെ Signal-ന്റെ പതിപ്പ് %d ദിവസം അവസാനിക്കും. ഏറ്റവും പുതിയ പതിപ്പിലേക്ക് അപ്‌ഡേറ്റുചെയ്യാൻ ടാപ്പുചെയ്യുക.</item>
<item quantity="other">നിങ്ങളുടെ Signal-ന്റെ പതിപ്പ് %d ദിവസത്തിനുള്ളിൽ കാലഹരണപ്പെടും. ഏറ്റവും പുതിയ പതിപ്പിലേക്ക് അപ്‌ഡേറ്റുചെയ്യാൻ ടാപ്പുചെയ്യുക.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">നിങ്ങളുടെ Signal-ന്റെ പതിപ്പ് ഇന്ന് കാലഹരണപ്പെടും. ഏറ്റവും പുതിയ പതിപ്പിലേക്ക് അപ്‌ഡേറ്റുചെയ്യാൻ ടാപ്പുചെയ്യുക.</string>
<string name="reminder_header_expired_build">നിങ്ങളുടെ Signal-ന്റെ പതിപ്പ് കാലഹരണപ്പെട്ടു!</string>
<string name="reminder_header_expired_build_details">സന്ദേശങ്ങൾ മേലിൽ അയയ്‌ക്കില്ല. ഏറ്റവും പുതിയ പതിപ്പിലേക്ക് അപ്‌ഡേറ്റുചെയ്യാൻ ടാപ്പുചെയ്യുക.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">നിങ്ങളുടെ Signal-ന്റെ പതിപ്പ് ഇന്ന് കാലഹരണപ്പെടും. ഏറ്റവും പുതിയ പതിപ്പിലേക്ക് അപ്‌ഡേറ്റുചെയ്യാൻ ടാപ്പുചെയ്യുക.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">നിങ്ങളുടെ Signal-ന്റെ പതിപ്പ് കാലഹരണപ്പെട്ടു!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">സന്ദേശങ്ങൾ മേലിൽ അയയ്‌ക്കില്ല. ഏറ്റവും പുതിയ പതിപ്പിലേക്ക് അപ്‌ഡേറ്റുചെയ്യാൻ ടാപ്പുചെയ്യുക.</string> -->
<string name="reminder_header_sms_default_title">സ്ഥിരസ്ഥിതി SMS അപ്ലിക്കേഷനായി ഉപയോഗിക്കുക</string>
<string name="reminder_header_sms_default_text">നിങ്ങളുടെ സ്ഥിരസ്ഥിതി SMS അപ്ലിക്കേഷൻ സിഗ്നൽ ആക്കാൻ ടാപ്പുചെയ്യുക.</string>
<string name="reminder_header_sms_import_title">സിസ്റ്റം SMS ഇറക്കുമതി ചെയ്യുക</string>

View File

@ -1517,14 +1517,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">क्लिपबोर्ड वर कॉपी करा</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">क्लिपबोर्ड सोबत तुलना करा</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Signal ची आपली आवृत्ती कालबाह्य आहे</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Signal ची आपली आवृत्ती कालबाह्य आहे</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Signal ची आपली आवृत्ती %dदिवसामध्ये कालबाह्य होणार आहे. सर्वात अलीकडील आवृत्तीवर अद्यतन करण्यासाठी टॅप करा.</item>
<item quantity="other">Signal ची आपली आवृत्ती %dदिवसांमध्ये कालबाह्य होणार आहे. सर्वात अलीकडील आवृत्तीवर अद्यतन करण्यासाठी टॅप करा.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Signal ची आपली आवृत्ती आज कालबाह्य होणार आहे. सर्वात अलीकडील आवृत्तीवर अद्यतन करण्यासाठी टॅप करा.</string>
<string name="reminder_header_expired_build">Signal ची आपली आवृत्ती कालबाह्य झाली आहे</string>
<string name="reminder_header_expired_build_details">संदेश यापुढे यशस्वीरीत्या पाठविले जाणार नाहीत. सर्वात अलीकडील आवृत्तीवर अद्यतन करण्यासाठी टॅप करा.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Signal ची आपली आवृत्ती आज कालबाह्य होणार आहे. सर्वात अलीकडील आवृत्तीवर अद्यतन करण्यासाठी टॅप करा.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Signal ची आपली आवृत्ती कालबाह्य झाली आहे</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">संदेश यापुढे यशस्वीरीत्या पाठविले जाणार नाहीत. सर्वात अलीकडील आवृत्तीवर अद्यतन करण्यासाठी टॅप करा.</string> -->
<string name="reminder_header_sms_default_title">पूर्वनिर्धारित SMS अॅप म्हणून वापरा</string>
<string name="reminder_header_sms_default_text">Signal ला आपले पूर्वनिर्धारित SMS अॅप बनवण्यासाठी टॅप करा.</string>
<string name="reminder_header_sms_import_title">सिस्टिम SMS आयात करा</string>

View File

@ -1285,13 +1285,13 @@ Menerima mesej pertukaran kunci untuk versi protokol yang tidak sah.</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Salin ke papan klip</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Bandingkan dengan papan klip</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Versi Signal anda telah lapuk</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Versi Signal anda telah lapuk</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="other">Versi Signal anda akan tamat tempoh dalam %d hari. Ketik untuk kemas kini ke versi terbaru.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Versi Signal anda akan tamat tempoh pada hari ini. Ketik untuk kemas kini ke versi terbaru.</string>
<string name="reminder_header_expired_build">Versi Signal anda telah tamat tempoh!</string>
<string name="reminder_header_expired_build_details">Mesej tidak akan berjaya dihantar lagi. Ketik untuk kemas kini ke versi yang terbaru.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Versi Signal anda akan tamat tempoh pada hari ini. Ketik untuk kemas kini ke versi terbaru.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Versi Signal anda telah tamat tempoh!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Mesej tidak akan berjaya dihantar lagi. Ketik untuk kemas kini ke versi yang terbaru.</string> -->
<string name="reminder_header_sms_default_title">Guna sebagai aplikasi SMS lalai</string>
<string name="reminder_header_sms_default_text">Ketik untuk menjadikan Signal sebagai aplikasi SMS lalai anda.</string>
<string name="reminder_header_sms_import_title">Import SMS sistem</string>

View File

@ -1089,13 +1089,13 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">ကူးယူလိုက်ပါ။</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">clipboard နဲ့ ယှဥ်လိုက်ပါ။</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">သင့်ရဲ့ Signal ဗားရှင်းက သက်တမ်းကျော်နေပြီ။</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">သင့်ရဲ့ Signal ဗားရှင်းက သက်တမ်းကျော်နေပြီ။</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="other">မိမိ၏ Signal ဗားရှင်းမှာ %d အတွင်း သက်တမ်းကုန်ဆုံးတော့မှာ ဖြစ်ပါတယ်။ Update ဆိုသည့် ခလုတ်ကိုနှိပ်၍ နောက်ဆုံးဗားရှင်းအား ရယူပါ။</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">သင့်ရဲ့ Signal ဗားရှင်းက ဒီနေ့ သက်တမ်းကုန်ပါလိမ့်မယ်။ နောက်ဆုံးဗားရှင်းကို ရရန် နှိပ်ပါ။</string>
<string name="reminder_header_expired_build">သင့်ရဲ့ Signal ဗားရှင်းက သက်တမ်းကုန်နေပြီ!</string>
<string name="reminder_header_expired_build_details">စာတွေ ပို့လို့မရနိုင်ပါ။ နောက်ဆုံးဗားရှင်းကို မြှင့်ရန် နှိပ်ပါ။</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">သင့်ရဲ့ Signal ဗားရှင်းက ဒီနေ့ သက်တမ်းကုန်ပါလိမ့်မယ်။ နောက်ဆုံးဗားရှင်းကို ရရန် နှိပ်ပါ။</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">သင့်ရဲ့ Signal ဗားရှင်းက သက်တမ်းကုန်နေပြီ!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">စာတွေ ပို့လို့မရနိုင်ပါ။ နောက်ဆုံးဗားရှင်းကို မြှင့်ရန် နှိပ်ပါ။</string> -->
<string name="reminder_header_sms_default_title">ပုံသေ SMS app အဖြစ် သုံးပါ။</string>
<string name="reminder_header_sms_default_text">Signal ကို သင့်ရဲ့ ပုံသေ SMS app အဖြစ် လုပ်ဖို့ နှိပ်ပါ။</string>
<string name="reminder_header_sms_import_title">SMS စနစ်ကို တင်ပို့ပါ</string>

View File

@ -1771,14 +1771,14 @@ Mottok nøkkelutvekslingsmelding for ugyldig protokollversion.</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopiere til utklippstavle</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Sammenlign med utklippstavlen</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Din versjon av Signal er utdatert</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Din versjon av Signal er utdatert</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Denne versjonen av Signal utløper om %ddag. Trykk for å oppdatere programmet til nyeste versjon.</item>
<item quantity="other">Denne versjonen av Signal utløper om %d dag. Trykk for å oppdatere programmet til nyeste versjon.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Denne versjonen av Signal utgår i dag. Trykk for å oppdatere til nyeste versjon.</string>
<string name="reminder_header_expired_build">Denne versjonen av Signal er utgått.</string>
<string name="reminder_header_expired_build_details">Meldinger blir fra nå av ikke sendt. Trykk for å oppdatere til nyeste versjon.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Denne versjonen av Signal utgår i dag. Trykk for å oppdatere til nyeste versjon.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Denne versjonen av Signal er utgått.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Meldinger blir fra nå av ikke sendt. Trykk for å oppdatere til nyeste versjon.</string> -->
<string name="reminder_header_sms_default_title">Bruk som forvalgt SMS-program</string>
<string name="reminder_header_sms_default_text">Trykk for å gjøre Signal til forvalgt SMS-program.</string>
<string name="reminder_header_sms_import_title">Importer system-SMS</string>

View File

@ -450,7 +450,7 @@
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">Groepsuitnodigingen in afwachting</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">Er zijn geen groeps uitnodigingen om weer te geven.</string>
<string name="RequestingMembersFragment_explanation">Personen opdeze lijst proberen lid te worden van deze groep via de groepslink.</string>
<string name="RequestingMembersFragment_explanation">Personen in deze lijst proberen via de groepsverwijzing lid te worden van deze groep.</string>
<string name="RequestingMembersFragment_added_s">\"%1$s\" toegevoegd</string>
<string name="RequestingMembersFragment_denied_s">\"%1$s\" afgewezen</string>
<!--AddMembersActivity-->
@ -492,7 +492,7 @@
<string name="ManageGroupActivity_edit_group_info">Groepsinformatie aanpassen</string>
<string name="ManageGroupActivity_choose_who_can_edit_the_group_name_avatar_and_disappearing_messages">Kies wie de naam van de groep, de groepsafbeelding en de timer voor zelfwissende berichten mag aanpassen.</string>
<string name="ManageGroupActivity_choose_who_can_add_or_invite_new_members">Kies wie nieuwe leden mag toevoegen of uitnodigen.</string>
<string name="ManageGroupActivity_group_link">Groepslink</string>
<string name="ManageGroupActivity_group_link">Groepsverwijzing</string>
<string name="ManageGroupActivity_block_group">Groepsgesprek blokkeren</string>
<string name="ManageGroupActivity_unblock_group">Groep deblokkeren</string>
<string name="ManageGroupActivity_leave_group">Groep verlaten</string>
@ -612,7 +612,7 @@
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_links_coming_soon">Groepslinks komen binnenkort</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal_to_use_group_links">Werk Signal bij om groepskoppelingen te kunnen gebruiken</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_coming_soon">Lid worden van een groep is nog niet ondersteund in Signal. Deze functie zal in een komende versie uitgeleverd worden.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">De versie van Signal die je gebruikt ondersteunt geen groepslinks. Werk Signal bij naar de meest recente versie om via een link lid te kunen worden van een groep.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">De versie van Signal die je gebruikt ondersteunt groepsverwijzingen niet. Werk Signal bij naar de meest recente versie om via een verwijzing lid te kunnen worden van een groep.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal">Signal bijwerken</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_link_is_not_valid">Ongeldige groepslink</string>
<!--GV2 Request confirmation dialog-->
@ -848,23 +848,25 @@
<string name="MessageRecord_s_changed_who_can_edit_group_membership_to_s">%1$s heeft de instelling voor wie de groepslidmaatschap kan aanpassen op %2$s ingesteld.</string>
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">De instelling voor wie de groepslidmaatschap kan aanpassen is op %1$s ingesteld.</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Je hebt de groepslink ingeschakeld, beheerderstoestemming is uitgeschakeld.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Je hebt de groepslink met beheerderstoestemming ingeschakeld.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Je hebt de groepslink uitgeschakeld.</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s heeft de groepslink uitgeschakeld.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">De groepslink is ingeschakeld. beheerderstoestemming is uitgeschakeld.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">De groepslink met beheerderstoestemming is ingeschakeld.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">De groepslink is uitgeschakeld.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Je hebt de groepsverwijzingen ingeschakeld en beheerderstoestemming om lid te mogen worden is uitgeschakeld.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Je hebt de groepsverwijzing ingeschakeld maar er is nog beheerderstoestemming vereist om lid te mogen worden.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Je hebt de groepsverwijzing uitgeschakeld.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">%1$s heeft de groepsverwijzing met beheerderstoestemming uitgeschakeld.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">%1$s heeft de groepsverwijzing met beheerderstoestemming ingeschakeld.</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s heeft de groepsverwijzing uitgeschakeld.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">De groepsverwijzing is ingeschakeld. beheerderstoestemming is uitgeschakeld.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">De groepsverwijzing met beheerderstoestemming is ingeschakeld.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">De groepsverwijzing is uitgeschakeld.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Je hebt de groepslink vernieuwd.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s heeft de groepslink vernieuwd.</string>
<string name="MessageRecord_the_group_link_has_been_reset">De groepslink is vernieuwd.</string>
<string name="MessageRecord_you_reset_the_group_link">Je hebt de groepsverwijzing vernieuwd.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s heeft de groepsverwijzing vernieuwd.</string>
<string name="MessageRecord_the_group_link_has_been_reset">De groepsverwijzing is vernieuwd.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Je bent via de groepslink lid geworden van de groep.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s is lid geworden via de groepslink.</string>
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Je bent via de groepsverwijzing lid geworden van de groep.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s is lid geworden via de groepsverwijzing.</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">Je hebt een verzoek verstuurd om lid te worden van de groep.</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s heeft verzocht om via de groepslink lid te worden.</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s heeft verzocht om via de groepsverwijzing lid te worden.</string>
<!--GV2 group link approvals-->
<string name="MessageRecord_s_approved_your_request_to_join_the_group">%1$s heeft je verzoek om lid te worden van de groep toegestaan.</string>
<string name="MessageRecord_s_approved_a_request_to_join_the_group_from_s">%1$s heeft het verzoek van %2$s om lid te worden van de groep toegestaan.</string>
@ -1744,6 +1746,7 @@ Signal zal nu toestemming vragen om je contactenlijst te lezen, om na te gaan wi
<string name="preferences__slow">Langzaam</string>
<string name="preferences__help">Hulp</string>
<string name="preferences__advanced">Geavanceerd</string>
<string name="preferences__donate_to_signal">Aan Signal doneren</string>
<string name="preferences__privacy">Privacy</string>
<string name="preferences__mms_user_agent">Mms-gebruikersagent</string>
<string name="preferences__advanced_mms_access_point_names">Handmatige mms-instellingen</string>
@ -1758,7 +1761,7 @@ Signal zal nu toestemming vragen om je contactenlijst te lezen, om na te gaan wi
<string name="preferences__storage">Opslag</string>
<string name="preferences__conversation_length_limit">Gesprekslengtelimiet</string>
<string name="preferences__keep_messages">Berichten bewaren</string>
<string name="preferences__clear_message_history">Berichtengeschiedenis opschonen</string>
<string name="preferences__clear_message_history">Berichtengeschiedenis wissen</string>
<string name="preferences__linked_devices">Gekoppelde apparaten</string>
<string name="preferences__light_theme">Licht</string>
<string name="preferences__dark_theme">Donker</string>
@ -1795,9 +1798,13 @@ Signal zal nu toestemming vragen om je contactenlijst te lezen, om na te gaan wi
<string name="preferences_storage__files">Documenten</string>
<string name="preferences_storage__audio">Audio</string>
<string name="preferences_storage__review_storage">Alle bestanden bekijken</string>
<string name="preferences_storage__delete_older_messages">Oude berichten verwijderen?</string>
<string name="preferences_storage__clear_message_history">Berichtengeschiedenis opschonen?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Dit zalalle berichten ouder dan %1$s permanent van je apparaat verwijderen.</string>
<string name="preferences_storage__delete_older_messages">Oude berichten wissen?</string>
<string name="preferences_storage__clear_message_history">Berichtengeschiedenis wissen?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Dit zal pertinent alle gespreksgeschiedenis en media ouder dan %1$s van dit apparaat wissen.</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Dit zal direct alle gesprekken inkorten tot de laatste %1$s berichten.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Dit zal pertinent al je gespreksgeschiedenis en media van dit apparaat wissen.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Weet je zeker dat je de hele berichtengeschiedenis wilt wissen?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">De hele berichtengeschiedenis zal worden gewist. Dit kan niet ongedaan gemaakt worden.</string>
<string name="preferences_storage__delete_all_now">Nu alles verwijderen</string>
<string name="preferences_storage__forever">Voor altijd</string>
<string name="preferences_storage__one_year">1 jaar</string>
@ -1926,14 +1933,14 @@ Signal zal nu toestemming vragen om je contactenlijst te lezen, om na te gaan wi
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopiëren naar klembord</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Vergelijken met klembord</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Je versie van Signal is verouderd</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Je versie van Signal is verouderd</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Deze versie van Signal zal over %d dag verlopen. Tik hier om bij te werken naar de meest recente versie.</item>
<item quantity="other">Deze versie van Signal zal over %d dagen verlopen. Tik hier om bij te werken naar de meest recente versie.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Deze versie van Signal zal vandaag verlopen. Tik hier om bij te werken naar de meest recente versie.</string>
<string name="reminder_header_expired_build">Deze versie van Signal is verlopen!</string>
<string name="reminder_header_expired_build_details">Berichten kunnen niet langer verzonden worden. Tik hier om bij te werken naar de meest recente versie.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Deze versie van Signal zal vandaag verlopen. Tik hier om bij te werken naar de meest recente versie.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Deze versie van Signal is verlopen!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Berichten kunnen niet langer verzonden worden. Tik hier om bij te werken naar de meest recente versie.</string> -->
<string name="reminder_header_sms_default_title">Als standaard sms-app gebruiken</string>
<string name="reminder_header_sms_default_text">Tik hier om van Signal je standaard sms-app te maken.</string>
<string name="reminder_header_sms_import_title">Sms uit systeem importeren</string>
@ -2141,6 +2148,8 @@ Signal zal nu toestemming vragen om je contactenlijst te lezen, om na te gaan wi
<string name="PhoneNumberPrivacy_my_contacts">Mijn contactpersonen</string>
<string name="PhoneNumberPrivacy_nobody">Niemand</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Je telefoonnummer zal zichtbaar zijn voor iedereen en elke groep waar je een bericht naar stuurt</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Iedereen die je telefoonnummer in zijn contactenlijst heeft zal je als een contact in Signal zien. Anderen zullen je kunnen vinden als ze zoeken.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Alleen jouw contacten zullen je telefoonnummer in Signal zien.</string>
<string name="preferences_app_protection__screen_lock">Schermvergrendeling</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Vergrendel Signal met de Android-schermvergrendeling of vingerafdruk</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">Inactiviteitsduur voor schermvergrendeling</string>

View File

@ -454,6 +454,7 @@ Dei er invitert inn, og ser inga gruppemeldingar før dei godtek.</string>
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">Ventande medlemsførespurnader</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">Ingen medlemsførespurnader</string>
<string name="RequestingMembersFragment_explanation">Personar på denne lista prøver å bli med i gruppa via gruppelenka.</string>
<string name="RequestingMembersFragment_added_s">La til «%1$s»</string>
<string name="RequestingMembersFragment_denied_s">Avslo «%1$s»</string>
<!--AddMembersActivity-->
@ -615,6 +616,7 @@ Dei er invitert inn, og ser inga gruppemeldingar før dei godtek.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_links_coming_soon">Gruppelenker kjem snart</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal_to_use_group_links">Oppdater Signal for å bruka gruppelenker</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_coming_soon">Signal støtter ikkje enno å bli med i grupper via lenker. Denne funksjonaliteten kjem i ei seinare utgåve.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">Signal-utgåva di støttar ikkje gruppelenker. Oppdater til siste utgåve for å bli med denne gruppa via ei lenke.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal">Oppdater Signal</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_link_is_not_valid">Gruppelenka er ugyldig</string>
<!--GV2 Request confirmation dialog-->
@ -850,10 +852,25 @@ Dei er invitert inn, og ser inga gruppemeldingar før dei godtek.</string>
<string name="MessageRecord_s_changed_who_can_edit_group_membership_to_s">%1$s endra kven som kan redigera gruppemedlemskap til «%2$s».</string>
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">Kven som kan endra gruppemedlemskap er endra til «%1$s».</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Du aktiverte gruppelenka utan admin-godkjenning.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Du aktiverte gruppelenka med admin-godkjenning.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Du deaktiverte gruppelenka.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">%1$s skrudde på gruppelenka utan admin-godkjenning.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">%1$s skrudde på gruppelenka med admin-godkjenning.</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s skrudde av gruppelenka.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">Gruppelenka er aktivert utan admin-godkjenning.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">Gruppelenka er aktivert med admin-godkjenning.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">Gruppelenka er deaktivert.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Du nullstilte gruppelenka.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s nullstilte gruppelenka.</string>
<string name="MessageRecord_the_group_link_has_been_reset">Gruppelenka er nullstilt.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Du blei med i gruppa via gruppelenka.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s blei med i gruppa via gruppelenka.</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">Du spurde om å bli med i gruppa.</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s spurde om å bli med via gruppelenka.</string>
<!--GV2 group link approvals-->
<string name="MessageRecord_s_approved_your_request_to_join_the_group">%1$s godkjende førespurnaden din om å bli med i gruppa.</string>
<string name="MessageRecord_s_approved_a_request_to_join_the_group_from_s">%1$s godkjende førespurnaden frå %2$s om å bli med i gruppa.</string>
@ -1434,6 +1451,7 @@ Mottok nøkkelutvekslingsmelding for ugyldig protokollversjon.</string>
<!--safety_number_change_dialog-->
<string name="safety_number_change_dialog__safety_number_changes">Endringar med tryggleiksnummer.</string>
<string name="safety_number_change_dialog__send_anyway">Send uansett</string>
<string name="safety_number_change_dialog__call_anyway">Ring uansett</string>
<string name="safety_number_change_dialog__the_following_people_may_have_reinstalled_or_changed_devices">Desse personane kan ha reinstallert eller bytta einingar. Stadfest tryggleiksnummeret ditt med dei for å sikra personvernet.</string>
<string name="safety_number_change_dialog__view">Sjå</string>
<string name="safety_number_change_dialog__previous_verified">Tidlegare stadfesta</string>
@ -1729,6 +1747,7 @@ Ved registrering sender me litt kontaktinformasjon til tenaren. Informasjonen ve
<string name="preferences__slow">Langsam</string>
<string name="preferences__help">Hjelp</string>
<string name="preferences__advanced">Avansert</string>
<string name="preferences__donate_to_signal">Doner til Signal</string>
<string name="preferences__privacy">Personvern</string>
<string name="preferences__mms_user_agent">MMS-brukaragent</string>
<string name="preferences__advanced_mms_access_point_names">Manuelt MMS-oppsett</string>
@ -1742,6 +1761,8 @@ Ved registrering sender me litt kontaktinformasjon til tenaren. Informasjonen ve
<string name="preferences__chats">Samtalar og media</string>
<string name="preferences__storage">Lagring</string>
<string name="preferences__conversation_length_limit">Lengdgrense for samtalar</string>
<string name="preferences__keep_messages">Spar på meldingar</string>
<string name="preferences__clear_message_history">Tøm meldingshistorikk</string>
<string name="preferences__linked_devices">Tilkopla einingar</string>
<string name="preferences__light_theme">Lys</string>
<string name="preferences__dark_theme">Mørk</string>
@ -1771,18 +1792,34 @@ Ved registrering sender me litt kontaktinformasjon til tenaren. Informasjonen ve
<string name="preferences_chats__when_using_wifi">Ved bruk av Wifi</string>
<string name="preferences_chats__when_roaming">I framandnett</string>
<string name="preferences_chats__media_auto_download">Automatisk nedlasting av media</string>
<string name="preferences_chats__message_history">Meldingshistorikk</string>
<string name="preferences_storage__storage_usage">Lagringsbruk</string>
<string name="preferences_storage__photos">Bilde</string>
<string name="preferences_storage__videos">Videoar</string>
<string name="preferences_storage__files">Filer</string>
<string name="preferences_storage__audio">Lyd</string>
<string name="preferences_storage__review_storage">Gå gjennom lagring</string>
<string name="preferences_storage__delete_older_messages">Slett eldre meldingar?</string>
<string name="preferences_storage__clear_message_history">Tøm meldingshistorikk?</string>
<string name="preferences_storage__this_will_permanently_delete_all_message_history_and_media">Dette slettar all meldingshistorikk og media som er eldre enn %1$s frå eininga di for godt.</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Dette vil permanent forkorta alle samtalar til dei %1$s siste meldingane.</string>
<string name="preferences_storage__this_will_delete_all_message_history_and_media_from_your_device">Dette vil permanent sletta all meldingshistorikk og media frå eininga di.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Er du sikker på at du vil sletta all meldingshistorikk?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">All meldingshistorikk blir permanent sletta. Denne handlinga kan ikkje angrast.</string>
<string name="preferences_storage__delete_all_now">Slett alt no</string>
<string name="preferences_storage__forever">For alltid</string>
<string name="preferences_storage__one_year">1 år</string>
<string name="preferences_storage__six_months">6 månader</string>
<string name="preferences_storage__thirty_days">30 dagar</string>
<string name="preferences_storage__none">Inga</string>
<string name="preferences_storage__s_messages">%1$s meldingar</string>
<string name="preferences_storage__custom">Sjølvvald</string>
<string name="preferences_Storage__custom_conversation_length_limit">Sjølvvald lengdgrense for samtalar</string>
<string name="preferences_advanced__use_system_emoji">Bruk emoji på systemet</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Slå av innebygd emoji-støtte i Signal</string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">Vidaresend alle samtalar gjennom Signal-tenaren for å unngå å visa IP-adressa di til kontakten din. Dette vil gi dårlegare samtalekvalitet.</string>
<string name="preferences_advanced__always_relay_calls">Alltid vidaresend samtalar</string>
<string name="preferences_app_protection__who_can">Kven kan …</string>
<string name="preferences_app_protection__app_access">App-tilgang</string>
<string name="preferences_app_protection__communication">Kommunikasjon</string>
<string name="preferences_chats__chats">Samtalar</string>
@ -1807,6 +1844,7 @@ Ved registrering sender me litt kontaktinformasjon til tenaren. Informasjonen ve
<string name="preferences_notifications__notify_me">Varsla meg</string>
<string name="preferences_notifications__receive_notifications_when_youre_mentioned_in_muted_chats">Få varsel når du blir nemnt i dempa samtalar</string>
<string name="preferences_setup_a_username">Lag eit brukarnamn</string>
<string name="configurable_single_select__customize_option">Endra val</string>
<!--Internal only preferences-->
<!--****************************************-->
<!--menus-->
@ -1897,14 +1935,14 @@ Du er à jour!</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Kopiera til utklippstavle</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Samanlikn med utklippstavla</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Denne Signal-installasjonen er utdatert</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Denne Signal-installasjonen er utdatert</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Signal-utgåva di blir utdatert om %d dag. Klikk for å oppdatera til nyaste utgåve.</item>
<item quantity="other">Signal-utgåva di blir utdatert om %d dagar. Trykk for å oppdatera til nyaste utgåve.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Denne utgåva av Signal er forelda frå og med i dag. Trykk for å oppdatera til nyaste utgåve.</string>
<string name="reminder_header_expired_build">Denne utgåva av Signal er forelda!</string>
<string name="reminder_header_expired_build_details">Meldingar vert frå no av ikkje send. Trykk for å oppdatera til nyaste versjon.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Denne utgåva av Signal er forelda frå og med i dag. Trykk for å oppdatera til nyaste utgåve.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Denne utgåva av Signal er forelda!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Meldingar vert frå no av ikkje send. Trykk for å oppdatera til nyaste versjon.</string> -->
<string name="reminder_header_sms_default_title">Bruk som standard SMS-program</string>
<string name="reminder_header_sms_default_text">Trykk for å gjera Signal til standard SMS-program.</string>
<string name="reminder_header_sms_import_title">Importer system-SMS</string>
@ -2107,6 +2145,14 @@ Du er à jour!</string>
<string name="RegistrationActivity_code_support_subject">Signal-registrering stadfestingskode for Android</string>
<string name="BackupUtil_never">Aldri</string>
<string name="BackupUtil_unknown">Ukjend</string>
<string name="preferences_app_protection__see_my_phone_number">Sjå mitt telefonnummer</string>
<string name="preferences_app_protection__find_me_by_phone_number">Finna meg via telefonnummer</string>
<string name="PhoneNumberPrivacy_everyone">Alle</string>
<string name="PhoneNumberPrivacy_my_contacts">Kontaktane mine</string>
<string name="PhoneNumberPrivacy_nobody">Ingen</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Telefonnummeret ditt blir synleg for alle personar og grupper som du melder med.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Alle som har telefonnummeret ditt i kontaktlista si kan få deg opp som ein Signal-kontakt. Andre kan finna deg i søk.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Berre kontaktane dine vil sjå telefonnummeret ditt på Signal.</string>
<string name="preferences_app_protection__screen_lock">Skjermlås</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Lås tilgangen til Signal med Androids skjermlås eller fingeravtrykk</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">Tidsgrense for inaktivitet før skjermlås</string>

View File

@ -1444,14 +1444,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">کلپ بورڈ تے کاپی کرو</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">کلپ بورڈ نال موازنہ کرو</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">تہاڈا Signal دا ورژن پرانا اے</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">تہاڈا Signal دا ورژن پرانا اے</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">تہاڈے Signal دے ورژن دی %d دناں اچ معیاد ختم ہو جائے گی۔ سب توں نویں ورژن تے اپ ڈیٹ کرن لئی بٹن دبو ۔</item>
<item quantity="other">تہاڈے Signal دے ورژن دی معیاد %d دناں اچ ختم ہوجاوے گی۔ سب توں نویں ورژن تے اپ ڈیٹ کرن لئی بٹن دبو ۔</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">تہاڈے Signal دے ورژن دی معیاد اج ختم ہو جائے گی۔ سب توں نویں ورژن تے اپ ڈیٹ کرن لئی بٹن دبو ۔</string>
<string name="reminder_header_expired_build">تہاڈے Signal دے ورژن دی معیاد ختم ہوگئی اے!</string>
<string name="reminder_header_expired_build_details">سنیہے کامیابی نال نئیں گھلے جاسکن گے۔ سب توں نویں ورژن تے اپ ڈیٹ کرن لئی بٹن دبو ۔</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">تہاڈے Signal دے ورژن دی معیاد اج ختم ہو جائے گی۔ سب توں نویں ورژن تے اپ ڈیٹ کرن لئی بٹن دبو ۔</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">تہاڈے Signal دے ورژن دی معیاد ختم ہوگئی اے!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">سنیہے کامیابی نال نئیں گھلے جاسکن گے۔ سب توں نویں ورژن تے اپ ڈیٹ کرن لئی بٹن دبو ۔</string> -->
<string name="reminder_header_sms_default_title">ڈیفالٹ SMS ایپ دے طور تے ورتو</string>
<string name="reminder_header_sms_default_text">Sgnal نوں اپناں ڈیفالٹ SMS ایپ بنان لئی بٹن دبو ۔</string>
<string name="reminder_header_sms_import_title">درآمد سسٹم SMS</string>

View File

@ -1552,14 +1552,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">ਕਲਿਪਬੋਰਡ ਤੇ ਕਾਪੀ ਕਰੋ </string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">ਕਲਿਪਬੋਰਡ ਨਾਲ ਤੁਲਨਾ ਕਰੋ</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">ਤੁਹਾਡੇ Signal ਦਾ ਵਰਜਨ ਪੁਰਾਣਾ ਹੈ</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">ਤੁਹਾਡੇ Signal ਦਾ ਵਰਜਨ ਪੁਰਾਣਾ ਹੈ</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Signal ਦਾ ਤੁਹਾਡਾ ਵਰਜਨ %d ਦਿਨਾਂ ਵਿੱਚ ਖ਼ਤਮ ਹੋ ਜਾਵੇਗਾ ਸਭ ਤੋਂ ਤਾਜ਼ਾ ਵਰਜਨ ਨੂੰ ਅਪਡੇਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ</item>
<item quantity="other">ਤੁਹਾਡੇ Signal ਦਾ ਵਰਜਨ %d ਦਿਨਾਂ ਵਿੱਚ ਖ਼ਤਮ ਹੋ ਜਾਵੇਗਾ ਸਭ ਤੋਂ ਤਾਜ਼ਾ ਵਰਜਨ ਨੂੰ ਅਪਡੇਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">ਤੁਹਾਡੇ Signal ਦਾ ਵਰਜਨ ਅੱਜ ਖਤਮ ਹੋ ਜਾਵੇਗਾ. ਸਭ ਤੋਂ ਤਾਜ਼ਾ ਵਰਜਨ ਨੂੰ ਅਪਡੇਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ</string>
<string name="reminder_header_expired_build">ਤੁਹਾਡੇ Signal ਦਾ ਵਰਜਨ ਖਤਮ ਹੋ ਗਿਆ ਹੈ!</string>
<string name="reminder_header_expired_build_details">ਸੁਨੇਹੇ ਹੁਣ ਸਫਲਤਾਪੂਰਵਕ ਭੇਜੇ ਨਹੀਂ ਜਾਣਗੇ. ਸਭ ਤੋਂ ਤਾਜ਼ਾ ਵਰਜਨ ਨੂੰ ਅਪਡੇਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">ਤੁਹਾਡੇ Signal ਦਾ ਵਰਜਨ ਅੱਜ ਖਤਮ ਹੋ ਜਾਵੇਗਾ. ਸਭ ਤੋਂ ਤਾਜ਼ਾ ਵਰਜਨ ਨੂੰ ਅਪਡੇਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">ਤੁਹਾਡੇ Signal ਦਾ ਵਰਜਨ ਖਤਮ ਹੋ ਗਿਆ ਹੈ!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">ਸੁਨੇਹੇ ਹੁਣ ਸਫਲਤਾਪੂਰਵਕ ਭੇਜੇ ਨਹੀਂ ਜਾਣਗੇ. ਸਭ ਤੋਂ ਤਾਜ਼ਾ ਵਰਜਨ ਨੂੰ ਅਪਡੇਟ ਕਰਨ ਲਈ ਟੈਪ ਕਰੋ</string> -->
<string name="reminder_header_sms_default_title">ਡਿਫੌਲਟ SMS ਐਪ ਦੇ ਤੌਰ ਤੇ ਉਪਯੋਗ ਕਰੋ</string>
<string name="reminder_header_sms_default_text">Signal ਨੂੰ ਆਪਣੀ ਡਿਫੌਲਟ SMS ਐਪ ਬਣਾਉਣ ਲਈ ਟੈਪ ਕਰੋ</string>
<string name="reminder_header_sms_import_title">ਸਿਸਟਮ ਐਸਐਮਐਸ ਇੰਪੋਰਟ ਕਰੋ</string>

View File

@ -1841,6 +1841,7 @@ Otrzymano wiadomość wymiany klucz dla niepoprawnej wersji protokołu.</string>
<string name="preferences__slow">Wolno</string>
<string name="preferences__help">Pomoc</string>
<string name="preferences__advanced">Zaawansowane</string>
<string name="preferences__donate_to_signal">Datek na Signal</string>
<string name="preferences__privacy">Prywatność</string>
<string name="preferences__mms_user_agent">MMS User Agent</string>
<string name="preferences__advanced_mms_access_point_names">Manualne ustawienia MMS</string>
@ -1854,7 +1855,7 @@ Otrzymano wiadomość wymiany klucz dla niepoprawnej wersji protokołu.</string>
<string name="preferences__chats">Rozmowy i multimedia</string>
<string name="preferences__storage">Pamięć</string>
<string name="preferences__conversation_length_limit">Limit długości konwersacji</string>
<string name="preferences__keep_messages">Zachowaj wiadomości</string>
<string name="preferences__keep_messages">Zachowuj wiadomości</string>
<string name="preferences__clear_message_history">Wyczyść historię wiadomości</string>
<string name="preferences__linked_devices">Połączone urządzenia</string>
<string name="preferences__light_theme">Jasny</string>
@ -1906,7 +1907,7 @@ Otrzymano wiadomość wymiany klucz dla niepoprawnej wersji protokołu.</string>
<string name="preferences_storage__thirty_days">30 dni</string>
<string name="preferences_storage__none">Brak</string>
<string name="preferences_storage__s_messages">%1$s wiadomości</string>
<string name="preferences_storage__custom">Własne</string>
<string name="preferences_storage__custom">Własny</string>
<string name="preferences_Storage__custom_conversation_length_limit">Własny limit długości konwersacji</string>
<string name="preferences_advanced__use_system_emoji">Używaj emoji systemu</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Wyłącz wbudowane wspomaganie emoji Signal</string>
@ -2027,16 +2028,16 @@ Otrzymano wiadomość wymiany klucz dla niepoprawnej wersji protokołu.</string>
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Skopiuj do schowka </string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Porównaj ze schowkiem</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Twoja wersja Signal jest nieaktualna.</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Twoja wersja Signal jest nieaktualna.</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Twoja wersja Signal wygaśnie za %d dzień. Dotknij, aby zaktualizować do najnowszej wersji.</item>
<item quantity="few">Twoja wersja Signal wygaśnie za %d dni. Dotknij, aby zaktualizować do najnowszej wersji.</item>
<item quantity="many">Twoja wersja Signal wygaśnie za %d dni. Dotknij, aby zaktualizować do najnowszej wersji.</item>
<item quantity="other">Twoja wersja Signal wygaśnie za %d dni. Dotknij, aby zaktualizować do najnowszej wersji.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Twoja wersja Signal dzisiaj będzie już nieaktualna. Dotknij, aby zaktualizować do najnowszej wersji.</string>
<string name="reminder_header_expired_build">Twoja wersja Signal jest nieaktualna!</string>
<string name="reminder_header_expired_build_details">Wiadomości nie będą dłużej dostarczane. Dotknij, aby zaktualizować Signal do najnowszej wersji.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Twoja wersja Signal dzisiaj będzie już nieaktualna. Dotknij, aby zaktualizować do najnowszej wersji.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Twoja wersja Signal jest nieaktualna!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Wiadomości nie będą dłużej dostarczane. Dotknij, aby zaktualizować Signal do najnowszej wersji.</string> -->
<string name="reminder_header_sms_default_title">Ustaw jako domyślną aplikację SMS</string>
<string name="reminder_header_sms_default_text">Dotknij, aby Signal był Twoją domyślną aplikacją SMS.</string>
<string name="reminder_header_sms_import_title">Importuj bazę SMS</string>

View File

@ -449,6 +449,7 @@
<!--RequestingMembersFragment-->
<string name="RequestingMembersFragment_pending_member_requests">Solicitações de membros pendentes</string>
<string name="RequestingMembersFragment_no_member_requests_to_show">Não há pedidos de membros para mostrar.</string>
<string name="RequestingMembersFragment_explanation">As pessoas desta lista estão tentando se conectar a este grupo através do link de grupo.</string>
<string name="RequestingMembersFragment_added_s">Adicionado \"%1$s\"</string>
<string name="RequestingMembersFragment_denied_s">Negado \"%1$s\"</string>
<!--AddMembersActivity-->
@ -610,6 +611,7 @@
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_links_coming_soon">Links de grupos em breve</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal_to_use_group_links">Atualize o Signal para usar links do grupo</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_coming_soon">Participar no grupo através de um link ainda não é suportado pelo Signal. Este recurso será lançado na próxima atualização.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_message">A versão do Signal que você está usando não suporta links de grupo. Atualize para a versão mais recente para se conectar a este grupo via link.</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_update_signal">Atualizar o Signal</string>
<string name="GroupJoinUpdateRequiredBottomSheetDialogFragment_group_link_is_not_valid">O link de grupo não é válido</string>
<!--GV2 Request confirmation dialog-->
@ -845,10 +847,25 @@
<string name="MessageRecord_s_changed_who_can_edit_group_membership_to_s">%1$s mudou quem pode editar os membros do grupo. Agora é \"%2$s\".</string>
<string name="MessageRecord_who_can_edit_group_membership_has_been_changed_to_s">Quem pode editar as informações do grupo foi alterado para \"%1$s\".</string>
<!--GV2 group link invite access level change-->
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_off">Você ativou o link do grupo com a aprovação do administrador desativada.</string>
<string name="MessageRecord_you_turned_on_the_group_link_with_admin_approval_on">Você ativou o link do grupo com a aprovação de administrador ativada.</string>
<string name="MessageRecord_you_turned_off_the_group_link">Você desativou o link do grupo.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_off">%1$s ativou o link do grupo com a aprovação de administrador desativada.</string>
<string name="MessageRecord_s_turned_on_the_group_link_with_admin_approval_on">%1$s ativou o link do grupo com a aprovação de administrador ativada.</string>
<string name="MessageRecord_s_turned_off_the_group_link">%1$s desativou o link do grupo.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_off">O link do grupo foi ativado com a aprovação de administrador desativada.</string>
<string name="MessageRecord_the_group_link_has_been_turned_on_with_admin_approval_on">O link do grupo foi ativado com a aprovação de administrador ativada.</string>
<string name="MessageRecord_the_group_link_has_been_turned_off">O link do grupo foi desativado.</string>
<!--GV2 group link reset-->
<string name="MessageRecord_you_reset_the_group_link">Você resetou o link do grupo.</string>
<string name="MessageRecord_s_reset_the_group_link">%1$s resetou o link do grupo.</string>
<string name="MessageRecord_the_group_link_has_been_reset">O link do grupo foi resetado.</string>
<!--GV2 group link joins-->
<string name="MessageRecord_you_joined_the_group_via_the_group_link">Você se conectou ao grupo via o link do grupo.</string>
<string name="MessageRecord_s_joined_the_group_via_the_group_link">%1$s se conectou ao grupo via o link do grupo.</string>
<!--GV2 group link requests-->
<string name="MessageRecord_you_sent_a_request_to_join_the_group">Você enviou um pedido para participar no grupo.</string>
<string name="MessageRecord_s_requested_to_join_via_the_group_link">%1$s solicitou a participar via o link do grupo.</string>
<!--GV2 group link approvals-->
<string name="MessageRecord_s_approved_your_request_to_join_the_group">%1$s aprovou seu pedido de participação no grupo.</string>
<string name="MessageRecord_s_approved_a_request_to_join_the_group_from_s">%1$s aprovou um pedido de participação no grupo de %2$s.</string>
@ -1430,6 +1447,7 @@
<!--safety_number_change_dialog-->
<string name="safety_number_change_dialog__safety_number_changes">Mudanças no Número de Segurança</string>
<string name="safety_number_change_dialog__send_anyway">Envie de qualquer forma</string>
<string name="safety_number_change_dialog__call_anyway">Ligue de qualquer maneira</string>
<string name="safety_number_change_dialog__the_following_people_may_have_reinstalled_or_changed_devices">As seguintes pessoas podem ter reinstalado ou mudado de aparelho. Verifique o seu número de segurança com elas para garantir a sua privacidade e a delas.</string>
<string name="safety_number_change_dialog__view">Exibir</string>
<string name="safety_number_change_dialog__previous_verified">Já verificado</string>
@ -1736,6 +1754,8 @@
<string name="preferences__chats">Chats e mídia</string>
<string name="preferences__storage">Armazenamento</string>
<string name="preferences__conversation_length_limit">Tamanho máximo de conversa</string>
<string name="preferences__keep_messages">Guardar mensagens</string>
<string name="preferences__clear_message_history">Excluir histórico de mensagens</string>
<string name="preferences__linked_devices">Dispositivos vinculados</string>
<string name="preferences__light_theme">Claro</string>
<string name="preferences__dark_theme">Escuro</string>
@ -1765,18 +1785,32 @@
<string name="preferences_chats__when_using_wifi">Quando usar Wi-Fi</string>
<string name="preferences_chats__when_roaming">Quando em roaming</string>
<string name="preferences_chats__media_auto_download">Download automático de mídia</string>
<string name="preferences_chats__message_history">Histórico da mensagens</string>
<string name="preferences_storage__storage_usage">Uso do armazenamento</string>
<string name="preferences_storage__photos">Fotos</string>
<string name="preferences_storage__videos">Vídeos</string>
<string name="preferences_storage__files">Arquivos</string>
<string name="preferences_storage__audio">Áudio</string>
<string name="preferences_storage__review_storage">Checar armazenamento</string>
<string name="preferences_storage__delete_older_messages">Excluir as mensagens mais antigas?</string>
<string name="preferences_storage__clear_message_history">Excluir histórico de mensagens?</string>
<string name="preferences_storage__this_will_permanently_trim_all_conversations_to_the_d_most_recent_messages">Isto excluirá permanentemente todas as conversas menos as %1$s mensagens mais recentes.</string>
<string name="preferences_storage__are_you_sure_you_want_to_delete_all_message_history">Tem certeza que quer excluir todo o histórico de mensagens?</string>
<string name="preferences_storage__all_message_history_will_be_permanently_removed_this_action_cannot_be_undone">Todo o histórico de mensagens será excluído permanentemente. Esta ação não pode ser desfeita.</string>
<string name="preferences_storage__delete_all_now">Excluir tudo agora</string>
<string name="preferences_storage__forever">Para sempre</string>
<string name="preferences_storage__one_year">1 ano</string>
<string name="preferences_storage__six_months">6 meses</string>
<string name="preferences_storage__thirty_days">30 dias</string>
<string name="preferences_storage__none">Nenhum</string>
<string name="preferences_storage__s_messages">%1$s mensagens</string>
<string name="preferences_storage__custom">Personalizado</string>
<string name="preferences_Storage__custom_conversation_length_limit">Limite personalizado de duração da conversa</string>
<string name="preferences_advanced__use_system_emoji">Usar emoji do sistema</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Desabilitar o suporte a emoji embutido do Signal</string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">Encaminhar todas as chamadas através do servidor Signal para evitar revelar seu endereço IP para seu contato. Habilitar reduzirá a qualidade da chamada.</string>
<string name="preferences_advanced__always_relay_calls">Sempre reencaminhar chamadas</string>
<string name="preferences_app_protection__who_can">Quem pode…</string>
<string name="preferences_app_protection__app_access">Acesso ao aplicativo</string>
<string name="preferences_app_protection__communication">Comunicação</string>
<string name="preferences_chats__chats">Chats</string>
@ -1801,6 +1835,7 @@
<string name="preferences_notifications__notify_me">Notifique-me</string>
<string name="preferences_notifications__receive_notifications_when_youre_mentioned_in_muted_chats">Receba notificações quando você for mencionado em conversas silenciosas</string>
<string name="preferences_setup_a_username">Definir um nome de usuário</string>
<string name="configurable_single_select__customize_option">Opção para personalizar</string>
<!--Internal only preferences-->
<!--****************************************-->
<!--menus-->
@ -1890,14 +1925,14 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copiar para a área de transferência</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Comparar com a área de transferência</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Sua versão do Signal está desatualizada</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Sua versão do Signal está desatualizada</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Sua versão do Signal irá expirar em %d dia. Toque para atualizar para a versão mais recente.</item>
<item quantity="other">Sua versão do Signal irá expirar em %d dias. Toque para atualizar para a versão mais recente.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Sua versão do Signal expirará hoje. Toque para atualizar para a versão mais recente.</string>
<string name="reminder_header_expired_build">Sua versão do Signal expirou!</string>
<string name="reminder_header_expired_build_details">As mensagens não serão mais enviadas com sucesso. Toque para atualizar para a versão mais recente.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Sua versão do Signal expirará hoje. Toque para atualizar para a versão mais recente.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Sua versão do Signal expirou!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">As mensagens não serão mais enviadas com sucesso. Toque para atualizar para a versão mais recente.</string> -->
<string name="reminder_header_sms_default_title">Usar como aplicativo padrão de SMS</string>
<string name="reminder_header_sms_default_text">Toque para tornar o Signal o seu aplicativo padrão de SMS.</string>
<string name="reminder_header_sms_import_title">Importar SMS do sistema</string>
@ -2099,7 +2134,14 @@
<string name="RegistrationActivity_code_support_subject">Cadastro Signal - Código de verificação para Android</string>
<string name="BackupUtil_never">Nunca</string>
<string name="BackupUtil_unknown">Desconhecida</string>
<string name="preferences_app_protection__see_my_phone_number">Ver meu número de telefone</string>
<string name="preferences_app_protection__find_me_by_phone_number">Pode me encontrar pelo número de telefone</string>
<string name="PhoneNumberPrivacy_everyone">Todo o mundo</string>
<string name="PhoneNumberPrivacy_my_contacts">Meus contatos</string>
<string name="PhoneNumberPrivacy_nobody">Ninguém</string>
<string name="PhoneNumberPrivacy_everyone_see_description">Seu número de telefone estará visível para todas as pessoas e grupos dos quais você participe.</string>
<string name="PhoneNumberPrivacy_everyone_find_description">Qualquer pessoa que tenha seu número de telefone em seus contatos o verá como um contato no Signal. Outros poderão encontrá-lo em busca.</string>
<string name="PhoneNumberPrivacy_my_contacts_see_description">Somente seus contatos verão seu número de telefone no Signal.</string>
<string name="preferences_app_protection__screen_lock">Bloqueio de tela</string>
<string name="preferences_app_protection__lock_signal_access_with_android_screen_lock_or_fingerprint">Proteger acesso ao Signal com tela de bloqueio do Android ou impressão digital.</string>
<string name="preferences_app_protection__screen_lock_inactivity_timeout">Tempo de espera para bloquear tela</string>

View File

@ -1724,6 +1724,7 @@ Mensagem de troca de chaves inválida para esta versão do protocolo.
<string name="preferences__slow">Lento</string>
<string name="preferences__help">Ajuda</string>
<string name="preferences__advanced">Avançado</string>
<string name="preferences__donate_to_signal">Doar ao Signal</string>
<string name="preferences__privacy">Privacidade</string>
<string name="preferences__mms_user_agent">Agente do utilizador de MMS</string>
<string name="preferences__advanced_mms_access_point_names">Definições manuais de MMS</string>
@ -1891,14 +1892,14 @@ Mensagem de troca de chaves inválida para esta versão do protocolo.
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copiar para a área de transferência</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Comparar com a área de transferência</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">A sua versão do Signal encontra-se desatualizada</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">A sua versão do Signal encontra-se desatualizada</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">A sua versão do Signal irá expirar dentro de %d dias. Tocar para atualizar para a versão mais recente.</item>
<item quantity="other">A sua versão do Signal irá expirar dentro de %d dias. Pressione para atualizar para a versão mais recente.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">A sua versão de Signal irá expirar hoje. Toque para atualizar para a versão mais recente.</string>
<string name="reminder_header_expired_build">A sua versão de Signal expirou!</string>
<string name="reminder_header_expired_build_details">As mensagens deixarão de ser enviadas com sucesso. Toque para atualizar para a versão mais recente.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">A sua versão de Signal irá expirar hoje. Toque para atualizar para a versão mais recente.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">A sua versão de Signal expirou!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">As mensagens deixarão de ser enviadas com sucesso. Toque para atualizar para a versão mais recente.</string> -->
<string name="reminder_header_sms_default_title">Definir como aplicação de SMS pré-definida</string>
<string name="reminder_header_sms_default_text">Toque para tornar o Signal na sua aplicação de SMS pré-definida.</string>
<string name="reminder_header_sms_import_title">Importar as SMS do sistema</string>

View File

@ -1122,14 +1122,14 @@ Shuk ranti pakallayupay chaski chayamurka, shuk ñawpa mana alli protocolo kashk
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Panka allichikman chayshina allichishka</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Panka allichikwan chimpapuray </string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Kikinpa Signal mawkayashka</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Kikinpa Signal mawkayashka</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Kikinpa Signal %dpunchapi mawkayankami. Mushukyachinkapak kaypi llapi.</item>
<item quantity="other">Kikinpa Signal %d punchakunapi mawkayankami. Mushukyachinkapak kaypi llapipay.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Kikinpa Signal kunanmi mawkayan. Mushukyachinkapakka kaypi llapipay.</string>
<string name="reminder_header_expired_build">¡Kikinpa Signal mawkayashkami!</string>
<string name="reminder_header_expired_build_details">Chaskikunata mana alli kachayta usharinkachu. Mushukyachinkapakka kaypi llapipay.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Kikinpa Signal kunanmi mawkayan. Mushukyachinkapakka kaypi llapipay.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">¡Kikinpa Signal mawkayashkami!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Chaskikunata mana alli kachayta usharinkachu. Mushukyachinkapakka kaypi llapipay.</string> -->
<string name="reminder_header_sms_default_title">Signal aplicacionta, killkashka SMS chaskichun churay</string>
<string name="reminder_header_sms_default_text">Signal aplicacionta, killkashka SMS chaskichun llapipay.</string>
<string name="reminder_header_sms_import_title">SMS killkashkata sistemamanta apamuna</string>

View File

@ -1927,15 +1927,15 @@ Am primit mesajul conform căruia schimbul de chei a avut loc pentru o versiune
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Copiază în clipboard</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Compară cu clipboard-ul</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Versiunea ta de Signal este veche</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Versiunea ta de Signal este veche</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Versiunea ta de Signal va expira în %d zile. Apasă pentru a actualiza aplicația la versiunea cea mai recentă.</item>
<item quantity="few">Versiunea ta de Signal va expira în %d zile. Apasă pentru a actualiza aplicația la versiunea cea mai recentă.</item>
<item quantity="other">Versiunea ta de Signal va expira în %d zile. Apasă pentru a actualiza aplicația la versiunea cea mai recentă.</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Versiunea ta de Signal va expira azi. Apasă pentru a actualiza aplicația la versiunea cea mai recentă.</string>
<string name="reminder_header_expired_build">Versiunea ta de Signal a expirat!</string>
<string name="reminder_header_expired_build_details">Mesajele nu se vor mai trimite cu succes. Apasă pentru a actualiza aplicația la versiunea cea mai recentă.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Versiunea ta de Signal va expira azi. Apasă pentru a actualiza aplicația la versiunea cea mai recentă.</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Versiunea ta de Signal a expirat!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Mesajele nu se vor mai trimite cu succes. Apasă pentru a actualiza aplicația la versiunea cea mai recentă.</string> -->
<string name="reminder_header_sms_default_title">Utilizează ca și aplicație SMS implicită</string>
<string name="reminder_header_sms_default_text">Atingeți pentru a seta Signal ca și aplicație SMS implicită.</string>
<string name="reminder_header_sms_import_title">Importă SMS de sistem</string>

View File

@ -1842,6 +1842,7 @@
<string name="preferences__slow">Медленное</string>
<string name="preferences__help">Помощь</string>
<string name="preferences__advanced">Расширенные</string>
<string name="preferences__donate_to_signal">Поддержать Signal</string>
<string name="preferences__privacy">Конфиденциальность</string>
<string name="preferences__mms_user_agent">User Agent для MMS </string>
<string name="preferences__advanced_mms_access_point_names">Ручные настройки MMS</string>
@ -1907,8 +1908,8 @@
<string name="preferences_storage__thirty_days">30 дней</string>
<string name="preferences_storage__none">Нет</string>
<string name="preferences_storage__s_messages">%1$s сообщений</string>
<string name="preferences_storage__custom">Пользовательское</string>
<string name="preferences_Storage__custom_conversation_length_limit">Пользовательское ограничение длины разговора</string>
<string name="preferences_storage__custom">Пользовательский</string>
<string name="preferences_Storage__custom_conversation_length_limit">Пользовательский предел длины разговора</string>
<string name="preferences_advanced__use_system_emoji">Использовать системные эмодзи</string>
<string name="preferences_advanced__disable_signal_built_in_emoji_support">Отключить встроенные эмодзи Signal</string>
<string name="preferences_advanced__relay_all_calls_through_the_signal_server_to_avoid_revealing_your_ip_address">Пропускать все звонки через сервер Signal, чтобы не раскрывать ваш IP-адрес собеседнику. Качество звонка ухудшится.</string>
@ -2028,16 +2029,16 @@
<string name="verify_display_fragment_context_menu__copy_to_clipboard">Копировать в буфер обмена</string>
<string name="verify_display_fragment_context_menu__compare_with_clipboard">Сравнить с буфером обмена</string>
<!--reminder_header-->
<string name="reminder_header_outdated_build">Ваша версия Signal скоро устареет</string>
<plurals name="reminder_header_outdated_build_details">
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build">Ваша версия Signal скоро устареет</string> -->
<!-- Removed by excludeNonTranslatables <plurals name="reminder_header_outdated_build_details">
<item quantity="one">Ваша версия Signal перестанет работать через %d день. Обновиться до последней версии?</item>
<item quantity="few">Ваша версия Signal перестанет работать через %d дня. Обновиться до последней версии?</item>
<item quantity="many">Ваша версия Signal перестанет работать через %d дней. Обновиться до последней версии?</item>
<item quantity="other">Ваша версия Signal перестанет работать через %d дней. Обновиться до последней версии?</item>
</plurals>
<string name="reminder_header_outdated_build_details_today">Ваша версия Signal перестанет работать сегодня. Обновиться до последней версии?</string>
<string name="reminder_header_expired_build">Ваша версия Signal устарела!</string>
<string name="reminder_header_expired_build_details">Сообщения более не будут отправляться. Нажмите, чтобы обновиться до последней версии.</string>
</plurals> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_outdated_build_details_today">Ваша версия Signal перестанет работать сегодня. Обновиться до последней версии?</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build">Ваша версия Signal устарела!</string> -->
<!-- Removed by excludeNonTranslatables <string name="reminder_header_expired_build_details">Сообщения более не будут отправляться. Нажмите, чтобы обновиться до последней версии.</string> -->
<string name="reminder_header_sms_default_title">Использовать для всех SMS</string>
<string name="reminder_header_sms_default_text">Нажмите, чтобы сделать Signal своим приложением для SMS по умолчанию</string>
<string name="reminder_header_sms_import_title">Импортировать SMS из системы</string>

Some files were not shown because too many files have changed in this diff Show More