mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-05-11 17:35:01 +00:00
Merge branch 'master' into master-android
This commit is contained in:
+132
-12
@@ -10,17 +10,25 @@ on:
|
||||
- "!*-fdroid"
|
||||
- "!*-armv7a"
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- "apps/ios"
|
||||
- "apps/multiplatform"
|
||||
- "blog"
|
||||
- "docs"
|
||||
- "fastlane"
|
||||
- "images"
|
||||
- "packages"
|
||||
- "website"
|
||||
- "README.md"
|
||||
- "PRIVACY.md"
|
||||
paths:
|
||||
- "src/**"
|
||||
- "apps/simplex-chat/**"
|
||||
- "apps/simplex-bot/**"
|
||||
- "apps/simplex-bot-advanced/**"
|
||||
- "apps/simplex-broadcast-bot/**"
|
||||
- "apps/simplex-directory-service/**"
|
||||
- "tests/**"
|
||||
- "bots/src/**"
|
||||
- "simplex-chat.cabal"
|
||||
- "cabal.project"
|
||||
- "Dockerfile*"
|
||||
- "scripts/ci/**"
|
||||
- "scripts/desktop/**"
|
||||
- ".github/**"
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: ${{ !startsWith(github.ref, 'refs/tags/v') }}
|
||||
|
||||
# This workflow uses custom actions (prepare-build and prepare-release) defined in:
|
||||
#
|
||||
@@ -369,6 +377,100 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# =================================
|
||||
# Linux PostgreSQL Library Build
|
||||
# =================================
|
||||
|
||||
build-linux-postgres:
|
||||
name: "ubuntu-22.04-x86_64 (Postgres lib), GHC: ${{ needs.variables.outputs.GHC_VER }}"
|
||||
needs: [maybe-release, variables]
|
||||
runs-on: ubuntu-22.04
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Get UID and GID
|
||||
id: ids
|
||||
run: |
|
||||
echo "uid=$(id -u)" >> $GITHUB_OUTPUT
|
||||
echo "gid=$(id -g)" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Free disk space
|
||||
shell: bash
|
||||
run: ./scripts/ci/linux_util_free_space.sh
|
||||
|
||||
- name: Restore cached build
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
~/.cabal/store
|
||||
dist-newstyle
|
||||
key: ubuntu-22.04-x86_64-postgres-ghc${{ needs.variables.outputs.GHC_VER }}-${{ hashFiles('cabal.project', 'simplex-chat.cabal') }}
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: simplex-chat/docker-setup-buildx-action@v3
|
||||
|
||||
- name: Build and cache Docker image
|
||||
uses: simplex-chat/docker-build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
load: true
|
||||
file: Dockerfile.build
|
||||
tags: build/22.04:latest
|
||||
build-args: |
|
||||
TAG=22.04
|
||||
HASH=sha256:5c8b2c0a6c745bc177669abfaa716b4bc57d58e2ea3882fb5da67f4d59e3dda5
|
||||
GHC=${{ needs.variables.outputs.GHC_VER }}
|
||||
USER_UID=${{ steps.ids.outputs.uid }}
|
||||
USER_GID=${{ steps.ids.outputs.gid }}
|
||||
|
||||
- name: Start container
|
||||
shell: bash
|
||||
run: |
|
||||
docker run -t -d \
|
||||
--name builder \
|
||||
-v ~/.cabal:/root/.cabal \
|
||||
-v /home/runner/work/_temp:/home/runner/work/_temp \
|
||||
-v ${{ github.workspace }}:/project \
|
||||
build/22.04:latest
|
||||
|
||||
- name: Prepare cabal.project.local
|
||||
shell: bash
|
||||
run: |
|
||||
echo "ignore-project: False" >> cabal.project.local
|
||||
echo "package direct-sqlcipher" >> cabal.project.local
|
||||
echo " flags: +openssl" >> cabal.project.local
|
||||
|
||||
- name: Build postgres library
|
||||
shell: docker exec -t builder sh -eu {0}
|
||||
run: |
|
||||
cabal clean
|
||||
cabal update
|
||||
scripts/desktop/build-lib-linux.sh postgres
|
||||
|
||||
- name: Copy libs from container
|
||||
shell: bash
|
||||
run: |
|
||||
ARCH=x86_64
|
||||
GHC_VER=${{ needs.variables.outputs.GHC_VER }}
|
||||
BUILD_DIR=$(echo dist-newstyle/build/${ARCH}-linux/ghc-${GHC_VER}/simplex-chat-*)
|
||||
mkdir -p postgres-libs
|
||||
cp ${BUILD_DIR}/build/libsimplex.so postgres-libs/
|
||||
cp ${BUILD_DIR}/build/deps/* postgres-libs/
|
||||
|
||||
- name: Upload postgres libs artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: simplex-libs-linux-postgres-x86_64
|
||||
path: postgres-libs/
|
||||
|
||||
- name: Fix permissions for cache
|
||||
shell: bash
|
||||
run: |
|
||||
sudo chmod -R 777 dist-newstyle ~/.cabal
|
||||
sudo chown -R $(id -u):$(id -g) dist-newstyle ~/.cabal
|
||||
|
||||
# =========================
|
||||
# MacOS Build
|
||||
# =========================
|
||||
@@ -605,7 +707,7 @@ jobs:
|
||||
|
||||
release-nodejs-libs:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [build-linux, build-macos]
|
||||
needs: [build-linux, build-linux-postgres, build-macos]
|
||||
if: startsWith(github.ref, 'refs/tags/v') && (!cancelled())
|
||||
steps:
|
||||
- name: Checkout current repository
|
||||
@@ -614,6 +716,13 @@ jobs:
|
||||
- name: Install packages for archiving
|
||||
run: sudo apt install -y msitools gcc-mingw-w64
|
||||
|
||||
- name: Download postgres libs artifact
|
||||
if: needs.build-linux-postgres.result == 'success'
|
||||
uses: actions/download-artifact@v4
|
||||
with:
|
||||
name: simplex-libs-linux-postgres-x86_64
|
||||
path: ${{ runner.temp }}/postgres-libs
|
||||
|
||||
- name: Build archives
|
||||
run: |
|
||||
INIT_DIR='${{ runner.temp }}/artifacts'
|
||||
@@ -670,6 +779,17 @@ jobs:
|
||||
zip -r "${PREFIX}-windows-x86_64.zip" libs
|
||||
mv "${PREFIX}-windows-x86_64.zip" "$RELEASE_DIR" && cd "$INIT_DIR"
|
||||
|
||||
# Linux PostgreSQL (only if postgres build succeeded)
|
||||
# -------------------------------------------------
|
||||
POSTGRES_LIBS='${{ runner.temp }}/postgres-libs'
|
||||
if [ -d "$POSTGRES_LIBS" ]; then
|
||||
mkdir -p linux-postgres/libs
|
||||
cp "${POSTGRES_LIBS}"/*.so linux-postgres/libs/
|
||||
cd linux-postgres
|
||||
zip -r "${PREFIX}-linux-x86_64-postgres.zip" libs
|
||||
mv "${PREFIX}-linux-x86_64-postgres.zip" "$RELEASE_DIR" && cd "$INIT_DIR"
|
||||
fi
|
||||
|
||||
- name: Create release in libs repo and upload artifacts
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
|
||||
@@ -172,8 +172,8 @@ struct ChatItemContentView<Content: View>: View {
|
||||
case .rcvBlocked: deletedItemView()
|
||||
case let .sndDirectE2EEInfo(e2eeInfo): CIEventView(eventText: directE2EEInfoText(e2eeInfo))
|
||||
case let .rcvDirectE2EEInfo(e2eeInfo): CIEventView(eventText: directE2EEInfoText(e2eeInfo))
|
||||
case .sndGroupE2EEInfo: CIEventView(eventText: e2eeInfoNoPQText())
|
||||
case .rcvGroupE2EEInfo: CIEventView(eventText: e2eeInfoNoPQText())
|
||||
case let .sndGroupE2EEInfo(e2eeInfo): CIEventView(eventText: groupE2EEInfoText(e2eeInfo))
|
||||
case let .rcvGroupE2EEInfo(e2eeInfo): CIEventView(eventText: groupE2EEInfoText(e2eeInfo))
|
||||
case .chatBanner: EmptyView()
|
||||
case let .invalidJSON(json): CIInvalidJSONView(json: json)
|
||||
}
|
||||
@@ -257,6 +257,12 @@ struct ChatItemContentView<Content: View>: View {
|
||||
e2eeInfoText("Messages, files and calls are protected by **end-to-end encryption** with perfect forward secrecy, repudiation and break-in recovery.")
|
||||
}
|
||||
|
||||
private func groupE2EEInfoText(_ info: E2EEInfo) -> Text {
|
||||
info.public == true
|
||||
? e2eeInfoText("Messages in this channel are **not end-to-end encrypted**. Chat relays can see these messages.")
|
||||
: e2eeInfoNoPQText()
|
||||
}
|
||||
|
||||
private func e2eeInfoText(_ s: LocalizedStringKey) -> Text {
|
||||
Text(s)
|
||||
.font(.caption)
|
||||
|
||||
@@ -515,7 +515,7 @@ struct ComposeView: View {
|
||||
sendMessageView(
|
||||
disableSendButton,
|
||||
placeholder: chat.chatInfo.groupInfo.map { gi in
|
||||
gi.useRelays && gi.membership.memberRole >= .owner
|
||||
gi.useRelays && gi.membership.memberRole >= .owner && chat.chatInfo.groupChatScope() == nil
|
||||
? NSLocalizedString("Broadcast", comment: "compose placeholder for channel owner")
|
||||
: nil
|
||||
} ?? nil
|
||||
@@ -1659,7 +1659,7 @@ struct ComposeView: View {
|
||||
type: chat.chatInfo.chatType,
|
||||
id: chat.chatInfo.apiId,
|
||||
scope: chat.chatInfo.groupChatScope(),
|
||||
sendAsGroup: chat.chatInfo.groupInfo.map { $0.useRelays && $0.membership.memberRole >= .owner } ?? false,
|
||||
sendAsGroup: chat.chatInfo.sendAsGroup,
|
||||
live: live,
|
||||
ttl: ttl,
|
||||
composedMessages: msgs
|
||||
|
||||
@@ -103,6 +103,10 @@ struct GroupChatInfoView: View {
|
||||
}
|
||||
}
|
||||
|
||||
let showUserSupportChat = groupInfo.membership.memberActive
|
||||
&& ((groupInfo.fullGroupPreferences.support.on && groupInfo.membership.memberRole < .moderator)
|
||||
|| groupInfo.membership.supportChat != nil)
|
||||
|
||||
if groupInfo.useRelays {
|
||||
Section {
|
||||
// TODO [relays] allow other owners to manage channel link (requires protocol changes to share link ownership)
|
||||
@@ -124,6 +128,12 @@ struct GroupChatInfoView: View {
|
||||
if groupInfo.isOwner || members.contains(where: { $0.wrapped.memberRole >= .owner }) {
|
||||
channelMembersButton()
|
||||
}
|
||||
if groupInfo.membership.memberRole >= .moderator {
|
||||
memberSupportButton()
|
||||
}
|
||||
if showUserSupportChat {
|
||||
UserSupportChatNavLink(chat: chat, groupInfo: groupInfo, scrollToItemId: $scrollToItemId)
|
||||
}
|
||||
} footer: {
|
||||
if !groupInfo.isOwner && groupInfo.groupProfile.publicGroup?.groupLink != nil {
|
||||
Text("You can share a link or a QR code - anybody will be able to join the channel.")
|
||||
@@ -141,8 +151,7 @@ struct GroupChatInfoView: View {
|
||||
if groupInfo.canModerate {
|
||||
GroupReportsChatNavLink(chat: chat, groupInfo: groupInfo, scrollToItemId: $scrollToItemId)
|
||||
}
|
||||
if groupInfo.membership.memberActive
|
||||
&& (groupInfo.membership.memberRole < .moderator || groupInfo.membership.supportChat != nil) {
|
||||
if showUserSupportChat {
|
||||
UserSupportChatNavLink(chat: chat, groupInfo: groupInfo, scrollToItemId: $scrollToItemId)
|
||||
}
|
||||
} header: {
|
||||
|
||||
@@ -121,13 +121,15 @@ struct GroupMemberInfoView: View {
|
||||
}
|
||||
|
||||
if connectionLoaded {
|
||||
let showMemberSupportChat = !openedFromSupportChat
|
||||
&& groupInfo.membership.memberRole >= .moderator
|
||||
&& member.memberRole != .relay
|
||||
&& ((groupInfo.fullGroupPreferences.support.on && member.memberRole < .moderator)
|
||||
|| member.supportChat != nil)
|
||||
|
||||
if member.memberActive {
|
||||
Section {
|
||||
if !openedFromSupportChat
|
||||
&& groupInfo.membership.memberRole >= .moderator
|
||||
&& member.memberRole != .relay
|
||||
&& (member.memberRole < .moderator || member.supportChat != nil) {
|
||||
if showMemberSupportChat {
|
||||
MemberInfoSupportChatNavLink(groupInfo: groupInfo, member: groupMember, scrollToItemId: $scrollToItemId)
|
||||
}
|
||||
if let code = connectionCode,
|
||||
@@ -142,6 +144,10 @@ struct GroupMemberInfoView: View {
|
||||
// synchronizeConnectionButtonForce()
|
||||
// }
|
||||
}
|
||||
} else if groupInfo.useRelays && member.memberCurrent && showMemberSupportChat {
|
||||
Section {
|
||||
MemberInfoSupportChatNavLink(groupInfo: groupInfo, member: groupMember, scrollToItemId: $scrollToItemId)
|
||||
}
|
||||
}
|
||||
|
||||
if let contactLink = member.contactLink {
|
||||
|
||||
@@ -46,13 +46,30 @@ struct GroupPreferencesView: View {
|
||||
featureSection(.voice, $preferences.voice.enable, $preferences.voice.role)
|
||||
featureSection(.files, $preferences.files.enable, $preferences.files.role)
|
||||
featureSection(.simplexLinks, $preferences.simplexLinks.enable, $preferences.simplexLinks.role)
|
||||
featureSection(.reports, $preferences.reports.enable)
|
||||
featureSection(.reports, $preferences.reports.enable, disabled: true) // enable reports in 7.0 once directory support added
|
||||
featureSection(.history, $preferences.history.enable)
|
||||
featureSection(.support, $preferences.support.enable, disabled: true)
|
||||
} else {
|
||||
featureSection(.timedMessages, $preferences.timedMessages.enable)
|
||||
featureSection(.fullDelete, $preferences.fullDelete.enable)
|
||||
featureSection(.reactions, $preferences.reactions.enable)
|
||||
featureSection(.history, $preferences.history.enable)
|
||||
let supportNotice = NSLocalizedString("Chats with admins in public channels have no E2E encryption - use only with trusted chat relays.", comment: "alert message")
|
||||
featureSection(.support, $preferences.support.enable, notice: supportNotice)
|
||||
.onChange(of: preferences.support.enable) { enable in
|
||||
if enable == .on {
|
||||
showAlert(
|
||||
NSLocalizedString("Enable chats with admins?", comment: "alert title"),
|
||||
message: supportNotice,
|
||||
actions: {[
|
||||
UIAlertAction(title: NSLocalizedString("Enable", comment: "alert button"), style: .destructive) { _ in },
|
||||
UIAlertAction(title: NSLocalizedString("Cancel", comment: "alert button"), style: .cancel) { _ in
|
||||
preferences.support.enable = .off
|
||||
}
|
||||
]}
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if groupInfo.isOwner {
|
||||
@@ -92,7 +109,7 @@ struct GroupPreferencesView: View {
|
||||
}
|
||||
}
|
||||
|
||||
private func featureSection(_ feature: GroupFeature, _ enableFeature: Binding<GroupFeatureEnabled>, _ enableForRole: Binding<GroupMemberRole?>? = nil) -> some View {
|
||||
private func featureSection(_ feature: GroupFeature, _ enableFeature: Binding<GroupFeatureEnabled>, _ enableForRole: Binding<GroupMemberRole?>? = nil, disabled: Bool = false, notice: String? = nil) -> some View {
|
||||
Section {
|
||||
let color: Color = enableFeature.wrappedValue == .on ? .green : theme.colors.secondary
|
||||
let icon = enableFeature.wrappedValue == .on ? feature.iconFilled : feature.icon
|
||||
@@ -103,9 +120,9 @@ struct GroupPreferencesView: View {
|
||||
set: { on, _ in enableFeature.wrappedValue = on ? .on : .off }
|
||||
)
|
||||
settingsRow(icon, color: color) {
|
||||
Toggle(feature.text, isOn: enable)
|
||||
Toggle(feature.text(isChannel: groupInfo.isChannel), isOn: enable)
|
||||
}
|
||||
.disabled(feature == .reports) // remove in 6.4
|
||||
.disabled(disabled)
|
||||
if timedOn {
|
||||
DropdownCustomTimePicker(
|
||||
selection: $preferences.timedMessages.ttl,
|
||||
@@ -126,7 +143,7 @@ struct GroupPreferencesView: View {
|
||||
}
|
||||
} else {
|
||||
settingsRow(icon, color: color) {
|
||||
infoRow(Text(feature.text), enableFeature.wrappedValue.text)
|
||||
infoRow(Text(feature.text(isChannel: groupInfo.isChannel)), enableFeature.wrappedValue.text)
|
||||
}
|
||||
if timedOn {
|
||||
infoRow("Delete after", timeText(preferences.timedMessages.ttl))
|
||||
@@ -144,8 +161,11 @@ struct GroupPreferencesView: View {
|
||||
}
|
||||
}
|
||||
} footer: {
|
||||
Text(feature.enableDescription(enableFeature.wrappedValue, groupInfo.isOwner))
|
||||
.foregroundColor(theme.colors.secondary)
|
||||
VStack(alignment: .leading) {
|
||||
Text(feature.enableDescription(enableFeature.wrappedValue, groupInfo.isOwner, isChannel: groupInfo.isChannel))
|
||||
if let notice { Text(notice) }
|
||||
}
|
||||
.foregroundColor(theme.colors.secondary)
|
||||
}
|
||||
.onChange(of: enableFeature.wrappedValue) { enabled in
|
||||
if case .off = enabled {
|
||||
|
||||
@@ -45,7 +45,7 @@ struct MemberSupportView: View {
|
||||
: membersWithChats.filter { $0.wrapped.localAliasAndFullName.localizedLowercase.contains(s) }
|
||||
|
||||
if membersWithChats.isEmpty {
|
||||
Text("No chats with members")
|
||||
Text(groupInfo.fullGroupPreferences.support.on ? "No chats with members" : "Chats with members are disabled")
|
||||
.foregroundColor(.secondary)
|
||||
} else {
|
||||
List {
|
||||
|
||||
@@ -839,11 +839,11 @@ struct TagsView: View {
|
||||
nil
|
||||
}
|
||||
let active = tag == selectedPresetTag
|
||||
let (icon, text) = presetTagLabel(tag: tag, active: active)
|
||||
let (icon, menuIcon, text) = presetTagLabel(tag: tag, active: active)
|
||||
let color: Color = active ? .accentColor : .secondary
|
||||
|
||||
HStack(spacing: 4) {
|
||||
Image(systemName: icon)
|
||||
Image(systemName: menuIcon ?? icon)
|
||||
.foregroundColor(color)
|
||||
ZStack {
|
||||
Text(text).fontWeight(.semibold).foregroundColor(.clear)
|
||||
@@ -886,9 +886,9 @@ struct TagsView: View {
|
||||
Button {
|
||||
setActiveFilter(filter: .presetTag(tag))
|
||||
} label: {
|
||||
let (systemName, text) = presetTagLabel(tag: tag, active: tag == selectedPresetTag)
|
||||
let (icon, _, text) = presetTagLabel(tag: tag, active: tag == selectedPresetTag)
|
||||
HStack {
|
||||
Image(systemName: systemName)
|
||||
Image(systemName: icon)
|
||||
Text(text)
|
||||
}
|
||||
}
|
||||
@@ -896,8 +896,8 @@ struct TagsView: View {
|
||||
}
|
||||
} label: {
|
||||
if let tag = selectedPresetTag, tag.сollapse {
|
||||
let (systemName, _) = presetTagLabel(tag: tag, active: true)
|
||||
Image(systemName: systemName)
|
||||
let (icon, menuIcon, _) = presetTagLabel(tag: tag, active: true)
|
||||
Image(systemName: menuIcon ?? icon)
|
||||
.foregroundColor(.accentColor)
|
||||
} else {
|
||||
Image(systemName: "list.bullet")
|
||||
@@ -907,15 +907,15 @@ struct TagsView: View {
|
||||
.frame(minWidth: 28)
|
||||
}
|
||||
|
||||
private func presetTagLabel(tag: PresetTag, active: Bool) -> (String, LocalizedStringKey) {
|
||||
private func presetTagLabel(tag: PresetTag, active: Bool) -> (item: String, menu: String?, label: LocalizedStringKey) {
|
||||
switch tag {
|
||||
case .groupReports: (active ? "flag.fill" : "flag", "Reports")
|
||||
case .favorites: (active ? "star.fill" : "star", "Favorites")
|
||||
case .contacts: (active ? "person.fill" : "person", "Contacts")
|
||||
case .groups: (active ? "person.2.fill" : "person.2", "Groups")
|
||||
case .channels: (active ? "antenna.radiowaves.left.and.right.circle.fill" : "antenna.radiowaves.left.and.right.circle", "Channels")
|
||||
case .business: (active ? "briefcase.fill" : "briefcase", "Businesses")
|
||||
case .notes: (active ? "folder.fill" : "folder", "Notes")
|
||||
case .groupReports: (item: active ? "flag.fill" : "flag", menu: nil, label: "Reports")
|
||||
case .favorites: (item: active ? "star.fill" : "star", menu: nil, label: "Favorites")
|
||||
case .contacts: (item: active ? "person.fill" : "person", menu: nil, label: "Contacts")
|
||||
case .groups: (item: active ? "person.2.fill" : "person.2", menu: nil, label: "Groups")
|
||||
case .channels: (item: active ? "antenna.radiowaves.left.and.right.circle.fill" : "antenna.radiowaves.left.and.right", menu: "antenna.radiowaves.left.and.right", label: "Channels")
|
||||
case .business: (item: active ? "briefcase.fill" : "briefcase", menu: nil, label: "Businesses")
|
||||
case .notes: (item: active ? "folder.fill" : "folder", menu: nil, label: "Notes")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -86,6 +86,40 @@ func showSheet(
|
||||
}
|
||||
}
|
||||
|
||||
func openExternalLink(_ url: URL) {
|
||||
let s = url.absoluteString
|
||||
if s.starts(with: "https://simplex.chat/contact#") || (s.starts(with: "https://smp") && s.contains(".simplex.im/a#")) {
|
||||
ChatModel.shared.appOpenUrl = url
|
||||
} else {
|
||||
showAlert(
|
||||
title: NSLocalizedString("Open external link?", comment: "alert title"),
|
||||
message: s,
|
||||
buttonTitle: NSLocalizedString("Open", comment: "alert button"),
|
||||
buttonAction: { UIApplication.shared.open(url) },
|
||||
cancelButton: true
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
struct ExternalLink<Label: View>: View {
|
||||
let destination: URL
|
||||
let label: Label
|
||||
|
||||
init(destination: URL, @ViewBuilder label: () -> Label) {
|
||||
self.destination = destination
|
||||
self.label = label()
|
||||
}
|
||||
|
||||
init(_ titleKey: LocalizedStringKey, destination: URL) where Label == Text {
|
||||
self.destination = destination
|
||||
self.label = Text(titleKey)
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
Button { openExternalLink(destination) } label: { label }
|
||||
}
|
||||
}
|
||||
|
||||
let okAlertAction = UIAlertAction(title: NSLocalizedString("Ok", comment: "alert button"), style: .default)
|
||||
|
||||
let cancelAlertAction = UIAlertAction(title: NSLocalizedString("Cancel", comment: "alert button"), style: .cancel)
|
||||
|
||||
@@ -161,7 +161,10 @@ struct AddChannelView: View {
|
||||
private func createChannel() {
|
||||
focusDisplayName = false
|
||||
profile.displayName = profile.displayName.trimmingCharacters(in: .whitespaces)
|
||||
profile.groupPreferences = GroupPreferences(history: GroupPreference(enable: .on))
|
||||
profile.groupPreferences = GroupPreferences(
|
||||
history: GroupPreference(enable: .on),
|
||||
support: GroupPreference(enable: .off)
|
||||
)
|
||||
creationInProgress = true
|
||||
Task {
|
||||
do {
|
||||
|
||||
@@ -26,7 +26,7 @@ struct AddContactLearnMore: View {
|
||||
VStack(alignment: .leading, spacing: 18) {
|
||||
Text("To connect, your contact can scan QR code or use the link in the app.")
|
||||
Text("If you can't meet in person, show QR code in a video call, or share the link.")
|
||||
Text("Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends).")
|
||||
ExternalLink("Read more in User Guide.", destination: URL(string: "https://simplex.chat/docs/guide/readme.html#connect-to-friends")!)
|
||||
}
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.listRowBackground(Color.clear)
|
||||
|
||||
@@ -338,14 +338,6 @@ private struct InviteView: View {
|
||||
HStack(spacing: 8) {
|
||||
let link = connLinkInvitation.simplexChatUri(short: showShortLink)
|
||||
linkTextView(link)
|
||||
Button {
|
||||
UIPasteboard.general.string = link
|
||||
setInvitationUsed()
|
||||
} label: {
|
||||
Image(systemName: "doc.on.doc")
|
||||
.padding(.top, -7)
|
||||
.padding(.horizontal, 8)
|
||||
}
|
||||
Button {
|
||||
showShareSheet(items: [link])
|
||||
setInvitationUsed()
|
||||
|
||||
@@ -23,17 +23,19 @@ struct OnboardingCardView: View {
|
||||
let action: () -> Void
|
||||
|
||||
static let lightStops: [Gradient.Stop] = [
|
||||
.init(color: Color(red: 0.824, green: 0.910, blue: 1.0), location: 0.0),
|
||||
.init(color: Color(red: 0.800, green: 0.914, blue: 1.0), location: 0.5),
|
||||
.init(color: Color(red: 0.875, green: 1.0, blue: 1.0), location: 0.9),
|
||||
.init(color: Color(red: 1.0, green: 0.988, blue: 0.918), location: 1.0)
|
||||
.init(color: oklch(0.9219, 0.0431, 249.4), location: 0.0),
|
||||
.init(color: oklch(0.9198, 0.0471, 240.7), location: 0.5),
|
||||
.init(color: oklch(0.9772, 0.0358, 196.6), location: 0.9),
|
||||
.init(color: oklch(0.9829, 0.0104, 70.0), location: 0.95),
|
||||
.init(color: oklch(0.9886, 0.0272, 99.1), location: 1.0)
|
||||
]
|
||||
|
||||
static let darkStops: [Gradient.Stop] = [
|
||||
.init(color: Color(red: 0.016, green: 0.039, blue: 0.141), location: 0.4),
|
||||
.init(color: Color(red: 0.220, green: 0.329, blue: 0.671), location: 0.72),
|
||||
.init(color: Color(red: 0.659, green: 0.929, blue: 0.953), location: 0.9),
|
||||
.init(color: Color(red: 1.0, green: 0.965, blue: 0.878), location: 1.0)
|
||||
.init(color: oklch(0.1578, 0.0609, 267.3), location: 0.4),
|
||||
.init(color: oklch(0.4729, 0.1574, 267.3), location: 0.72),
|
||||
.init(color: oklch(0.9024, 0.0760, 202.8), location: 0.9),
|
||||
.init(color: oklch(0.9384, 0.0354, 65.0), location: 0.95),
|
||||
.init(color: oklch(0.9744, 0.0370, 88.4), location: 1.0)
|
||||
]
|
||||
|
||||
static let gradientAngle: Double = 80.0 * .pi / 180.0
|
||||
|
||||
@@ -28,7 +28,7 @@ struct HowItWorks: View {
|
||||
Text("Only client devices store user profiles, contacts, groups, and messages.")
|
||||
Text("All messages and files are sent **end-to-end encrypted**, with post-quantum security in direct messages.")
|
||||
if !onboarding {
|
||||
Text("Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme).")
|
||||
ExternalLink("Read more in our GitHub repository.", destination: URL(string: "https://github.com/simplex-chat/simplex-chat#readme")!)
|
||||
}
|
||||
}
|
||||
.padding(.bottom)
|
||||
|
||||
@@ -791,7 +791,7 @@ struct WhatsNewView: View {
|
||||
}
|
||||
}
|
||||
if let post = v.post {
|
||||
Link(destination: post) {
|
||||
ExternalLink(destination: post) {
|
||||
HStack {
|
||||
Text("Read more")
|
||||
Image(systemName: "arrow.up.right.circle")
|
||||
|
||||
@@ -22,14 +22,16 @@ struct DeveloperView: View {
|
||||
VStack {
|
||||
List {
|
||||
Section {
|
||||
ZStack(alignment: .leading) {
|
||||
Image(colorScheme == .dark ? "github_light" : "github")
|
||||
.resizable()
|
||||
.frame(width: 24, height: 24)
|
||||
.opacity(0.5)
|
||||
.colorMultiply(theme.colors.secondary)
|
||||
Text("Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)")
|
||||
.padding(.leading, 36)
|
||||
ExternalLink(destination: URL(string: "https://github.com/simplex-chat/simplex-chat")!) {
|
||||
ZStack(alignment: .leading) {
|
||||
Image(colorScheme == .dark ? "github_light" : "github")
|
||||
.resizable()
|
||||
.frame(width: 24, height: 24)
|
||||
.opacity(0.5)
|
||||
.colorMultiply(theme.colors.secondary)
|
||||
Text("Install SimpleX Chat for terminal")
|
||||
.padding(.leading, 36)
|
||||
}
|
||||
}
|
||||
NavigationLink {
|
||||
TerminalView()
|
||||
|
||||
@@ -23,7 +23,7 @@ struct IncognitoHelp: View {
|
||||
Text("Incognito mode protects your privacy by using a new random profile for each contact.")
|
||||
Text("It allows having many anonymous connections without any shared data between them in a single chat profile.")
|
||||
Text("When you share an incognito profile with somebody, this profile will be used for the groups they invite you to.")
|
||||
Text("Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).")
|
||||
ExternalLink("Read more in User Guide.", destination: URL(string: "https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode")!)
|
||||
}
|
||||
.listRowBackground(Color.clear)
|
||||
.listRowInsets(EdgeInsets(top: 0, leading: 0, bottom: 0, trailing: 0))
|
||||
|
||||
@@ -71,11 +71,7 @@ struct ConditionsWebView: UIViewRepresentable {
|
||||
switch navigationAction.navigationType {
|
||||
case .linkActivated:
|
||||
decisionHandler(.cancel)
|
||||
if url.absoluteString.starts(with: "https://simplex.chat/contact#") {
|
||||
ChatModel.shared.appOpenUrl = url
|
||||
} else {
|
||||
UIApplication.shared.open(url)
|
||||
}
|
||||
openExternalLink(url)
|
||||
default:
|
||||
decisionHandler(.allow)
|
||||
}
|
||||
|
||||
@@ -332,7 +332,7 @@ struct UsageConditionsView: View {
|
||||
@ViewBuilder private func conditionsDiffButton(_ font: Font? = nil) -> some View {
|
||||
let commit = ChatModel.shared.conditions.currentConditions.conditionsCommit
|
||||
if let commitUrl = URL(string: "https://github.com/simplex-chat/simplex-chat/commit/\(commit)") {
|
||||
Link(destination: commitUrl) {
|
||||
ExternalLink(destination: commitUrl) {
|
||||
HStack {
|
||||
Text("Open changes")
|
||||
Image(systemName: "arrow.up.right.circle")
|
||||
|
||||
@@ -364,11 +364,15 @@ struct OperatorInfoView: View {
|
||||
Text(d)
|
||||
}
|
||||
}
|
||||
Link(serverOperator.info.website.absoluteString, destination: serverOperator.info.website)
|
||||
ExternalLink(destination: serverOperator.info.website) {
|
||||
Text(serverOperator.info.website.absoluteString)
|
||||
}
|
||||
}
|
||||
if let selfhost = serverOperator.info.selfhost {
|
||||
Section {
|
||||
Link(selfhost.text, destination: selfhost.link)
|
||||
ExternalLink(destination: selfhost.link) {
|
||||
Text(selfhost.text)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -432,7 +436,7 @@ struct ConditionsTextView: View {
|
||||
private func conditionsLinkView(_ conditionsLink: String) -> some View {
|
||||
VStack(alignment: .leading, spacing: 20) {
|
||||
Text("Current conditions text couldn't be loaded, you can review conditions via this link:")
|
||||
Link(destination: URL(string: conditionsLink)!) {
|
||||
ExternalLink(destination: URL(string: conditionsLink)!) {
|
||||
Text(conditionsLink)
|
||||
.multilineTextAlignment(.leading)
|
||||
}
|
||||
@@ -591,11 +595,11 @@ func conditionsLinkButton() -> some View {
|
||||
let commit = ChatModel.shared.conditions.currentConditions.conditionsCommit
|
||||
let mdUrl = URL(string: "https://github.com/simplex-chat/simplex-chat/blob/\(commit)/PRIVACY.md") ?? conditionsURL
|
||||
return Menu {
|
||||
Link(destination: mdUrl) {
|
||||
ExternalLink(destination: mdUrl) {
|
||||
Label("Open conditions", systemImage: "doc")
|
||||
}
|
||||
if let commitUrl = URL(string: "https://github.com/simplex-chat/simplex-chat/commit/\(commit)") {
|
||||
Link(destination: commitUrl) {
|
||||
ExternalLink(destination: commitUrl) {
|
||||
Label("Open changes", systemImage: "ellipsis")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -223,9 +223,7 @@ struct YourServersView: View {
|
||||
|
||||
func howToButton() -> some View {
|
||||
Button {
|
||||
DispatchQueue.main.async {
|
||||
UIApplication.shared.open(howToUrl)
|
||||
}
|
||||
openExternalLink(howToUrl)
|
||||
} label: {
|
||||
HStack {
|
||||
Text("How to use your servers")
|
||||
|
||||
@@ -139,9 +139,7 @@ struct RTCServers: View {
|
||||
|
||||
func howToButton() -> some View {
|
||||
Button {
|
||||
DispatchQueue.main.async {
|
||||
UIApplication.shared.open(howToUrl)
|
||||
}
|
||||
openExternalLink(howToUrl)
|
||||
} label: {
|
||||
HStack{
|
||||
Text("How to")
|
||||
|
||||
@@ -11,7 +11,7 @@ import SwiftUI
|
||||
import StoreKit
|
||||
import SimpleXChat
|
||||
|
||||
let simplexTeamURL = URL(string: "simplex:/contact#/?v=1&smp=smp%3A%2F%2FPQUV2eL0t7OStZOoAsPEV2QYWt4-xilbakvGUGOItUo%3D%40smp6.simplex.im%2FK1rslx-m5bpXVIdMZg9NLUZ_8JBm8xTt%23MCowBQYDK2VuAyEALDeVe-sG8mRY22LsXlPgiwTNs9dbiLrNuA7f3ZMAJ2w%3D")!
|
||||
let simplexTeamURL = URL(string: "simplex:/a#lrdvu2d8A1GumSmoKb2krQmtKhWXq-tyGpHuM7aMwsw?h=smp6.simplex.im")!
|
||||
|
||||
let appVersion = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String
|
||||
|
||||
@@ -399,7 +399,9 @@ struct SettingsView: View {
|
||||
}
|
||||
|
||||
Section(header: Text("Support SimpleX Chat").foregroundColor(theme.colors.secondary)) {
|
||||
settingsRow("keyboard", color: theme.colors.secondary) { Text("[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)") }
|
||||
settingsRow("keyboard", color: theme.colors.secondary) {
|
||||
ExternalLink("Contribute", destination: URL(string: "https://github.com/simplex-chat/simplex-chat#contribute")!)
|
||||
}
|
||||
settingsRow("star", color: theme.colors.secondary) {
|
||||
Button("Rate the app") {
|
||||
if let scene = sceneDelegate.windowScene {
|
||||
@@ -407,14 +409,16 @@ struct SettingsView: View {
|
||||
}
|
||||
}
|
||||
}
|
||||
ZStack(alignment: .leading) {
|
||||
Image(colorScheme == .dark ? "github_light" : "github")
|
||||
.resizable()
|
||||
.frame(width: 24, height: 24)
|
||||
.opacity(0.5)
|
||||
.colorMultiply(theme.colors.secondary)
|
||||
Text("[Star on GitHub](https://github.com/simplex-chat/simplex-chat)")
|
||||
.padding(.leading, indent)
|
||||
ExternalLink(destination: URL(string: "https://github.com/simplex-chat/simplex-chat")!) {
|
||||
ZStack(alignment: .leading) {
|
||||
Image(colorScheme == .dark ? "github_light" : "github")
|
||||
.resizable()
|
||||
.frame(width: 24, height: 24)
|
||||
.opacity(0.5)
|
||||
.colorMultiply(theme.colors.secondary)
|
||||
Text("Star on GitHub")
|
||||
.padding(.leading, indent)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ struct UserAddressLearnMore: View {
|
||||
.padding(.top)
|
||||
Text("SimpleX address and 1-time links are safe to share via any messenger.")
|
||||
Text("To protect against your link being replaced, you can compare contact security codes.")
|
||||
Text("Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).")
|
||||
ExternalLink("Read more in User Guide.", destination: URL(string: "https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses")!)
|
||||
.padding(.top)
|
||||
}
|
||||
|
||||
|
||||
@@ -215,11 +215,6 @@ struct UserAddressView: View {
|
||||
HStack(spacing: 8) {
|
||||
let link = userAddress.connLinkContact.simplexChatUri(short: showShortLink)
|
||||
linkTextView(link)
|
||||
Button { UIPasteboard.general.string = link } label: {
|
||||
Image(systemName: "doc.on.doc")
|
||||
.padding(.top, -7)
|
||||
.padding(.horizontal, 8)
|
||||
}
|
||||
Button { showShareSheet(items: [link]) } label: {
|
||||
Image(systemName: "square.and.arrow.up")
|
||||
.padding(.top, -7)
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -68,7 +68,7 @@ func apiSendMessages(
|
||||
type: chatInfo.chatType,
|
||||
id: chatInfo.apiId,
|
||||
scope: chatInfo.groupChatScope(),
|
||||
sendAsGroup: chatInfo.groupInfo.map { $0.useRelays && $0.membership.memberRole >= .owner } ?? false,
|
||||
sendAsGroup: chatInfo.sendAsGroup,
|
||||
live: false,
|
||||
ttl: nil,
|
||||
composedMessages: composedMessages
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
"Please create a profile in the SimpleX app" = "Bitte erstellen Sie in der SimpleX-App ein Profil";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Selected chat preferences prohibit this message." = "Die gewählten Chat-Einstellungen erlauben diese Nachricht nicht.";
|
||||
"Selected chat preferences prohibit this message." = "Diese Nachricht ist wegen der gewählten Chat-Präferenzen nicht erlaubt.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Sending a message takes longer than expected." = "Das Senden einer Nachricht dauert länger als erwartet.";
|
||||
|
||||
@@ -187,8 +187,8 @@
|
||||
64C3B0212A0D359700E19930 /* CustomTimePicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64C3B0202A0D359700E19930 /* CustomTimePicker.swift */; };
|
||||
64C8299D2D54AEEE006B9E89 /* libgmp.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64C829982D54AEED006B9E89 /* libgmp.a */; };
|
||||
64C8299E2D54AEEE006B9E89 /* libffi.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64C829992D54AEEE006B9E89 /* libffi.a */; };
|
||||
64C8299F2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re-ghc9.6.3.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64C8299A2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re-ghc9.6.3.a */; };
|
||||
64C829A02D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64C8299B2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re.a */; };
|
||||
64C8299F2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz-ghc9.6.3.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64C8299A2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz-ghc9.6.3.a */; };
|
||||
64C829A02D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64C8299B2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz.a */; };
|
||||
64C829A12D54AEEE006B9E89 /* libgmpxx.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 64C8299C2D54AEEE006B9E89 /* libgmpxx.a */; };
|
||||
64D0C2C029F9688300B38D5F /* UserAddressView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64D0C2BF29F9688300B38D5F /* UserAddressView.swift */; };
|
||||
64D0C2C229FA57AB00B38D5F /* UserAddressLearnMore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64D0C2C129FA57AB00B38D5F /* UserAddressLearnMore.swift */; };
|
||||
@@ -568,8 +568,8 @@
|
||||
64C3B0202A0D359700E19930 /* CustomTimePicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomTimePicker.swift; sourceTree = "<group>"; };
|
||||
64C829982D54AEED006B9E89 /* libgmp.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmp.a; sourceTree = "<group>"; };
|
||||
64C829992D54AEEE006B9E89 /* libffi.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libffi.a; sourceTree = "<group>"; };
|
||||
64C8299A2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re-ghc9.6.3.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re-ghc9.6.3.a"; sourceTree = "<group>"; };
|
||||
64C8299B2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re.a"; sourceTree = "<group>"; };
|
||||
64C8299A2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz-ghc9.6.3.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz-ghc9.6.3.a"; sourceTree = "<group>"; };
|
||||
64C8299B2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz.a"; sourceTree = "<group>"; };
|
||||
64C8299C2D54AEEE006B9E89 /* libgmpxx.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libgmpxx.a; sourceTree = "<group>"; };
|
||||
64D0C2BF29F9688300B38D5F /* UserAddressView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserAddressView.swift; sourceTree = "<group>"; };
|
||||
64D0C2C129FA57AB00B38D5F /* UserAddressLearnMore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserAddressLearnMore.swift; sourceTree = "<group>"; };
|
||||
@@ -737,8 +737,8 @@
|
||||
64C8299D2D54AEEE006B9E89 /* libgmp.a in Frameworks */,
|
||||
64C8299E2D54AEEE006B9E89 /* libffi.a in Frameworks */,
|
||||
64C829A12D54AEEE006B9E89 /* libgmpxx.a in Frameworks */,
|
||||
64C8299F2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re-ghc9.6.3.a in Frameworks */,
|
||||
64C829A02D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re.a in Frameworks */,
|
||||
64C8299F2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz-ghc9.6.3.a in Frameworks */,
|
||||
64C829A02D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz.a in Frameworks */,
|
||||
CE38A29C2C3FCD72005ED185 /* SwiftyGif in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
@@ -824,8 +824,8 @@
|
||||
64C829992D54AEEE006B9E89 /* libffi.a */,
|
||||
64C829982D54AEED006B9E89 /* libgmp.a */,
|
||||
64C8299C2D54AEEE006B9E89 /* libgmpxx.a */,
|
||||
64C8299A2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re-ghc9.6.3.a */,
|
||||
64C8299B2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.15-7J6rfC1qLWr8QkAAXzi4Re.a */,
|
||||
64C8299A2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz-ghc9.6.3.a */,
|
||||
64C8299B2D54AEEE006B9E89 /* libHSsimplex-chat-6.5.0.16-45m1zumjYj2Eu6IsS525uz.a */,
|
||||
);
|
||||
path = Libraries;
|
||||
sourceTree = "<group>";
|
||||
@@ -2075,7 +2075,7 @@
|
||||
CLANG_TIDY_MISC_REDUNDANT_EXPRESSION = YES;
|
||||
CODE_SIGN_ENTITLEMENTS = "SimpleX (iOS).entitlements";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
ENABLE_BITCODE = NO;
|
||||
@@ -2125,7 +2125,7 @@
|
||||
CLANG_TIDY_MISC_REDUNDANT_EXPRESSION = YES;
|
||||
CODE_SIGN_ENTITLEMENTS = "SimpleX (iOS).entitlements";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
ENABLE_BITCODE = NO;
|
||||
@@ -2167,7 +2167,7 @@
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
|
||||
@@ -2187,7 +2187,7 @@
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
|
||||
@@ -2212,7 +2212,7 @@
|
||||
CODE_SIGN_ENTITLEMENTS = "SimpleX NSE/SimpleX NSE.entitlements";
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
ENABLE_BITCODE = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = s;
|
||||
@@ -2249,7 +2249,7 @@
|
||||
CODE_SIGN_ENTITLEMENTS = "SimpleX NSE/SimpleX NSE.entitlements";
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
ENABLE_BITCODE = NO;
|
||||
ENABLE_CODE_COVERAGE = NO;
|
||||
@@ -2286,7 +2286,7 @@
|
||||
CLANG_TIDY_BUGPRONE_REDUNDANT_BRANCH_CONDITION = YES;
|
||||
CLANG_TIDY_MISC_REDUNDANT_EXPRESSION = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEFINES_MODULE = YES;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
@@ -2337,7 +2337,7 @@
|
||||
CLANG_TIDY_BUGPRONE_REDUNDANT_BRANCH_CONDITION = YES;
|
||||
CLANG_TIDY_MISC_REDUNDANT_EXPRESSION = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEFINES_MODULE = YES;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
@@ -2391,7 +2391,7 @@
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
|
||||
CODE_SIGN_ENTITLEMENTS = "SimpleX SE/SimpleX SE.entitlements";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu17;
|
||||
@@ -2425,7 +2425,7 @@
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
|
||||
CODE_SIGN_ENTITLEMENTS = "SimpleX SE/SimpleX SE.entitlements";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 326;
|
||||
CURRENT_PROJECT_VERSION = 327;
|
||||
DEVELOPMENT_TEAM = 5NN7GUYB6T;
|
||||
ENABLE_USER_SCRIPT_SANDBOXING = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu17;
|
||||
|
||||
@@ -867,6 +867,7 @@ public enum GroupFeature: String, Decodable, Feature, Hashable {
|
||||
case simplexLinks
|
||||
case reports
|
||||
case history
|
||||
case support
|
||||
|
||||
public var id: Self { self }
|
||||
|
||||
@@ -888,10 +889,13 @@ public enum GroupFeature: String, Decodable, Feature, Hashable {
|
||||
case .simplexLinks: true
|
||||
case .reports: false
|
||||
case .history: false
|
||||
case .support: false
|
||||
}
|
||||
}
|
||||
|
||||
public var text: String {
|
||||
public var text: String { text(isChannel: false) }
|
||||
|
||||
public func text(isChannel: Bool) -> String {
|
||||
switch self {
|
||||
case .timedMessages: return NSLocalizedString("Disappearing messages", comment: "chat feature")
|
||||
case .directMessages: return NSLocalizedString("Direct messages", comment: "chat feature")
|
||||
@@ -900,8 +904,11 @@ public enum GroupFeature: String, Decodable, Feature, Hashable {
|
||||
case .voice: return NSLocalizedString("Voice messages", comment: "chat feature")
|
||||
case .files: return NSLocalizedString("Files and media", comment: "chat feature")
|
||||
case .simplexLinks: return NSLocalizedString("SimpleX links", comment: "chat feature")
|
||||
case .reports: return NSLocalizedString("Member reports", comment: "chat feature")
|
||||
case .reports: return isChannel
|
||||
? NSLocalizedString("Subscriber reports", comment: "chat feature")
|
||||
: NSLocalizedString("Member reports", comment: "chat feature")
|
||||
case .history: return NSLocalizedString("Visible history", comment: "chat feature")
|
||||
case .support: return NSLocalizedString("Chat with admins", comment: "chat feature")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -916,6 +923,7 @@ public enum GroupFeature: String, Decodable, Feature, Hashable {
|
||||
case .simplexLinks: return "link.circle"
|
||||
case .reports: return "flag"
|
||||
case .history: return "clock"
|
||||
case .support: return "questionmark.circle"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -930,6 +938,7 @@ public enum GroupFeature: String, Decodable, Feature, Hashable {
|
||||
case .simplexLinks: return "link.circle.fill"
|
||||
case .reports: return "flag.fill"
|
||||
case .history: return "clock.fill"
|
||||
case .support: return "questionmark.circle.fill"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -940,7 +949,7 @@ public enum GroupFeature: String, Decodable, Feature, Hashable {
|
||||
}
|
||||
}
|
||||
|
||||
public func enableDescription(_ enabled: GroupFeatureEnabled, _ canEdit: Bool) -> LocalizedStringKey {
|
||||
public func enableDescription(_ enabled: GroupFeatureEnabled, _ canEdit: Bool, isChannel: Bool = false) -> LocalizedStringKey {
|
||||
if canEdit {
|
||||
switch self {
|
||||
case .timedMessages:
|
||||
@@ -950,8 +959,12 @@ public enum GroupFeature: String, Decodable, Feature, Hashable {
|
||||
}
|
||||
case .directMessages:
|
||||
switch enabled {
|
||||
case .on: return "Allow sending direct messages to members."
|
||||
case .off: return "Prohibit sending direct messages to members."
|
||||
case .on: return isChannel
|
||||
? "Allow sending direct messages to subscribers."
|
||||
: "Allow sending direct messages to members."
|
||||
case .off: return isChannel
|
||||
? "Prohibit sending direct messages to subscribers."
|
||||
: "Prohibit sending direct messages to members."
|
||||
}
|
||||
case .fullDelete:
|
||||
switch enabled {
|
||||
@@ -985,56 +998,96 @@ public enum GroupFeature: String, Decodable, Feature, Hashable {
|
||||
}
|
||||
case .history:
|
||||
switch enabled {
|
||||
case .on: return "Send up to 100 last messages to new members."
|
||||
case .off: return "Do not send history to new members."
|
||||
case .on: return isChannel
|
||||
? "Send up to 100 last messages to new subscribers."
|
||||
: "Send up to 100 last messages to new members."
|
||||
case .off: return isChannel
|
||||
? "Do not send history to new subscribers."
|
||||
: "Do not send history to new members."
|
||||
}
|
||||
case .support:
|
||||
switch enabled {
|
||||
case .on: return isChannel
|
||||
? "Allow subscribers to chat with admins."
|
||||
: "Allow members to chat with admins."
|
||||
case .off: return "Prohibit chats with admins."
|
||||
}
|
||||
}
|
||||
} else {
|
||||
switch self {
|
||||
case .timedMessages:
|
||||
switch enabled {
|
||||
case .on: return "Members can send disappearing messages."
|
||||
case .on: return isChannel
|
||||
? "Subscribers can send disappearing messages."
|
||||
: "Members can send disappearing messages."
|
||||
case .off: return "Disappearing messages are prohibited."
|
||||
}
|
||||
case .directMessages:
|
||||
switch enabled {
|
||||
case .on: return "Members can send direct messages."
|
||||
case .off: return "Direct messages between members are prohibited."
|
||||
case .on: return isChannel
|
||||
? "Subscribers can send direct messages."
|
||||
: "Members can send direct messages."
|
||||
case .off: return isChannel
|
||||
? "Direct messages between subscribers are prohibited."
|
||||
: "Direct messages between members are prohibited."
|
||||
}
|
||||
case .fullDelete:
|
||||
switch enabled {
|
||||
case .on: return "Members can irreversibly delete sent messages. (24 hours)"
|
||||
case .on: return isChannel
|
||||
? "Subscribers can irreversibly delete sent messages. (24 hours)"
|
||||
: "Members can irreversibly delete sent messages. (24 hours)"
|
||||
case .off: return "Irreversible message deletion is prohibited."
|
||||
}
|
||||
case .reactions:
|
||||
switch enabled {
|
||||
case .on: return "Members can add message reactions."
|
||||
case .on: return isChannel
|
||||
? "Subscribers can add message reactions."
|
||||
: "Members can add message reactions."
|
||||
case .off: return "Message reactions are prohibited."
|
||||
}
|
||||
case .voice:
|
||||
switch enabled {
|
||||
case .on: return "Members can send voice messages."
|
||||
case .on: return isChannel
|
||||
? "Subscribers can send voice messages."
|
||||
: "Members can send voice messages."
|
||||
case .off: return "Voice messages are prohibited."
|
||||
}
|
||||
case .files:
|
||||
switch enabled {
|
||||
case .on: return "Members can send files and media."
|
||||
case .on: return isChannel
|
||||
? "Subscribers can send files and media."
|
||||
: "Members can send files and media."
|
||||
case .off: return "Files and media are prohibited."
|
||||
}
|
||||
case .simplexLinks:
|
||||
switch enabled {
|
||||
case .on: return "Members can send SimpleX links."
|
||||
case .on: return isChannel
|
||||
? "Subscribers can send SimpleX links."
|
||||
: "Members can send SimpleX links."
|
||||
case .off: return "SimpleX links are prohibited."
|
||||
}
|
||||
case .reports:
|
||||
switch enabled {
|
||||
case .on: return "Members can report messsages to moderators."
|
||||
case .on: return isChannel
|
||||
? "Subscribers can report messsages to moderators."
|
||||
: "Members can report messsages to moderators."
|
||||
case .off: return "Reporting messages to moderators is prohibited."
|
||||
}
|
||||
case .history:
|
||||
switch enabled {
|
||||
case .on: return "Up to 100 last messages are sent to new members."
|
||||
case .off: return "History is not sent to new members."
|
||||
case .on: return isChannel
|
||||
? "Up to 100 last messages are sent to new subscribers."
|
||||
: "Up to 100 last messages are sent to new members."
|
||||
case .off: return isChannel
|
||||
? "History is not sent to new subscribers."
|
||||
: "History is not sent to new members."
|
||||
}
|
||||
case .support:
|
||||
switch enabled {
|
||||
case .on: return isChannel
|
||||
? "Subscribers can chat with admins."
|
||||
: "Members can chat with admins."
|
||||
case .off: return "Chats with admins are prohibited."
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1190,6 +1243,7 @@ public struct FullGroupPreferences: Decodable, Equatable, Hashable {
|
||||
public var simplexLinks: RoleGroupPreference
|
||||
public var reports: GroupPreference
|
||||
public var history: GroupPreference
|
||||
public var support: GroupPreference
|
||||
public var commands: [ChatBotCommand]
|
||||
|
||||
public init(
|
||||
@@ -1202,6 +1256,7 @@ public struct FullGroupPreferences: Decodable, Equatable, Hashable {
|
||||
simplexLinks: RoleGroupPreference,
|
||||
reports: GroupPreference,
|
||||
history: GroupPreference,
|
||||
support: GroupPreference,
|
||||
commands: [ChatBotCommand]
|
||||
) {
|
||||
self.timedMessages = timedMessages
|
||||
@@ -1213,6 +1268,7 @@ public struct FullGroupPreferences: Decodable, Equatable, Hashable {
|
||||
self.simplexLinks = simplexLinks
|
||||
self.reports = reports
|
||||
self.history = history
|
||||
self.support = support
|
||||
self.commands = commands
|
||||
}
|
||||
|
||||
@@ -1226,6 +1282,7 @@ public struct FullGroupPreferences: Decodable, Equatable, Hashable {
|
||||
simplexLinks: RoleGroupPreference(enable: .on, role: nil),
|
||||
reports: GroupPreference(enable: .on),
|
||||
history: GroupPreference(enable: .on),
|
||||
support: GroupPreference(enable: .on),
|
||||
commands: []
|
||||
)
|
||||
}
|
||||
@@ -1240,6 +1297,7 @@ public struct GroupPreferences: Codable, Hashable {
|
||||
public var simplexLinks: RoleGroupPreference?
|
||||
public var reports: GroupPreference?
|
||||
public var history: GroupPreference?
|
||||
public var support: GroupPreference?
|
||||
public var commands: [ChatBotCommand]?
|
||||
|
||||
public init(
|
||||
@@ -1252,6 +1310,7 @@ public struct GroupPreferences: Codable, Hashable {
|
||||
simplexLinks: RoleGroupPreference? = nil,
|
||||
reports: GroupPreference? = nil,
|
||||
history: GroupPreference? = nil,
|
||||
support: GroupPreference? = nil,
|
||||
commands: [ChatBotCommand]? = nil
|
||||
) {
|
||||
self.timedMessages = timedMessages
|
||||
@@ -1263,6 +1322,7 @@ public struct GroupPreferences: Codable, Hashable {
|
||||
self.simplexLinks = simplexLinks
|
||||
self.reports = reports
|
||||
self.history = history
|
||||
self.support = support
|
||||
self.commands = commands
|
||||
}
|
||||
|
||||
@@ -1276,6 +1336,7 @@ public struct GroupPreferences: Codable, Hashable {
|
||||
simplexLinks: RoleGroupPreference(enable: .on, role: nil),
|
||||
reports: GroupPreference(enable: .on),
|
||||
history: GroupPreference(enable: .on),
|
||||
support: GroupPreference(enable: .on),
|
||||
commands: nil
|
||||
)
|
||||
}
|
||||
@@ -1760,6 +1821,18 @@ public enum ChatInfo: Identifiable, Decodable, NamedChat, Hashable {
|
||||
}
|
||||
}
|
||||
|
||||
public var sendAsGroup: Bool {
|
||||
if let g = groupInfo, g.useRelays && g.membership.memberRole >= .owner {
|
||||
switch groupChatScope() {
|
||||
case .none: true
|
||||
case .memberSupport: false
|
||||
case .reports: false
|
||||
}
|
||||
} else {
|
||||
false
|
||||
}
|
||||
}
|
||||
|
||||
public func ntfsEnabled(chatItem: ChatItem) -> Bool {
|
||||
ntfsEnabled(chatItem.meta.userMention)
|
||||
}
|
||||
@@ -4092,8 +4165,8 @@ public enum CIContent: Decodable, ItemContent, Hashable {
|
||||
case .rcvBlocked: return NSLocalizedString("blocked by admin", comment: "blocked chat item")
|
||||
case let .sndDirectE2EEInfo(e2eeInfo): return directE2EEInfoStr(e2eeInfo)
|
||||
case let .rcvDirectE2EEInfo(e2eeInfo): return directE2EEInfoStr(e2eeInfo)
|
||||
case .sndGroupE2EEInfo: return e2eeInfoNoPQStr
|
||||
case .rcvGroupE2EEInfo: return e2eeInfoNoPQStr
|
||||
case let .sndGroupE2EEInfo(e2eeInfo): return groupE2EEInfoStr(e2eeInfo)
|
||||
case let .rcvGroupE2EEInfo(e2eeInfo): return groupE2EEInfoStr(e2eeInfo)
|
||||
case .chatBanner: return ""
|
||||
case .invalidJSON: return NSLocalizedString("invalid data", comment: "invalid chat item")
|
||||
}
|
||||
@@ -4105,6 +4178,12 @@ public enum CIContent: Decodable, ItemContent, Hashable {
|
||||
: e2eeInfoNoPQStr
|
||||
}
|
||||
|
||||
private func groupE2EEInfoStr(_ e2eeInfo: E2EEInfo) -> String {
|
||||
e2eeInfo.public == true
|
||||
? NSLocalizedString("Messages in this channel are not end-to-end encrypted. Chat relays can see these messages.", comment: "E2EE info chat item")
|
||||
: e2eeInfoNoPQStr
|
||||
}
|
||||
|
||||
private var e2eeInfoNoPQStr: String {
|
||||
NSLocalizedString("This chat is protected by end-to-end encryption.", comment: "E2EE info chat item")
|
||||
}
|
||||
@@ -5319,6 +5398,7 @@ public enum CIGroupInvitationStatus: String, Decodable, Hashable {
|
||||
|
||||
public struct E2EEInfo: Decodable, Hashable {
|
||||
public var pqEnabled: Bool?
|
||||
public var `public`: Bool?
|
||||
}
|
||||
|
||||
public enum RcvDirectEvent: Decodable, Hashable {
|
||||
|
||||
@@ -25,6 +25,7 @@ extension ChatLike {
|
||||
case .files: p.files.on(for: groupInfo.membership)
|
||||
case .simplexLinks: p.simplexLinks.on(for: groupInfo.membership)
|
||||
case .history: p.history.on
|
||||
case .support: p.support.on
|
||||
case .reports: p.reports.on
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -33,6 +33,55 @@ let HighOrLowlight = Color(139, 135, 134, a: 255)
|
||||
//let FileLight = Color(183, 190, 199, a: 255)
|
||||
//let FileDark = Color(101, 101, 106, a: 255)
|
||||
|
||||
// Create a Display P3 Color from oklch components. H in degrees
|
||||
public func oklch(_ L: Double, _ C: Double, _ H: Double, alpha: Double = 1.0) -> Color {
|
||||
let hRad = H * .pi / 180.0
|
||||
let cosH = cos(hRad)
|
||||
let sinH = sin(hRad)
|
||||
|
||||
func linearP3(C: Double) -> (Double, Double, Double) {
|
||||
let a = C * cosH
|
||||
let b = C * sinH
|
||||
// oklab → LMS (Ottosson 2021)
|
||||
let l_ = L + 0.3963377774 * a + 0.2158037573 * b
|
||||
let m_ = L - 0.1055613458 * a - 0.0638541728 * b
|
||||
let s_ = L - 0.0894841775 * a - 1.2914855480 * b
|
||||
let l = l_ * l_ * l_
|
||||
let m = m_ * m_ * m_
|
||||
let s = s_ * s_ * s_
|
||||
// LMS → linear Display P3 (direct, no sRGB clamping)
|
||||
return (
|
||||
3.1281105148 * l - 2.2570749853 * m + 0.1293047593 * s,
|
||||
-1.0911282009 * l + 2.4132668169 * m - 0.3221681599 * s,
|
||||
-0.0260136845 * l - 0.5080276339 * m + 1.5333166364 * s
|
||||
)
|
||||
}
|
||||
|
||||
func inGamut(_ r: Double, _ g: Double, _ b: Double) -> Bool {
|
||||
r >= 0 && r <= 1 && g >= 0 && g <= 1 && b >= 0 && b <= 1
|
||||
}
|
||||
|
||||
// linear P3 → gamma-encoded P3 (same transfer function as sRGB)
|
||||
func gammaEncode(_ x: Double) -> Double {
|
||||
x >= 0.0031308
|
||||
? 1.055 * pow(min(x, 1.0), 1.0 / 2.4) - 0.055
|
||||
: 12.92 * max(x, 0)
|
||||
}
|
||||
|
||||
var (r, g, b) = linearP3(C: C)
|
||||
if !inGamut(r, g, b) {
|
||||
var lo = 0.0, hi = C
|
||||
while hi - lo > 1e-5 {
|
||||
let mid = (lo + hi) / 2
|
||||
let (mr, mg, mb) = linearP3(C: mid)
|
||||
if inGamut(mr, mg, mb) { lo = mid; r = mr; g = mg; b = mb }
|
||||
else { hi = mid }
|
||||
}
|
||||
}
|
||||
|
||||
return Color(.displayP3, red: gammaEncode(r), green: gammaEncode(g), blue: gammaEncode(b), opacity: alpha)
|
||||
}
|
||||
|
||||
extension Color {
|
||||
public init(_ argb: Int64) {
|
||||
let a = Double((argb & 0xFF000000) >> 24) / 255.0
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(това устройство v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Допринеси](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Изпратете ни имейл](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Звезда в GitHub](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**Добави контакт**: за създаване на нов линк.";
|
||||
|
||||
@@ -389,9 +383,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "Активни връзки";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Добавете адрес към вашия профил, така че вашите контакти да могат да го споделят с други хора. Актуализацията на профила ще бъде изпратена до вашите контакти.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "Добави приятели";
|
||||
|
||||
@@ -873,7 +864,7 @@ marked deleted chat item preview text */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "Български, финландски, тайландски и украински - благодарение на потребителите и [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "Бизнес адрес";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1318,7 +1309,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Грешка при свързване";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Грешка при свързване (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1384,6 +1375,9 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Продължи";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Допринеси";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Copy" = "Копирай";
|
||||
|
||||
@@ -1393,9 +1387,6 @@ server test step */
|
||||
/* alert message */
|
||||
"Correct name to %@?" = "Поправи име на %@?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Създаване";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create 1-time link" = "Създаване на еднократна препратка";
|
||||
|
||||
@@ -1802,7 +1793,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Edit group profile" = "Редактирай групов профил";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Активирай";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1964,7 +1955,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "грешка";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Грешка при свързване със сървъра";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2306,7 +2297,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"Group invitation is no longer valid, it was removed by sender." = "Груповата покана вече е невалидна, премахната е от подателя.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Групов линк";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2502,7 +2493,7 @@ server test error */
|
||||
"Initial role" = "Първоначална роля";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "Инсталирайте [SimpleX Chat за терминал](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "Инсталирайте SimpleX Chat за терминал";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Мигновено";
|
||||
@@ -2519,7 +2510,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "невалидни данни за чат";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Невалиден линк за връзка";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -3040,7 +3031,7 @@ alert button
|
||||
new chat action */
|
||||
"Ok" = "Ок";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"OK" = "ОК";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3103,7 +3094,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "Само вашият контакт може да изпраща гласови съобщения.";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "Отвори";
|
||||
|
||||
/* new chat action */
|
||||
@@ -3271,9 +3263,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile password" = "Профилна парола";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "Актуализацията на профила ще бъде изпратена до вашите контакти.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Забрани аудио/видео разговорите.";
|
||||
|
||||
@@ -3338,16 +3327,10 @@ new chat action */
|
||||
"Read more" = "Прочетете още";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "Прочетете повече в [Ръководство за потребителя](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).";
|
||||
"Read more in our GitHub repository." = "Прочетете повече в нашето GitHub хранилище.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "Прочетете повече в [Ръководство за потребителя](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "Прочетете повече в [Ръководство на потребителя](https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "Прочетете повече в нашето [GitHub хранилище](https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Прочетете повече в Ръководство за потребителя.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Потвърждениeто за доставка е деактивирано";
|
||||
@@ -3782,18 +3765,12 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address" = "Сподели адрес";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Сподели адреса с контактите?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share link" = "Сподели линк";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share this 1-time invite link" = "Сподели този еднократен линк за връзка";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Сподели с контактите";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Show calls in phone history" = "Показване на обажданията в хронологията на телефона";
|
||||
|
||||
@@ -3881,6 +3858,9 @@ chat item action */
|
||||
/* chat item text */
|
||||
"standard end-to-end encryption" = "стандартно криптиране от край до край";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Звезда в GitHub";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Започни чат";
|
||||
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(toto zařízení v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Přispějte](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Pošlete nám e-mail](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Hvězda na GitHubu](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**Vytvořit jednorázový odkaz**: pro vytvoření a sdílení nové pozvánky.";
|
||||
|
||||
@@ -374,9 +368,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "Aktivní spojení";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Přidejte adresu do svého profilu, aby ji vaše kontakty mohly sdílet s dalšími lidmi. Aktualizace profilu bude zaslána vašim kontaktům.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "Přidat přátele";
|
||||
|
||||
@@ -746,7 +737,7 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "Bulharský, finský, thajský a ukrajinský - díky uživatelům a [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "Obchodní adresa";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1017,7 +1008,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Chyba připojení";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Chyba spojení (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1065,15 +1056,15 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Pokračovat";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Přispějte";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Copy" = "Kopírovat";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Core version: v%@" = "Verze jádra: v%@";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Vytvořit";
|
||||
|
||||
/* server test step */
|
||||
"Create file" = "Vytvořit soubor";
|
||||
|
||||
@@ -1416,7 +1407,7 @@ alert button */
|
||||
/* No comment provided by engineer. */
|
||||
"Edit group profile" = "Upravit profil skupiny";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Zapnout";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1548,7 +1539,7 @@ alert button */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "chyba";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Chyba";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1824,7 +1815,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"Group invitation is no longer valid, it was removed by sender." = "Skupinová pozvánka již není platná, byla odstraněna odesílatelem.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Odkaz na skupinu";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1993,7 +1984,7 @@ server test error */
|
||||
"Initial role" = "Počáteční role";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "Nainstalujte [SimpleX Chat pro terminál](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "Nainstalujte SimpleX Chat pro terminál";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Okamžitě";
|
||||
@@ -2010,7 +2001,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "neplatná chat data";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Neplatný odkaz na spojení";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -2489,7 +2480,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "Hlasové zprávy může odesílat pouze váš kontakt.";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "Otevřít";
|
||||
|
||||
/* new chat action */
|
||||
@@ -2606,9 +2598,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile password" = "Heslo profilu";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "Aktualizace profilu bude zaslána vašim kontaktům.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Zákaz audio/video hovorů.";
|
||||
|
||||
@@ -2661,16 +2650,10 @@ new chat action */
|
||||
"Read more" = "Přečíst více";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "Více informací v [průvodci uživatele](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).";
|
||||
"Read more in our GitHub repository." = "Přečtěte si více v našem GitHub repozitáři.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "Další informace naleznete v [Uživatelské příručce](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "Přečtěte si více v [Uživatelské příručce](https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "Přečtěte si více v našem [GitHub repozitáři](https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Více informací v průvodci uživatele.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Informace o dodání jsou zakázány";
|
||||
@@ -3036,15 +3019,9 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address" = "Sdílet adresu";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Sdílet adresu s kontakty?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share link" = "Sdílet odkaz";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Sdílet s kontakty";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Show calls in phone history" = "Ukaž hovory v historii telefonu";
|
||||
|
||||
@@ -3114,6 +3091,9 @@ chat item action */
|
||||
/* notification title */
|
||||
"Somebody" = "Někdo";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Hvězda na GitHubu";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Začít chat";
|
||||
|
||||
@@ -3578,7 +3558,7 @@ server test failure */
|
||||
"You can set lock screen notification preview via settings." = "Náhled oznámení na zamykací obrazovce můžete změnit v nastavení.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"You can share a link or a QR code - anybody will be able to join the group. You won't lose members of the group if you later delete it." = "Můžete sdílet odkaz nebo QR kód - ke skupině se bude moci připojit kdokoli. O členy skupiny nepřijdete, pokud ji později odstraníte.";
|
||||
"You can share a link or a QR code - anybody will be able to join the group. You won't lose members of the group if you later delete it." = "Můžete sdílet odkaz nebo QR kód - ke skupině se bude moci připojit kdokoli. O členy skupiny nepřijdete, pokud odkaz později smažete.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"You can share this address with your contacts to let them connect with **%@**." = "Tuto adresu můžete sdílet s vašimi kontakty, abyse se mohli spojit s **%@**.";
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -13,15 +13,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"!1 colored!" = "!1 värillinen!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Osallistu](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Lähetä meille sähköpostia](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Tähti GitHubissa](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**e2e encrypted** audio call" = "**e2e-salattu** äänipuhelu";
|
||||
|
||||
@@ -257,9 +251,6 @@ swipe action */
|
||||
/* call status */
|
||||
"accepted call" = "hyväksytty puhelu";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Lisää osoite profiiliisi, jotta kontaktisi voivat jakaa sen muiden kanssa. Profiilipäivitys lähetetään kontakteillesi.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add profile" = "Lisää profiili";
|
||||
|
||||
@@ -699,7 +690,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Yhteysvirhe";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Yhteysvirhe (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -747,15 +738,15 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Jatka";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Osallistu";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Copy" = "Kopioi";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Core version: v%@" = "Ydinversio: v%@";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Luo";
|
||||
|
||||
/* server test step */
|
||||
"Create file" = "Luo tiedosto";
|
||||
|
||||
@@ -1098,7 +1089,7 @@ alert button */
|
||||
/* No comment provided by engineer. */
|
||||
"Edit group profile" = "Muokkaa ryhmäprofiilia";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Salli";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1227,7 +1218,7 @@ alert button */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "virhe";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Virhe";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1497,7 +1488,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"Group invitation is no longer valid, it was removed by sender." = "Ryhmäkutsu ei ole enää voimassa, lähettäjä poisti sen.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Ryhmälinkki";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1666,7 +1657,7 @@ server test error */
|
||||
"Initial role" = "Alkuperäinen rooli";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "Asenna [SimpleX Chat terminaalille](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "Asenna SimpleX Chat terminaalille";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Heti";
|
||||
@@ -1683,7 +1674,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "virheelliset keskustelu-tiedot";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Virheellinen yhteyslinkki";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -2273,9 +2264,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile password" = "Profiilin salasana";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "Profiilipäivitys lähetetään kontakteillesi.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Estä ääni- ja videopuhelut.";
|
||||
|
||||
@@ -2328,13 +2316,10 @@ new chat action */
|
||||
"Read more" = "Lue lisää";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "Lue lisää [Käyttöoppaasta](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).";
|
||||
"Read more in our GitHub repository." = "Lue lisää GitHub-arkistosta.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "Lue lisää [Käyttöoppaasta](https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "Lue lisää [GitHub-arkistosta](https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Lue lisää Käyttöoppaasta.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Kuittaukset pois käytöstä";
|
||||
@@ -2697,15 +2682,9 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address" = "Jaa osoite";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Jaa osoite kontakteille?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share link" = "Jaa linkki";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Jaa kontaktien kanssa";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Show calls in phone history" = "Näytä puhelut puhelinhistoriassa";
|
||||
|
||||
@@ -2772,6 +2751,9 @@ chat item action */
|
||||
/* notification title */
|
||||
"Somebody" = "Joku";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Tähti GitHubissa";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Aloita keskustelu";
|
||||
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(cet appareil v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Contribuer](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Contact par mail](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Star sur GitHub](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**Ajouter un contact** : pour créer un nouveau lien d'invitation.";
|
||||
|
||||
@@ -392,9 +386,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "Connections actives";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Ajoutez une adresse à votre profil, afin que vos contacts puissent la partager avec d'autres personnes. La mise à jour du profil sera envoyée à vos contacts.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "Ajouter des amis";
|
||||
|
||||
@@ -864,7 +855,7 @@ marked deleted chat item preview text */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "Bulgare, finnois, thaïlandais et ukrainien - grâce aux utilisateurs et à [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat) !";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "Adresse professionnelle";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1291,7 +1282,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Erreur de connexion";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Erreur de connexion (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1378,6 +1369,9 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Continuer";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Contribuer";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Conversation deleted!" = "Conversation supprimée !";
|
||||
|
||||
@@ -1396,9 +1390,6 @@ server test step */
|
||||
/* alert message */
|
||||
"Correct name to %@?" = "Corriger le nom pour %@ ?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Créer";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create 1-time link" = "Créer un lien unique";
|
||||
|
||||
@@ -1937,7 +1928,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Edit group profile" = "Modifier le profil du groupe";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Activer";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2108,7 +2099,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "erreur";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Erreur";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2610,7 +2601,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"Group invitation is no longer valid, it was removed by sender." = "L'invitation du groupe n'est plus valide, elle a été supprimé par l'expéditeur.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Lien du groupe";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2821,7 +2812,7 @@ servers warning */
|
||||
"Initial role" = "Rôle initial";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "Installer [SimpleX Chat pour terminal](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "Installer SimpleX Chat pour terminal";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Instantané";
|
||||
@@ -2841,7 +2832,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "données de chat invalides";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Lien de connection invalide";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -3509,7 +3500,7 @@ alert button
|
||||
new chat action */
|
||||
"Ok" = "Ok";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"OK" = "OK";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3578,7 +3569,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "Seul votre contact peut envoyer des messages vocaux.";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "Ouvrir";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3815,9 +3807,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile theme" = "Thème de profil";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "La mise à jour du profil sera envoyée à vos contacts.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Interdire les appels audio/vidéo.";
|
||||
|
||||
@@ -3900,16 +3889,10 @@ new chat action */
|
||||
"Read more" = "En savoir plus";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "Pour en savoir plus, consultez le [Guide de l'utilisateur](https ://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).";
|
||||
"Read more in our GitHub repository." = "Pour en savoir plus, consultez notre dépôt GitHub.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "Pour en savoir plus, consultez le [Guide de l'utilisateur](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "Pour en savoir plus, consultez le [Guide de l'utilisateur](https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "Pour en savoir plus, consultez notre [dépôt GitHub](https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Pour en savoir plus, consultez le Guide de l'utilisateur.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Les accusés de réception sont désactivés";
|
||||
@@ -4515,9 +4498,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address publicly" = "Partager publiquement votre adresse";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Partager l'adresse avec vos contacts ?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share from other apps." = "Partager depuis d'autres applications.";
|
||||
|
||||
@@ -4536,9 +4516,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share to SimpleX" = "Partager sur SimpleX";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Partager avec vos contacts";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Show → on messages sent via private routing." = "Afficher → sur les messages envoyés via le routage privé.";
|
||||
|
||||
@@ -4674,6 +4651,9 @@ chat item action */
|
||||
/* chat item text */
|
||||
"standard end-to-end encryption" = "chiffrement de bout en bout standard";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Star sur GitHub";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Démarrer le chat";
|
||||
|
||||
@@ -4767,9 +4747,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Tap button " = "Appuyez sur le bouton ";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Create SimpleX address in the menu to create it later." = "Appuyez sur Créer une adresse SimpleX dans le menu pour la créer ultérieurement.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap to activate profile." = "Appuyez pour activer un profil.";
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(このデバイス v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[貢献する](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[メールを送信](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[GitHub でスターを付ける](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**コンタクトの追加**: 新しい招待リンクを作成するか、受け取ったリンクから接続します。";
|
||||
|
||||
@@ -377,9 +371,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "アクティブな接続";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "プロフィールにアドレスを追加し、連絡先があなたのアドレスを他の人と共有できるようにします。プロフィールの更新は連絡先に送信されます。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "友達を追加";
|
||||
|
||||
@@ -969,7 +960,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "接続エラー";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "接続エラー (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1020,15 +1011,15 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "続ける";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "貢献する";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Copy" = "コピー";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Core version: v%@" = "コアのバージョン: v%@";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "作成";
|
||||
|
||||
/* server test step */
|
||||
"Create file" = "ファイルを作成";
|
||||
|
||||
@@ -1386,7 +1377,7 @@ alert button */
|
||||
/* No comment provided by engineer. */
|
||||
"Edit group profile" = "グループのプロフィールを編集";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "有効";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1518,7 +1509,7 @@ alert button */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "エラー";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "エラー";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1788,7 +1779,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"Group invitation is no longer valid, it was removed by sender." = "グループ招待が無効となり、送信元によって取り消されました。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "グループのリンク";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1957,7 +1948,7 @@ server test error */
|
||||
"Initial role" = "初期の役割";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "インストール [ターミナル用SimpleX Chat](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "インストール ターミナル用SimpleX Chat";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "即時";
|
||||
@@ -1974,7 +1965,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "無効なチャットデータ";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "無効な接続リンク";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -2459,7 +2450,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "音声メッセージを送れるのはあなたの連絡相手だけです。";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "開く";
|
||||
|
||||
/* new chat action */
|
||||
@@ -2579,9 +2571,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile password" = "プロフィールのパスワード";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "連絡先にプロフィール更新のお知らせが届きます。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "音声/ビデオ通話を禁止する 。";
|
||||
|
||||
@@ -2634,13 +2623,10 @@ new chat action */
|
||||
"Read more" = "続きを読む";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "詳しくは[ユーザーガイド](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)をご覧ください。";
|
||||
"Read more in our GitHub repository." = "詳しくはGitHubリポジトリをご覧ください。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "詳しくは[ユーザーガイド](https://simplex.chat/docs/guide/readme.html#connect-to-friends)をご覧ください。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "詳しくは[GitHubリポジトリ](https://github.com/simplex-chat/simplex-chat#readme)をご覧ください。";
|
||||
"Read more in User Guide." = "詳しくはユーザーガイドをご覧ください。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"received answer…" = "回答を受け取りました…";
|
||||
@@ -2979,15 +2965,9 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address" = "アドレスを共有する";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "アドレスを連絡先と共有しますか?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share link" = "リンクを送る";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "連絡先と共有する";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Show calls in phone history" = "通話履歴を表示";
|
||||
|
||||
@@ -3057,6 +3037,9 @@ chat item action */
|
||||
/* notification title */
|
||||
"Somebody" = "誰か";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "GitHub でスターを付ける";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "チャットを開始する";
|
||||
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(dit apparaat v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Bijdragen](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Stuur ons een e-mail](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Star on GitHub](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**Contact toevoegen**: om een nieuwe uitnodigingslink aan te maken, of verbinding te maken via een link die u heeft ontvangen.";
|
||||
|
||||
@@ -395,9 +389,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "Actieve verbindingen";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Voeg een adres toe aan uw profiel, zodat uw contacten het met andere mensen kunnen delen. Profiel update wordt naar uw contacten verzonden.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "Vrienden toevoegen";
|
||||
|
||||
@@ -867,7 +858,7 @@ marked deleted chat item preview text */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "Bulgaars, Fins, Thais en Oekraïens - dankzij de gebruikers en [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "Zakelijk adres";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1306,7 +1297,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Verbindingsfout";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Verbindingsfout (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1402,6 +1393,9 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Doorgaan";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Bijdragen";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Conversation deleted!" = "Gesprek verwijderd!";
|
||||
|
||||
@@ -1420,9 +1414,6 @@ server test step */
|
||||
/* alert message */
|
||||
"Correct name to %@?" = "Juiste naam voor %@?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Maak";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create 1-time link" = "Eenmalige link maken";
|
||||
|
||||
@@ -1964,7 +1955,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Edit group profile" = "Groep profiel bewerken";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Inschakelen";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2135,7 +2126,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "fout";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Fout";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2655,7 +2646,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"group is deleted" = "groep is verwijderd";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Groep link";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2881,7 +2872,7 @@ servers warning */
|
||||
"Initial role" = "Initiële rol";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "Installeer [SimpleX Chat voor terminal](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "Installeer SimpleX Chat voor terminal";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Direct";
|
||||
@@ -2916,7 +2907,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "ongeldige gesprek gegevens";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Ongeldige verbinding link";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -3662,7 +3653,7 @@ alert button
|
||||
new chat action */
|
||||
"Ok" = "OK";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"OK" = "OK";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3737,7 +3728,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "Alleen uw contact kan spraak berichten verzenden.";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "Open";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -4010,9 +4002,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile theme" = "Profiel thema";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "Profiel update wordt naar uw contacten verzonden.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Audio/video gesprekken verbieden.";
|
||||
|
||||
@@ -4098,16 +4087,10 @@ new chat action */
|
||||
"Read more" = "Lees meer";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "Lees meer in de [Gebruikershandleiding](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).";
|
||||
"Read more in our GitHub repository." = "Lees meer in onze GitHub-repository.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "Lees meer in de [Gebruikershandleiding](https://simplex.chat/docs/guide/app-settings.html#uw-simplex-contactadres).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "Lees meer in de [Gebruikershandleiding](https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "Lees meer in onze [GitHub-repository](https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Lees meer in de Gebruikershandleiding.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Bevestigingen zijn uitgeschakeld";
|
||||
@@ -4797,9 +4780,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address publicly" = "Adres openbaar delen";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Adres delen met contacten?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share from other apps." = "Delen vanuit andere apps.";
|
||||
|
||||
@@ -4818,9 +4798,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share to SimpleX" = "Delen op SimpleX";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Delen met contacten";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Short link" = "Korte link";
|
||||
|
||||
@@ -4966,6 +4943,9 @@ report reason */
|
||||
/* chat item text */
|
||||
"standard end-to-end encryption" = "standaard end-to-end encryptie";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Star on GitHub";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Begin gesprek";
|
||||
|
||||
@@ -5062,9 +5042,6 @@ report reason */
|
||||
/* No comment provided by engineer. */
|
||||
"Tap button " = "Tik op de knop ";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Create SimpleX address in the menu to create it later." = "Tik op SimpleX-adres maken in het menu om het later te maken.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap to activate profile." = "Tik hier om profiel te activeren.";
|
||||
|
||||
@@ -5441,7 +5418,7 @@ server test failure */
|
||||
/* swipe action */
|
||||
"Unread" = "Ongelezen";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Unsupported connection link" = "Niet-ondersteunde verbindingslink";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(to urządzenie v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Przyczyń się](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Wyślij do nas email](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Daj gwiazdkę na GitHub](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**Dodaj kontakt**: aby utworzyć nowy link z zaproszeniem lub połączyć się za pomocą otrzymanego linku.";
|
||||
|
||||
@@ -398,9 +392,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "Aktywne połączenia";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Dodaj adres do swojego profilu, aby Twoje kontakty mogły go udostępnić innym osobom. Aktualizacja profilu zostanie wysłana do Twoich kontaktów.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "Dodaj znajomych";
|
||||
|
||||
@@ -897,7 +888,7 @@ marked deleted chat item preview text */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "Bułgarski, fiński, tajski i ukraiński – dzięki użytkownikom i [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "Adres firmowy";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1348,7 +1339,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Błąd połączenia";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Błąd połączenia (UWIERZYTELNIANIE)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1453,6 +1444,9 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Kontynuuj";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Przyczyń się";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Conversation deleted!" = "Rozmowa usunięta!";
|
||||
|
||||
@@ -1471,9 +1465,6 @@ server test step */
|
||||
/* alert message */
|
||||
"Correct name to %@?" = "Poprawić imię na %@?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Utwórz";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create 1-time link" = "Utwórz jednorazowy link";
|
||||
|
||||
@@ -2033,7 +2024,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Empty message!" = "Pusta wiadomość!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Włącz";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2207,7 +2198,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "błąd";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Błąd";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2767,7 +2758,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"group is deleted" = "grupa została usunięta";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Link do grupy";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3002,7 +2993,7 @@ servers warning */
|
||||
"Initial role" = "Rola początkowa";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "Zainstaluj [SimpleX Chat na terminal](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "Zainstaluj SimpleX Chat na terminal";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Natychmiastowo";
|
||||
@@ -3037,7 +3028,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "nieprawidłowe dane czatu";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Nieprawidłowy link połączenia";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -3822,7 +3813,7 @@ alert button
|
||||
new chat action */
|
||||
"Ok" = "Ok";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"OK" = "OK";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3903,7 +3894,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "Tylko Twój kontakt może wysyłać wiadomości głosowe.";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "Otwórz";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -4203,9 +4195,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile theme" = "Motyw profilu";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "Aktualizacja profilu zostanie wysłana do Twoich kontaktów.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Zabroń połączeń audio/wideo.";
|
||||
|
||||
@@ -4294,16 +4283,10 @@ new chat action */
|
||||
"Read more" = "Przeczytaj więcej";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "Przeczytaj więcej w [Poradniku Użytkownika](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).";
|
||||
"Read more in our GitHub repository." = "Przeczytaj więcej na naszym repozytorium GitHub.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "Przeczytaj więcej w [Podręczniku Użytkownika](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "Przeczytaj więcej w [Podręczniku Użytkownika](https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "Przeczytaj więcej na naszym [repozytorium GitHub](https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Przeczytaj więcej w Poradniku Użytkownika.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Potwierdzenia są wyłączone";
|
||||
@@ -5050,9 +5033,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address publicly" = "Udostępnij adres publicznie";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Udostępnić adres kontaktom?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share from other apps." = "Udostępnij z innych aplikacji.";
|
||||
|
||||
@@ -5077,9 +5057,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share to SimpleX" = "Udostępnij do SimpleX";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Udostępnij kontaktom";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share your address" = "Udostępnij swój adres";
|
||||
|
||||
@@ -5234,6 +5211,9 @@ report reason */
|
||||
/* chat item text */
|
||||
"standard end-to-end encryption" = "standardowe szyfrowanie end-to-end";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Daj gwiazdkę na GitHub";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Rozpocznij czat";
|
||||
|
||||
@@ -5339,9 +5319,6 @@ report reason */
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Connect to use bot" = "Dotknij Połącz aby użyć bota";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Create SimpleX address in the menu to create it later." = "Dotknij Stwórz adres SimpleX w menu aby utworzyć go później.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Join group" = "Dotknij Dołącz do grupy";
|
||||
|
||||
@@ -5745,7 +5722,7 @@ server test failure */
|
||||
/* swipe action */
|
||||
"Unread" = "Nieprzeczytane";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Unsupported connection link" = "Nieobsługiwane łącze połączenia";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(это устройство v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Внести свой вклад](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Отправить email](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Поставить звездочку в GitHub](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**Добавить контакт**: создать и поделиться новой ссылкой-приглашением.";
|
||||
|
||||
@@ -398,9 +392,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "Активные соединения";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Добавьте адрес в свой профиль, чтобы Ваши контакты могли поделиться им. Профиль будет отправлен Вашим контактам.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "Добавить друзей";
|
||||
|
||||
@@ -891,7 +882,7 @@ marked deleted chat item preview text */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "Болгарский, финский, тайский и украинский - благодаря пользователям и [Weblate] (https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "Бизнес адрес";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1342,7 +1333,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Ошибка соединения";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Ошибка соединения (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1444,6 +1435,9 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Продолжить";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Внести свой вклад";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Conversation deleted!" = "Разговор удален!";
|
||||
|
||||
@@ -1462,9 +1456,6 @@ server test step */
|
||||
/* alert message */
|
||||
"Correct name to %@?" = "Исправить имя на %@?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Создать";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create 1-time link" = "Создать одноразовую ссылку";
|
||||
|
||||
@@ -2018,7 +2009,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Empty message!" = "Пустое сообщение!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Включить";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2192,7 +2183,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "ошибка";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Ошибка";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2746,7 +2737,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"group is deleted" = "группа удалена";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Ссылка группы";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2975,7 +2966,7 @@ servers warning */
|
||||
"Initial role" = "Роль при вступлении";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "[SimpleX Chat для терминала](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "SimpleX Chat для терминала";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Мгновенно";
|
||||
@@ -3010,7 +3001,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "ошибка данных чата";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Ошибка в ссылке контакта";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -3786,7 +3777,7 @@ alert button
|
||||
new chat action */
|
||||
"Ok" = "Ок";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"OK" = "OK";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3867,7 +3858,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "Только Ваш контакт может отправлять голосовые сообщения.";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "Открыть";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -4167,9 +4159,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile theme" = "Тема профиля";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "Обновлённый профиль будет отправлен Вашим контактам.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Запретить аудио/видео звонки.";
|
||||
|
||||
@@ -4258,16 +4247,10 @@ new chat action */
|
||||
"Read more" = "Узнать больше";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "Дополнительная информация в [Руководстве пользователя](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).";
|
||||
"Read more in our GitHub repository." = "Узнайте больше из нашего GitHub репозитория.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "Узнать больше в [Руководстве пользователя](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "Узнать больше в [Руководстве пользователя](https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "Узнайте больше из нашего [GitHub репозитория](https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Дополнительная информация в Руководстве пользователя.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Отчёты о доставке выключены";
|
||||
@@ -4996,9 +4979,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address publicly" = "Поделитесь адресом";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Поделиться адресом с контактами?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share from other apps." = "Поделитесь из других приложений.";
|
||||
|
||||
@@ -5023,9 +5003,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share to SimpleX" = "Поделиться в SimpleX";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Поделиться с контактами";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share your address" = "Поделитесь Вашим адресом";
|
||||
|
||||
@@ -5180,6 +5157,9 @@ report reason */
|
||||
/* chat item text */
|
||||
"standard end-to-end encryption" = "стандартное end-to-end шифрование";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Поставить звездочку в GitHub";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Запустить чат";
|
||||
|
||||
@@ -5285,9 +5265,6 @@ report reason */
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Connect to use bot" = "Нажмите Соединиться, чтобы использовать бот";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Create SimpleX address in the menu to create it later." = "Нажмите Создать адрес SimpleX в меню, чтобы создать его позже.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Join group" = "Нажмите Вступить в группу";
|
||||
|
||||
@@ -5691,7 +5668,7 @@ server test failure */
|
||||
/* swipe action */
|
||||
"Unread" = "Не прочитано";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Unsupported connection link" = "Ссылка не поддерживается";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
|
||||
@@ -13,15 +13,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"!1 colored!" = "!1 มีสี!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[มีส่วนร่วม](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[ส่งอีเมลถึงเรา](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[ติดดาวบน GitHub](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**e2e encrypted** audio call" = "การโทรเสียงแบบ **encrypted จากต้นจนจบ**";
|
||||
|
||||
@@ -233,9 +227,6 @@ swipe action */
|
||||
/* call status */
|
||||
"accepted call" = "รับสายแล้ว";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "เพิ่มที่อยู่ลงในโปรไฟล์ของคุณ เพื่อให้ผู้ติดต่อของคุณสามารถแชร์กับผู้อื่นได้ การอัปเดตโปรไฟล์จะถูกส่งไปยังผู้ติดต่อของคุณ";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add profile" = "เพิ่มโปรไฟล์";
|
||||
|
||||
@@ -672,7 +663,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "การเชื่อมต่อผิดพลาด";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "การเชื่อมต่อผิดพลาด (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -720,15 +711,15 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "ดำเนินการต่อ";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "มีส่วนร่วม";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Copy" = "คัดลอก";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Core version: v%@" = "รุ่นหลัก: v%@";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "สร้าง";
|
||||
|
||||
/* server test step */
|
||||
"Create file" = "สร้างไฟล์";
|
||||
|
||||
@@ -1056,7 +1047,7 @@ alert button */
|
||||
/* No comment provided by engineer. */
|
||||
"Edit group profile" = "แก้ไขโปรไฟล์กลุ่ม";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "เปิดใช้งาน";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1182,7 +1173,7 @@ alert button */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "ผิดพลาด";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "ผิดพลาด";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1449,7 +1440,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"Group invitation is no longer valid, it was removed by sender." = "คำเชิญเข้าร่วมกลุ่มใช้ไม่ถูกต้องอีกต่อไป คำเชิญถูกลบโดยผู้ส่ง";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "ลิงค์กลุ่ม";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1615,7 +1606,7 @@ server test error */
|
||||
"Initial role" = "บทบาทเริ่มต้น";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "ติดตั้ง [SimpleX Chat สำหรับเทอร์มินัล](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "ติดตั้ง SimpleX Chat สำหรับเทอร์มินัล";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "ทันที";
|
||||
@@ -1632,7 +1623,7 @@ server test error */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "ข้อมูลแชทไม่ถูกต้อง";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "ลิงค์เชื่อมต่อไม่ถูกต้อง";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -2213,9 +2204,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile password" = "รหัสผ่านโปรไฟล์";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "การอัปเดตโปรไฟล์จะถูกส่งไปยังผู้ติดต่อของคุณ";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "ห้ามการโทรด้วยเสียง/วิดีโอ";
|
||||
|
||||
@@ -2268,13 +2256,10 @@ new chat action */
|
||||
"Read more" = "อ่านเพิ่มเติม";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "อ่านเพิ่มเติมใน[คู่มือผู้ใช้](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)";
|
||||
"Read more in our GitHub repository." = "อ่านเพิ่มเติมในพื้นที่เก็บข้อมูล GitHub";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "อ่านเพิ่มเติมใน[คู่มือผู้ใช้](https://simplex.chat/docs/guide/readme.html#connect-to-friends)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "อ่านเพิ่มเติมใน[พื้นที่เก็บข้อมูล GitHub](https://github.com/simplex-chat/simplex-chat#readme)";
|
||||
"Read more in User Guide." = "อ่านเพิ่มเติมในคู่มือผู้ใช้";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"received answer…" = "ได้รับคำตอบ…";
|
||||
@@ -2625,15 +2610,9 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address" = "แชร์ที่อยู่";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "แชร์ที่อยู่กับผู้ติดต่อ?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share link" = "แชร์ลิงก์";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "แชร์กับผู้ติดต่อ";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Show calls in phone history" = "แสดงการโทรในประวัติการโทร";
|
||||
|
||||
@@ -2694,6 +2673,9 @@ chat item action */
|
||||
/* notification title */
|
||||
"Somebody" = "ใครบางคน";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "ติดดาวบน GitHub";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "เริ่มแชท";
|
||||
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(bu cihaz v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Katkıda bulun](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Bize e-posta gönder](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Bize GitHub'da yıldız verin](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**Kişi ekle**: yeni bir davet bağlantısı oluşturmak için, ya da aldığın bağlantıyla bağlan.";
|
||||
|
||||
@@ -398,9 +392,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "Aktif bağlantılar";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Kişilerinizin başkalarıyla paylaşabilmesi için profilinize adres ekleyin. Profil güncellemesi kişilerinize gönderilecek.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "Arkadaş ekle";
|
||||
|
||||
@@ -891,7 +882,7 @@ marked deleted chat item preview text */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "Bulgarca, Fince, Tayca ve Ukraynaca - kullanıcılara ve [Weblate] e teşekkürler! (https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "İş adresi";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1342,7 +1333,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Bağlantı hatası";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Bağlantı hatası (DOĞRULAMA)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1444,6 +1435,9 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Devam et";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Katkıda bulun";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Conversation deleted!" = "Sohbet silindi!";
|
||||
|
||||
@@ -1462,9 +1456,6 @@ server test step */
|
||||
/* alert message */
|
||||
"Correct name to %@?" = "İsim %@ olarak düzeltilsin mi?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Oluştur";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create 1-time link" = "Tek kullanımlık bağlantı oluştur";
|
||||
|
||||
@@ -2018,7 +2009,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Empty message!" = "Boş mesaj!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Etkinleştir";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2192,7 +2183,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "hata";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Hata";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2730,7 +2721,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"group is deleted" = "grup silindi";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Grup bağlantısı";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2959,7 +2950,7 @@ servers warning */
|
||||
"Initial role" = "Başlangıç rolü";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "[Terminal için SimpleX Chat]i indir(https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "Terminal için SimpleX Chat'i indir";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Anında";
|
||||
@@ -2994,7 +2985,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "geçersi̇z sohbet verisi";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Geçersiz bağlanma bağlantısı";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -3767,7 +3758,7 @@ alert button
|
||||
new chat action */
|
||||
"Ok" = "Tamam";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"OK" = "TAMAM";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3848,7 +3839,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "Sadece karşıdaki kişi sesli mesajlar gönderebilir.";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "Aç";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -4148,9 +4140,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile theme" = "Profil teması";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "Profil güncellemesi kişilerinize gönderilecektir.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Sesli/görüntülü aramaları yasakla.";
|
||||
|
||||
@@ -4239,16 +4228,10 @@ new chat action */
|
||||
"Read more" = "Dahasını oku";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "[Kullanıcı Rehberi]nde daha fazlasını okuyun(https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).";
|
||||
"Read more in our GitHub repository." = "GitHub deposunda daha fazlasını okuyun.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "[Kullanıcı Rehberi]nde daha fazlasını okuyun(https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "[Kullanıcı Rehberi]nde daha fazlasını okuyun(https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "[GitHub deposu]nda daha fazlasını okuyun(https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Kullanıcı Rehberinde daha fazlasını okuyun.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Alındı onayları devre dışı bırakıldı";
|
||||
@@ -4977,9 +4960,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address publicly" = "Adresinizi herkese açık olarak paylaşın";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Kişilerle adres paylaşılsın mı?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share from other apps." = "Diğer uygulamalardan paylaşın.";
|
||||
|
||||
@@ -5004,9 +4984,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share to SimpleX" = "SimpleX ile paylaş";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Kişilerle paylaş";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share your address" = "Adresini paylaş";
|
||||
|
||||
@@ -5161,6 +5138,9 @@ report reason */
|
||||
/* chat item text */
|
||||
"standard end-to-end encryption" = "standart uçtan uca şifreleme";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Bize GitHub'da yıldız verin";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Sohbeti başlat";
|
||||
|
||||
@@ -5266,9 +5246,6 @@ report reason */
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Connect to use bot" = "Botu kullanmak için Bağlan tuşuna bas";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Create SimpleX address in the menu to create it later." = "Daha sonra oluşturmak için menüden BasitX adresi oluştur'a dokunun.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Join group" = "Gruba katıl'a dokunun";
|
||||
|
||||
@@ -5669,7 +5646,7 @@ server test failure */
|
||||
/* swipe action */
|
||||
"Unread" = "Okunmamış";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Unsupported connection link" = "Desteklenmeyen bağlantı bağlantısı";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(цей пристрій v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[Внесок](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[Напишіть нам електронною поштою](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[Зірка на GitHub](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**Додати контакт**: створити нове посилання-запрошення.";
|
||||
|
||||
@@ -398,9 +392,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "Активні з'єднання";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "Додайте адресу до свого профілю, щоб ваші контакти могли поділитися нею з іншими людьми. Повідомлення про оновлення профілю буде надіслано вашим контактам.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "Додайте друзів";
|
||||
|
||||
@@ -879,7 +870,7 @@ marked deleted chat item preview text */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "Болгарською, фінською, тайською та українською мовами - завдяки користувачам та [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "Адреса підприємства";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1330,7 +1321,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "Помилка підключення";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "Помилка підключення (AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1429,6 +1420,9 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "Продовжуйте";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "Внесок";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Conversation deleted!" = "Розмова видалена!";
|
||||
|
||||
@@ -1447,9 +1441,6 @@ server test step */
|
||||
/* alert message */
|
||||
"Correct name to %@?" = "Виправити ім'я на %@?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "Створити";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create 1-time link" = "Створити одноразове посилання";
|
||||
|
||||
@@ -2000,7 +1991,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Empty message!" = "Порожнє повідомлення!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "Увімкнути";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2174,7 +2165,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "помилка";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "Помилка";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2706,7 +2697,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"group is deleted" = "групу видалено";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "Посилання на групу";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2935,7 +2926,7 @@ servers warning */
|
||||
"Initial role" = "Початкова роль";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "Встановіть [SimpleX Chat для терміналу](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "Встановіть SimpleX Chat для терміналу";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "Миттєво";
|
||||
@@ -2970,7 +2961,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "невірні дані чату";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "Неправильне посилання для підключення";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -3737,7 +3728,7 @@ alert button
|
||||
new chat action */
|
||||
"Ok" = "Гаразд";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"OK" = "ОК";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3812,7 +3803,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "Тільки ваш контакт може надсилати голосові повідомлення.";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "Відкрито";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -4103,9 +4095,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile theme" = "Тема профілю";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "Оновлення профілю буде надіслано вашим контактам.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "Заборонити аудіо/відеодзвінки.";
|
||||
|
||||
@@ -4194,16 +4183,10 @@ new chat action */
|
||||
"Read more" = "Читати далі";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "Читайте більше в [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode).";
|
||||
"Read more in our GitHub repository." = "Читайте більше в нашому GitHub репозиторії.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "Читайте більше в [Посібнику користувача](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "Читайте більше в [Посібнику користувача](https://simplex.chat/docs/guide/readme.html#connect-to-friends).";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "Читайте більше в нашому [GitHub репозиторії](https://github.com/simplex-chat/simplex-chat#readme).";
|
||||
"Read more in User Guide." = "Читайте більше в User Guide.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "Підтвердження виключені";
|
||||
@@ -4923,9 +4906,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address publicly" = "Поділіться адресою публічно";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "Поділіться адресою з контактами?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share from other apps." = "Діліться з інших програм.";
|
||||
|
||||
@@ -4950,9 +4930,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share to SimpleX" = "Поділіться з SimpleX";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "Поділіться з контактами";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share your address" = "Поділіться своєю адресою";
|
||||
|
||||
@@ -5107,6 +5084,9 @@ report reason */
|
||||
/* chat item text */
|
||||
"standard end-to-end encryption" = "стандартне наскрізне шифрування";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "Зірка на GitHub";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "Почати чат";
|
||||
|
||||
@@ -5209,9 +5189,6 @@ report reason */
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Connect to send request" = "Натисніть Підключитися, щоб відправити запит";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Create SimpleX address in the menu to create it later." = "Натисніть «Створити адресу SimpleX» у меню, щоб створити її пізніше.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Join group" = "Натисніть Приєднатися до групи";
|
||||
|
||||
@@ -5606,7 +5583,7 @@ server test failure */
|
||||
/* swipe action */
|
||||
"Unread" = "Непрочитане";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Unsupported connection link" = "Несумісне посилання для підключення";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
|
||||
@@ -25,15 +25,9 @@
|
||||
/* No comment provided by engineer. */
|
||||
"(this device v%@)" = "(此设备 v%@)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Contribute](https://github.com/simplex-chat/simplex-chat#contribute)" = "[贡献](https://github.com/simplex-chat/simplex-chat#contribute)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Send us email](mailto:chat@simplex.chat)" = "[给我们发电邮](mailto:chat@simplex.chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"[Star on GitHub](https://github.com/simplex-chat/simplex-chat)" = "[在 GitHub 上加星](https://github.com/simplex-chat/simplex-chat)";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"**Create 1-time link**: to create and share a new invitation link." = "**添加联系人**: 创建新的邀请链接,或通过您收到的链接进行连接.";
|
||||
|
||||
@@ -395,9 +389,6 @@ swipe action */
|
||||
/* No comment provided by engineer. */
|
||||
"Active connections" = "活动连接";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add address to your profile, so that your contacts can share it with other people. Profile update will be sent to your contacts." = "将地址添加到您的个人资料,以便您的联系人可以与其他人共享。个人资料更新将发送给您的联系人。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Add friends" = "添加好友";
|
||||
|
||||
@@ -894,7 +885,7 @@ marked deleted chat item preview text */
|
||||
/* No comment provided by engineer. */
|
||||
"Bulgarian, Finnish, Thai and Ukrainian - thanks to the users and [Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!" = "保加利亚语、芬兰语、泰语和乌克兰语——感谢用户和[Weblate](https://github.com/simplex-chat/simplex-chat/tree/stable#help-translating-simplex-chat)!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Business address" = "企业地址";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -1345,7 +1336,7 @@ server test step */
|
||||
/* alert title */
|
||||
"Connection error" = "连接错误";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Connection error (AUTH)" = "连接错误(AUTH)";
|
||||
|
||||
/* chat list item title (it should not be shown */
|
||||
@@ -1447,6 +1438,9 @@ server test step */
|
||||
/* No comment provided by engineer. */
|
||||
"Continue" = "继续";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Contribute" = "贡献";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Conversation deleted!" = "对话已删除!";
|
||||
|
||||
@@ -1465,9 +1459,6 @@ server test step */
|
||||
/* alert message */
|
||||
"Correct name to %@?" = "将名称更正为 %@?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create" = "创建";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Create 1-time link" = "创建一次性链接";
|
||||
|
||||
@@ -2024,7 +2015,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Empty message!" = "空消息!";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"Enable" = "启用";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2198,7 +2189,7 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"error" = "错误";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Error" = "错误";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2752,7 +2743,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"group is deleted" = "群被删除了";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* chat link info line */
|
||||
"Group link" = "群组链接";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -2984,7 +2975,7 @@ servers warning */
|
||||
"Initial role" = "初始角色";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Install [SimpleX Chat for terminal](https://github.com/simplex-chat/simplex-chat)" = "安装[用于终端的 SimpleX Chat](https://github.com/simplex-chat/simplex-chat)";
|
||||
"Install SimpleX Chat for terminal" = "安装用于终端的 SimpleX Chat";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Instant" = "即时";
|
||||
@@ -3019,7 +3010,7 @@ servers warning */
|
||||
/* No comment provided by engineer. */
|
||||
"invalid chat data" = "无效聊天数据";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Invalid connection link" = "无效的连接链接";
|
||||
|
||||
/* invalid chat item */
|
||||
@@ -3801,7 +3792,7 @@ alert button
|
||||
new chat action */
|
||||
"Ok" = "好的";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* alert button */
|
||||
"OK" = "好的";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -3882,7 +3873,8 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Only your contact can send voice messages." = "只有您的联系人可以发送语音消息。";
|
||||
|
||||
/* alert action */
|
||||
/* alert action
|
||||
alert button */
|
||||
"Open" = "打开";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
@@ -4179,9 +4171,6 @@ new chat action */
|
||||
/* No comment provided by engineer. */
|
||||
"Profile theme" = "个人资料主题";
|
||||
|
||||
/* alert message */
|
||||
"Profile update will be sent to your contacts." = "个人资料更新将被发送给您的联系人。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Prohibit audio/video calls." = "禁止音频/视频通话。";
|
||||
|
||||
@@ -4270,16 +4259,10 @@ new chat action */
|
||||
"Read more" = "阅读更多";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)." = "阅读更多[User Guide](https://simplex.chat/docs/guide/chat-profiles.html#incognito-mode)。";
|
||||
"Read more in our GitHub repository." = "在我们的 GitHub 仓库 中阅读更多信息。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses)." = "在 [用户指南](https://simplex.chat/docs/guide/making-connections.html#comparison-of-1-time-invitation-links-and-simplex-contact-addresses) 中阅读更多内容。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in [User Guide](https://simplex.chat/docs/guide/readme.html#connect-to-friends)." = "在 [用户指南](https://simplex.chat/docs/guide/readme.html#connect-to-friends) 中阅读更多内容。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Read more in our [GitHub repository](https://github.com/simplex-chat/simplex-chat#readme)." = "在我们的 [GitHub 仓库](https://github.com/simplex-chat/simplex-chat#readme) 中阅读更多信息。";
|
||||
"Read more in User Guide." = "阅读更多User Guide。";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Receipts are disabled" = "回执已禁用";
|
||||
@@ -5020,9 +5003,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share address publicly" = "公开分享地址";
|
||||
|
||||
/* alert title */
|
||||
"Share address with contacts?" = "与联系人分享地址?";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share from other apps." = "从其他应用程序共享。";
|
||||
|
||||
@@ -5047,9 +5027,6 @@ chat item action */
|
||||
/* No comment provided by engineer. */
|
||||
"Share to SimpleX" = "分享到 SimpleX";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share with contacts" = "与联系人分享";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Share your address" = "分享地址";
|
||||
|
||||
@@ -5204,6 +5181,9 @@ report reason */
|
||||
/* chat item text */
|
||||
"standard end-to-end encryption" = "标准端到端加密";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Star on GitHub" = "在 GitHub 上加星";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Start chat" = "开始聊天";
|
||||
|
||||
@@ -5306,9 +5286,6 @@ report reason */
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Connect to use bot" = "轻按“连接”使用机器人";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Create SimpleX address in the menu to create it later." = "要稍后创建 SimpleX 地址,请在菜单中轻按“创建 SimpleX 地址”";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"Tap Join group" = "轻按加入群";
|
||||
|
||||
@@ -5703,7 +5680,7 @@ server test failure */
|
||||
/* swipe action */
|
||||
"Unread" = "未读";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* conn error description */
|
||||
"Unsupported connection link" = "不支持的连接链接";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:launchMode="singleTask"
|
||||
android:colorMode="wideColorGamut"
|
||||
android:exported="true"
|
||||
android:label="${app_name}"
|
||||
android:windowSoftInputMode="adjustResize"
|
||||
|
||||
@@ -142,8 +142,8 @@ kotlin {
|
||||
implementation("org.slf4j:slf4j-simple:2.0.12")
|
||||
implementation("uk.co.caprica:vlcj:4.8.3")
|
||||
implementation("net.java.dev.jna:jna:5.14.0")
|
||||
implementation("com.github.NanoHttpd.nanohttpd:nanohttpd:efb2ebf")
|
||||
implementation("com.github.NanoHttpd.nanohttpd:nanohttpd-websocket:efb2ebf")
|
||||
implementation("com.github.NanoHttpd.nanohttpd:nanohttpd:efb2ebf85a")
|
||||
implementation("com.github.NanoHttpd.nanohttpd:nanohttpd-websocket:efb2ebf85a")
|
||||
implementation("com.squareup.okhttp3:okhttp:4.12.0")
|
||||
}
|
||||
}
|
||||
|
||||
+19
-3
@@ -1687,6 +1687,18 @@ sealed class ChatInfo: SomeChat, NamedChat {
|
||||
else -> null
|
||||
}
|
||||
|
||||
val sendAsGroup: Boolean get() {
|
||||
val g = (this as? Group)?.groupInfo
|
||||
return if (g != null && g.useRelays && g.membership.memberRole >= GroupMemberRole.Owner) {
|
||||
when (groupChatScope()) {
|
||||
null -> true
|
||||
is GroupChatScope.MemberSupport -> false
|
||||
}
|
||||
} else {
|
||||
false
|
||||
}
|
||||
}
|
||||
|
||||
fun ntfsEnabled(ci: ChatItem): Boolean =
|
||||
ntfsEnabled(ci.meta.userMention)
|
||||
|
||||
@@ -2133,6 +2145,7 @@ data class GroupInfo (
|
||||
GroupFeature.SimplexLinks -> p.simplexLinks.on(membership)
|
||||
GroupFeature.Reports -> p.reports.on
|
||||
GroupFeature.History -> p.history.on
|
||||
GroupFeature.Support -> p.support.on
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3800,8 +3813,8 @@ sealed class CIContent: ItemContent {
|
||||
is RcvBlocked -> generalGetString(MR.strings.blocked_by_admin_item_description)
|
||||
is SndDirectE2EEInfo -> directE2EEInfoStr(e2eeInfo)
|
||||
is RcvDirectE2EEInfo -> directE2EEInfoStr(e2eeInfo)
|
||||
is SndGroupE2EEInfo -> e2eeInfoNoPQStr
|
||||
is RcvGroupE2EEInfo -> e2eeInfoNoPQStr
|
||||
is SndGroupE2EEInfo -> groupE2EEInfoStr(e2eeInfo)
|
||||
is RcvGroupE2EEInfo -> groupE2EEInfoStr(e2eeInfo)
|
||||
is ChatBanner -> ""
|
||||
is InvalidJSON -> "invalid data"
|
||||
}
|
||||
@@ -3838,6 +3851,9 @@ sealed class CIContent: ItemContent {
|
||||
|
||||
private val e2eeInfoNoPQStr: String = generalGetString(MR.strings.e2ee_info_no_pq_short)
|
||||
|
||||
fun groupE2EEInfoStr(e2EEInfo: E2EEInfo): String =
|
||||
if (e2EEInfo.public == true) generalGetString(MR.strings.e2ee_info_no_e2ee) else e2eeInfoNoPQStr
|
||||
|
||||
fun featureText(feature: Feature, enabled: String, param: Int?, role: GroupMemberRole? = null): String =
|
||||
(if (feature.hasParam) {
|
||||
"${feature.text}: ${timeText(param)}"
|
||||
@@ -4364,7 +4380,7 @@ enum class CIGroupInvitationStatus {
|
||||
}
|
||||
|
||||
@Serializable
|
||||
class E2EEInfo (val pqEnabled: Boolean?) {}
|
||||
class E2EEInfo (val pqEnabled: Boolean?, val public: Boolean? = null) {}
|
||||
|
||||
object MsgContentSerializer : KSerializer<MsgContent> {
|
||||
override val descriptor: SerialDescriptor = buildSerialDescriptor("MsgContent", PolymorphicKind.SEALED) {
|
||||
|
||||
+38
-20
@@ -5693,7 +5693,8 @@ enum class GroupFeature: Feature {
|
||||
@SerialName("files") Files,
|
||||
@SerialName("simplexLinks") SimplexLinks,
|
||||
@SerialName("reports") Reports,
|
||||
@SerialName("history") History;
|
||||
@SerialName("history") History,
|
||||
@SerialName("support") Support;
|
||||
|
||||
override val hasParam: Boolean get() = when(this) {
|
||||
TimedMessages -> true
|
||||
@@ -5711,10 +5712,12 @@ enum class GroupFeature: Feature {
|
||||
SimplexLinks -> true
|
||||
Reports -> false
|
||||
History -> false
|
||||
Support -> false
|
||||
}
|
||||
|
||||
override val text: String
|
||||
get() = when(this) {
|
||||
override val text: String get() = text(isChannel = false)
|
||||
|
||||
fun text(isChannel: Boolean): String = when(this) {
|
||||
TimedMessages -> generalGetString(MR.strings.timed_messages)
|
||||
DirectMessages -> generalGetString(MR.strings.direct_messages)
|
||||
FullDelete -> generalGetString(MR.strings.full_deletion)
|
||||
@@ -5722,8 +5725,9 @@ enum class GroupFeature: Feature {
|
||||
Voice -> generalGetString(MR.strings.voice_messages)
|
||||
Files -> generalGetString(MR.strings.files_and_media)
|
||||
SimplexLinks -> generalGetString(MR.strings.simplex_links)
|
||||
Reports -> generalGetString(MR.strings.group_reports_member_reports)
|
||||
Reports -> generalGetString(if (isChannel) MR.strings.group_reports_subscriber_reports else MR.strings.group_reports_member_reports)
|
||||
History -> generalGetString(MR.strings.recent_history)
|
||||
Support -> generalGetString(MR.strings.chat_with_admins)
|
||||
}
|
||||
|
||||
val icon: Painter
|
||||
@@ -5737,6 +5741,7 @@ enum class GroupFeature: Feature {
|
||||
SimplexLinks -> painterResource(MR.images.ic_link)
|
||||
Reports -> painterResource(MR.images.ic_flag)
|
||||
History -> painterResource(MR.images.ic_schedule)
|
||||
Support -> painterResource(MR.images.ic_help)
|
||||
}
|
||||
|
||||
@Composable
|
||||
@@ -5750,9 +5755,10 @@ enum class GroupFeature: Feature {
|
||||
SimplexLinks -> painterResource(MR.images.ic_link)
|
||||
Reports -> painterResource(MR.images.ic_flag_filled)
|
||||
History -> painterResource(MR.images.ic_schedule_filled)
|
||||
Support -> painterResource(MR.images.ic_help_filled)
|
||||
}
|
||||
|
||||
fun enableDescription(enabled: GroupFeatureEnabled, canEdit: Boolean): String =
|
||||
fun enableDescription(enabled: GroupFeatureEnabled, canEdit: Boolean, isChannel: Boolean = false): String =
|
||||
if (canEdit) {
|
||||
when(this) {
|
||||
TimedMessages -> when(enabled) {
|
||||
@@ -5760,8 +5766,8 @@ enum class GroupFeature: Feature {
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.prohibit_sending_disappearing)
|
||||
}
|
||||
DirectMessages -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.allow_direct_messages)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.prohibit_direct_messages)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.allow_direct_messages_channel else MR.strings.allow_direct_messages)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(if (isChannel) MR.strings.prohibit_direct_messages_channel else MR.strings.prohibit_direct_messages)
|
||||
}
|
||||
FullDelete -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.allow_to_delete_messages)
|
||||
@@ -5788,47 +5794,55 @@ enum class GroupFeature: Feature {
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.disable_sending_member_reports)
|
||||
}
|
||||
History -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.enable_sending_recent_history)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.disable_sending_recent_history)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.enable_sending_recent_history_channel else MR.strings.enable_sending_recent_history)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(if (isChannel) MR.strings.disable_sending_recent_history_channel else MR.strings.disable_sending_recent_history)
|
||||
}
|
||||
Support -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.allow_chat_with_admins_channel else MR.strings.allow_chat_with_admins)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.prohibit_chat_with_admins)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
when(this) {
|
||||
TimedMessages -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.group_members_can_send_disappearing)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.group_members_can_send_disappearing_channel else MR.strings.group_members_can_send_disappearing)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.disappearing_messages_are_prohibited)
|
||||
}
|
||||
DirectMessages -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.group_members_can_send_dms)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.direct_messages_are_prohibited)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.group_members_can_send_dms_channel else MR.strings.group_members_can_send_dms)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(if (isChannel) MR.strings.direct_messages_are_prohibited_channel else MR.strings.direct_messages_are_prohibited)
|
||||
}
|
||||
FullDelete -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.group_members_can_delete)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.group_members_can_delete_channel else MR.strings.group_members_can_delete)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.message_deletion_prohibited_in_chat)
|
||||
}
|
||||
Reactions -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.group_members_can_add_message_reactions)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.group_members_can_add_message_reactions_channel else MR.strings.group_members_can_add_message_reactions)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.message_reactions_are_prohibited)
|
||||
}
|
||||
Voice -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.group_members_can_send_voice)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.group_members_can_send_voice_channel else MR.strings.group_members_can_send_voice)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.voice_messages_are_prohibited)
|
||||
}
|
||||
Files -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.group_members_can_send_files)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.group_members_can_send_files_channel else MR.strings.group_members_can_send_files)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.files_are_prohibited_in_group)
|
||||
}
|
||||
SimplexLinks -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.group_members_can_send_simplex_links)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.group_members_can_send_simplex_links_channel else MR.strings.group_members_can_send_simplex_links)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.simplex_links_are_prohibited_in_group)
|
||||
}
|
||||
Reports -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.group_members_can_send_reports)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.group_members_can_send_reports_channel else MR.strings.group_members_can_send_reports)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.member_reports_are_prohibited)
|
||||
}
|
||||
History -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(MR.strings.recent_history_is_sent_to_new_members)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.recent_history_is_not_sent_to_new_members)
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.recent_history_is_sent_to_new_members_channel else MR.strings.recent_history_is_sent_to_new_members)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(if (isChannel) MR.strings.recent_history_is_not_sent_to_new_members_channel else MR.strings.recent_history_is_not_sent_to_new_members)
|
||||
}
|
||||
Support -> when(enabled) {
|
||||
GroupFeatureEnabled.ON -> generalGetString(if (isChannel) MR.strings.members_can_chat_with_admins_channel else MR.strings.members_can_chat_with_admins)
|
||||
GroupFeatureEnabled.OFF -> generalGetString(MR.strings.chat_with_admins_is_prohibited)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5955,6 +5969,7 @@ data class FullGroupPreferences(
|
||||
val simplexLinks: RoleGroupPreference,
|
||||
val reports: GroupPreference,
|
||||
val history: GroupPreference,
|
||||
val support: GroupPreference,
|
||||
val commands: List<ChatBotCommand>,
|
||||
) {
|
||||
fun toGroupPreferences(): GroupPreferences =
|
||||
@@ -5968,6 +5983,7 @@ data class FullGroupPreferences(
|
||||
simplexLinks = simplexLinks,
|
||||
reports = reports,
|
||||
history = history,
|
||||
support = support,
|
||||
commands = commands,
|
||||
)
|
||||
|
||||
@@ -5982,6 +5998,7 @@ data class FullGroupPreferences(
|
||||
simplexLinks = RoleGroupPreference(GroupFeatureEnabled.ON, role = null),
|
||||
reports = GroupPreference(GroupFeatureEnabled.ON),
|
||||
history = GroupPreference(GroupFeatureEnabled.ON),
|
||||
support = GroupPreference(GroupFeatureEnabled.ON),
|
||||
commands = listOf()
|
||||
)
|
||||
}
|
||||
@@ -5998,6 +6015,7 @@ data class GroupPreferences(
|
||||
val simplexLinks: RoleGroupPreference? = null,
|
||||
val reports: GroupPreference? = null,
|
||||
val history: GroupPreference? = null,
|
||||
val support: GroupPreference? = null,
|
||||
val commands: List<ChatBotCommand>? = null
|
||||
) {
|
||||
companion object {
|
||||
|
||||
+8
-8
@@ -3,16 +3,16 @@ package chat.simplex.common.ui.theme
|
||||
import androidx.compose.material.LocalContentColor
|
||||
import androidx.compose.material.MaterialTheme
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.collectAsState
|
||||
import androidx.compose.ui.graphics.*
|
||||
import chat.simplex.common.views.helpers.mixWith
|
||||
import kotlin.math.min
|
||||
import androidx.compose.ui.graphics.colorspace.ColorSpaces
|
||||
import kotlin.math.cos
|
||||
import kotlin.math.sin
|
||||
|
||||
fun oklch(L: Float, C: Float, H: Float, alpha: Float = 1f): Color {
|
||||
val hRad = H * (Math.PI.toFloat() / 180f)
|
||||
return Color(L, C * cos(hRad), C * sin(hRad), alpha, ColorSpaces.Oklab)
|
||||
}
|
||||
|
||||
val Purple200 = Color(0xFFBB86FC)
|
||||
val Purple500 = Color(0xFF6200EE)
|
||||
val Purple700 = Color(0xFF3700B3)
|
||||
val Teal200 = Color(0xFF03DAC5)
|
||||
val Gray = Color(0x22222222)
|
||||
val Indigo = Color(0xFF9966FF)
|
||||
val SimplexBlue = Color(0, 136, 255, 255) // If this value changes also need to update #0088ff in string resource files
|
||||
val SimplexGreen = Color(77, 218, 103, 255)
|
||||
|
||||
+4
-4
@@ -534,7 +534,7 @@ fun ComposeView(
|
||||
type = cInfo.chatType,
|
||||
id = cInfo.apiId,
|
||||
scope = cInfo.groupChatScope(),
|
||||
sendAsGroup = (cInfo as? ChatInfo.Group)?.groupInfo?.let { it.useRelays && it.membership.memberRole >= GroupMemberRole.Owner } ?: false,
|
||||
sendAsGroup = cInfo.sendAsGroup,
|
||||
live = live,
|
||||
ttl = ttl,
|
||||
composedMessages = listOf(ComposedMessage(file, quoted, mc, mentions))
|
||||
@@ -665,7 +665,7 @@ fun ComposeView(
|
||||
toChatType = chat.chatInfo.chatType,
|
||||
toChatId = chat.chatInfo.apiId,
|
||||
toScope = chat.chatInfo.groupChatScope(),
|
||||
sendAsGroup = (chat.chatInfo as? ChatInfo.Group)?.groupInfo?.let { it.useRelays && it.membership.memberRole >= GroupMemberRole.Owner } ?: false,
|
||||
sendAsGroup = chat.chatInfo.sendAsGroup,
|
||||
fromChatType = fromChatInfo.chatType,
|
||||
fromChatId = fromChatInfo.apiId,
|
||||
fromScope = fromChatInfo.groupChatScope(),
|
||||
@@ -1496,7 +1496,7 @@ fun ComposeView(
|
||||
)
|
||||
is SharedContent.ChatLink -> {
|
||||
val cInfo = chat.chatInfo
|
||||
val sendAsGroup = (cInfo as? ChatInfo.Group)?.groupInfo?.let { it.useRelays && it.membership.memberRole >= GroupMemberRole.Owner } ?: false
|
||||
val sendAsGroup = cInfo.sendAsGroup
|
||||
withBGApi {
|
||||
val mc = chatModel.controller.apiShareChatMsgContent(
|
||||
chat.remoteHostId, ChatType.Group, shared.groupInfo.groupId,
|
||||
@@ -1693,7 +1693,7 @@ fun ComposeView(
|
||||
Row(Modifier.padding(end = 8.dp), verticalAlignment = Alignment.Bottom) {
|
||||
AttachmentAndCommandsButtons()
|
||||
val broadcastPlaceholder = (chat.chatInfo as? ChatInfo.Group)?.groupInfo?.let { gi ->
|
||||
if (gi.useRelays && gi.membership.memberRole >= GroupMemberRole.Owner) generalGetString(MR.strings.compose_view_broadcast)
|
||||
if (gi.useRelays && gi.membership.memberRole >= GroupMemberRole.Owner && chat.chatInfo.groupChatScope() == null) generalGetString(MR.strings.compose_view_broadcast)
|
||||
else null
|
||||
}
|
||||
SendMsgView_(disableSendButton = disableSendButton, placeholder = broadcastPlaceholder)
|
||||
|
||||
+13
-4
@@ -546,6 +546,10 @@ fun ModalData.GroupChatInfoLayout(
|
||||
|
||||
var anyTopSectionRowShow = false
|
||||
val channelLink = groupInfo.groupProfile.publicGroup?.groupLink
|
||||
val showUserSupportChat = groupInfo.membership.memberActive &&
|
||||
((groupInfo.fullGroupPreferences.support.on && groupInfo.membership.memberRole < GroupMemberRole.Moderator)
|
||||
|| groupInfo.membership.supportChat != null)
|
||||
|
||||
if (groupInfo.useRelays) {
|
||||
SectionView {
|
||||
if (groupInfo.isOwner && groupLink != null) {
|
||||
@@ -564,6 +568,14 @@ fun ModalData.GroupChatInfoLayout(
|
||||
anyTopSectionRowShow = true
|
||||
ChannelMembersButton(chat.remoteHostId, groupInfo, showMemberInfo)
|
||||
}
|
||||
if (groupInfo.membership.memberRole >= GroupMemberRole.Moderator) {
|
||||
anyTopSectionRowShow = true
|
||||
MemberSupportButton(chat, openMemberSupport)
|
||||
}
|
||||
if (showUserSupportChat) {
|
||||
anyTopSectionRowShow = true
|
||||
UserSupportChatButton(chat, groupInfo, scrollToItemId)
|
||||
}
|
||||
}
|
||||
if (!groupInfo.isOwner && channelLink != null) {
|
||||
SectionTextFooter(stringResource(MR.strings.you_can_share_channel_link_anybody_will_be_able_to_connect))
|
||||
@@ -590,10 +602,7 @@ fun ModalData.GroupChatInfoLayout(
|
||||
}
|
||||
}
|
||||
}
|
||||
if (
|
||||
groupInfo.membership.memberActive &&
|
||||
(groupInfo.membership.memberRole < GroupMemberRole.Moderator || groupInfo.membership.supportChat != null)
|
||||
) {
|
||||
if (showUserSupportChat) {
|
||||
anyTopSectionRowShow = true
|
||||
UserSupportChatButton(chat, groupInfo, scrollToItemId)
|
||||
}
|
||||
|
||||
+12
-6
@@ -483,14 +483,15 @@ fun GroupMemberInfoLayout(
|
||||
SectionSpacer()
|
||||
}
|
||||
|
||||
val showMemberSupportChat = !openedFromSupportChat &&
|
||||
groupInfo.membership.memberRole >= GroupMemberRole.Moderator &&
|
||||
member.memberRole != GroupMemberRole.Relay &&
|
||||
((groupInfo.fullGroupPreferences.support.on && member.memberRole < GroupMemberRole.Moderator)
|
||||
|| member.supportChat != null)
|
||||
|
||||
if (member.memberActive) {
|
||||
SectionView {
|
||||
if (
|
||||
!openedFromSupportChat &&
|
||||
groupInfo.membership.memberRole >= GroupMemberRole.Moderator &&
|
||||
member.memberRole != GroupMemberRole.Relay &&
|
||||
(member.memberRole < GroupMemberRole.Moderator || member.supportChat != null)
|
||||
) {
|
||||
if (showMemberSupportChat) {
|
||||
SupportChatButton()
|
||||
}
|
||||
if (connectionCode != null && !(groupInfo.useRelays && member.memberRole == GroupMemberRole.Relay)) {
|
||||
@@ -504,6 +505,11 @@ fun GroupMemberInfoLayout(
|
||||
// }
|
||||
}
|
||||
SectionDividerSpaced()
|
||||
} else if (groupInfo.useRelays && member.memberCurrent && showMemberSupportChat) {
|
||||
SectionView {
|
||||
SupportChatButton()
|
||||
}
|
||||
SectionDividerSpaced()
|
||||
}
|
||||
|
||||
if (member.contactLink != null) {
|
||||
|
||||
+33
-5
@@ -155,7 +155,7 @@ private fun GroupPreferencesLayout(
|
||||
}
|
||||
@Composable fun ReportsPreference() {
|
||||
val enableReports = remember(preferences) { mutableStateOf(preferences.reports.enable) }
|
||||
FeatureSection(GroupFeature.Reports, enableReports, null, groupInfo, preferences, onTTLUpdated) { enable, _ ->
|
||||
FeatureSection(GroupFeature.Reports, enableReports, null, groupInfo, preferences, onTTLUpdated, disabled = true) { enable, _ -> // enable reports in 7.0 once directory support added
|
||||
applyPrefs(preferences.copy(reports = GroupPreference(enable = enable)))
|
||||
}
|
||||
}
|
||||
@@ -165,6 +165,16 @@ private fun GroupPreferencesLayout(
|
||||
applyPrefs(preferences.copy(history = GroupPreference(enable = enable)))
|
||||
}
|
||||
}
|
||||
@Composable fun SupportPreference(disabled: Boolean = false, notice: String? = null, onEnable: ((() -> Unit) -> Unit)? = null) {
|
||||
val enableSupport = remember(preferences) { mutableStateOf(preferences.support.enable) }
|
||||
FeatureSection(GroupFeature.Support, enableSupport, null, groupInfo, preferences, onTTLUpdated, disabled = disabled, notice = notice) { enable, _ ->
|
||||
applyPrefs(preferences.copy(support = GroupPreference(enable = enable)))
|
||||
if (enable == GroupFeatureEnabled.ON) onEnable?.invoke {
|
||||
enableSupport.value = GroupFeatureEnabled.OFF
|
||||
applyPrefs(preferences.copy(support = GroupPreference(enable = GroupFeatureEnabled.OFF)))
|
||||
}
|
||||
}
|
||||
}
|
||||
ColumnWithScrollBar {
|
||||
val titleId = if (groupInfo.useRelays) MR.strings.channel_preferences
|
||||
else if (groupInfo.businessChat == null) MR.strings.group_preferences
|
||||
@@ -192,6 +202,8 @@ private fun GroupPreferencesLayout(
|
||||
ReportsPreference()
|
||||
SectionDividerSpaced(true, maxBottomPadding = false)
|
||||
HistoryPreference()
|
||||
SectionDividerSpaced(true, maxBottomPadding = false)
|
||||
SupportPreference(disabled = true)
|
||||
} else {
|
||||
TimedMessagesPreference()
|
||||
SectionDividerSpaced(true, maxBottomPadding = false)
|
||||
@@ -200,6 +212,17 @@ private fun GroupPreferencesLayout(
|
||||
ReactionsPreference()
|
||||
SectionDividerSpaced(true, maxBottomPadding = false)
|
||||
HistoryPreference()
|
||||
SectionDividerSpaced(true, maxBottomPadding = false)
|
||||
SupportPreference(notice = generalGetString(MR.strings.chat_with_admins_relay_note), onEnable = { revert ->
|
||||
AlertManager.shared.showAlertDialog(
|
||||
title = generalGetString(MR.strings.enable_chats_with_admins_question),
|
||||
text = generalGetString(MR.strings.chat_with_admins_relay_note),
|
||||
confirmText = generalGetString(MR.strings.enable_chats_with_admins),
|
||||
destructive = true,
|
||||
onDismiss = revert,
|
||||
onDismissRequest = revert,
|
||||
)
|
||||
})
|
||||
}
|
||||
if (groupInfo.isOwner) {
|
||||
SectionDividerSpaced(maxTopPadding = true, maxBottomPadding = false)
|
||||
@@ -233,6 +256,8 @@ private fun FeatureSection(
|
||||
groupInfo: GroupInfo,
|
||||
preferences: FullGroupPreferences,
|
||||
onTTLUpdated: (Int?) -> Unit,
|
||||
disabled: Boolean = false,
|
||||
notice: String? = null,
|
||||
onSelected: (GroupFeatureEnabled, GroupMemberRole?) -> Unit
|
||||
) {
|
||||
SectionView {
|
||||
@@ -242,10 +267,10 @@ private fun FeatureSection(
|
||||
val timedOn = feature == GroupFeature.TimedMessages && enableFeature.value == GroupFeatureEnabled.ON
|
||||
if (groupInfo.isOwner) {
|
||||
PreferenceToggleWithIcon(
|
||||
feature.text,
|
||||
feature.text(groupInfo.isChannel),
|
||||
icon,
|
||||
iconTint,
|
||||
disabled = feature == GroupFeature.Reports, // remove in 6.4
|
||||
disabled = disabled,
|
||||
checked = enableFeature.value == GroupFeatureEnabled.ON,
|
||||
) { checked ->
|
||||
onSelected(if (checked) GroupFeatureEnabled.ON else GroupFeatureEnabled.OFF, enableForRole?.value)
|
||||
@@ -274,7 +299,7 @@ private fun FeatureSection(
|
||||
}
|
||||
} else {
|
||||
InfoRow(
|
||||
feature.text,
|
||||
feature.text(groupInfo.isChannel),
|
||||
enableFeature.value.text,
|
||||
icon = icon,
|
||||
iconTint = iconTint,
|
||||
@@ -292,7 +317,10 @@ private fun FeatureSection(
|
||||
onSelected(enableFeature.value, null)
|
||||
}
|
||||
}
|
||||
SectionTextFooter(feature.enableDescription(enableFeature.value, groupInfo.isOwner))
|
||||
SectionTextFooter(feature.enableDescription(enableFeature.value, groupInfo.isOwner, groupInfo.isChannel))
|
||||
if (notice != null) {
|
||||
SectionTextFooter(notice)
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
|
||||
+4
-1
@@ -116,7 +116,10 @@ private fun ModalData.MemberSupportViewLayout(
|
||||
if (membersWithChats.isEmpty()) {
|
||||
item {
|
||||
Box(Modifier.fillMaxSize().padding(horizontal = DEFAULT_PADDING), contentAlignment = Alignment.Center) {
|
||||
Text(generalGetString(MR.strings.no_support_chats), color = MaterialTheme.colors.secondary, textAlign = TextAlign.Center)
|
||||
Text(
|
||||
generalGetString(if (groupInfo.fullGroupPreferences.support.on) MR.strings.no_support_chats else MR.strings.support_chats_disabled),
|
||||
color = MaterialTheme.colors.secondary, textAlign = TextAlign.Center
|
||||
)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
||||
+10
-14
@@ -680,21 +680,17 @@ fun ChatItemView(
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun E2EEInfoNoPQText() {
|
||||
e2eeInfoText(MR.strings.e2ee_info_no_pq)
|
||||
fun DirectE2EEInfoText(e2EEInfo: E2EEInfo) {
|
||||
e2eeInfoText(when (e2EEInfo.pqEnabled) {
|
||||
true -> MR.strings.e2ee_info_pq
|
||||
false -> MR.strings.e2ee_info_no_pq
|
||||
null -> MR.strings.e2ee_info_e2ee
|
||||
})
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun DirectE2EEInfoText(e2EEInfo: E2EEInfo) {
|
||||
if (e2EEInfo.pqEnabled != null) {
|
||||
if (e2EEInfo.pqEnabled) {
|
||||
e2eeInfoText(MR.strings.e2ee_info_pq)
|
||||
} else {
|
||||
E2EEInfoNoPQText()
|
||||
}
|
||||
} else {
|
||||
e2eeInfoText(MR.strings.e2ee_info_e2ee)
|
||||
}
|
||||
fun GroupE2EEInfoText(e2EEInfo: E2EEInfo) {
|
||||
e2eeInfoText(if (e2EEInfo.public == true) MR.strings.e2ee_info_no_e2ee else MR.strings.e2ee_info_no_pq)
|
||||
}
|
||||
|
||||
if (cItem.meta.itemDeleted != null && (!revealed.value || cItem.isDeletedContent)) {
|
||||
@@ -794,8 +790,8 @@ fun ChatItemView(
|
||||
is CIContent.RcvBlocked -> DeletedItem()
|
||||
is CIContent.SndDirectE2EEInfo -> DirectE2EEInfoText(c.e2eeInfo)
|
||||
is CIContent.RcvDirectE2EEInfo -> DirectE2EEInfoText(c.e2eeInfo)
|
||||
is CIContent.SndGroupE2EEInfo -> E2EEInfoNoPQText()
|
||||
is CIContent.RcvGroupE2EEInfo -> E2EEInfoNoPQText()
|
||||
is CIContent.SndGroupE2EEInfo -> GroupE2EEInfoText(c.e2eeInfo)
|
||||
is CIContent.RcvGroupE2EEInfo -> GroupE2EEInfoText(c.e2eeInfo)
|
||||
is CIContent.ChatBanner -> Spacer(modifier = Modifier.size(0.dp))
|
||||
is CIContent.InvalidJSON -> {
|
||||
CIInvalidJSONView(c.json)
|
||||
|
||||
+13
-13
@@ -1144,7 +1144,7 @@ private fun ExpandedTagFilterView(tag: PresetTagKind) {
|
||||
is ActiveFilter.PresetTag -> af.tag == tag
|
||||
else -> false
|
||||
}
|
||||
val (icon, text) = presetTagLabel(tag, active)
|
||||
val (icon, menuIcon, text) = presetTagLabel(tag, active)
|
||||
val color = if (active) MaterialTheme.colors.primary else MaterialTheme.colors.secondary
|
||||
|
||||
Row(
|
||||
@@ -1164,7 +1164,7 @@ private fun ExpandedTagFilterView(tag: PresetTagKind) {
|
||||
horizontalArrangement = Arrangement.Center
|
||||
) {
|
||||
Icon(
|
||||
painterResource(icon),
|
||||
painterResource(menuIcon ?: icon),
|
||||
stringResource(text),
|
||||
Modifier.size(18.sp.toDp()),
|
||||
tint = color
|
||||
@@ -1206,9 +1206,9 @@ private fun CollapsedTagsFilterView(searchText: MutableState<TextFieldValue>) {
|
||||
contentAlignment = Alignment.Center
|
||||
) {
|
||||
if (selectedPresetTag != null) {
|
||||
val (icon, text) = presetTagLabel(selectedPresetTag, true)
|
||||
val (icon, menuIcon, text) = presetTagLabel(selectedPresetTag, true)
|
||||
Icon(
|
||||
painterResource(icon),
|
||||
painterResource(menuIcon ?: icon),
|
||||
stringResource(text),
|
||||
Modifier.size(18.sp.toDp()),
|
||||
tint = MaterialTheme.colors.primary
|
||||
@@ -1254,7 +1254,7 @@ fun ItemPresetFilterAction(
|
||||
showMenu: MutableState<Boolean>,
|
||||
onCloseMenuAction: MutableState<(() -> Unit)>
|
||||
) {
|
||||
val (icon, text) = presetTagLabel(presetTag, active)
|
||||
val (icon, _, text) = presetTagLabel(presetTag, active)
|
||||
ItemAction(
|
||||
stringResource(text),
|
||||
painterResource(icon),
|
||||
@@ -1336,15 +1336,15 @@ fun presetTagMatchesChat(tag: PresetTagKind, chatInfo: ChatInfo, chatStats: Chat
|
||||
}
|
||||
}
|
||||
|
||||
private fun presetTagLabel(tag: PresetTagKind, active: Boolean): Pair<ImageResource, StringResource> =
|
||||
private fun presetTagLabel(tag: PresetTagKind, active: Boolean): Triple<ImageResource, ImageResource?, StringResource> =
|
||||
when (tag) {
|
||||
PresetTagKind.GROUP_REPORTS -> (if (active) MR.images.ic_flag_filled else MR.images.ic_flag) to MR.strings.chat_list_group_reports
|
||||
PresetTagKind.FAVORITES -> (if (active) MR.images.ic_star_filled else MR.images.ic_star) to MR.strings.chat_list_favorites
|
||||
PresetTagKind.CONTACTS -> (if (active) MR.images.ic_person_filled else MR.images.ic_person) to MR.strings.chat_list_contacts
|
||||
PresetTagKind.GROUPS -> (if (active) MR.images.ic_group_filled else MR.images.ic_group) to MR.strings.chat_list_groups
|
||||
PresetTagKind.CHANNELS -> (if (active) MR.images.ic_bigtop_updates_circle_filled else MR.images.ic_bigtop_updates) to MR.strings.chat_list_channels
|
||||
PresetTagKind.BUSINESS -> (if (active) MR.images.ic_work_filled else MR.images.ic_work) to MR.strings.chat_list_businesses
|
||||
PresetTagKind.NOTES -> (if (active) MR.images.ic_folder_closed_filled else MR.images.ic_folder_closed) to MR.strings.chat_list_notes
|
||||
PresetTagKind.GROUP_REPORTS -> Triple(if (active) MR.images.ic_flag_filled else MR.images.ic_flag, null, MR.strings.chat_list_group_reports)
|
||||
PresetTagKind.FAVORITES -> Triple(if (active) MR.images.ic_star_filled else MR.images.ic_star, null, MR.strings.chat_list_favorites)
|
||||
PresetTagKind.CONTACTS -> Triple(if (active) MR.images.ic_person_filled else MR.images.ic_person, null, MR.strings.chat_list_contacts)
|
||||
PresetTagKind.GROUPS -> Triple(if (active) MR.images.ic_group_filled else MR.images.ic_group, null, MR.strings.chat_list_groups)
|
||||
PresetTagKind.CHANNELS -> Triple(if (active) MR.images.ic_bigtop_updates_circle_filled else MR.images.ic_bigtop_updates, MR.images.ic_bigtop_updates, MR.strings.chat_list_channels)
|
||||
PresetTagKind.BUSINESS -> Triple(if (active) MR.images.ic_work_filled else MR.images.ic_work, null, MR.strings.chat_list_businesses)
|
||||
PresetTagKind.NOTES -> Triple(if (active) MR.images.ic_folder_closed_filled else MR.images.ic_folder_closed, null, MR.strings.chat_list_notes)
|
||||
}
|
||||
|
||||
private fun presetCanBeCollapsed(tag: PresetTagKind): Boolean = when (tag) {
|
||||
|
||||
+14
@@ -537,6 +537,20 @@ fun UriHandler.openUriCatching(uri: String) {
|
||||
}
|
||||
}
|
||||
|
||||
fun UriHandler.openExternalLink(uri: String) {
|
||||
val uriHandler = this
|
||||
if (uri.startsWith("https://simplex.chat/contact#") || (uri.startsWith("https://smp") && ".simplex.im/a#" in uri)) {
|
||||
uriHandler.openVerifiedSimplexUri(uri)
|
||||
} else {
|
||||
AlertManager.shared.showAlertDialog(
|
||||
title = generalGetString(MR.strings.open_external_link_title),
|
||||
text = uri,
|
||||
confirmText = generalGetString(MR.strings.open_verb),
|
||||
onConfirm = { uriHandler.openUriCatching(uri) }
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
fun IntSize.Companion.Saver(): Saver<IntSize, *> = Saver(
|
||||
save = { it.width to it.height },
|
||||
restore = { IntSize(it.first, it.second) }
|
||||
|
||||
+4
-1
@@ -110,7 +110,10 @@ fun AddChannelView(chatModel: ChatModel, close: () -> Unit, closeAll: () -> Unit
|
||||
fullName = "",
|
||||
shortDescr = null,
|
||||
image = profileImage.value,
|
||||
groupPreferences = GroupPreferences(history = GroupPreference(GroupFeatureEnabled.ON))
|
||||
groupPreferences = GroupPreferences(
|
||||
history = GroupPreference(GroupFeatureEnabled.ON),
|
||||
support = GroupPreference(GroupFeatureEnabled.OFF)
|
||||
)
|
||||
)
|
||||
creationInProgress.value = true
|
||||
withBGApi {
|
||||
|
||||
+1
@@ -604,6 +604,7 @@ fun showPrepareContactAlert(
|
||||
confirmText = generalGetString(MR.strings.connect_plan_open_new_chat),
|
||||
onConfirm = {
|
||||
AlertManager.privacySensitive.hideAlert()
|
||||
ModalManager.closeAllModalsEverywhere()
|
||||
withBGApi {
|
||||
val chat = chatModel.controller.apiPrepareContact(rhId, connectionLink, contactShortLinkData)
|
||||
if (chat != null) {
|
||||
|
||||
+11
-8
@@ -15,6 +15,7 @@ import androidx.compose.ui.draw.clip
|
||||
import androidx.compose.ui.geometry.Offset
|
||||
import androidx.compose.ui.graphics.Brush
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.graphics.colorspace.ColorSpaces
|
||||
import androidx.compose.ui.graphics.graphicsLayer
|
||||
import androidx.compose.ui.layout.ContentScale
|
||||
import androidx.compose.ui.layout.layout
|
||||
@@ -89,17 +90,19 @@ internal fun gradientPoints(aspectRatio: Float, scale: Float): GradientEndpoints
|
||||
}
|
||||
|
||||
internal val lightStops = arrayOf(
|
||||
0.0f to Color(0xFFd2e8ff),
|
||||
0.5f to Color(0xFFcce9ff),
|
||||
0.9f to Color(0xFFdfffff),
|
||||
1.0f to Color(0xFFfffcea)
|
||||
0.0f to oklch(0.9219f, 0.0431f, 249.4f),
|
||||
0.5f to oklch(0.9198f, 0.0471f, 240.7f),
|
||||
0.9f to oklch(0.9772f, 0.0358f, 196.6f),
|
||||
0.95f to oklch(0.9829f, 0.0104f, 70.0f),
|
||||
1.0f to oklch(0.9886f, 0.0272f, 99.1f)
|
||||
)
|
||||
|
||||
internal val darkStops = arrayOf(
|
||||
0.4f to Color(0xFF040a24),
|
||||
0.72f to Color(0xFF3854ab),
|
||||
0.9f to Color(0xFFa8edf3),
|
||||
1.0f to Color(0xFFfff6e0)
|
||||
0.4f to oklch(0.1578f, 0.0609f, 267.3f),
|
||||
0.72f to oklch(0.4729f, 0.1574f, 267.3f),
|
||||
0.9f to oklch(0.9024f, 0.0760f, 202.8f),
|
||||
0.95f to oklch(0.9384f, 0.0354f, 65.0f),
|
||||
1.0f to oklch(0.9744f, 0.0370f, 88.4f)
|
||||
)
|
||||
|
||||
private fun Modifier.maxHeightByWidthRatio(ratio: Float) = layout { measurable, constraints ->
|
||||
|
||||
+1
-1
@@ -67,7 +67,7 @@ fun ReadableTextWithLink(stringResId: StringResource, link: String, textAlign: T
|
||||
newStyles
|
||||
}
|
||||
val uriHandler = LocalUriHandler.current
|
||||
Text(AnnotatedString(annotated.text, newStyles), modifier = Modifier.padding(padding).clickable { if (simplexLink) uriHandler.openVerifiedSimplexUri(link) else uriHandler.openUriCatching(link) }, textAlign = textAlign, lineHeight = 22.sp)
|
||||
Text(AnnotatedString(annotated.text, newStyles), modifier = Modifier.padding(padding).clickable { if (simplexLink) uriHandler.openVerifiedSimplexUri(link) else uriHandler.openExternalLink(link) }, textAlign = textAlign, lineHeight = 22.sp)
|
||||
}
|
||||
|
||||
@Composable
|
||||
|
||||
+2
-2
@@ -59,7 +59,7 @@ fun ModalData.WhatsNewView(updatedConditions: Boolean = false, viaSettings: Bool
|
||||
Icon(
|
||||
painterResource(MR.images.ic_open_in_new), stringResource(titleId), tint = MaterialTheme.colors.primary,
|
||||
modifier = Modifier
|
||||
.clickable { if (link.startsWith("simplex:")) uriHandler.openVerifiedSimplexUri(link) else uriHandler.openUriCatching(link) }
|
||||
.clickable { if (link.startsWith("simplex:")) uriHandler.openVerifiedSimplexUri(link) else uriHandler.openExternalLink(link) }
|
||||
)
|
||||
}
|
||||
|
||||
@@ -229,7 +229,7 @@ fun ReadMoreButton(url: String) {
|
||||
interactionSource = remember { MutableInteractionSource() },
|
||||
indication = null
|
||||
) {
|
||||
uriHandler.openUriCatching(url)
|
||||
uriHandler.openExternalLink(url)
|
||||
}
|
||||
)
|
||||
Icon(painterResource(MR.images.ic_open_in_new), stringResource(MR.strings.whats_new_read_more), tint = MaterialTheme.colors.primary)
|
||||
|
||||
+1
-1
@@ -198,7 +198,7 @@ private fun howToButton() {
|
||||
val uriHandler = LocalUriHandler.current
|
||||
Row(
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
modifier = Modifier.clickable { uriHandler.openUriCatching("https://simplex.chat/docs/webrtc.html#configure-mobile-apps") }
|
||||
modifier = Modifier.clickable { uriHandler.openExternalLink("https://simplex.chat/docs/webrtc.html#configure-mobile-apps") }
|
||||
) {
|
||||
Text(stringResource(MR.strings.how_to), color = MaterialTheme.colors.primary)
|
||||
Icon(
|
||||
|
||||
+4
-4
@@ -75,7 +75,7 @@ fun SettingsView(chatModel: ChatModel, setPerformLA: (Boolean) -> Unit, close: (
|
||||
}
|
||||
|
||||
val simplexTeamUri =
|
||||
"simplex:/contact#/?v=1&smp=smp%3A%2F%2FPQUV2eL0t7OStZOoAsPEV2QYWt4-xilbakvGUGOItUo%3D%40smp6.simplex.im%2FK1rslx-m5bpXVIdMZg9NLUZ_8JBm8xTt%23MCowBQYDK2VuAyEALDeVe-sG8mRY22LsXlPgiwTNs9dbiLrNuA7f3ZMAJ2w%3D"
|
||||
"simplex:/a#lrdvu2d8A1GumSmoKb2krQmtKhWXq-tyGpHuM7aMwsw?h=smp6.simplex.im"
|
||||
|
||||
@Composable
|
||||
fun SettingsLayout(
|
||||
@@ -207,7 +207,7 @@ fun ChatLockItem(
|
||||
}
|
||||
|
||||
@Composable private fun ContributeItem(uriHandler: UriHandler) {
|
||||
SectionItemView({ uriHandler.openUriCatching("https://github.com/simplex-chat/simplex-chat#contribute") }) {
|
||||
SectionItemView({ uriHandler.openExternalLink("https://github.com/simplex-chat/simplex-chat#contribute") }) {
|
||||
Icon(
|
||||
painterResource(MR.images.ic_keyboard),
|
||||
contentDescription = "GitHub",
|
||||
@@ -235,7 +235,7 @@ fun ChatLockItem(
|
||||
}
|
||||
|
||||
@Composable private fun StarOnGithubItem(uriHandler: UriHandler) {
|
||||
SectionItemView({ uriHandler.openUriCatching("https://github.com/simplex-chat/simplex-chat") }) {
|
||||
SectionItemView({ uriHandler.openExternalLink("https://github.com/simplex-chat/simplex-chat") }) {
|
||||
Icon(
|
||||
painter = painterResource(MR.images.ic_github),
|
||||
contentDescription = "GitHub",
|
||||
@@ -268,7 +268,7 @@ fun ChatLockItem(
|
||||
}
|
||||
|
||||
@Composable fun InstallTerminalAppItem(uriHandler: UriHandler) {
|
||||
SectionItemView({ uriHandler.openUriCatching("https://github.com/simplex-chat/simplex-chat") }) {
|
||||
SectionItemView({ uriHandler.openExternalLink("https://github.com/simplex-chat/simplex-chat") }) {
|
||||
Icon(
|
||||
painter = painterResource(MR.images.ic_github),
|
||||
contentDescription = "GitHub",
|
||||
|
||||
+1
-1
@@ -769,7 +769,7 @@ fun UsageConditionsView(
|
||||
.clip(shape = CircleShape)
|
||||
.clickable {
|
||||
val commitUrl = "https://github.com/simplex-chat/simplex-chat/commit/$commit"
|
||||
uriHandler.openUriCatching(commitUrl)
|
||||
uriHandler.openExternalLink(commitUrl)
|
||||
}
|
||||
.padding(horizontal = 6.dp, vertical = 4.dp),
|
||||
verticalAlignment = Alignment.CenterVertically,
|
||||
|
||||
+6
-10
@@ -500,7 +500,7 @@ fun OperatorInfoView(serverOperator: ServerOperator) {
|
||||
Text(d)
|
||||
}
|
||||
val website = serverOperator.info.website
|
||||
Text(website, color = MaterialTheme.colors.primary, modifier = Modifier.clickable { uriHandler.openUriCatching(website) })
|
||||
Text(website, color = MaterialTheme.colors.primary, modifier = Modifier.clickable { uriHandler.openExternalLink(website) })
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -511,7 +511,7 @@ fun OperatorInfoView(serverOperator: ServerOperator) {
|
||||
SectionView {
|
||||
SectionItemView {
|
||||
val (text, link) = selfhost
|
||||
Text(text, color = MaterialTheme.colors.primary, modifier = Modifier.clickable { uriHandler.openUriCatching(link) })
|
||||
Text(text, color = MaterialTheme.colors.primary, modifier = Modifier.clickable { uriHandler.openExternalLink(link) })
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -787,7 +787,7 @@ private fun ConditionsLinkView(conditionsLink: String) {
|
||||
SectionItemView {
|
||||
val uriHandler = LocalUriHandler.current
|
||||
Text(stringResource(MR.strings.operator_conditions_failed_to_load), color = MaterialTheme.colors.onBackground)
|
||||
Text(conditionsLink, color = MaterialTheme.colors.primary, modifier = Modifier.clickable { uriHandler.openUriCatching(conditionsLink) })
|
||||
Text(conditionsLink, color = MaterialTheme.colors.primary, modifier = Modifier.clickable { uriHandler.openExternalLink(conditionsLink) })
|
||||
}
|
||||
}
|
||||
|
||||
@@ -821,13 +821,13 @@ fun ConditionsLinkButton() {
|
||||
val commit = chatModel.conditions.value.currentConditions.conditionsCommit
|
||||
ItemAction(stringResource(MR.strings.operator_open_conditions), painterResource(MR.images.ic_draft), onClick = {
|
||||
val mdUrl = "https://github.com/simplex-chat/simplex-chat/blob/$commit/PRIVACY.md"
|
||||
uriHandler.openUriCatching(mdUrl)
|
||||
showMenu.value = false
|
||||
uriHandler.openExternalLink(mdUrl)
|
||||
})
|
||||
ItemAction(stringResource(MR.strings.operator_open_changes), painterResource(MR.images.ic_more_horiz), onClick = {
|
||||
val commitUrl = "https://github.com/simplex-chat/simplex-chat/commit/$commit"
|
||||
uriHandler.openUriCatching(commitUrl)
|
||||
showMenu.value = false
|
||||
uriHandler.openExternalLink(commitUrl)
|
||||
})
|
||||
}
|
||||
IconButton({ showMenu.value = true }) {
|
||||
@@ -838,11 +838,7 @@ fun ConditionsLinkButton() {
|
||||
|
||||
private fun internalUriHandler(parentUriHandler: UriHandler): UriHandler = object: UriHandler {
|
||||
override fun openUri(uri: String) {
|
||||
if (uri.startsWith("https://simplex.chat/contact#")) {
|
||||
openVerifiedSimplexUri(uri)
|
||||
} else {
|
||||
parentUriHandler.openUriCatching(uri)
|
||||
}
|
||||
parentUriHandler.openExternalLink(uri)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -335,7 +335,7 @@ private fun HowToButton() {
|
||||
SettingsActionItem(
|
||||
painterResource(MR.images.ic_open_in_new),
|
||||
stringResource(MR.strings.how_to_use_your_servers),
|
||||
{ uriHandler.openUriCatching("https://simplex.chat/docs/server.html") },
|
||||
{ uriHandler.openExternalLink("https://simplex.chat/docs/server.html") },
|
||||
textColor = MaterialTheme.colors.primary,
|
||||
iconColor = MaterialTheme.colors.primary
|
||||
)
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
<string name="smp_servers_per_user">خوادم الاتصالات الجديدة لملف تعريف الدردشة الحالي الخاص بك</string>
|
||||
<string name="switch_receiving_address_desc">سيتم تغيير عنوان الاستلام إلى خادم مختلف. سيتم إكمال تغيير العنوان بعد اتصال المرسل بالإنترنت.</string>
|
||||
<string name="this_link_is_not_a_valid_connection_link">هذا الرابط ليس رابط اتصال صالح!</string>
|
||||
<string name="allow_verb">يسمح</string>
|
||||
<string name="allow_verb">اسمح</string>
|
||||
<string name="smp_servers_preset_add">أضِف خوادم مُعدة مسبقًا</string>
|
||||
<string name="smp_servers_add_to_another_device">أضِف إلى جهاز آخر</string>
|
||||
<string name="users_delete_all_chats_deleted">سيتم حذف جميع الدردشات والرسائل - لا يمكن التراجع عن هذا!</string>
|
||||
@@ -106,7 +106,7 @@
|
||||
<string name="alert_title_msg_bad_hash">تجزئة رسالة سيئة</string>
|
||||
<string name="integrity_msg_bad_id">معرّف رسالة سيئ</string>
|
||||
<string name="icon_descr_call_ended">انتهت المكالمة</string>
|
||||
<string name="change_verb">تغير</string>
|
||||
<string name="change_verb">غيِّر</string>
|
||||
<string name="color_primary_variant">لون إضافي ثانوي</string>
|
||||
<string name="available_in_v51">"
|
||||
\nمتوفر في v5.1"</string>
|
||||
@@ -122,7 +122,7 @@
|
||||
<string name="send_disappearing_message_1_minute">1 دقيقة</string>
|
||||
<string name="send_disappearing_message_30_seconds">30 ثانية</string>
|
||||
<string name="icon_descr_cancel_live_message">ألغِ الرسالة الحيّة</string>
|
||||
<string name="cancel_verb">إلغاء</string>
|
||||
<string name="cancel_verb">ألغِ</string>
|
||||
<string name="network_session_mode_entity_description"><![CDATA[سيتم استخدام اتصال TCP منفصل (وبيانات اعتماد SOCKS) <b> لكل جهة اتصال وعضو في المجموعة</b>\n.<b> الرجاء ملاحظة</b>: إذا كان لديك العديد من الاتصالات، فقد يكون استهلاك البطارية وحركة المرور أعلى بكثير وقد تفشل بعض الاتصالات.]]></string>
|
||||
<string name="callstatus_calling">جارٍ الاتصال…</string>
|
||||
<string name="icon_descr_audio_call">مكالمة صوتية</string>
|
||||
@@ -162,19 +162,19 @@
|
||||
<string name="feature_enabled">مفعّل</string>
|
||||
<string name="feature_enabled_for_you">مفعّلة لك</string>
|
||||
<string name="contacts_can_mark_messages_for_deletion">يمكن لجهات الاتصال تحديد الرسائل لحذفها؛ ستتمكن من مشاهدتها.</string>
|
||||
<string name="display_name_connecting">جار الاتصال…</string>
|
||||
<string name="display_name_connecting">يتصل…</string>
|
||||
<string name="connection_error_auth">خطأ في الإتصال (المصادقة)</string>
|
||||
<string name="error_deleting_contact">خطأ في حذف جهة الاتصال</string>
|
||||
<string name="notification_preview_somebody">جهة الاتصال مخفية:</string>
|
||||
<string name="copy_verb">نسخ</string>
|
||||
<string name="copy_verb">انسخ</string>
|
||||
<string name="connect_via_link_verb">اتصل</string>
|
||||
<string name="server_connected">متصل</string>
|
||||
<string name="connect_via_group_link">انضمام إلى المجموعة؟</string>
|
||||
<string name="connect_via_invitation_link">اتصل عبر رابط لمرة واحدة؟</string>
|
||||
<string name="switch_receiving_address_question">تغيير عنوان الاستلام؟</string>
|
||||
<string name="copied">نٌسخت إلى الحافظة</string>
|
||||
<string name="clear_verb">مسح</string>
|
||||
<string name="clear_chat_button">امسح الدردشة</string>
|
||||
<string name="clear_verb">امحُ</string>
|
||||
<string name="clear_chat_button">امحُ الدردشة</string>
|
||||
<string name="create_address">أنشئ عنوان</string>
|
||||
<string name="settings_section_title_chats">الدردشات</string>
|
||||
<string name="confirm_new_passphrase">تأكيد عبارة المرور الجديدة…</string>
|
||||
@@ -199,19 +199,19 @@
|
||||
<string name="auth_confirm_credential">تأكد من بيانات اعتمادك</string>
|
||||
<string name="create_simplex_address">أنشئ عنوان SimpleX</string>
|
||||
<string name="continue_to_next_step">متابعة</string>
|
||||
<string name="chat_with_developers">تحدث مع المطورين</string>
|
||||
<string name="chat_with_developers">دردش مع المطوِّرين</string>
|
||||
<string name="icon_descr_context">سياق الأيقونة</string>
|
||||
<string name="abort_switch_receiving_address_question">إحباط تغيير العنوان؟</string>
|
||||
<string name="abort_switch_receiving_address_confirm">إحباط</string>
|
||||
<string name="abort_switch_receiving_address_desc">سيتم إحباط تغيير العنوان. سيتم استخدام عنوان الاستلام القديم.</string>
|
||||
<string name="clear_chat_question">مسح الدردشة؟</string>
|
||||
<string name="clear_chat_question">محو الدردشة؟</string>
|
||||
<string name="chat_console">وحدة تحكم الدردشة</string>
|
||||
<string name="configure_ICE_servers">ضبط خوادم ICE</string>
|
||||
<string name="network_session_mode_entity">الاتصال</string>
|
||||
<string name="network_session_mode_user">ملف تعريف الدردشة</string>
|
||||
<string name="core_version">الإصدار الأساسي: v%s</string>
|
||||
<string name="create_profile">أنشئ ملف تعريف</string>
|
||||
<string name="callstate_connecting">جار الاتصال…</string>
|
||||
<string name="callstate_connecting">يتصل…</string>
|
||||
<string name="callstate_ended">انتهى</string>
|
||||
<string name="callstate_connected">متصل</string>
|
||||
<string name="alert_text_decryption_error_too_many_skipped">%1$d تخطت الرسائل</string>
|
||||
@@ -221,13 +221,13 @@
|
||||
<string name="error_encrypting_database">خطأ في تعمية قاعدة البيانات</string>
|
||||
<string name="chat_is_stopped_indication">توقفت الدردشة</string>
|
||||
<string name="group_member_status_complete">مكتمل</string>
|
||||
<string name="group_member_status_announced">جاري الاتصال (أعلن)</string>
|
||||
<string name="group_member_status_announced">يتصل (أُعلن)</string>
|
||||
<string name="info_row_connection">الاتصال</string>
|
||||
<string name="abort_switch_receiving_address">إحباط تغيير العنوان</string>
|
||||
<string name="create_secret_group_title">أنشئ مجموعة سرية</string>
|
||||
<string name="v4_4_verify_connection_security_desc">قارن رموز الأمان مع جهات اتصالك.</string>
|
||||
<string name="v4_6_chinese_spanish_interface">الواجهة الصينية والاسبانية</string>
|
||||
<string name="clear_chat_menu_action">مسح</string>
|
||||
<string name="clear_chat_menu_action">امحُ</string>
|
||||
<string name="contact_wants_to_connect_via_call">%1$s يريد التواصل معك عبر</string>
|
||||
<string name="snd_conn_event_switch_queue_phase_changing">جارِ تغيير العنوان…</string>
|
||||
<string name="snd_conn_event_switch_queue_phase_changing_for_member">جارِ تغيير العنوان ل%s…</string>
|
||||
@@ -240,17 +240,17 @@
|
||||
<string name="change_self_destruct_mode">تغيير وضع التدمير الذاتي</string>
|
||||
<string name="change_self_destruct_passcode">تغيير رمز المرور التدمير الذاتي</string>
|
||||
<string name="confirm_database_upgrades">تأكيد ترقيات قاعدة البيانات</string>
|
||||
<string name="group_member_status_intro_invitation">الاتصال (دعوة مقدمة)</string>
|
||||
<string name="clear_contacts_selection_button">مسح</string>
|
||||
<string name="group_member_status_intro_invitation">يتصل (دعوة مقدمة)</string>
|
||||
<string name="clear_contacts_selection_button">امحُ</string>
|
||||
<string name="error_creating_link_for_group">خطأ في إنشاء رابط المجموعة</string>
|
||||
<string name="item_info_current">(حاضِر)</string>
|
||||
<string name="network_option_enable_tcp_keep_alive">فعّل أبقِ TCP على قيد الحياة</string>
|
||||
<string name="contact_connection_pending">جار الاتصال…</string>
|
||||
<string name="group_connection_pending">جار الاتصال…</string>
|
||||
<string name="contact_connection_pending">يتصل…</string>
|
||||
<string name="group_connection_pending">يتصل…</string>
|
||||
<string name="connection_request_sent">أرسلت طلب الاتصال!</string>
|
||||
<string name="chat_database_deleted">حُذفت قاعدة بيانات الدردشة</string>
|
||||
<string name="rcv_conn_event_switch_queue_phase_changing">جارِ تغيير العنوان…</string>
|
||||
<string name="group_member_status_accepted">جار الاتصال (قُبِل)</string>
|
||||
<string name="group_member_status_accepted">يتصل (قُبِل)</string>
|
||||
<string name="icon_descr_contact_checked">فُحصت جهة الاتصال</string>
|
||||
<string name="group_info_section_title_num_members">%1$s أعضاء</string>
|
||||
<string name="create_group_link">أنشئ رابط المجموعة</string>
|
||||
@@ -271,7 +271,7 @@
|
||||
<string name="connect_via_contact_link">اتصل عبر عنوان التواصل؟</string>
|
||||
<string name="error_deleting_link_for_group">خطأ في حذف رابط المجموعة</string>
|
||||
<string name="notifications_mode_periodic_desc">التحقق من الرسائل الجديدة كل 10 دقائق لمدة تصل إلى دقيقة واحدة</string>
|
||||
<string name="server_connecting">جار الاتصال</string>
|
||||
<string name="server_connecting">يتصل</string>
|
||||
<string name="server_error">خطأ</string>
|
||||
<string name="error_deleting_user">خطأ في حذف ملف تعريف المستخدم</string>
|
||||
<string name="icon_descr_close_button">زر الاغلاق</string>
|
||||
@@ -279,7 +279,7 @@
|
||||
<string name="change_role">تغيير الدور</string>
|
||||
<string name="enter_password_to_show">أدخل كلمة المرور في البحث</string>
|
||||
<string name="chat_preferences_contact_allows">تسمح جهة الاتصال</string>
|
||||
<string name="confirm_verb">تأكيد</string>
|
||||
<string name="confirm_verb">أكِّد</string>
|
||||
<string name="alert_title_contact_connection_pending">جهة الاتصال ليست متصلة بعد!</string>
|
||||
<string name="connect_button">اتصال</string>
|
||||
<string name="connect_via_link">تواصل عبر الرابط</string>
|
||||
@@ -294,7 +294,7 @@
|
||||
<string name="error_deleting_pending_contact_connection">خطأ في حذف اتصال جهة الاتصال المنتظر</string>
|
||||
<string name="enter_welcome_message">أدخل رسالة ترحيب…</string>
|
||||
<string name="group_member_status_connected">متصل</string>
|
||||
<string name="group_member_status_connecting">جار الاتصال</string>
|
||||
<string name="group_member_status_connecting">يتصل</string>
|
||||
<string name="feature_enabled_for_contact">مفعّلة للاتصال</string>
|
||||
<string name="la_change_app_passcode">تغيير رمز المرور</string>
|
||||
<string name="notification_contact_connected">متصل</string>
|
||||
@@ -308,18 +308,18 @@
|
||||
<string name="connect_via_link_or_qr">تواصل عبر الرابط / رمز QR</string>
|
||||
<string name="share_one_time_link">أنشئ رابط دعوة لمرة واحدة</string>
|
||||
<string name="smp_servers_check_address">تحقق من عنوان الخادم وحاول مرة أخرى.</string>
|
||||
<string name="clear_verification">امسح التحقُّق</string>
|
||||
<string name="clear_verification">امحُ التحقُّق</string>
|
||||
<string name="create_address_and_let_people_connect">أنشئ عنوانًا للسماح للأشخاص بالتواصل معك.</string>
|
||||
<string name="smp_servers_enter_manually">أدخل الخادم يدويًا</string>
|
||||
<string name="colored_text">ملون</string>
|
||||
<string name="status_contact_has_e2e_encryption">لدى جهة الاتصال التعمية بين الطريفين</string>
|
||||
<string name="create_profile_button">أنشئ</string>
|
||||
<string name="create_your_profile">أنشئ ملف تعريفك</string>
|
||||
<string name="icon_descr_call_connecting">مكالمة جارية...</string>
|
||||
<string name="icon_descr_call_connecting">مكالمة جارية</string>
|
||||
<string name="enable_self_destruct">فعّل التدمير الذاتي</string>
|
||||
<string name="conn_event_ratchet_sync_started">الموافقة على التعمية…</string>
|
||||
<string name="snd_conn_event_ratchet_sync_started">الموافقة على التعمية لـ%s…</string>
|
||||
<string name="group_member_status_introduced">متصل (مقدم)</string>
|
||||
<string name="group_member_status_introduced">يتصل (مقدم)</string>
|
||||
<string name="conn_event_ratchet_sync_agreed">وافق التعمية</string>
|
||||
<string name="conn_event_ratchet_sync_ok">التعمية نعم</string>
|
||||
<string name="snd_conn_event_ratchet_sync_ok">التعمية نعم ل%s</string>
|
||||
@@ -335,7 +335,7 @@
|
||||
<string name="delete_files_and_media_all">احذف جميع الملفات</string>
|
||||
<string name="delete_after">احذف بعد</string>
|
||||
<string name="smp_server_test_delete_file">احذف الملف</string>
|
||||
<string name="delete_verb">حذف</string>
|
||||
<string name="delete_verb">احذف</string>
|
||||
<string name="delete_member_message__question">حذف رسالة العضو؟</string>
|
||||
<string name="delete_group_menu_action">احذف</string>
|
||||
<string name="delete_messages">احذف الرسائل</string>
|
||||
@@ -398,7 +398,7 @@
|
||||
<string name="custom_time_picker_custom">مخصص</string>
|
||||
<string name="v5_1_custom_themes_descr">تخصيص ومشاركة سمات الألوان.</string>
|
||||
<string name="exit_without_saving">الخروج بدون حفظ</string>
|
||||
<string name="settings_developer_tools">أدوات المطور</string>
|
||||
<string name="settings_developer_tools">أدوات المطوِّر</string>
|
||||
<string name="smp_server_test_delete_queue">احذف قائمة الانتظار</string>
|
||||
<string name="error_updating_user_privacy">خطأ في تحديث خصوصية المستخدم</string>
|
||||
<string name="desktop_scan_QR_code_from_app_via_scan_QR_code"><![CDATA[💻 سطح المكتب: امسح رمز الاستجابة السريعة (QR) المعروض من التطبيق، عبر <b>مسح رمز QR</b>.]]></string>
|
||||
@@ -471,7 +471,7 @@
|
||||
<string name="group_members_can_send_files">يمكن للأعضاء إرسال الملفات والوسائط.</string>
|
||||
<string name="group_preferences">تفضيلات المجموعة</string>
|
||||
<string name="v5_0_large_files_support_descr">سريع ولا تنتظر حتى يصبح المرسل متصلاً بالإنترنت!</string>
|
||||
<string name="hide_verb">إخفاء</string>
|
||||
<string name="hide_verb">أخفِ</string>
|
||||
<string name="how_to_use_simplex_chat">كيفية الاستخدام</string>
|
||||
<string name="how_simplex_works">كيف يعمل SimpleX</string>
|
||||
<string name="description_via_contact_address_link_incognito">التخفي عبر رابط عنوان جهة الاتصال</string>
|
||||
@@ -602,7 +602,7 @@
|
||||
<string name="auth_device_authentication_is_not_enabled_you_can_turn_on_in_settings_once_enabled">مصادقة الجهاز غير مفعّلة. يمكنك تشغيل قفل SimpleX عبر الإعدادات، بمجرد تفعيل مصادقة الجهاز.</string>
|
||||
<string name="smp_server_test_download_file">نزّل الملف</string>
|
||||
<string name="auth_disable_simplex_lock">عطّل قفل SimpleX</string>
|
||||
<string name="edit_verb">تحرير</string>
|
||||
<string name="edit_verb">حرّر</string>
|
||||
<string name="display_name__field">اسم ملف التعريف:</string>
|
||||
<string name="icon_descr_email">البريد الإلكتروني</string>
|
||||
<string name="display_name">أدخل أسمك:</string>
|
||||
@@ -709,7 +709,7 @@
|
||||
<string name="message_delivery_error_title">خطأ في تسليم الرسالة</string>
|
||||
<string name="network_and_servers">الشبكة والخوادم</string>
|
||||
<string name="moderate_verb">إشراف</string>
|
||||
<string name="mobile_tap_open_in_mobile_app_then_tap_connect_in_app"><![CDATA[📱 للجوال: انقر فوق <b>فتح في تطبيق الجوال</b>، ثم انقر فوق <b>اتصال</b> في التطبيق.]]></string>
|
||||
<string name="mobile_tap_open_in_mobile_app_then_tap_connect_in_app"><![CDATA[📱 للجوّال: انقر فوق <b>فتح في تطبيق الجوال</b>، ثم انقر فوق <b>اتصال</b> في التطبيق.]]></string>
|
||||
<string name="share_text_moderated_at">تحت الإشراف في: %s</string>
|
||||
<string name="message_reactions_prohibited_in_this_chat">ردود الفعل الرسائل ممنوعة في هذه الدردشة.</string>
|
||||
<string name="moderated_item_description">أُشرف بواسطة %s</string>
|
||||
@@ -798,7 +798,7 @@
|
||||
<string name="opening_database">جارِ فتح قاعدة البيانات…</string>
|
||||
<string name="only_your_contact_can_send_voice">جهة اتصالك فقط يمكنها إرسال رسائل صوتية.</string>
|
||||
<string name="paste_button">ألصق</string>
|
||||
<string name="restore_passphrase_not_found_desc">لم يُعثر على عبارة المرور في Keystore، يُرجى إدخالها يدويًا. ربما حدث هذا إذا استعدت بيانات التطبيق باستخدام أداة النسخ الاحتياطي. إذا لم يكن الأمر كذلك، يُرجى التواصل مع المطورين.</string>
|
||||
<string name="restore_passphrase_not_found_desc">لم يُعثر على عبارة المرور في Keystore، يُرجى إدخالها يدويًا. ربما حدث هذا إذا استعدت بيانات التطبيق باستخدام أداة النسخ الاحتياطي. إذا لم يكن الأمر كذلك، يُرجى التواصل مع المطوِّرين.</string>
|
||||
<string name="open_chat">افتح الدردشة</string>
|
||||
<string name="simplex_link_mode_browser_warning">قد يؤدي فتح الرابط في المتصفح إلى تقليل خصوصية الاتصال وأمانه. ستظهر روابط SimpleX غير الموثوقة باللون الأحمر.</string>
|
||||
<string name="only_you_can_add_message_reactions">أنت فقط يمكنك إضافة ردود الفعل على الرسالة.</string>
|
||||
@@ -816,7 +816,7 @@
|
||||
<string name="icon_descr_call_pending_sent">مكالمة قيد الانتظار</string>
|
||||
<string name="only_client_devices_store_contacts_groups_e2e_encrypted_messages">تقوم أجهزة العميل فقط بتخزين ملفات تعريف المستخدمين وجهات الاتصال والمجموعات والرسائل.</string>
|
||||
<string name="reset_color">صفّر الألوان</string>
|
||||
<string name="save_verb">حفظ</string>
|
||||
<string name="save_verb">احفظ</string>
|
||||
<string name="smp_servers_preset_address">عنوان الخادم المُعد مسبقًا</string>
|
||||
<string name="save_and_notify_group_members">حفظ وإشعار أعضاء المجموعة</string>
|
||||
<string name="onboarding_notifications_mode_periodic">دوري</string>
|
||||
@@ -827,18 +827,18 @@
|
||||
<string name="image_descr_profile_image">صورة ملف التعريف</string>
|
||||
<string name="onboarding_notifications_mode_title">الإشعارات خاصة</string>
|
||||
<string name="store_passphrase_securely_without_recover">يُرجى تخزين عبارة المرور بشكل آمن، فلن تتمكن من الوصول إلى الدردشة إذا فقدتها.</string>
|
||||
<string name="contact_developers">يُرجى تحديث التطبيق والتواصل مع المطورين.</string>
|
||||
<string name="contact_developers">يُرجى تحديث التطبيق والتواصل مع المطوِّرين.</string>
|
||||
<string name="read_more_in_user_guide_with_link"><![CDATA[اقرأ المزيد في <font color="#0088ff">دليل المستخدم</font>.]]></string>
|
||||
<string name="auth_open_chat_profiles">غيّر ملفات تعريف الدردشة</string>
|
||||
<string name="revoke_file__confirm">اسحب الوصول</string>
|
||||
<string name="reveal_verb">كشف</string>
|
||||
<string name="reveal_verb">اكشف</string>
|
||||
<string name="stop_rcv_file__message">سيتم إيقاف استلام الملف.</string>
|
||||
<string name="reject_contact_button">رفض</string>
|
||||
<string name="rate_the_app">قيم التطبيق</string>
|
||||
<string name="port_verb">منفذ</string>
|
||||
<string name="save_auto_accept_settings">احفظ إعدادات عنوان SimpleX</string>
|
||||
<string name="privacy_redefined">إعادة تعريف الخصوصية</string>
|
||||
<string name="alert_text_fragment_please_report_to_developers">الرجاء الإبلاغ للمطورين.</string>
|
||||
<string name="alert_text_fragment_please_report_to_developers">يُرجى إبلاغ المطوِّرين بذلك.</string>
|
||||
<string name="privacy_and_security">الخصوصية والأمان</string>
|
||||
<string name="remove_passphrase">أزل</string>
|
||||
<string name="remove_passphrase_from_keychain">إزالة عبارة المرور من Keystore؟</string>
|
||||
@@ -853,7 +853,7 @@
|
||||
<string name="callstate_received_answer">استلمت إجابة…</string>
|
||||
<string name="read_more_in_github_with_link"><![CDATA[اقرأ المزيد في <font color="#0088ff">مستودع GitHub</font>.]]></string>
|
||||
<string name="reject">رفض</string>
|
||||
<string name="relay_server_protects_ip">يحمي خادم الترحيل عنوان IP الخاص بك، ولكن يمكنه مراقبة مدة المكالمة.</string>
|
||||
<string name="relay_server_protects_ip">يحمي خادم المُرحل عنوان IP الخاص بك، ولكن يمكنه مراقبة مُدّة المكالمة.</string>
|
||||
<string name="restore_database_alert_desc">الرجاء إدخال كلمة المرور السابقة بعد استعادة نسخة احتياطية لقاعدة البيانات. لا يمكن التراجع عن هذا الإجراء.</string>
|
||||
<string name="restore_database_alert_title">استعادة النسخة الاحتياطية لقاعدة البيانات؟</string>
|
||||
<string name="network_options_save">حفظ</string>
|
||||
@@ -924,7 +924,7 @@
|
||||
<string name="reset_verb">صفّر</string>
|
||||
<string name="network_proxy_port">المنفذ %d</string>
|
||||
<string name="smp_servers_preset_server">خادم مُعد مسبقًا</string>
|
||||
<string name="relay_server_if_necessary">يتم استخدام خادم الترحيل فقط إذا لزم الأمر. يمكن لطرف آخر مراقبة عنوان IP الخاص بك.</string>
|
||||
<string name="relay_server_if_necessary">يُستخدم خادم المُرحل فقط إذا لزم الأمر. يمكن لطرف آخر مراقبة عنوان IP الخاص بك.</string>
|
||||
<string name="save_and_notify_contact">حفظ وإشعار جهة الاتصال</string>
|
||||
<string name="settings_restart_app">إعادة التشغيل</string>
|
||||
<string name="share_text_received_at">استلمت في: %s</string>
|
||||
@@ -946,7 +946,7 @@
|
||||
<string name="icon_descr_send_message">إرسال رسالة</string>
|
||||
<string name="send_disappearing_message_send">إرسال</string>
|
||||
<string name="send_live_message">أرسل رسالة حيّة</string>
|
||||
<string name="smp_servers_test_failed">فشلت تجربة الخادم!</string>
|
||||
<string name="smp_servers_test_failed">فشل اختبار الخادم!</string>
|
||||
<string name="save_passphrase_in_keychain">احفظ عبارة المرور في Keystore</string>
|
||||
<string name="button_send_direct_message">أرسل رسالة مباشرة</string>
|
||||
<string name="sending_via">إرسال عبر</string>
|
||||
@@ -960,8 +960,8 @@
|
||||
<string name="color_sent_message">رسالة مرسلة</string>
|
||||
<string name="set_group_preferences">عيّن تفضيلات المجموعة</string>
|
||||
<string name="v5_0_app_passcode_descr">عيّنها بدلاً من استيثاق النظام.</string>
|
||||
<string name="share_verb">مشاركة</string>
|
||||
<string name="send_verb">إرسال</string>
|
||||
<string name="share_verb">شارك</string>
|
||||
<string name="send_verb">أرسل</string>
|
||||
<string name="save_passphrase_and_open_chat">احفظ عبارة المرور وافتح الدردشة</string>
|
||||
<string name="select_contacts">حدد جهات الاتصال</string>
|
||||
<string name="accept_feature_set_1_day">تعيين يوم واحد</string>
|
||||
@@ -1048,7 +1048,7 @@
|
||||
<string name="callstate_starting">يبدأ…</string>
|
||||
<string name="auth_simplex_lock_turned_on">شُغّل قفل SimpleX</string>
|
||||
<string name="show_dev_options">أظهر:</string>
|
||||
<string name="show_developer_options">أظهر خيارات المطور</string>
|
||||
<string name="show_developer_options">أظهر خيارات المطوِّر</string>
|
||||
<string name="core_simplexmq_version">simplexmq: v%s (%2s)</string>
|
||||
<string name="error_smp_test_server_auth">يتطلب الخادم إذنًا لإنشاء قوائم انتظار، تحقق من كلمة المرور.</string>
|
||||
<string name="error_xftp_test_server_auth">يتطلب الخادم إذنًا للرفع، تحقق من كلمة المرور.</string>
|
||||
@@ -1093,7 +1093,7 @@
|
||||
<string name="smp_servers_test_servers">اختبر الخوادم</string>
|
||||
<string name="first_platform_without_user_ids">لا معرّفات مُستخدم</string>
|
||||
<string name="settings_section_title_support">دعم SIMPLEX CHAT</string>
|
||||
<string name="switch_verb">تبديل</string>
|
||||
<string name="switch_verb">بدِّل</string>
|
||||
<string name="color_title">العنوان الرئيسي</string>
|
||||
<string name="moderate_message_will_be_marked_warning">سيتم وضع علامة على الرسالة على أنها تحت الإشراف لجميع الأعضاء.</string>
|
||||
<string name="group_invitation_tap_to_join">انقر للانضمام</string>
|
||||
@@ -1117,7 +1117,7 @@
|
||||
<string name="enter_passphrase_notification_desc">لاستلام الإشعارات، يُرجى إدخال عبارة مرور قاعدة البيانات</string>
|
||||
<string name="la_lock_mode_system">مصادقة النظام</string>
|
||||
<string name="sync_connection_force_desc">يعمل التعمية واتفاقية التعمية الجديدة غير مطلوبة. قد ينتج عن ذلك أخطاء في الاتصال!</string>
|
||||
<string name="image_decoding_exception_desc">لا يمكن فك ترميز الصورة. من فضلك، جرب صورة مختلفة أو تواصل مع المطورين.</string>
|
||||
<string name="image_decoding_exception_desc">لا يمكن فك ترميز الصورة. من فضلك، جرّب صورة مختلفة أو تواصل مع المطوِّرين.</string>
|
||||
<string name="moderate_message_will_be_deleted_warning">سيتم حذف الرسالة لجميع الأعضاء.</string>
|
||||
<string name="images_limit_title">الصور كثيرة!</string>
|
||||
<string name="videos_limit_title">مقاطع الفيديو كثيرة!</string>
|
||||
@@ -1253,13 +1253,13 @@
|
||||
<string name="unhide_profile">إلغاء إخفاء ملف تعريف</string>
|
||||
<string name="alert_text_connection_pending_they_need_to_be_online_can_delete_and_retry">يجب أن تكون جهة الاتصال متصلة بالإنترنت حتى يكتمل الاتصال.
|
||||
\nيمكنك إلغاء هذا الاتصال وإزالة جهة الاتصال (والمحاولة لاحقًا باستخدام رابط جديد).</string>
|
||||
<string name="you_can_also_connect_by_clicking_the_link"><![CDATA[يمكنك أيضًا الاتصال بالضغط على الرابط. إذا تم فتحه في المتصفح، فانقر فوق الزر <b>فتح في تطبيق الجوال</b>.]]></string>
|
||||
<string name="you_can_also_connect_by_clicking_the_link"><![CDATA[يمكنك أيضًا الاتصال بالضغط على الرابط. إذا تم فتحه في المتصفح، فانقر فوق الزر <b>فتح في تطبيق الجوّال</b>.]]></string>
|
||||
<string name="smp_servers_use_server_for_new_conn">استخدم للاتصالات الجديدة</string>
|
||||
<string name="smp_servers_use_server">استخدم الخادم</string>
|
||||
<string name="smp_servers_your_server_address">عنوان خادمك</string>
|
||||
<string name="your_chat_database">قاعدة بيانات دردشتك</string>
|
||||
<string name="you_are_invited_to_group_join_to_connect_with_group_members">أنت مدعو إلى المجموعة. انضم للتواصل مع أعضاء المجموعة.</string>
|
||||
<string name="youve_accepted_group_invitation_connecting_to_inviting_group_member">لقد انضممت إلى هذه المجموعة. جارِ الاتصال بدعوة عضو المجموعة.</string>
|
||||
<string name="youve_accepted_group_invitation_connecting_to_inviting_group_member">لقد انضممت إلى هذه المجموعة. يتصل بدعوة عضو المجموعة.</string>
|
||||
<string name="snd_conn_event_switch_queue_phase_completed_for_member">غيّرتَ العنوان ل%s</string>
|
||||
<string name="unhide_chat_profile">إلغاء إخفاء ملف تعريف الدردشة</string>
|
||||
<string name="voice_prohibited_in_this_chat">الرسائل الصوتية ممنوعة في هذه الدردشة.</string>
|
||||
@@ -1284,7 +1284,7 @@
|
||||
<string name="icon_descr_video_call">مكالمة فيديو</string>
|
||||
<string name="voice_messages_are_prohibited">الرسائل الصوتية ممنوعة.</string>
|
||||
<string name="auth_unlock">فتح القفل</string>
|
||||
<string name="smp_server_test_upload_file">رفع الملف</string>
|
||||
<string name="smp_server_test_upload_file">ارفع الملف</string>
|
||||
<string name="la_could_not_be_verified">لا يمكن التحقق منك؛ الرجاء المحاولة مرة اخرى.</string>
|
||||
<string name="voice_message">رسالة صوتية</string>
|
||||
<string name="voice_message_send_text">رسالة صوتية…</string>
|
||||
@@ -1292,14 +1292,14 @@
|
||||
<string name="observer_cant_send_message_title">أنت المراقب!</string>
|
||||
<string name="you_need_to_allow_to_send_voice">تحتاج إلى السماح لجهة اتصالك بإرسال رسائل صوتية لتتمكن من إرسالها.</string>
|
||||
<string name="contact_sent_large_file">أرسلت جهة اتصالك ملفًا أكبر من الحجم الأقصى المعتمد حاليًا (%1$s).</string>
|
||||
<string name="you_can_connect_to_simplex_chat_founder"><![CDATA[يمكنك <font color="#0088ff">الاتصال بمطوري SimpleX Chat لطرح أي أسئلة وتلقي التحديثات</font>.]]></string>
|
||||
<string name="you_can_connect_to_simplex_chat_founder"><![CDATA[يمكنك <font color="#0088ff">الاتصال بمطوِّري SimpleX Chat لطرح أي أسئلة وتلقي التحديثات</font>.]]></string>
|
||||
<string name="smp_servers_your_server">خادمك</string>
|
||||
<string name="your_profile_is_stored_on_device_and_shared_only_with_contacts_simplex_cannot_see_it">يُخزن ملف تعريفك على جهازك ومشاركته فقط مع جهات اتصالك. لا تستطيع خوادم SimpleX رؤية ملف تعريفك.</string>
|
||||
<string name="icon_descr_video_off">الفيديو مقفل</string>
|
||||
<string name="icon_descr_video_on">الفيديو مُشغَّل</string>
|
||||
<string name="v4_2_auto_accept_contact_requests_desc">مع رسالة ترحيب اختيارية.</string>
|
||||
<string name="in_developing_title">قريباً!</string>
|
||||
<string name="in_developing_desc">هذه الميزة ليست مدعومة بعد. جرب الإصدار القادم.</string>
|
||||
<string name="in_developing_desc">هذه الميزة ليست مدعومة بعد. جرّب الإصدار القادم.</string>
|
||||
<string name="receipts_groups_disable_keep_overrides">عطّل (الاحتفاظ بتجاوزات المجموعة)</string>
|
||||
<string name="receipts_groups_enable_for_all">فعِّل لجميع المجموعات</string>
|
||||
<string name="receipts_groups_override_enabled">إرسال الإيصالات مفعّلة لـ%d مجموعات</string>
|
||||
@@ -1366,7 +1366,7 @@
|
||||
<string name="v5_3_simpler_incognito_mode_descr">فعّل وضع التخفي عند الاتصال.</string>
|
||||
<string name="member_contact_send_direct_message">أرسل لاتصال</string>
|
||||
<string name="rcv_group_event_member_created_contact">طُلب اتصال</string>
|
||||
<string name="connect_plan_already_connecting">جارٍ الاتصال بالفعل!</string>
|
||||
<string name="connect_plan_already_connecting">يتصل بالفعل!</string>
|
||||
<string name="v5_4_better_groups">مجموعات أفضل</string>
|
||||
<string name="rcv_group_and_other_events">و%d أحداث أخرى</string>
|
||||
<string name="connect_plan_already_joining_the_group">جارٍ انضمام بالفعل إلى المجموعة!</string>
|
||||
@@ -1388,7 +1388,7 @@
|
||||
<string name="connect_plan_connect_to_yourself">اتصل بنفسك؟</string>
|
||||
<string name="desktop_device">سطح المكتب</string>
|
||||
<string name="connected_to_desktop">متصل بسطح المكتب</string>
|
||||
<string name="connecting_to_desktop">جار الاتصال بسطح المكتب</string>
|
||||
<string name="connecting_to_desktop">الاتصال بسطح المكتب</string>
|
||||
<string name="desktop_devices">أجهزة سطح المكتب</string>
|
||||
<string name="correct_name_to">الاسم الصحيح لـ%s؟</string>
|
||||
<string name="delete_messages__question">حذف %d رسالة؟</string>
|
||||
@@ -1408,10 +1408,10 @@
|
||||
<string name="multicast_discoverable_via_local_network">مُكتشف عبر الشبكة المحلية</string>
|
||||
<string name="disconnect_desktop_question">قطع اتصال سطح المكتب؟</string>
|
||||
<string name="desktop_app_version_is_incompatible">إصدار تطبيق سطح المكتب %s غير متوافق مع هذا التطبيق.</string>
|
||||
<string name="expand_verb">توسيع</string>
|
||||
<string name="expand_verb">وسِّع</string>
|
||||
<string name="connect_plan_repeat_connection_request">هل تريد تكرار طلب الاتصال؟</string>
|
||||
<string name="encryption_renegotiation_error">خطأ في إعادة التفاوض بشأن التعمية</string>
|
||||
<string name="connect_plan_you_are_already_connecting_to_vName"><![CDATA[أنت متصل بالفعل بـ <b>%1$s</b>.]]></string>
|
||||
<string name="connect_plan_you_are_already_connecting_to_vName"><![CDATA[أنت تتصل بالفعل بـ <b>%1$s</b>.]]></string>
|
||||
<string name="error_alert_title">خطأ</string>
|
||||
<string name="connect_plan_you_are_already_joining_the_group_via_this_link">لقد انضممت بالفعل إلى المجموعة عبر هذا الرابط.</string>
|
||||
<string name="group_members_2">%s و%s</string>
|
||||
@@ -1429,7 +1429,7 @@
|
||||
<string name="new_desktop"><![CDATA[<i>(جديد)</i>]]></string>
|
||||
<string name="unlink_desktop_question">فك ربط سطح المكتب؟</string>
|
||||
<string name="linked_desktop_options">خيارات سطح المكتب المرتبطة</string>
|
||||
<string name="video_decoding_exception_desc">لا يمكن فك تشفير الفيديو. من فضلك، جرب مقطع فيديو مختلفًا أو اتصل بالمطورين.</string>
|
||||
<string name="video_decoding_exception_desc">لا يمكن فك ترميز الفيديو. من فضلك، جرّب مقطع فيديو مختلفًا أو اتصل بالمطوِّرين.</string>
|
||||
<string name="rcv_group_event_1_member_connected">%s متصل</string>
|
||||
<string name="linked_desktops">أسطح المكتب المرتبطة</string>
|
||||
<string name="v5_4_incognito_groups">مجموعات التخفي</string>
|
||||
@@ -1466,7 +1466,7 @@
|
||||
<string name="verify_code_on_mobile">تحقق من الرمز على الجوّال</string>
|
||||
<string name="enter_this_device_name">أدخل اسم الجهاز هذا…</string>
|
||||
<string name="error">خطأ</string>
|
||||
<string name="non_content_uri_alert_text">لقد شاركت مسار ملف غير صالح. أبلغ عن المشكلة لمطوري التطبيق.</string>
|
||||
<string name="non_content_uri_alert_text">لقد شاركت مسار ملف غير صالح. أبلغ عن المشكلة لمطوِّري التطبيق.</string>
|
||||
<string name="invalid_name">اسم غير صالح!</string>
|
||||
<string name="paste_desktop_address">ألصق عنوان سطح المكتب</string>
|
||||
<string name="connect_plan_this_is_your_link_for_group_vName"><![CDATA[هذا هو الرابط الخاص بك للمجموعة <b>%1$s</b>!]]></string>
|
||||
@@ -1483,13 +1483,13 @@
|
||||
<string name="verify_connection">تحقق من الاتصال</string>
|
||||
<string name="refresh_qr_code">أعِد التحميل</string>
|
||||
<string name="random_port">عشوائي</string>
|
||||
<string name="waiting_for_mobile_to_connect">في انتظار اتصال الجوال:</string>
|
||||
<string name="open_port_in_firewall_desc">للسماح لتطبيق الجوال بالاتصال بسطح المكتب، افتح هذا المنفذ في جدار الحماية لديك، إذا فعلته</string>
|
||||
<string name="waiting_for_mobile_to_connect">في انتظار اتصال الجوّال:</string>
|
||||
<string name="open_port_in_firewall_desc">للسماح لتطبيق الجوّال بالاتصال بسطح المكتب، افتح هذا المنفذ في جدار الحماية لديك، إذا فعّلته</string>
|
||||
<string name="create_chat_profile">أنشئ ملف تعريف الدردشة</string>
|
||||
<string name="app_was_crashed">عرض التحطم</string>
|
||||
<string name="open_port_in_firewall_title">فتح منفذ في جدار الحماية</string>
|
||||
<string name="disconnect_remote_hosts">اقطع اتصال الجوالات</string>
|
||||
<string name="no_connected_mobile">لا يوجد جوال متصل</string>
|
||||
<string name="disconnect_remote_hosts">اقطع اتصال الجوّالات</string>
|
||||
<string name="no_connected_mobile">لا يوجد جوّال متصل</string>
|
||||
<string name="error_showing_content">خطأ في إظهار المحتوى</string>
|
||||
<string name="error_showing_message">خطأ في إظهار الرسالة</string>
|
||||
<string name="callstatus_ended">انتهت المكالمة %1$s</string>
|
||||
@@ -1526,30 +1526,26 @@
|
||||
<string name="show_internal_errors">أظهر الأخطاء الداخلية</string>
|
||||
<string name="agent_critical_error_title">خطأ فادح</string>
|
||||
<string name="agent_internal_error_title">خطأ داخلي</string>
|
||||
<string name="agent_internal_error_desc">يُرجى إبلاغ المطورين بذلك:
|
||||
\n%s</string>
|
||||
<string name="agent_critical_error_desc">يُرجى إبلاغ المطورين بذلك:
|
||||
\n%s
|
||||
\n
|
||||
\nيوصى بإعادة تشغيل التطبيق.</string>
|
||||
<string name="agent_internal_error_desc">يُرجى إبلاغ المطوِّرين بذلك: \n%s</string>
|
||||
<string name="agent_critical_error_desc">يُرجى إبلاغ المطوِّرين بذلك: \n%s \n \nيوصى بإعادة تشغيل التطبيق.</string>
|
||||
<string name="restart_chat_button">أعد تشغيل الدردشة</string>
|
||||
<string name="remote_host_error_inactive"><![CDATA[الجوال <b>%s</b> غير نشط]]></string>
|
||||
<string name="remote_host_error_inactive"><![CDATA[الجوّال <b>%s</b> غير نشط]]></string>
|
||||
<string name="show_slow_api_calls">أظهر مكالمات API البطيئة</string>
|
||||
<string name="group_member_status_unknown_short">غير معروف</string>
|
||||
<string name="profile_update_event_updated_profile">حدّثت ملف التعريف</string>
|
||||
<string name="remote_host_error_missing"><![CDATA[الجوال <b>%s</b> مفقود]]></string>
|
||||
<string name="remote_host_error_bad_version"><![CDATA[الجوال <b>%s</b> لديه إصدار غير مدعوم. يُرجى التأكد من استخدام نفس الإصدار على كلا الجهازين]]></string>
|
||||
<string name="remote_host_error_bad_state"><![CDATA[الاتصال بالجوال <b>%s</b> في حالة سيئة]]></string>
|
||||
<string name="remote_host_error_missing"><![CDATA[الجوّال <b>%s</b> مفقود]]></string>
|
||||
<string name="remote_host_error_bad_version"><![CDATA[الجوّال <b>%s</b> لديه إصدار غير مدعوم. يُرجى التأكد من استخدام نفس الإصدار على كلا الجهازين]]></string>
|
||||
<string name="remote_host_error_bad_state"><![CDATA[الاتصال بالجوّال <b>%s</b> في حالة سيئة]]></string>
|
||||
<string name="failed_to_create_user_invalid_title">اسم العرض غير صالح!</string>
|
||||
<string name="failed_to_create_user_invalid_desc">اسم العرض هذا غير صالح. الرجاء اختيار اسم آخر.</string>
|
||||
<string name="remote_host_was_disconnected_title">توقف الاتصال</string>
|
||||
<string name="remote_ctrl_was_disconnected_title">توقف الاتصال</string>
|
||||
<string name="remote_host_disconnected_from"><![CDATA[قُطع الاتصال بالجوال <b>%s</b> بسبب: %s]]></string>
|
||||
<string name="remote_host_disconnected_from"><![CDATA[قُطع الاتصال بالجوّال <b>%s</b> بسبب: %s]]></string>
|
||||
<string name="remote_ctrl_disconnected_with_reason">قُطع الاتصال بسبب: %s</string>
|
||||
<string name="remote_host_error_disconnected"><![CDATA[قُطع اتصال الجوال <b>%s</b>]]></string>
|
||||
<string name="remote_host_error_timeout"><![CDATA[انتهت المهلة أثناء الاتصال بالجوال <b>%s</b>]]></string>
|
||||
<string name="remote_host_error_disconnected"><![CDATA[قُطع اتصال الجوّال <b>%s</b>]]></string>
|
||||
<string name="remote_host_error_timeout"><![CDATA[انتهت المهلة أثناء الاتصال بالجوّال <b>%s</b>]]></string>
|
||||
<string name="remote_ctrl_error_inactive">سطح المكتب غير نشط</string>
|
||||
<string name="remote_host_error_busy"><![CDATA[الجوال <b>%s</b> مشغول]]></string>
|
||||
<string name="remote_host_error_busy"><![CDATA[الجوّال <b>%s</b> مشغول]]></string>
|
||||
<string name="remote_ctrl_error_timeout">انتهت المهلة أثناء الاتصال بسطح المكتب</string>
|
||||
<string name="remote_ctrl_error_disconnected">قُطع اتصال سطح المكتب</string>
|
||||
<string name="remote_ctrl_error_bad_state">الاتصال بسطح المكتب في حالة سيئة</string>
|
||||
@@ -1558,7 +1554,7 @@
|
||||
<string name="remote_ctrl_error_bad_version">يحتوي سطح المكتب على إصدار غير مدعوم. يُرجى التأكد من استخدام نفس الإصدار على كلا الجهازين</string>
|
||||
<string name="past_member_vName">العضو %1$s</string>
|
||||
<string name="possible_slow_function_title">وظيفة بطيئة</string>
|
||||
<string name="developer_options_section">خيارات المطور</string>
|
||||
<string name="developer_options_section">خيارات المطوِّر</string>
|
||||
<string name="profile_update_event_member_name_changed">تغيّر العضو %1$s إلى %2$s</string>
|
||||
<string name="profile_update_event_removed_address">أزلت عنوان الاتصال</string>
|
||||
<string name="profile_update_event_removed_picture">أزلت صورة ملف التعريف</string>
|
||||
@@ -1581,7 +1577,7 @@
|
||||
<string name="error_creating_message">حدث خطأ أثناء إنشاء الرسالة</string>
|
||||
<string name="error_deleting_note_folder">حدث خطأ أثناء حذف الملاحظات الخاصة</string>
|
||||
<string name="note_folder_local_display_name">ملاحظات خاصة</string>
|
||||
<string name="clear_note_folder_question">مسح الملاحظات الخاصة؟</string>
|
||||
<string name="clear_note_folder_question">محو الملاحظات الخاصة؟</string>
|
||||
<string name="share_text_created_at">أُنشئ في: %s</string>
|
||||
<string name="saved_message_title">رسالة محفوظة</string>
|
||||
<string name="unblock_for_all_question">إلغاء حظر العضو للجميع؟</string>
|
||||
@@ -1604,7 +1600,7 @@
|
||||
<string name="call_service_notification_video_call">مكالمة فيديو</string>
|
||||
<string name="call_service_notification_audio_call">مكالمة صوتية</string>
|
||||
<string name="call_service_notification_end_call">أنهيّ المكالمة</string>
|
||||
<string name="unable_to_open_browser_desc">متصفح الويب الافتراضي مطلوب للمكالمات. يُرجى تضبيط المتصفح الافتراضي في النظام، ومشاركة المزيد من المعلومات مع المطورين.</string>
|
||||
<string name="unable_to_open_browser_desc">متصفح الويب الافتراضي مطلوب للمكالمات. يُرجى تضبيط المتصفح الافتراضي في النظام، ومشاركة المزيد من المعلومات مع المطوِّرين.</string>
|
||||
<string name="unable_to_open_browser_title">حدث خطأ أثناء فتح المتصفح</string>
|
||||
<string name="migrate_from_device_archive_and_upload">أرشف وأرفع</string>
|
||||
<string name="v5_6_safer_groups_descr">يمكن للمُدراء حظر عضو للجميع.</string>
|
||||
@@ -1648,7 +1644,7 @@
|
||||
<string name="migrate_from_device_verify_passphrase">تحقق من عبارة المرور</string>
|
||||
<string name="migrate_from_device_confirm_you_remember_passphrase">تأكد من أنك تتذكر عبارة مرور قاعدة البيانات لترحيلها.</string>
|
||||
<string name="migrate_from_device_verify_database_passphrase">التحقق من عبارة مرور قاعدة البيانات</string>
|
||||
<string name="error_showing_desktop_notification">خطأ في عرض الإشعار، تواصل بالمطورين.</string>
|
||||
<string name="error_showing_desktop_notification">خطأ في عرض الإشعار، تواصل بالمطوِّرين.</string>
|
||||
<string name="v5_6_picture_in_picture_calls">مكالمات صورة في صورة</string>
|
||||
<string name="v5_6_picture_in_picture_calls_descr">استخدم التطبيق أثناء المكالمة.</string>
|
||||
<string name="v5_6_app_data_migration_descr">رحّل إلى جهاز آخر عبر رمز QR.</string>
|
||||
@@ -1819,8 +1815,7 @@
|
||||
<string name="message_queue_info">معلومات قائمة انتظار الرسائل</string>
|
||||
<string name="v5_8_private_routing_descr">احمِ عنوان IP الخاص بك من مُرحلات المُراسلة التي اختارتها جهات اتصالك. \nفعّل في إعدادات *الشبكة والخوادم*.</string>
|
||||
<string name="v5_8_chat_themes">سمات دردشة جديدة</string>
|
||||
<string name="error_initializing_web_view">حدث خطأ أثناء تهيئة WebView. حدّث نظامك إلى الإصدار الجديد. يُرجى التواصل بالمطورين.
|
||||
\nError: %s</string>
|
||||
<string name="error_initializing_web_view">حدث خطأ أثناء تهيئة WebView. حدّث نظامك إلى الإصدار الجديد. يُرجى التواصل بالمطوِّرين. \nError: %s</string>
|
||||
<string name="v5_8_message_delivery">تحسين تسليم الرسائل</string>
|
||||
<string name="v5_8_message_delivery_descr">مع انخفاض استخدام البطارية.</string>
|
||||
<string name="file_error_auth">مفتاح خاطئ أو عنوان مجموعة الملف غير معروف - على الأرجح حُذف الملف.</string>
|
||||
@@ -1834,8 +1829,7 @@
|
||||
<string name="share_text_message_status">حالة الرسالة: %s</string>
|
||||
<string name="copy_error">خطأ في النسخ</string>
|
||||
<string name="remote_ctrl_connection_stopped_identity_desc">استُخدم هذا الرابط مع جوّال آخر، يُرجى إنشاء رابط جديد على سطح المكتب.</string>
|
||||
<string name="remote_ctrl_connection_stopped_desc">يُرجى التحقق من اتصال الهاتف المحمول وسطح المكتب بنفس الشبكة المحلية، وأن جدار حماية سطح المكتب يسمح بالاتصال.
|
||||
\nيُرجى مشاركة أي مشاكل أُخرى مع المطورين.</string>
|
||||
<string name="remote_ctrl_connection_stopped_desc">يُرجى التحقق من اتصال الهاتف المحمول وسطح المكتب بنفس الشبكة المحلية، وأن جدار حماية سطح المكتب يسمح بالاتصال. \nيُرجى مشاركة أي مشاكل أُخرى مع المطوِّرين.</string>
|
||||
<string name="cannot_share_message_alert_title">لا يمكن إرسال الرسالة</string>
|
||||
<string name="cannot_share_message_alert_text">تفضيلات الدردشة المحدّدة تحظر هذه الرسالة.</string>
|
||||
<string name="servers_info_details">التفاصيل</string>
|
||||
@@ -1919,7 +1913,7 @@
|
||||
<string name="chunks_uploaded">رُفع القطع</string>
|
||||
<string name="servers_info_sessions_connected">متصل</string>
|
||||
<string name="servers_info_connected_servers_section_header">الخوادم المتصلة</string>
|
||||
<string name="servers_info_sessions_connecting">جارِ الاتصال</string>
|
||||
<string name="servers_info_sessions_connecting">يتصل</string>
|
||||
<string name="servers_info_subscriptions_connections_subscribed">الاتصالات النشطة</string>
|
||||
<string name="current_user">ملف التعريف الحالي</string>
|
||||
<string name="deletion_errors">أخطاء الحذف</string>
|
||||
@@ -1988,7 +1982,7 @@
|
||||
<string name="calls_prohibited_alert_title">المكالمات ممنوعة!</string>
|
||||
<string name="cant_call_member_alert_title">لا يمكن مكالمة أحد أعضاء المجموعة</string>
|
||||
<string name="cant_send_message_to_member_alert_title">لا يمكن إرسال رسالة إلى عضو المجموعة</string>
|
||||
<string name="cant_call_contact_connecting_wait_alert_text">جارِ الاتصال بجهة الاتصال، يُرجى الانتظار أو التحقق لاحقًا!</string>
|
||||
<string name="cant_call_contact_connecting_wait_alert_text">يتصل بجهة الاتصال، يُرجى الانتظار أو التحقق لاحقًا!</string>
|
||||
<string name="deleted_chats">جهات الاتصال المؤرشفة</string>
|
||||
<string name="action_button_add_members">ادعُ</string>
|
||||
<string name="no_filtered_contacts">لا توجد جهات اتصال مُصفاة</string>
|
||||
@@ -1998,7 +1992,7 @@
|
||||
<string name="calls_prohibited_ask_to_enable_calls_alert_text">يُرجى الطلب من جهة اتصالك تفعيل المكالمات.</string>
|
||||
<string name="delete_members_messages__question">حذف %d رسائل الأعضاء؟</string>
|
||||
<string name="delete_messages_mark_deleted_warning">سيتم وضع علامة على الرسائل للحذف. سيتمكن المُستلم/(المُستلمون) من الكشف عن هذه الرسائل.</string>
|
||||
<string name="select_verb">حدد</string>
|
||||
<string name="select_verb">حدّد</string>
|
||||
<string name="moderate_messages_will_be_deleted_warning">سيتم حذف الرسائل لجميع الأعضاء.</string>
|
||||
<string name="moderate_messages_will_be_marked_warning">سيتم وضع علامة على الرسائل على أنها تحت الإشراف لجميع الأعضاء.</string>
|
||||
<string name="compose_message_placeholder">الرسالة</string>
|
||||
@@ -2211,7 +2205,7 @@
|
||||
<string name="onboarding_notifications_mode_battery">الإشعارات والبطارية</string>
|
||||
<string name="only_chat_owners_can_change_prefs">فقط مالكي الدردشة يمكنهم تغيير التفضيلات.</string>
|
||||
<string name="v6_2_business_chats_descr">الخصوصية لعملائك.</string>
|
||||
<string name="remote_hosts_section">الجوالات عن بُعد</string>
|
||||
<string name="remote_hosts_section">الجوّالات عن بُعد</string>
|
||||
<string name="invite_to_chat_button">ادعُ للدردشة</string>
|
||||
<string name="leave_chat_question">مغادرة المجموعة؟</string>
|
||||
<string name="member_will_be_removed_from_chat_cannot_be_undone">سيتم إزالة العضو من الدردشة - لا يمكن التراجع عن هذا!</string>
|
||||
@@ -2352,10 +2346,10 @@
|
||||
<string name="unblock_members_for_all_question">إلغاء حظر الأعضاء للجميع؟</string>
|
||||
<string name="block_members_for_all_question">حظر الأعضاء للجميع؟</string>
|
||||
<string name="unblock_members_desc">سيتم عرض رسائل من هؤلاء الأعضاء!</string>
|
||||
<string name="restore_passphrase_can_not_be_read_enter_manually_desc">لا يمكن قراءة عبارة المرور في Keystore، يُرجى إدخالها يدويًا. قد يكون هذا قد حدث بعد تحديث النظام غير متوافق مع التطبيق. إذا لم يكن الأمر كذلك، فيُرجى التواصل مع المطورين.</string>
|
||||
<string name="restore_passphrase_can_not_be_read_enter_manually_desc">لا يمكن قراءة عبارة المرور في Keystore، يُرجى إدخالها يدويًا. قد يكون هذا قد حدث بعد تحديث النظام غير متوافق مع التطبيق. إذا لم يكن الأمر كذلك، فيُرجى التواصل مع المطوِّرين.</string>
|
||||
<string name="members_will_be_removed_from_group_cannot_be_undone">سيتم إزالة الأعضاء من المجموعة - لا يمكن التراجع عن هذا!</string>
|
||||
<string name="feature_roles_moderators">المشرفين</string>
|
||||
<string name="restore_passphrase_can_not_be_read_desc">لا يمكن قراءة عبارة المرور في Keystore. قد يكون هذا قد حدث بعد تحديث النظام غير متوافق مع التطبيق. إذا لم يكن الأمر كذلك، فيُرجى التواصل مع المطورين.</string>
|
||||
<string name="restore_passphrase_can_not_be_read_desc">لا يمكن قراءة عبارة المرور في Keystore. قد يكون هذا قد حدث بعد تحديث النظام غير متوافق مع التطبيق. إذا لم يكن الأمر كذلك، فيُرجى التواصل مع المطوِّرين.</string>
|
||||
<string name="group_member_status_pending_approval">موافقة الانتظار</string>
|
||||
<string name="onboarding_conditions_configure_server_operators">ضبّط مُشغلي الخادم</string>
|
||||
<string name="onboarding_conditions_privacy_policy_and_conditions_of_use">سياسة الخصوصية وشروط الاستخدام.</string>
|
||||
@@ -2515,7 +2509,7 @@
|
||||
<string name="privacy_chat_list_open_clean_web_link">افتح الرابط النظيف</string>
|
||||
<string name="privacy_chat_list_open_full_web_link">افتح الرابط الكامل</string>
|
||||
<string name="sanitize_links_toggle">أزل تتبع الروابط</string>
|
||||
<string name="simplex_link_relay">رابط مُرحل SimpleX</string>
|
||||
<string name="simplex_link_relay">عنوان مُرحل SimpleX</string>
|
||||
<string name="error_marking_member_support_chat_read">خطأ في وضع علامة \"مقروءة\"</string>
|
||||
<string name="proxy_destination_error_unknown_ca">البصمة في عنوان الخادم الوجهة لا تتطابق مع الشهادة: %1$s.</string>
|
||||
<string name="smp_proxy_error_unknown_ca">البصمة في عنوان خادم التحويل لا تتطابق مع الشهادة: %1$s.</string>
|
||||
@@ -2542,4 +2536,127 @@
|
||||
<string name="content_filter_videos">فيديوهات</string>
|
||||
<string name="content_filter_voice_messages">رسائل صوتية</string>
|
||||
<string name="down_migration_warning_chat_relays">إذا انضممت إلى قنوات أو أنشأتها، فستتوقف عن العمل نهائيًا.</string>
|
||||
<string name="relay_bar_active">%1$d/%2$d مُرحلات نشطة</string>
|
||||
<string name="relay_bar_active_with_failures">%1$d/%2$d مُرحلات نشطة، %3$d فشلت</string>
|
||||
<string name="relay_bar_connected">%1$d/%2$d مُرحلات متصلة</string>
|
||||
<string name="relay_bar_connected_with_errors">%1$d/%2$d مُرحلات متصلة، %3$d خطأ</string>
|
||||
<string name="channel_subscriber_count_singular">%1$d مشترك</string>
|
||||
<string name="channel_subscriber_count_plural">%1$d مشترك</string>
|
||||
<string name="relay_status_accepted">وافقت</string>
|
||||
<string name="relay_status_active">نشط</string>
|
||||
<string name="block_subscriber_for_all_question">احظر المشترك للكل؟</string>
|
||||
<string name="cancel_creating_channel_confirm">ألغِ</string>
|
||||
<string name="chat_relays">مُرحلات الدردشة</string>
|
||||
<string name="channel_relays_title">مُرحلات الدردشة</string>
|
||||
<string name="button_delete_channel">احذف القناة</string>
|
||||
<string name="delete_channel_question">احذف القناة؟</string>
|
||||
<string name="relay_conn_status_deleted">حُذفت</string>
|
||||
<string name="rcv_channel_event_channel_deleted">حُذفت القناة</string>
|
||||
<string name="delete_relay">احذف المُرحل</string>
|
||||
<string name="compose_view_broadcast">إذاعة</string>
|
||||
<string name="cancel_creating_channel_question">إلغاء إنشاء القناة؟</string>
|
||||
<string name="test_relay_to_retrieve_name"><![CDATA[<b>اختبر المُرحل</b> لاسترداد اسمه.]]></string>
|
||||
<string name="connect_plan_this_is_your_link_for_channel_vName"><![CDATA[هذا هو الرابط الخاص بك لقناة <b>%1$s </b>!]]></string>
|
||||
<string name="channel_role_label">قناة</string>
|
||||
<string name="chat_banner_channel">قناة</string>
|
||||
<string name="info_row_channel">قناة</string>
|
||||
<string name="channel_full_name_field">اسم القناة بالكامل</string>
|
||||
<string name="channel_link">رابط القناة</string>
|
||||
<string name="button_channel_members">أعضاء القناة</string>
|
||||
<string name="channel_display_name_field">اسم القناة</string>
|
||||
<string name="channel_profile_is_stored_on_subscribers_devices">يُخزّن ملف تعريف القناة على أجهزة المشتركين وعلى مُرحلات الدردشة.</string>
|
||||
<string name="snd_channel_event_channel_profile_updated">حُدِّث ملف تعريف القناة</string>
|
||||
<string name="delete_channel_for_all_subscribers_cannot_undo_warning">ستُحذف القناة لجميع المشتركين - لا يمكن التراجع عن هذا الإجراء!</string>
|
||||
<string name="delete_channel_for_self_cannot_undo_warning">ستُحذف القناة من عِندك - لا يمكن التراجع عن هذا الإجراء!</string>
|
||||
<string name="channel_will_start_with_relays">ستبدأ القناة بالعمل مع %1$d من أصل %2$d من المُرحلات. أتود المتابعة؟</string>
|
||||
<string name="chat_relay">مُرحل الدردشة</string>
|
||||
<string name="button_channel_relays">مُرحلات الدردشة</string>
|
||||
<string name="chat_relays_forward_messages_in_channels">مُرحلات الدردشة توجّه الرسائل في القنوات التي تنشئها.</string>
|
||||
<string name="chat_relays_forward_messages">مُرحلات الدردشة توجّه الرسائل في القنوات في القناة.</string>
|
||||
<string name="check_relay_address">تحقق من عنوان المُرحل وحاول مرة أخرى.</string>
|
||||
<string name="check_relay_name">تحقق من اسم المُرحل وحاول مرة أخرى.</string>
|
||||
<string name="configure_relays">اضبط المُرحلات</string>
|
||||
<string name="relay_test_step_connect">اتصل</string>
|
||||
<string name="relay_conn_status_connected">متصل</string>
|
||||
<string name="relay_conn_status_connecting">يتصل</string>
|
||||
<string name="create_channel_title">أنشئ قناة عامة</string>
|
||||
<string name="create_channel_button">أنشئ قناة عامة</string>
|
||||
<string name="create_channel_beta_button">أنشئ قناة عامة (تجريبي)</string>
|
||||
<string name="creating_channel">ينشئ قناة</string>
|
||||
<string name="rcv_channel_events_count">%d أحداث القناة</string>
|
||||
<string name="relay_test_step_decode_link">فك ترميز الرابط</string>
|
||||
<string name="rcv_msg_error_dropped">تم الإسقاط (%1$d محاولات)</string>
|
||||
<string name="button_edit_channel_profile">حرّر ملف تعريف القناة</string>
|
||||
<string name="enable_at_least_one_chat_relay">فعّل مُرحل دردشة واحد على الأقل لإنشاء قناة.</string>
|
||||
<string name="enter_relay_name">أدخل اسم المُرحل…</string>
|
||||
<string name="error_adding_relay">خطأ في إضافة المُرحل</string>
|
||||
<string name="error_creating_channel">خطأ في إنشاء القناة</string>
|
||||
<string name="error_opening_channel">خطأ في فتح القناة</string>
|
||||
<string name="rcv_msg_error_parse">خطأ: %s</string>
|
||||
<string name="error_saving_channel_profile">خطأ في حفظ ملف تعريف القناة</string>
|
||||
<string name="relay_conn_status_failed">فشل</string>
|
||||
<string name="relay_status_failed">فشل</string>
|
||||
<string name="relay_test_step_get_link">احصل على الرابط</string>
|
||||
<string name="invalid_relay_address">عنوان المُرحل غير صالح!</string>
|
||||
<string name="invalid_relay_name">اسم المُرحل غير صالح!</string>
|
||||
<string name="relay_status_invited">مدعو</string>
|
||||
<string name="compose_view_join_channel">انضم للقناة</string>
|
||||
<string name="button_leave_channel">غادِر القناة</string>
|
||||
<string name="leave_channel_question">مغادرة القناة؟</string>
|
||||
<string name="action_button_channel_link">الرابط</string>
|
||||
<string name="alert_title_msg_error">رسالة خطأ</string>
|
||||
<string name="relay_status_new">جديد</string>
|
||||
<string name="new_chat_relay">مُرحل دردشة جديد</string>
|
||||
<string name="no_chat_relays">لا مُرحلات دردشة</string>
|
||||
<string name="no_chat_relays_enabled">لا مُرحلات دردشة مفعّلة.</string>
|
||||
<string name="not_all_relays_connected">ليس كل المُرحلات متصلة</string>
|
||||
<string name="connect_plan_open_channel">افتح قناة</string>
|
||||
<string name="connect_plan_open_new_channel">افتح قناة جديدة</string>
|
||||
<string name="member_info_section_title_owner">المالك</string>
|
||||
<string name="channel_members_section_owners">المالكون</string>
|
||||
<string name="preset_relay_address">عنوان المُرحل مسبق الضبط</string>
|
||||
<string name="preset_relay_name">اسم المُرحل مسبق الضبط</string>
|
||||
<string name="proceed_verb">تابِع</string>
|
||||
<string name="group_member_role_relay">مُرحل</string>
|
||||
<string name="member_info_section_title_relay">مُرحل</string>
|
||||
<string name="info_row_relay_address">عنوان المُرحل</string>
|
||||
<string name="relay_address_alert_title">عنوان المُرحل</string>
|
||||
<string name="relay_connection_failed">فشل اتصال المُرحل</string>
|
||||
<string name="info_row_relay_link">رابط المُرحل</string>
|
||||
<string name="relay_test_failed_alert">فشل اختبار المُرحل</string>
|
||||
<string name="button_remove_subscriber">أزِل المشترك</string>
|
||||
<string name="button_remove_subscriber_question">إزالة المشترك؟</string>
|
||||
<string name="save_and_notify_channel_subscribers">احفظ وأرسل إشعار للمشتركين في القناة</string>
|
||||
<string name="save_channel_profile">احفظ ملف تعريف القناة</string>
|
||||
<string name="error_relay_test_server_auth">يتطلب الخادم تفويضًا للاتصال بالمُرحل، يُرجى التحقق من كلمة المرور.</string>
|
||||
<string name="server_warning">تحذير من الخادم</string>
|
||||
<string name="share_relay_address">شارك عنوان المُرحل</string>
|
||||
<string name="member_info_section_title_subscriber">مشترك</string>
|
||||
<string name="channel_members_title_subscribers">المشتركون</string>
|
||||
<string name="relay_section_footer_owner">يستخدم المشتركون رابط المُرحل للاتصال بالقناة.\nاُستخدم عنوان المُرحل لإعداد هذا المُرحل للقناة.</string>
|
||||
<string name="subscriber_will_be_removed_from_channel_cannot_be_undone">ستُزيل المشترك من القناة - لا يمكن التراجع عن هذا الإجراء!</string>
|
||||
<string name="chat_banner_join_channel">انقر انضم للقناة</string>
|
||||
<string name="error_relay_test_failed_at_step">فشل الاختبار عند الخطوة %s.</string>
|
||||
<string name="test_relay">اختبر المُرحل</string>
|
||||
<string name="alert_text_msg_reception_error">أُزيل التطبيق هذه الرسالة بعد %1$d محاولات لاستلامها.</string>
|
||||
<string name="relay_address_alert_message">عنوان مُرحل الدردشة هذا لا يمكن استخدامه للاتصال.</string>
|
||||
<string name="unblock_subscriber_for_all_question">إلغاء حظر المشترك للجميع؟</string>
|
||||
<string name="rcv_channel_event_updated_channel_profile">ملف القناة التعريفي حُدِّث</string>
|
||||
<string name="use_for_new_channels">استخدم للقنوات الجديدة</string>
|
||||
<string name="use_relay">استخدم مُرحل</string>
|
||||
<string name="relay_test_step_verify">تحقق</string>
|
||||
<string name="via_relay_hostname">عبر %1$s</string>
|
||||
<string name="voice_recording_not_supported">تسجيل الصوت غير مدعوم على منصتك</string>
|
||||
<string name="wait_verb">انتظر</string>
|
||||
<string name="relay_test_step_wait_response">رد الانتظار</string>
|
||||
<string name="channel_member_you">أنت</string>
|
||||
<string name="you_are_subscriber">أنت مشترك</string>
|
||||
<string name="you_can_share_channel_link_anybody_will_be_able_to_connect">بإمكانك مشاركة رابط أو رمز QR - وسيتمكن أي شخص من الانضمام إلى القناة.</string>
|
||||
<string name="relay_section_footer_subscriber">لقد اتصلت بالقناة عبر رابط المُرحل هذا.</string>
|
||||
<string name="chat_banner_your_channel">قناتك</string>
|
||||
<string name="connect_plan_this_is_your_link_for_channel">قناتك</string>
|
||||
<string name="your_profile_shared_with_channel_relays">سيتم مشاركة ملف تعريفك %1$s مع مُرحلات القناة والمشتركين.\nيمكن للمُرحلات الوصول إلى رسائل القناة.</string>
|
||||
<string name="your_relay_address">عنوان مُرحلك</string>
|
||||
<string name="your_relay_name">اسم مُرحلك</string>
|
||||
<string name="you_will_stop_receiving_messages_from_this_channel_chat_history_will_be_preserved">ستتوقف عن تلقي الرسائل من هذه القناة، وسيتم الاحتفاظ بسجل الدردشة.</string>
|
||||
</resources>
|
||||
|
||||
@@ -74,6 +74,7 @@
|
||||
<string name="e2ee_info_e2ee"><![CDATA[Messages are protected by <b>end-to-end encryption</b>.]]></string>
|
||||
<string name="e2ee_info_no_pq"><![CDATA[Messages, files and calls are protected by <b>end-to-end encryption</b> with perfect forward secrecy, repudiation and break-in recovery.]]></string>
|
||||
<string name="e2ee_info_pq"><![CDATA[Messages, files and calls are protected by <b>quantum resistant e2e encryption</b> with perfect forward secrecy, repudiation and break-in recovery.]]></string>
|
||||
<string name="e2ee_info_no_e2ee"><![CDATA[Messages in this channel are <b>not end-to-end encrypted</b>. Chat relays can see these messages.]]></string>
|
||||
<string name="e2ee_info_no_pq_short">This chat is protected by end-to-end encryption.</string>
|
||||
<string name="e2ee_info_pq_short">This chat is protected by quantum resistant end-to-end encryption.</string>
|
||||
|
||||
@@ -1376,6 +1377,7 @@
|
||||
<string name="open_simplex_chat_to_accept_call">Open SimpleX Chat to accept call</string>
|
||||
<string name="allow_accepting_calls_from_lock_screen">Enable calls from lock screen via Settings.</string>
|
||||
<string name="open_verb">Open</string>
|
||||
<string name="open_external_link_title">Open external link?</string>
|
||||
|
||||
<!-- Call overlay -->
|
||||
<string name="status_e2e_encrypted">e2e encrypted</string>
|
||||
@@ -2335,6 +2337,35 @@
|
||||
<string name="recent_history_is_not_sent_to_new_members">History is not sent to new members.</string>
|
||||
<string name="group_members_can_send_reports">Members can report messsages to moderators.</string>
|
||||
<string name="member_reports_are_prohibited">Reporting messages is prohibited in this group.</string>
|
||||
<string name="chat_with_admins">Chat with admins</string>
|
||||
<string name="allow_chat_with_admins">Allow members to chat with admins.</string>
|
||||
<string name="prohibit_chat_with_admins">Prohibit chats with admins.</string>
|
||||
<string name="members_can_chat_with_admins">Members can chat with admins.</string>
|
||||
<string name="chat_with_admins_is_prohibited">Chats with admins are prohibited.</string>
|
||||
<string name="chat_with_admins_relay_note">Chats with admins in public channels have no E2E encryption - use only with trusted chat relays.</string>
|
||||
<string name="enable_chats_with_admins_question">Enable chats with admins?</string>
|
||||
<string name="enable_chats_with_admins">Enable</string>
|
||||
|
||||
<!-- channel preference descriptions (subscribers) -->
|
||||
<string name="group_reports_subscriber_reports">Subscriber reports</string>
|
||||
<string name="allow_direct_messages_channel">Allow sending direct messages to subscribers.</string>
|
||||
<string name="prohibit_direct_messages_channel">Prohibit sending direct messages to subscribers.</string>
|
||||
<string name="enable_sending_recent_history_channel">Send up to 100 last messages to new subscribers.</string>
|
||||
<string name="disable_sending_recent_history_channel">Do not send history to new subscribers.</string>
|
||||
<string name="group_members_can_send_disappearing_channel">Subscribers can send disappearing messages.</string>
|
||||
<string name="group_members_can_send_dms_channel">Subscribers can send direct messages.</string>
|
||||
<string name="direct_messages_are_prohibited_channel">Direct messages between subscribers are prohibited.</string>
|
||||
<string name="group_members_can_delete_channel">Subscribers can irreversibly delete sent messages. (24 hours)</string>
|
||||
<string name="group_members_can_add_message_reactions_channel">Subscribers can add message reactions.</string>
|
||||
<string name="group_members_can_send_voice_channel">Subscribers can send voice messages.</string>
|
||||
<string name="group_members_can_send_files_channel">Subscribers can send files and media.</string>
|
||||
<string name="group_members_can_send_simplex_links_channel">Subscribers can send SimpleX links.</string>
|
||||
<string name="group_members_can_send_reports_channel">Subscribers can report messsages to moderators.</string>
|
||||
<string name="recent_history_is_sent_to_new_members_channel">Up to 100 last messages are sent to new subscribers.</string>
|
||||
<string name="recent_history_is_not_sent_to_new_members_channel">History is not sent to new subscribers.</string>
|
||||
<string name="allow_chat_with_admins_channel">Allow subscribers to chat with admins.</string>
|
||||
<string name="members_can_chat_with_admins_channel">Subscribers can chat with admins.</string>
|
||||
|
||||
<string name="delete_after">Delete after</string>
|
||||
<string name="ttl_sec">%d sec</string>
|
||||
<string name="ttl_s">%ds</string>
|
||||
@@ -2371,6 +2402,7 @@
|
||||
<!-- MemberSupportView.kt -->
|
||||
<string name="member_support">Chats with members</string>
|
||||
<string name="no_support_chats">No chats with members</string>
|
||||
<string name="support_chats_disabled">Chats with members are disabled</string>
|
||||
<string name="delete_member_support_chat_button">Delete chat</string>
|
||||
<string name="delete_member_support_chat_alert_title">Delete chat with member?</string>
|
||||
|
||||
|
||||
@@ -1038,7 +1038,7 @@
|
||||
<string name="image_descr_simplex_logo">SimpleX Лого</string>
|
||||
<string name="icon_descr_simplex_team">SimpleX Екип</string>
|
||||
<string name="smp_servers">SMP сървъри</string>
|
||||
<string name="share_address_with_contacts_question">Сподели адреса с контактите\?</string>
|
||||
<string name="share_address_with_contacts_question">Сподели адреса с контактите?</string>
|
||||
<string name="share_link">Сподели линк</string>
|
||||
<string name="share_with_contacts">Сподели с контактите</string>
|
||||
<string name="stop_sharing">Спри споделянето</string>
|
||||
|
||||
@@ -2508,4 +2508,4 @@
|
||||
<string name="delete_member_messages_confirmation">Suprimir missatges</string>
|
||||
<string name="member_messages_will_be_deleted_cannot_be_undone">Els missatges de membre s\'eliminaran; això no es pot desfer!</string>
|
||||
<string name="remove_member_delete_messages_confirmation">Eliminar membre i els seus missatges</string>
|
||||
</resources>
|
||||
</resources>
|
||||
@@ -877,7 +877,7 @@
|
||||
<string name="group_preferences">Předvolby skupiny</string>
|
||||
<string name="direct_messages">Přímé zprávy</string>
|
||||
<string name="full_deletion">Mazání všem</string>
|
||||
<string name="feature_enabled">zapnuty</string>
|
||||
<string name="feature_enabled">zapnuto</string>
|
||||
<string name="feature_enabled_for_you">povoleno vám</string>
|
||||
<string name="feature_off">vypnuty</string>
|
||||
<string name="prohibit_sending_disappearing_messages">Mizící zprávy zakázány.</string>
|
||||
@@ -930,7 +930,7 @@
|
||||
<string name="moderated_description">moderované</string>
|
||||
<string name="moderated_item_description">moderovaný %s</string>
|
||||
<string name="delete_member_message__question">Smazat zprávu člena\?</string>
|
||||
<string name="moderate_verb">moderovaný</string>
|
||||
<string name="moderate_verb">Moderovat</string>
|
||||
<string name="observer_cant_send_message_desc">Kontaktujte prosím správce skupiny.</string>
|
||||
<string name="you_are_observer">jste pozorovatel</string>
|
||||
<string name="group_member_role_observer">pozorovatel</string>
|
||||
@@ -1168,7 +1168,7 @@
|
||||
<string name="theme_colors_section_title">BARVY MOTIVU</string>
|
||||
<string name="customize_theme_title">Přizpůsobit motiv</string>
|
||||
<string name="profile_update_will_be_sent_to_contacts">Aktualizace profilu bude zaslána vašim kontaktům.</string>
|
||||
<string name="share_address_with_contacts_question">Sdílet adresu s kontakty\?</string>
|
||||
<string name="share_address_with_contacts_question">Sdílet adresu s kontakty?</string>
|
||||
<string name="stop_sharing_address">Přestat sdílet adresu\?</string>
|
||||
<string name="create_address_and_let_people_connect">Vytvořit adresu, aby se s vámi lidé mohli spojit.</string>
|
||||
<string name="save_auto_accept_settings">Uložit nastavení SimpleX adresy</string>
|
||||
@@ -1543,7 +1543,7 @@
|
||||
<string name="rcv_group_event_member_blocked">blokováno %s</string>
|
||||
<string name="profile_update_event_contact_name_changed">kontakt %1$s změnen na %2$s</string>
|
||||
<string name="info_row_created_at">Vytvořeno v</string>
|
||||
<string name="block_for_all">Blok všem</string>
|
||||
<string name="block_for_all">Blokovat všem</string>
|
||||
<string name="block_for_all_question">Blokovat člena všem?</string>
|
||||
<string name="error_blocking_member_for_all">Chyba blokování člena všem</string>
|
||||
<string name="v5_5_message_delivery">Vylepšené doručovaní zpráv</string>
|
||||
@@ -2054,7 +2054,7 @@
|
||||
<string name="no_message_servers_configured_for_private_routing">Žádné servery pro soukromé směrování chatů.</string>
|
||||
<string name="no_media_servers_configured_for_private_routing">Žádné servery pro příjem souborů.</string>
|
||||
<string name="no_message_servers_configured_for_receiving">Žádné servery pro příjem zpráv.</string>
|
||||
<string name="delete_chat_list_warning">Všechny chaty budou ze seznamu odebrány %s, a seznam bude smazán</string>
|
||||
<string name="delete_chat_list_warning">Všechny chaty budou ze seznamu %s odebrány, a seznam bude smazán</string>
|
||||
<string name="for_social_media">Pro sociální sítě</string>
|
||||
<string name="remote_hosts_section">Vzdálené telefony</string>
|
||||
<string name="operators_conditions_will_be_accepted_for"><![CDATA[Podmínky budou přijaty pro operátora(y): <b>%s</b>.]]></string>
|
||||
|
||||
@@ -176,7 +176,7 @@
|
||||
<string name="group_preview_you_are_invited">Sie sind zu der Gruppe eingeladen</string>
|
||||
<string name="group_preview_join_as">Beitreten als %s</string>
|
||||
<string name="group_connection_pending">verbinde …</string>
|
||||
<string name="tap_to_start_new_chat">Zum Starten eines neuen Chats tippen</string>
|
||||
<string name="tap_to_start_new_chat">Tippen, um einen neuen Chat zu starten</string>
|
||||
<string name="chat_with_developers">Chatten Sie mit den Entwicklern</string>
|
||||
<string name="you_have_no_chats">Sie haben keine Chats</string>
|
||||
<!-- ShareListView.kt -->
|
||||
@@ -547,7 +547,7 @@
|
||||
<string name="your_privacy">Privatsphäre</string>
|
||||
<string name="protect_app_screen">App-Bildschirm schützen</string>
|
||||
<string name="auto_accept_images">Bilder automatisch akzeptieren</string>
|
||||
<string name="send_link_previews">Link-Vorschau senden</string>
|
||||
<string name="send_link_previews">Linkvorschau senden</string>
|
||||
<string name="full_backup">App-Datensicherung</string>
|
||||
<!-- Settings sections -->
|
||||
<string name="settings_section_title_you">MEINE DATEN</string>
|
||||
@@ -1040,7 +1040,7 @@
|
||||
<string name="enter_password_to_show">Für die Anzeige das Passwort im Suchfeld eingeben</string>
|
||||
<string name="make_profile_private">Privates Profil erzeugen!</string>
|
||||
<string name="user_mute">Stummschalten</string>
|
||||
<string name="tap_to_activate_profile">Zum Aktivieren des Profils tippen.</string>
|
||||
<string name="tap_to_activate_profile">Tippen, um das Profil zu aktivieren.</string>
|
||||
<string name="user_unmute">Stummschaltung aufheben</string>
|
||||
<string name="muted_when_inactive">Bei Inaktivität stummgeschaltet!</string>
|
||||
<string name="v4_6_hidden_chat_profiles_descr">Schützen Sie Ihre Chat-Profile mit einem Passwort!</string>
|
||||
@@ -1191,20 +1191,20 @@
|
||||
<string name="you_wont_lose_your_contacts_if_delete_address">Sie werden Ihre damit verbundenen Kontakte nicht verlieren, wenn Sie diese Adresse später löschen.</string>
|
||||
<string name="customize_theme_title">Design anpassen</string>
|
||||
<string name="theme_colors_section_title">INTERFACE-FARBEN</string>
|
||||
<string name="add_address_to_your_profile">Fügen Sie die Adresse Ihrem Profil hinzu, damit Ihre Kontakte sie mit anderen Personen teilen können. Es wird eine Profilaktualisierung an Ihre Kontakte gesendet.</string>
|
||||
<string name="add_address_to_your_profile">Fügen Sie die Adresse Ihrem Profil hinzu, damit Ihre SimpleX-Kontakte sie mit anderen Personen teilen können. Es wird eine Profilaktualisierung an Ihre SimpleX-Kontakte gesendet.</string>
|
||||
<string name="all_your_contacts_will_remain_connected_update_sent">Alle Ihre Kontakte bleiben verbunden. Es wird eine Profilaktualisierung an Ihre Kontakte gesendet.</string>
|
||||
<string name="create_address_and_let_people_connect">Erstellen Sie eine Adresse, damit sich Personen mit Ihnen verbinden können.</string>
|
||||
<string name="create_simplex_address">SimpleX-Adresse erstellen</string>
|
||||
<string name="share_with_contacts">Mit Kontakten teilen</string>
|
||||
<string name="share_with_contacts">Mit SimpleX-Kontakten teilen</string>
|
||||
<string name="your_contacts_will_remain_connected">Ihre Kontakte bleiben weiterhin verbunden.</string>
|
||||
<string name="auto_accept_contact">Automatisch akzeptieren</string>
|
||||
<string name="enter_welcome_message_optional">Geben Sie eine Begrüßungsmeldung ein … (optional)</string>
|
||||
<string name="invite_friends">Freunde einladen</string>
|
||||
<string name="email_invite_subject">Lassen Sie uns über SimpleX Chat schreiben</string>
|
||||
<string name="profile_update_will_be_sent_to_contacts">Profil-Aktualisierung wird an Ihre Kontakte gesendet.</string>
|
||||
<string name="profile_update_will_be_sent_to_contacts">Profil-Aktualisierung wird an Ihre SimpleX-Kontakte gesendet.</string>
|
||||
<string name="save_auto_accept_settings">SimpleX-Adress-Einstellungen speichern</string>
|
||||
<string name="save_settings_question">Einstellungen speichern\?</string>
|
||||
<string name="share_address_with_contacts_question">Die Adresse mit Kontakten teilen\?</string>
|
||||
<string name="share_address_with_contacts_question">Die Adresse mit SimpleX-Kontakten teilen?</string>
|
||||
<string name="stop_sharing">Teilen beenden</string>
|
||||
<string name="stop_sharing_address">Das Teilen der Adresse beenden\?</string>
|
||||
<string name="dont_create_address">Keine Adresse erstellt</string>
|
||||
@@ -1607,7 +1607,7 @@
|
||||
<string name="add_contact_tab">Kontakt hinzufügen</string>
|
||||
<string name="tap_to_scan">Zum Scannen tippen</string>
|
||||
<string name="keep_invitation_link">Behalten</string>
|
||||
<string name="tap_to_paste_link">Zum Link einfügen tippen</string>
|
||||
<string name="tap_to_paste_link">Tippen, um den Link einzufügen</string>
|
||||
<string name="search_or_paste_simplex_link">Suchen oder SimpleX-Link einfügen</string>
|
||||
<string name="chat_is_stopped_you_should_transfer_database">Der Chat wurde gestoppt. Wenn diese Datenbank bereits auf einem anderen Gerät von Ihnen verwendet wurde, sollten Sie diese dorthin zurück übertragen, bevor Sie den Chat starten.</string>
|
||||
<string name="start_chat_question">Chat starten?</string>
|
||||
@@ -1928,7 +1928,7 @@
|
||||
<string name="remote_ctrl_connection_stopped_desc">Bitte überprüfen Sie, ob sich das Mobiltelefon und die Desktop-App im gleichen lokalen Netzwerk befinden, und die Desktop-Firewall die Verbindung erlaubt.
|
||||
\nBitte teilen Sie weitere mögliche Probleme den Entwicklern mit.</string>
|
||||
<string name="cannot_share_message_alert_title">Nachricht wurde nicht gesendet</string>
|
||||
<string name="cannot_share_message_alert_text">Diese Nachricht ist wegen der gewählten Chat-Einstellungen nicht erlaubt.</string>
|
||||
<string name="cannot_share_message_alert_text">Diese Nachricht ist wegen der gewählten Chat-Präferenzen nicht erlaubt.</string>
|
||||
<string name="please_try_later">Bitte versuchen Sie es später erneut.</string>
|
||||
<string name="private_routing_error">Fehler beim privaten Routing</string>
|
||||
<string name="member_inactive_desc">Die Nachricht kann später zugestellt werden, wenn das Mitglied aktiv wird.</string>
|
||||
@@ -2001,7 +2001,7 @@
|
||||
<string name="app_check_for_updates_button_open">Dateispeicherort öffnen</string>
|
||||
<string name="other_label">andere</string>
|
||||
<string name="network_error_broker_host_desc">Die Server-Adresse ist nicht mit den Netzwerkeinstellungen kompatibel: %1$s.</string>
|
||||
<string name="scan_paste_link">Link scannen / einfügen</string>
|
||||
<string name="scan_paste_link">Link einfügen / Scannen</string>
|
||||
<string name="servers_info_reconnect_all_servers_button">Alle Server neu verbinden</string>
|
||||
<string name="servers_info_reconnect_server_title">Server neu verbinden?</string>
|
||||
<string name="servers_info_reconnect_servers_title">Alle Server neu verbinden?</string>
|
||||
@@ -2307,7 +2307,7 @@
|
||||
<string name="v6_2_business_chats_descr">Schutz der Privatsphäre Ihrer Kunden.</string>
|
||||
<string name="display_name_requested_to_connect">Zur Verbindung aufgefordert</string>
|
||||
<string name="maximum_message_size_reached_non_text">Bitte verkleinern Sie die Nachrichten-Größe oder entfernen Sie Medien und versenden Sie diese erneut.</string>
|
||||
<string name="only_chat_owners_can_change_prefs">Nur Chat-Eigentümer können die Präferenzen ändern.</string>
|
||||
<string name="only_chat_owners_can_change_prefs">Präferenzen können nur von Chat-Eigentümern geändert werden.</string>
|
||||
<string name="maximum_message_size_reached_text">Bitte verkleinern Sie die Nachrichten-Größe und versenden Sie diese erneut.</string>
|
||||
<string name="member_role_will_be_changed_with_notification_chat">Die Rolle wird auf %s geändert. Im Chat wird Jeder darüber informiert.</string>
|
||||
<string name="you_will_stop_receiving_messages_from_this_chat_chat_history_will_be_preserved">Sie werden von diesem Chat keine Nachrichten mehr erhalten. Der Nachrichtenverlauf wird beibehalten.</string>
|
||||
@@ -2455,7 +2455,7 @@
|
||||
<string name="unsupported_connection_link">Verbindungs-Link wird nicht unterstützt</string>
|
||||
<string name="short_link_button_text">Verkürzter Link</string>
|
||||
<string name="full_link_button_text">Vollständiger Link</string>
|
||||
<string name="simplex_link_channel">SimpleX-Kanal-Link</string>
|
||||
<string name="simplex_link_channel">SimpleX-Kanallink</string>
|
||||
<string name="link_requires_newer_app_version_please_upgrade">Für diesen Link wird eine neuere App-Version benötigt. Bitte aktualisieren Sie die App oder bitten Sie Ihren Kontakt einen kompatiblen Link zu senden.</string>
|
||||
<string name="network_smp_web_port_all">Alle Server</string>
|
||||
<string name="network_smp_web_port_off">Aus</string>
|
||||
@@ -2633,25 +2633,25 @@
|
||||
<string name="member_info_member_failed">Fehlgeschlagen</string>
|
||||
<string name="down_migration_warning_chat_relays">Kanäle, welche Sie erstellt haben oder denen Sie beigetreten sind, werden dauerhaft deaktiviert.</string>
|
||||
<string name="relay_bar_active">%1$d/%2$d Relais aktiv</string>
|
||||
<string name="relay_bar_active_with_failures">%1$d/%2$d Relais aktiv, %3$d Fehlgeschlagen</string>
|
||||
<string name="relay_bar_active_with_failures">%1$d/%2$d Relais aktiv, %3$d fehlgeschlagen</string>
|
||||
<string name="relay_bar_connected">%1$d/%2$d Relais verbunden</string>
|
||||
<string name="relay_bar_connected_with_errors">%1$d/%2$d Relais verbunden, %3$d Fehler</string>
|
||||
<string name="channel_subscriber_count_singular">%1$d Abonnent</string>
|
||||
<string name="channel_subscriber_count_plural">%1$d Abonnenten</string>
|
||||
<string name="relay_status_accepted">Angenommen</string>
|
||||
<string name="relay_status_active">Aktiv</string>
|
||||
<string name="block_subscriber_for_all_question">Abonnenten für alle blockieren?</string>
|
||||
<string name="block_subscriber_for_all_question">Abonnent für alle blockieren?</string>
|
||||
<string name="compose_view_broadcast">Broadcast</string>
|
||||
<string name="cancel_creating_channel_confirm">Abbrechen</string>
|
||||
<string name="cancel_creating_channel_question">Kanalerstellung abbrechen?</string>
|
||||
<string name="test_relay_to_retrieve_name"><![CDATA[<b>Relais testen</b>, um dessen Namen zu ermitteln.]]></string>
|
||||
<string name="test_relay_to_retrieve_name"><![CDATA[<b>Relais testen</b>, um dessen Namen abzurufen.]]></string>
|
||||
<string name="connect_plan_this_is_your_link_for_channel_vName"><![CDATA[Dies ist Ihr Link für den Kanal <b>%1$s</b>!]]></string>
|
||||
<string name="channel_role_label">Kanal</string>
|
||||
<string name="chat_banner_channel">Kanal</string>
|
||||
<string name="info_row_channel">Kanal</string>
|
||||
<string name="channel_link">Kanal-Link</string>
|
||||
<string name="channel_link">Kanallink</string>
|
||||
<string name="button_channel_members">Kanal-Mitglieder</string>
|
||||
<string name="channel_display_name_field">Kanal-Name</string>
|
||||
<string name="channel_display_name_field">Kanalname</string>
|
||||
<string name="delete_channel_for_all_subscribers_cannot_undo_warning">Der Kanal wird für alle Abonnenten gelöscht. Dies kann nicht rückgängig gemacht werden!</string>
|
||||
<string name="delete_channel_for_self_cannot_undo_warning">Der Kanal wird für Sie gelöscht. Dies kann nicht rückgängig gemacht werden!</string>
|
||||
<string name="channel_will_start_with_relays">Der Kanal wird mit %1$d von %2$d Relais gestartet. Fortfahren?</string>
|
||||
@@ -2667,9 +2667,9 @@
|
||||
<string name="relay_test_step_connect">Verbinden</string>
|
||||
<string name="relay_conn_status_connected">verbunden</string>
|
||||
<string name="relay_conn_status_connecting">verbinden</string>
|
||||
<string name="create_channel_title">Kanal erstellen</string>
|
||||
<string name="create_channel_button">Kanal erstellen</string>
|
||||
<string name="create_channel_beta_button">Kanal erstellen (BETA)</string>
|
||||
<string name="create_channel_title">Öffentlichen Kanal erstellen</string>
|
||||
<string name="create_channel_button">Öffentlichen Kanal erstellen</string>
|
||||
<string name="create_channel_beta_button">Öffentlichen Kanal erstellen (BETA)</string>
|
||||
<string name="creating_channel">Kanal wird erstellt</string>
|
||||
<string name="relay_test_step_decode_link">Link dekodieren</string>
|
||||
<string name="button_delete_channel">Kanal löschen</string>
|
||||
@@ -2738,8 +2738,105 @@
|
||||
<string name="relay_section_footer_subscriber">Sie haben sich über diesen Relais‑Link mit dem Kanal verbunden.</string>
|
||||
<string name="chat_banner_your_channel">Ihr Kanal</string>
|
||||
<string name="connect_plan_this_is_your_link_for_channel">Ihr Kanal</string>
|
||||
<string name="your_profile_shared_with_channel_relays">Ihr Profil %1$s wird mit den Kanal‑Relais und -Abonnenten geteilt.</string>
|
||||
<string name="your_profile_shared_with_channel_relays">Ihr Profil %1$s wird mit den Kanal‑Relais und -Abonnenten geteilt.\nRelais können auf Kanalnachrichten zugreifen.</string>
|
||||
<string name="your_relay_address">Ihre Relais-Adresse</string>
|
||||
<string name="your_relay_name">Ihr Relais-Name</string>
|
||||
<string name="you_will_stop_receiving_messages_from_this_channel_chat_history_will_be_preserved">Sie werden keine Nachrichten mehr aus diesem Kanal erhalten. Der Chatverlauf bleibt erhalten.</string>
|
||||
<string name="channel_full_name_field">Vollständiger Name des Kanals:</string>
|
||||
<string name="channel_profile_is_stored_on_subscribers_devices">Das Kanalprofil wird auf den Geräten der Abonnenten und auf den Chat‑Relais gespeichert.</string>
|
||||
<string name="snd_channel_event_channel_profile_updated">Kanalprofil wurde aktualisiert</string>
|
||||
<string name="rcv_channel_events_count">%d Kanalereignisse</string>
|
||||
<string name="rcv_channel_event_channel_deleted">Kanal gelöscht</string>
|
||||
<string name="rcv_msg_error_dropped">Verworfen (%1$d Versuche)</string>
|
||||
<string name="rcv_msg_error_parse">Fehler: %s</string>
|
||||
<string name="error_saving_channel_profile">Fehler beim Speichern des Kanalprofils</string>
|
||||
<string name="alert_title_msg_error">Übertragungsfehler</string>
|
||||
<string name="save_and_notify_channel_subscribers">Speichern und Abonnenten des Kanals informieren</string>
|
||||
<string name="save_channel_profile">Kanalprofil speichern</string>
|
||||
<string name="alert_text_msg_reception_error">Die App hat diese Nachricht nach %1$d Empfangsversuchen entfernt.</string>
|
||||
<string name="rcv_channel_event_updated_channel_profile">Kanalprofil aktualisiert</string>
|
||||
<string name="relay_bar_active_with_errors">%1$d/%2$d Relais aktiv, %3$d Fehler</string>
|
||||
<string name="relay_bar_active_with_removed">%1$d/%2$d Relais aktiv, %3$d entfernt</string>
|
||||
<string name="relay_bar_connected_with_failures">%1$d/%2$d Relais verbunden, %3$d fehlgeschlagen</string>
|
||||
<string name="relay_bar_connected_with_removed">%1$d/%2$d Relais verbunden, %3$d entfernt</string>
|
||||
<string name="relay_bar_relays_failed">%1$d Relais fehlgeschlagen</string>
|
||||
<string name="relay_bar_relays_not_active">%1$d Relais nicht aktiv</string>
|
||||
<string name="relay_bar_relays_removed">%1$d Relais entfernt</string>
|
||||
<string name="relay_bar_owner_no_delivery">Das Hinzufügen von Relais wird zu einem späteren Zeitpunkt unterstützt.</string>
|
||||
<string name="relay_bar_all_relays_failed">Alle Relais fehlgeschlagen</string>
|
||||
<string name="relay_bar_all_relays_removed">Alle Relais entfernt</string>
|
||||
<string name="cant_broadcast_message">Broadcast nicht möglich</string>
|
||||
<string name="channel_no_active_relays_try_later">Der Kanal hat keine aktiven Relais. Bitte später erneut versuchen.</string>
|
||||
<string name="channel_temporarily_unavailable">Der Kanal ist vorübergehend nicht erreichbar</string>
|
||||
<string name="relay_status_inactive">Inaktiv</string>
|
||||
<string name="relay_bar_no_active_relays">Keine aktiven Relais</string>
|
||||
<string name="relay_conn_status_removed_by_operator">Vom Betreiber entfernt</string>
|
||||
<string name="relay_bar_subscriber_waiting">Warte auf das Hinzufügen von Relais durch den Eigentümer des Kanals.</string>
|
||||
<string name="chat_link_business_address">Geschäftliche Adresse</string>
|
||||
<string name="chat_link_channel">Kanallink</string>
|
||||
<string name="chat_link_contact_address">Kontaktadresse</string>
|
||||
<string name="link_previews_alert_disable">Deaktivieren</string>
|
||||
<string name="link_previews_alert_enable">Aktivieren</string>
|
||||
<string name="link_previews_alert_title">Linkvorschau aktivieren?</string>
|
||||
<string name="error_prefix">Fehler</string>
|
||||
<string name="error_sharing_channel">Fehler beim Teilen des Kanals</string>
|
||||
<string name="chat_link_from_owner">(vom Eigentümer)</string>
|
||||
<string name="chat_link_group">Gruppen-Link</string>
|
||||
<string name="owner_verification_passed">Linksignatur erfolgreich verifiziert.</string>
|
||||
<string name="network_error">Netzwerk-Fehler</string>
|
||||
<string name="chat_link_one_time">Einmal-Link</string>
|
||||
<string name="relay_results">Relay‑Status:</string>
|
||||
<string name="link_previews_alert_desc">Das Senden einer Link-Vorschau kann Ihre IP‑Adresse an die Website übermitteln. Sie können dies später in den Datenschutzeinstellungen ändern.</string>
|
||||
<string name="share_channel">Kanal teilen…</string>
|
||||
<string name="share_via_chat">Per Chat teilen</string>
|
||||
<string name="owner_verification_failed">⚠️ Signaturüberprüfung fehlgeschlagen: %s.</string>
|
||||
<string name="chat_link_signed">(signiert)</string>
|
||||
<string name="tap_to_open">Zum Öffnen tippen</string>
|
||||
<string name="connection_reached_limit_of_undelivered_messages">Die Verbindung hat das Limit für nicht zugestellte Nachrichten erreicht</string>
|
||||
<string name="channel_preferences">Kanal-Präferenzen</string>
|
||||
<string name="only_channel_owners_can_change_prefs">Kanal-Präferenzen können nur von Kanal-Eigentümern geändert werden.</string>
|
||||
<string name="a_link_for_one_person">Ein Link für eine einzelne Person zum Verbinden.</string>
|
||||
<string name="chat_list_channels">Kanäle</string>
|
||||
<string name="connect_via_link_or_qr_code">Über einen Link oder QR-Code verbinden</string>
|
||||
<string name="connect_with_someone">Mit jemandem verbinden</string>
|
||||
<string name="create_your_public_address">Erstellen Sie Ihre öffentliche Adresse</string>
|
||||
<string name="v6_5_invite_friends">Freunde einladen – jetzt noch einfacher 👋</string>
|
||||
<string name="for_anyone_to_reach_you">Damit Sie jeder erreichen kann</string>
|
||||
<string name="invite_someone_privately">Jemanden privat einladen</string>
|
||||
<string name="let_someone_connect_to_you">Damit sich jemand mit Ihnen verbinden kann</string>
|
||||
<string name="new_1_time_link">Neuer Einmal-Link</string>
|
||||
<string name="v6_5_non_profit_governance">Non‑Profit‑Governance</string>
|
||||
<string name="v6_5_safe_web_links_descr">- Opt‑in zum Senden von Linkvorschauen.\n- Hyperlink‑Phishing verhindern.\n- Link‑Tracking entfernen.</string>
|
||||
<string name="onboarding_or_show_qr_code">Oder den QR‑Code persönlich oder per Videoanruf zeigen.</string>
|
||||
<string name="onboarding_or_use_qr_code">Oder diesen QR‑Code verwenden – ausgedruckt oder online.</string>
|
||||
<string name="v6_5_ownership">Volle Kontrolle: Sie können Ihre eigenen Relais betreiben.</string>
|
||||
<string name="v6_5_privacy">Privatsphäre: für Besitzer und Abonnenten.</string>
|
||||
<string name="v6_5_public_channels">Öffentliche Kanäle – freies Kommunizieren 🚀</string>
|
||||
<string name="v6_5_reliability">Zuverlässigkeit: mehrere Relais pro Kanal.</string>
|
||||
<string name="v6_5_safe_web_links">Sichere Web-Links</string>
|
||||
<string name="v6_5_security">Sicherheit: Eigentümer besitzen die Kanalschlüssel.</string>
|
||||
<string name="onboarding_send_1_time_link">Den Link über einen beliebigen Messenger versenden – es ist sicher. Bitte in SimpleX einfügen.</string>
|
||||
<string name="talk_to_someone">Mit jemandem sprechen</string>
|
||||
<string name="v6_5_non_profit_governance_descr">Für ein dauerhaftes SimpleX-Netzwerk.</string>
|
||||
<string name="onboarding_post_address">Diese Adresse in Ihrem Social‑Media‑Profil, auf Ihrer Webseite oder in Ihrer E‑Mail‑Signatur verwenden.</string>
|
||||
<string name="v6_5_invite_friends_descr">Wir haben das Verbinden für neue Nutzer vereinfacht.</string>
|
||||
<string name="your_public_address">Ihre öffentliche Adresse</string>
|
||||
|
||||
<!-- channel preferences (subscribers) -->
|
||||
<string name="group_reports_subscriber_reports">Abonnenten-Meldungen</string>
|
||||
<string name="allow_direct_messages_channel">Das Senden von Direktnachrichten an Abonnenten erlauben.</string>
|
||||
<string name="prohibit_direct_messages_channel">Das Senden von Direktnachrichten an Abonnenten nicht erlauben.</string>
|
||||
<string name="enable_sending_recent_history_channel">Bis zu 100 der letzten Nachrichten an neue Abonnenten senden.</string>
|
||||
<string name="disable_sending_recent_history_channel">Den Nachrichtenverlauf nicht an neue Abonnenten senden.</string>
|
||||
<string name="group_members_can_send_disappearing_channel">Abonnenten können verschwindende Nachrichten versenden.</string>
|
||||
<string name="group_members_can_send_dms_channel">Abonnenten können Direktnachrichten versenden.</string>
|
||||
<string name="direct_messages_are_prohibited_channel">Direktnachrichten zwischen Abonnenten sind nicht erlaubt.</string>
|
||||
<string name="group_members_can_delete_channel">Abonnenten können gesendete Nachrichten unwiederbringlich löschen. (24 Stunden)</string>
|
||||
<string name="group_members_can_add_message_reactions_channel">Abonnenten können eine Reaktion auf Nachrichten geben.</string>
|
||||
<string name="group_members_can_send_voice_channel">Abonnenten können Sprachnachrichten versenden.</string>
|
||||
<string name="group_members_can_send_files_channel">Abonnenten können Dateien und Medien versenden.</string>
|
||||
<string name="group_members_can_send_simplex_links_channel">Abonnenten können SimpleX-Links versenden.</string>
|
||||
<string name="group_members_can_send_reports_channel">Abonnenten können Nachrichten an Moderatoren melden.</string>
|
||||
<string name="recent_history_is_sent_to_new_members_channel">Bis zu 100 der letzten Nachrichten werden an neue Abonnenten gesendet.</string>
|
||||
<string name="recent_history_is_not_sent_to_new_members_channel">Der Nachrichtenverlauf wird nicht an neue Abonnenten gesendet.</string>
|
||||
</resources>
|
||||
|
||||
@@ -358,7 +358,7 @@
|
||||
<string name="group_members_can_send_voice">Los miembros pueden enviar mensajes de voz.</string>
|
||||
<string name="description_via_contact_address_link_incognito">en modo incógnito mediante dirección de contacto</string>
|
||||
<string name="failed_to_create_user_title">¡Error al crear perfil!</string>
|
||||
<string name="failed_to_parse_chat_title">No se pudo cargar el chat</string>
|
||||
<string name="failed_to_parse_chat_title">Fallo en la carga del chat</string>
|
||||
<string name="failed_to_parse_chats_title">Fallo en la carga de chats</string>
|
||||
<string name="simplex_link_mode_full">Enlace completo</string>
|
||||
<string name="error_deleting_contact">Error al eliminar contacto</string>
|
||||
@@ -385,7 +385,7 @@
|
||||
<string name="icon_descr_hang_up">Colgar</string>
|
||||
<string name="files_and_media_section">Archivos y multimedia</string>
|
||||
<string name="alert_title_no_group">¡Grupo no encontrado!</string>
|
||||
<string name="snd_group_event_group_profile_updated">perfil de grupo actualizado</string>
|
||||
<string name="snd_group_event_group_profile_updated">perfil del grupo actualizado</string>
|
||||
<string name="error_creating_link_for_group">Error al crear enlace de grupo</string>
|
||||
<string name="error_deleting_link_for_group">Error al eliminar enlace de grupo</string>
|
||||
<string name="feature_enabled_for_contact">activado para el contacto</string>
|
||||
@@ -819,7 +819,7 @@
|
||||
<string name="switch_receiving_address">Cambiar servidor de recepción</string>
|
||||
<string name="group_is_decentralized">Totalmente descentralizado. Visible sólo para los miembros.</string>
|
||||
<string name="to_connect_via_link_title">Para conectarte mediante enlace</string>
|
||||
<string name="smp_servers_test_failed">¡Prueba no superada!</string>
|
||||
<string name="smp_servers_test_failed">¡Prueba del servidor no superada!</string>
|
||||
<string name="smp_servers_test_some_failed">Algunos servidores no han superado la prueba:</string>
|
||||
<string name="smp_servers_use_server">Usar servidor</string>
|
||||
<string name="smp_servers_use_server_for_new_conn">Para conexiones nuevas</string>
|
||||
@@ -880,7 +880,7 @@
|
||||
<string name="you_are_invited_to_group_join_to_connect_with_group_members">Has sido invitado a un grupo. Únete para conectar con sus miembros.</string>
|
||||
<string name="snd_group_event_member_deleted">has expulsado a %1$s</string>
|
||||
<string name="group_info_member_you">Tú: %1$s</string>
|
||||
<string name="you_can_share_group_link_anybody_will_be_able_to_connect">Puedes compartir el enlace o el código QR para que cualquiera pueda unirse al grupo. Si más tarde lo eliminas, no afectará a los miembros del grupo.</string>
|
||||
<string name="you_can_share_group_link_anybody_will_be_able_to_connect">Puedes compartir el enlace o código QR. Cualquiera podrá unirse al grupo. Si más tarde lo eliminas, no afectará a los miembros del grupo.</string>
|
||||
<string name="incognito_info_share">Cuando compartes un perfil incógnito con alguien, este perfil también se usará para los grupos a los que te inviten.</string>
|
||||
<string name="your_preferences">Mis preferencias</string>
|
||||
<string name="v4_2_auto_accept_contact_requests_desc">Con mensaje de bienvenida opcional.</string>
|
||||
@@ -1145,7 +1145,7 @@
|
||||
<string name="stop_sharing_address">¿Dejar de compartir la dirección\?</string>
|
||||
<string name="theme_colors_section_title">COLORES DE LA INTERFAZ</string>
|
||||
<string name="you_can_create_it_later">Puedes crearla más tarde</string>
|
||||
<string name="share_address_with_contacts_question">¿Compartir la dirección con los contactos\?</string>
|
||||
<string name="share_address_with_contacts_question">¿Compartir la dirección con los contactos?</string>
|
||||
<string name="share_with_contacts">Compartir con contactos</string>
|
||||
<string name="color_title">Título</string>
|
||||
<string name="you_can_share_this_address_with_your_contacts">Puedes compartir esta dirección con tus contactos para que puedan conectar con %s.</string>
|
||||
@@ -1430,7 +1430,7 @@
|
||||
<string name="connect_to_desktop">Conectar con ordenador</string>
|
||||
<string name="disconnect_remote_host">Desconectar</string>
|
||||
<string name="block_member_question">¿Bloquear miembro?</string>
|
||||
<string name="rcv_group_events_count">%d evento(s) de grupo</string>
|
||||
<string name="rcv_group_events_count">%d evento(s) del grupo</string>
|
||||
<string name="invalid_name">¡Nombre no válido!</string>
|
||||
<string name="connected_to_mobile">Conectado a móvil</string>
|
||||
<string name="bad_desktop_address">Dirección ordenador incorrecta</string>
|
||||
@@ -2223,7 +2223,7 @@
|
||||
<string name="only_chat_owners_can_change_prefs">Sólo los propietarios del chat pueden cambiar las preferencias.</string>
|
||||
<string name="member_will_be_removed_from_chat_cannot_be_undone">El miembro será eliminado del chat. ¡No puede deshacerse!</string>
|
||||
<string name="member_role_will_be_changed_with_notification_chat">El rol cambiará a %s. Se notificará en el chat.</string>
|
||||
<string name="you_will_stop_receiving_messages_from_this_chat_chat_history_will_be_preserved">Dejarás de recibir mensajes del chat. El historial del chat se conserva.</string>
|
||||
<string name="you_will_stop_receiving_messages_from_this_chat_chat_history_will_be_preserved">Dejarás de recibir mensajes del chat. El historial del chat se conservará.</string>
|
||||
<string name="how_it_helps_privacy">Cómo ayuda a la privacidad</string>
|
||||
<string name="onboarding_network_operators_cant_see_who_talks_to_whom">Cuando está habilitado más de un operador, ninguno dispone de los metadatos para conocer quién se comunica con quién.</string>
|
||||
<string name="chat_main_profile_sent">Tu perfil de chat será enviado a los miembros de chat</string>
|
||||
@@ -2530,7 +2530,7 @@
|
||||
<string name="privacy_chat_list_open_clean_web_link">Abrir enlace limpio</string>
|
||||
<string name="sanitize_links_toggle">Limpiar enlaces de seguimiento</string>
|
||||
<string name="privacy_chat_list_open_full_web_link">Abrir enlace completo</string>
|
||||
<string name="simplex_link_relay">Enlace de servidor SimpleX</string>
|
||||
<string name="simplex_link_relay">Dirección de servidor SimpleX</string>
|
||||
<string name="error_marking_member_support_chat_read">Error al marcar como leído</string>
|
||||
<string name="network_error_unknown_ca">La huella en la dirección del servidor no coincide con el certificado: %1$s.</string>
|
||||
<string name="proxy_destination_error_unknown_ca">La huella en la dirección del servidor de destino no coincide con el certificado: %1$s.</string>
|
||||
@@ -2554,4 +2554,148 @@
|
||||
<string name="placeholder_search_voice_messages">Buscar mensajes de voz</string>
|
||||
<string name="content_filter_videos">Vídeos</string>
|
||||
<string name="content_filter_voice_messages">Mensajes de voz</string>
|
||||
<string name="relay_bar_active">%1$d/%2$d servidores activos</string>
|
||||
<string name="relay_bar_active_with_failures">%1$d/%2$d servidores activos, %3$d han fallado</string>
|
||||
<string name="relay_bar_connected">%1$d/%2$d servidores conectados</string>
|
||||
<string name="relay_bar_connected_with_errors">%1$d/%2$d servidores conectados, %3$d errores</string>
|
||||
<string name="relay_status_accepted">aceptado</string>
|
||||
<string name="relay_status_active">activo</string>
|
||||
<string name="test_relay_to_retrieve_name"><![CDATA[<b>Test del servidor</b> para recibir su nombre.]]></string>
|
||||
<string name="channel_profile_is_stored_on_subscribers_devices">El perfil del canal se almacena en los dispositivos de los suscriptores y en los servidores de chat.</string>
|
||||
<string name="channel_will_start_with_relays">El canal comenzará a funcionar con %1$d de %2$d servidores. ¿Continuar?</string>
|
||||
<string name="chat_relay">Servidores de chat</string>
|
||||
<string name="button_channel_relays">Servidores de chat</string>
|
||||
<string name="chat_relays">Servidores de chat</string>
|
||||
<string name="channel_relays_title">Servidores de chat</string>
|
||||
<string name="chat_relays_forward_messages_in_channels">Los servidores de chat reenvían los mensajes en los canales que has creado.</string>
|
||||
<string name="chat_relays_forward_messages">Los servidores de chat reenvían los mensajes a los suscriptores del canal.</string>
|
||||
<string name="check_relay_address">Comprueba la dirección del servidor y prueba de nuevo.</string>
|
||||
<string name="check_relay_name">Comprueba el nombre del servidor y prueba de nuevo.</string>
|
||||
<string name="configure_relays">Configurar servidores</string>
|
||||
<string name="relay_test_step_connect">Conectar</string>
|
||||
<string name="relay_conn_status_connected">conectado</string>
|
||||
<string name="relay_conn_status_connecting">conectando</string>
|
||||
<string name="relay_test_step_decode_link">Decodificar enlace</string>
|
||||
<string name="relay_conn_status_deleted">eliminado</string>
|
||||
<string name="delete_relay">Eliminar servidor</string>
|
||||
<string name="enable_at_least_one_chat_relay">Activa al menos un servidor de chat para crear un canal.</string>
|
||||
<string name="enter_relay_name">Introduce el nombre del servidor…</string>
|
||||
<string name="error_adding_relay">Error al añadir el servidor</string>
|
||||
<string name="relay_connection_failed">La conexión con el servidor ha fallado</string>
|
||||
<string name="relay_test_failed_alert">¡El test del servidor ha fallado!</string>
|
||||
<string name="error_relay_test_failed_at_step">Prueba no superada en el paso %s.</string>
|
||||
<string name="channel_subscriber_count_singular">%1$d suscriptor</string>
|
||||
<string name="channel_subscriber_count_plural">%1$d suscriptores</string>
|
||||
<string name="block_subscriber_for_all_question">¿Bloquear al suscriptor para todos?</string>
|
||||
<string name="compose_view_broadcast">Emisión</string>
|
||||
<string name="cancel_creating_channel_confirm">Cancelar</string>
|
||||
<string name="cancel_creating_channel_question">¿Cancelar la creación del canal?</string>
|
||||
<string name="connect_plan_this_is_your_link_for_channel_vName"><![CDATA[¡Este es tu enlace para el canal <b>%1$s</b>!]]></string>
|
||||
<string name="channel_role_label">canal</string>
|
||||
<string name="chat_banner_channel">Canal</string>
|
||||
<string name="info_row_channel">Canal</string>
|
||||
<string name="channel_full_name_field">Título completo:</string>
|
||||
<string name="channel_link">Enlace del canal</string>
|
||||
<string name="button_channel_members">Miembros canal</string>
|
||||
<string name="channel_display_name_field">Título del canal</string>
|
||||
<string name="snd_channel_event_channel_profile_updated">perfil del canal actualizado</string>
|
||||
<string name="delete_channel_for_all_subscribers_cannot_undo_warning">El canal será eliminado para todos los suscriptores. ¡No puede deshacerse!</string>
|
||||
<string name="delete_channel_for_self_cannot_undo_warning">El canal será eliminado para tí. ¡No puede deshacerse!</string>
|
||||
<string name="info_row_connection_failed">CONEXIÓN FALLIDA</string>
|
||||
<string name="create_channel_title">Crear canal público</string>
|
||||
<string name="create_channel_button">Crear canal público</string>
|
||||
<string name="create_channel_beta_button">Crear canal público (BETA)</string>
|
||||
<string name="creating_channel">Creando canal</string>
|
||||
<string name="rcv_channel_events_count">%d eventos del canal</string>
|
||||
<string name="button_delete_channel">Eliminar canal</string>
|
||||
<string name="delete_channel_question">¿Eliminar canal?</string>
|
||||
<string name="rcv_channel_event_channel_deleted">canal eliminado</string>
|
||||
<string name="rcv_msg_error_dropped">caído (%1$d intentos)</string>
|
||||
<string name="button_edit_channel_profile">Editar perfil del canal</string>
|
||||
<string name="error_creating_channel">Error al crear el canal</string>
|
||||
<string name="error_opening_channel">Error al abrir el canal</string>
|
||||
<string name="rcv_msg_error_parse">error:%s</string>
|
||||
<string name="error_saving_channel_profile">Error al guardar el perfil del canal</string>
|
||||
<string name="relay_conn_status_failed">fallo</string>
|
||||
<string name="relay_status_failed">fallo</string>
|
||||
<string name="relay_test_step_get_link">Recibir el enlace</string>
|
||||
<string name="down_migration_warning_chat_relays">Si te has unido o has creado canales, dejarán de funcionar permanentemente.</string>
|
||||
<string name="invalid_relay_address">¡Dirección de servidor no válido!</string>
|
||||
<string name="invalid_relay_name">¡Nombre de servidor no válido!</string>
|
||||
<string name="relay_status_invited">Invitado</string>
|
||||
<string name="compose_view_join_channel">Unirme al canal</string>
|
||||
<string name="button_leave_channel">Salir del canal</string>
|
||||
<string name="leave_channel_question">¿Salir del canal?</string>
|
||||
<string name="action_button_channel_link">Enlace</string>
|
||||
<string name="alert_title_msg_error">Mensaje de error</string>
|
||||
<string name="relay_status_new">nuevo</string>
|
||||
<string name="new_chat_relay">Nuevo servidor de chat</string>
|
||||
<string name="no_chat_relays">Sin servidores de chat</string>
|
||||
<string name="no_chat_relays_enabled">Ningún servidor de chat activado.</string>
|
||||
<string name="not_all_relays_connected">Hay servidores no conectados</string>
|
||||
<string name="connect_plan_open_channel">Abrir canal</string>
|
||||
<string name="connect_plan_open_new_channel">Abrir canal nuevo</string>
|
||||
<string name="member_info_section_title_owner">PROPIETARIO</string>
|
||||
<string name="channel_members_section_owners">Propietarios</string>
|
||||
<string name="preset_relay_address">Direcciones predefinidas</string>
|
||||
<string name="preset_relay_name">Nombres predefinidos</string>
|
||||
<string name="proceed_verb">Continuar</string>
|
||||
<string name="group_member_role_relay">servidor</string>
|
||||
<string name="member_info_section_title_relay">SERVIDOR</string>
|
||||
<string name="info_row_relay_address">Dirección servidor</string>
|
||||
<string name="relay_address_alert_title">Dirección del servidor</string>
|
||||
<string name="info_row_relay_link">Enlace servidor</string>
|
||||
<string name="button_remove_subscriber">Eliminar suscriptor</string>
|
||||
<string name="button_remove_subscriber_question">¿Eliminar suscriptor?</string>
|
||||
<string name="save_and_notify_channel_subscribers">Guardar y notificar suscriptores</string>
|
||||
<string name="save_channel_profile">Guardar perfil del canal</string>
|
||||
<string name="error_relay_test_server_auth">El servidor requiere autorización para conectar con el servidor, comprueba la contraseña.</string>
|
||||
<string name="server_warning">Alerta del servidor</string>
|
||||
<string name="share_relay_address">Compartir dirección del servidor</string>
|
||||
<string name="member_info_section_title_subscriber">SUSCRIPTOR</string>
|
||||
<string name="channel_members_title_subscribers">Suscriptores</string>
|
||||
<string name="relay_section_footer_owner">Los suscriptores usan el enlace del servidor para conectarse a los canales.\nLa dirección del servidor se usó para establecer el servidor para el canal.</string>
|
||||
<string name="subscriber_will_be_removed_from_channel_cannot_be_undone">El suscriptor será eliminado del canal. ¡No puede deshacerse!</string>
|
||||
<string name="chat_banner_join_channel">Pulsa Unirme al canal</string>
|
||||
<string name="test_relay">Test servidor</string>
|
||||
<string name="alert_text_msg_reception_error">La app ha eliminado el mensaje tras %1$d intentos de recibirlo.</string>
|
||||
<string name="relay_address_alert_message">Esto es una dirección de servidor, no puede usarse para conectar.</string>
|
||||
<string name="unblock_subscriber_for_all_question">¿Desbloquear al suscriptor para todos?</string>
|
||||
<string name="rcv_channel_event_updated_channel_profile">perfil del canal actualizado</string>
|
||||
<string name="use_for_new_channels">Usar para canales nuevos</string>
|
||||
<string name="use_relay">Usar servidor</string>
|
||||
<string name="relay_test_step_verify">Verificar</string>
|
||||
<string name="via_relay_hostname">mediante %1$s</string>
|
||||
<string name="voice_recording_not_supported">La grabación de voz no es compatible con tu plataforma</string>
|
||||
<string name="wait_verb">Espera</string>
|
||||
<string name="relay_test_step_wait_response">Espera respuesta</string>
|
||||
<string name="channel_member_you">tu</string>
|
||||
<string name="you_are_subscriber">eres suscriptor</string>
|
||||
<string name="you_can_share_channel_link_anybody_will_be_able_to_connect">Puedes compartir un enlace o código QR. Cualquiera podrá unirse al canal.</string>
|
||||
<string name="relay_section_footer_subscriber">Te conectaste al canal mediante este enlace de servidor.</string>
|
||||
<string name="chat_banner_your_channel">Tu canal</string>
|
||||
<string name="connect_plan_this_is_your_link_for_channel">Tu canal</string>
|
||||
<string name="your_profile_shared_with_channel_relays">El perfil %1$s será compartido con los servidores de canal y los suscriptores.\nLos servidores tienen acceso a los mensajes del canal.</string>
|
||||
<string name="your_relay_address">Tu dirección de servidor</string>
|
||||
<string name="your_relay_name">Tu nombre del servidor</string>
|
||||
<string name="you_will_stop_receiving_messages_from_this_channel_chat_history_will_be_preserved">Dejarás de recibir mensajes de este canal. El historial del chat se conservará.</string>
|
||||
<string name="member_info_member_failed">fallo</string>
|
||||
|
||||
<!-- channel preferences (subscribers) -->
|
||||
<string name="group_reports_subscriber_reports">Informes de suscriptores</string>
|
||||
<string name="allow_direct_messages_channel">Se permiten mensajes directos entre suscriptores.</string>
|
||||
<string name="prohibit_direct_messages_channel">No se permiten mensajes directos entre suscriptores.</string>
|
||||
<string name="enable_sending_recent_history_channel">Se envían hasta 100 mensajes más recientes a los suscriptores nuevos.</string>
|
||||
<string name="disable_sending_recent_history_channel">No se envía el historial a los suscriptores nuevos.</string>
|
||||
<string name="group_members_can_send_disappearing_channel">Los suscriptores del canal pueden enviar mensajes temporales.</string>
|
||||
<string name="group_members_can_send_dms_channel">Los suscriptores del canal pueden enviar mensajes directos.</string>
|
||||
<string name="direct_messages_are_prohibited_channel">Los mensajes directos entre suscriptores del canal no están permitidos.</string>
|
||||
<string name="group_members_can_delete_channel">Los suscriptores del canal pueden eliminar mensajes de forma irreversible. (24 horas)</string>
|
||||
<string name="group_members_can_add_message_reactions_channel">Los suscriptores pueden añadir reacciones a los mensajes.</string>
|
||||
<string name="group_members_can_send_voice_channel">Los suscriptores del canal pueden enviar mensajes de voz.</string>
|
||||
<string name="group_members_can_send_files_channel">Los suscriptores del canal pueden enviar archivos y multimedia.</string>
|
||||
<string name="group_members_can_send_simplex_links_channel">Los suscriptores del canal pueden enviar enlaces SimpleX.</string>
|
||||
<string name="group_members_can_send_reports_channel">Los suscriptores pueden informar de mensajes a los moderadores.</string>
|
||||
<string name="recent_history_is_sent_to_new_members_channel">Hasta 100 últimos mensajes son enviados a los suscriptores nuevos.</string>
|
||||
<string name="recent_history_is_not_sent_to_new_members_channel">El historial no se envía a suscriptores nuevos.</string>
|
||||
</resources>
|
||||
|
||||
@@ -822,7 +822,7 @@
|
||||
<string name="rate_the_app">Arvioi sovellus</string>
|
||||
<string name="smp_servers_scan_qr">Skannaa palvelimen QR-koodi</string>
|
||||
<string name="profile_update_will_be_sent_to_contacts">Profiilipäivitys lähetetään kontakteillesi.</string>
|
||||
<string name="share_address_with_contacts_question">Jaa osoite kontakteille\?</string>
|
||||
<string name="share_address_with_contacts_question">Jaa osoite kontakteille?</string>
|
||||
<string name="stop_sharing">Lopeta jakaminen</string>
|
||||
<string name="stop_sharing_address">Lopeta osoitteen jakaminen\?</string>
|
||||
<string name="save_auto_accept_settings">Tallenna automaattisen hyväksynnän asetukset</string>
|
||||
|
||||
@@ -1105,7 +1105,7 @@
|
||||
<string name="you_can_accept_or_reject_connection">Vous pouvez accepter ou refuser les demandes de contacts.</string>
|
||||
<string name="theme_colors_section_title">COULEURS DE L\'INTERFACE</string>
|
||||
<string name="your_contacts_will_remain_connected">Vos contacts resteront connectés.</string>
|
||||
<string name="share_address_with_contacts_question">Partager l\'adresse avec vos contacts \?</string>
|
||||
<string name="share_address_with_contacts_question">Partager l\'adresse avec vos contacts ?</string>
|
||||
<string name="share_with_contacts">Partager avec vos contacts</string>
|
||||
<string name="enter_welcome_message_optional">Entrez un message de bienvenue… (facultatif)</string>
|
||||
<string name="stop_sharing">Cesser le partage</string>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<string name="accept_connection_request__question">Elfogadja a kapcsolódási kérést?</string>
|
||||
<string name="accept_contact_button">Elfogadás</string>
|
||||
<string name="accept">Elfogadás</string>
|
||||
<string name="add_address_to_your_profile">Cím hozzáadása a profilhoz, hogy a partnerei megoszthassák másokkal. A profilfrissítés el lesz küldve partnerei számára.</string>
|
||||
<string name="add_address_to_your_profile">Cím hozzáadása a profilhoz, hogy a SimpleX partnerei megoszthassák másokkal. A profilfrissítés el lesz küldve a SimpleX partnerei számára.</string>
|
||||
<string name="color_primary_variant">További kiemelőszín</string>
|
||||
<string name="callstatus_error">híváshiba</string>
|
||||
<string name="v5_4_block_group_members">Csoporttagok letiltása</string>
|
||||
@@ -91,7 +91,7 @@
|
||||
<string name="invite_prohibited">Nem lehet meghívni a partnert!</string>
|
||||
<string name="integrity_msg_bad_id">hibás az üzenet azonosítója</string>
|
||||
<string name="v4_2_auto_accept_contact_requests">Partneri kapcsolatkérések automatikus elfogadása</string>
|
||||
<string name="impossible_to_recover_passphrase"><![CDATA[<b>Megjegyzés:</b> NEM fogja tudni helyreállítani, vagy módosítani a jelmondatot abban az esetben, ha elveszíti.]]></string>
|
||||
<string name="impossible_to_recover_passphrase"><![CDATA[<b>Megjegyzés:</b> NEM fogja tudni helyreállítani vagy módosítani a jelmondatot abban az esetben, ha elveszíti.]]></string>
|
||||
<string name="callstatus_calling">hívás…</string>
|
||||
<string name="color_secondary_variant">További másodlagos szín</string>
|
||||
<string name="smp_servers_add_to_another_device">Hozzáadás egy másik eszközhöz</string>
|
||||
@@ -543,7 +543,7 @@
|
||||
<string name="smp_servers_enter_manually">Kiszolgáló megadása kézzel</string>
|
||||
<string name="file_will_be_received_when_contact_is_online">A fájl akkor érkezik meg, amikor a küldője elérhető lesz, várjon, vagy ellenőrizze később!</string>
|
||||
<string name="error_creating_link_for_group">Hiba történt a csoporthivatkozás létrehozásakor</string>
|
||||
<string name="from_gallery_button">A galériából</string>
|
||||
<string name="from_gallery_button">Galéria</string>
|
||||
<string name="receipts_groups_enable_keep_overrides">Engedélyezés (csoport egyéni beállításainak megtartása)</string>
|
||||
<string name="error_deleting_contact">Hiba történt a partner törlésekor</string>
|
||||
<string name="group_members_can_delete">A tagok véglegesen törölhetik az elküldött üzeneteiket. (24 óra)</string>
|
||||
@@ -674,7 +674,7 @@
|
||||
<string name="desktop_devices">Számítógépek</string>
|
||||
<string name="how_to_use_markdown">A markdown használata</string>
|
||||
<string name="create_chat_profile">Csevegési profil létrehozása</string>
|
||||
<string name="immune_to_spam_and_abuse">Védett a kéretlen tartalommal szemben</string>
|
||||
<string name="immune_to_spam_and_abuse">Védett a kéretlen tartalmakkal szemben</string>
|
||||
<string name="disconnect_remote_hosts">Hordozható eszközök leválasztása</string>
|
||||
<string name="v4_5_multiple_chat_profiles_descr">Különböző nevek, profilképek és átvitelelkülönítés.</string>
|
||||
<string name="if_you_choose_to_reject_the_sender_will_not_be_notified">Elutasítás esetén a kérés küldője NEM kap értesítést.</string>
|
||||
@@ -944,7 +944,7 @@
|
||||
<string name="scan_code_from_contacts_app">Biztonsági kód beolvasása a partnere alkalmazásából.</string>
|
||||
<string name="observer_cant_send_message_desc">Lépjen kapcsolatba a csoport adminisztrátorával.</string>
|
||||
<string name="icon_descr_video_on">Videó bekapcsolva</string>
|
||||
<string name="display_name__field">Profilnév:</string>
|
||||
<string name="display_name__field">Profil neve:</string>
|
||||
<string name="paste_button">Beillesztés</string>
|
||||
<string name="thank_you_for_installing_simplex">Köszönjük, hogy telepítette a SimpleX Chatet!</string>
|
||||
<string name="star_on_github">Csillagozás a GitHubon</string>
|
||||
@@ -979,7 +979,7 @@
|
||||
<string name="current_version_timestamp">%s (jelenlegi)</string>
|
||||
<string name="smp_servers_your_server">Saját SMP-kiszolgáló</string>
|
||||
<string name="random_port">Véletlen</string>
|
||||
<string name="share_with_contacts">Megosztás a partnerekkel</string>
|
||||
<string name="share_with_contacts">Megosztás a SimpleX partnerekkel</string>
|
||||
<string name="sender_you_pronoun">Ön</string>
|
||||
<string name="you_have_no_chats">Nincsenek csevegései</string>
|
||||
<string name="send_disappearing_message_send">Küldés</string>
|
||||
@@ -995,7 +995,7 @@
|
||||
<string name="share_text_sent_at">Elküldve: %s</string>
|
||||
<string name="connect_use_current_profile">Jelenlegi profil használata</string>
|
||||
<string name="this_device">Ez az eszköz</string>
|
||||
<string name="share_address_with_contacts_question">Megosztja a címet a partnereivel?</string>
|
||||
<string name="share_address_with_contacts_question">Megosztja a címet a SimpleX partnereivel?</string>
|
||||
<string name="profile_password">Profiljelszó</string>
|
||||
<string name="theme">Téma</string>
|
||||
<string name="remove_passphrase_from_settings">Eltávolítja a jelmondatot a beállításokból?</string>
|
||||
@@ -1038,7 +1038,7 @@
|
||||
<string name="smp_servers_save">Kiszolgálók mentése</string>
|
||||
<string name="group_welcome_title">Üdvözlőüzenet</string>
|
||||
<string name="network_option_seconds_label">mp</string>
|
||||
<string name="profile_update_will_be_sent_to_contacts">A profilfrissítés el lesz küldve a partnerei számára.</string>
|
||||
<string name="profile_update_will_be_sent_to_contacts">A profilfrissítés el lesz küldve a SimpleX partnerei számára.</string>
|
||||
<string name="v5_3_simpler_incognito_mode">Egyszerűsített inkognitómód</string>
|
||||
<string name="save_welcome_message_question">Menti az üdvözlőüzenetet?</string>
|
||||
<string name="restart_the_app_to_create_a_new_chat_profile">Új csevegési profil létrehozásához indítsa újra az alkalmazást.</string>
|
||||
@@ -1090,7 +1090,7 @@
|
||||
<string name="save_settings_question">Menti a beállításokat?</string>
|
||||
<string name="la_mode_passcode">Jelkód</string>
|
||||
<string name="unknown_error">Ismeretlen hiba</string>
|
||||
<string name="smp_servers_your_server_address">Saját SMP-kiszolgálójának címe</string>
|
||||
<string name="smp_servers_your_server_address">Saját SMP-kiszolgáló címe</string>
|
||||
<string name="auth_open_chat_console">Csevegési konzol megnyitása</string>
|
||||
<string name="remove_member_button">Eltávolítás</string>
|
||||
<string name="set_database_passphrase">Adatbázis-jelmondat beállítása</string>
|
||||
@@ -1510,7 +1510,7 @@
|
||||
<string name="or_scan_qr_code">Vagy QR-kód beolvasása</string>
|
||||
<string name="invalid_qr_code">Érvénytelen QR-kód</string>
|
||||
<string name="keep_invitation_link">Megtartás</string>
|
||||
<string name="search_or_paste_simplex_link">Keresés vagy SimpleX-hivatkozás beillesztése</string>
|
||||
<string name="search_or_paste_simplex_link">Keressen vagy adjon meg egy SimpleX-hivatkozást</string>
|
||||
<string name="show_internal_errors">Belső hibák megjelenítése</string>
|
||||
<string name="agent_critical_error_title">Kritikus hiba</string>
|
||||
<string name="agent_internal_error_title">Belső hiba</string>
|
||||
@@ -1812,7 +1812,7 @@
|
||||
<string name="file_error_relay">Fájlkiszolgáló-hiba: %1$s</string>
|
||||
<string name="info_row_file_status">Fájl állapota</string>
|
||||
<string name="share_text_file_status">Fájl állapota: %s</string>
|
||||
<string name="copy_error">Másolási hiba</string>
|
||||
<string name="copy_error">Hiba másolása</string>
|
||||
<string name="remote_ctrl_connection_stopped_identity_desc">Ezt a hivatkozást egy másik hordozható eszközön már használták, hozzon létre egy új hivatkozást a számítógépén.</string>
|
||||
<string name="remote_ctrl_connection_stopped_desc">Ellenőrizze, hogy a hordozható eszköz és a számítógép ugyanahhoz a helyi hálózathoz csatlakozik-e, valamint a számítógép tűzfalában engedélyezve van-e a kapcsolat.\nMinden további problémát osszon meg a fejlesztőkkel.</string>
|
||||
<string name="cannot_share_message_alert_title">Nem lehet üzenetet küldeni</string>
|
||||
@@ -1823,7 +1823,7 @@
|
||||
<string name="message_forwarded_title">Továbbított üzenet</string>
|
||||
<string name="member_inactive_desc">Az üzenet később is kézbesíthető, ha a tag aktívvá válik.</string>
|
||||
<string name="message_forwarded_desc">Még nincs közvetlen kapcsolat, az üzenetet az adminisztrátor továbbítja.</string>
|
||||
<string name="scan_paste_link">Hivatkozás beolvasása / beillesztése</string>
|
||||
<string name="scan_paste_link">Hivatkozás megadása vagy QR-kód beolvasása</string>
|
||||
<string name="smp_servers_configured">Konfigurált SMP-kiszolgálók</string>
|
||||
<string name="smp_servers_other">Egyéb SMP-kiszolgálók</string>
|
||||
<string name="xftp_servers_other">Egyéb XFTP-kiszolgálók</string>
|
||||
@@ -2097,10 +2097,10 @@
|
||||
<string name="share_address_publicly">Cím nyilvános megosztása</string>
|
||||
<string name="share_simplex_address_on_social_media">SimpleX-cím megosztása a közösségi médiában.</string>
|
||||
<string name="share_1_time_link_with_a_friend">Egyszer használható meghívó megosztása egy baráttal</string>
|
||||
<string name="one_time_link_can_be_used_with_one_contact_only"><![CDATA[Az egyszer használható meghívó egy hivatkozás és <i>csak egyetlen partnerrel használható</i> – személyesen vagy bármilyen üzenetváltó-alkalmazáson keresztül megosztható.]]></string>
|
||||
<string name="one_time_link_can_be_used_with_one_contact_only"><![CDATA[Az egyszer használható meghívó egy hivatkozás és <i>csak egyetlen partnerrel használható</i> – személyesen vagy bármilyen üzenetváltó alkalmazáson keresztül megosztható.]]></string>
|
||||
<string name="you_can_set_connection_name_to_remember">Beállíthatja a partner nevét, hogy emlékezzen arra, hogy kivel osztotta meg a hivatkozást.</string>
|
||||
<string name="connection_security">Kapcsolatbiztonság</string>
|
||||
<string name="simplex_address_and_1_time_links_are_safe_to_share">A SimpleX-cím és az egyszer használható meghívó biztonságosan megosztható bármilyen üzenetváltó-alkalmazáson keresztül.</string>
|
||||
<string name="simplex_address_and_1_time_links_are_safe_to_share">A SimpleX-cím és az egyszer használható meghívó biztonságosan megosztható bármilyen üzenetváltó alkalmazáson keresztül.</string>
|
||||
<string name="to_protect_against_your_link_replaced_compare_codes">A hivatkozás cseréje elleni védelem érdekében összehasonlíthatja a biztonsági kódokat a partnerével.</string>
|
||||
<string name="for_social_media">A közösségi médiához</string>
|
||||
<string name="or_to_share_privately">Vagy a privát megosztáshoz</string>
|
||||
@@ -2498,7 +2498,7 @@
|
||||
<string name="privacy_chat_list_open_clean_web_link">Tiszta hivatkozás megnyitása</string>
|
||||
<string name="privacy_chat_list_open_full_web_link">Teljes hivatkozás megnyitása</string>
|
||||
<string name="sanitize_links_toggle">Nyomonkövetési paraméterek eltávolítása a hivatkozásokból</string>
|
||||
<string name="simplex_link_relay">SimpleX-átjátszócím</string>
|
||||
<string name="simplex_link_relay">SimpleX-átjátszó címe</string>
|
||||
<string name="error_marking_member_support_chat_read">Hiba a csevegés olvasottként való megjelölésekor</string>
|
||||
<string name="proxy_destination_error_unknown_ca">A célkiszolgáló címében szereplő ujjlenyomat nem egyezik a tanúsítvánnyal: %1$s.</string>
|
||||
<string name="smp_proxy_error_unknown_ca">A továbbító kiszolgáló címében szereplő ujjlenyomat nem egyezik a tanúsítvánnyal: %1$s.</string>
|
||||
@@ -2537,9 +2537,9 @@
|
||||
<string name="relay_test_step_connect">Kapcsolódás</string>
|
||||
<string name="relay_conn_status_connected">kapcsolódott</string>
|
||||
<string name="relay_conn_status_connecting">kapcsolódás</string>
|
||||
<string name="create_channel_title">Csatorna létrehozása</string>
|
||||
<string name="create_channel_button">Csatorna létrehozása</string>
|
||||
<string name="create_channel_beta_button">Csatorna létrehozása (béta)</string>
|
||||
<string name="create_channel_title">Nyilvános csatorna létrehozása</string>
|
||||
<string name="create_channel_button">Nyilvános csatorna létrehozása</string>
|
||||
<string name="create_channel_beta_button">Nyilvános csatorna létrehozása (BÉTA)</string>
|
||||
<string name="creating_channel">Csatorna létrehozása</string>
|
||||
<string name="relay_conn_status_deleted">törölve</string>
|
||||
<string name="relay_conn_status_failed">sikertelen</string>
|
||||
@@ -2597,9 +2597,9 @@
|
||||
<string name="relay_test_step_decode_link">Hivatkozás dekódolása</string>
|
||||
<string name="error_relay_test_failed_at_step">A teszt a(z) %s. lépésnél sikertelen volt.</string>
|
||||
<string name="error_relay_test_server_auth">A kiszolgáló hitelesítést igényel az átjátszóhoz való kapcsolódáshoz, ellenőrizze a jelszavát.</string>
|
||||
<string name="invalid_relay_name">Érvénytelen átjátszónév!</string>
|
||||
<string name="invalid_relay_name">Érvénytelen az átjátszó neve!</string>
|
||||
<string name="check_relay_name">Ellenőrizze az átjátszó nevét, és próbálja újra.</string>
|
||||
<string name="invalid_relay_address">Érvénytelen átjátszócím!</string>
|
||||
<string name="invalid_relay_address">Érvénytelen az átjátszó címe!</string>
|
||||
<string name="check_relay_address">Ellenőrizze az átjátszó címét, és próbálja újra.</string>
|
||||
<string name="error_adding_relay">Hiba az átjátszó hozzáadásakor</string>
|
||||
<string name="chat_relays">Csevegési átjátszók</string>
|
||||
@@ -2613,26 +2613,123 @@
|
||||
<string name="relay_bar_connected">%1$d/%2$d átjátszó kapcsolódva</string>
|
||||
<string name="member_info_section_title_relay">ÁTJÁTSZÓ</string>
|
||||
<string name="info_row_relay_link">Átjátszóhivatkozás</string>
|
||||
<string name="info_row_relay_address">Átjátszócím</string>
|
||||
<string name="info_row_relay_address">Átjátszó címe</string>
|
||||
<string name="via_relay_hostname">a következőn keresztül: %1$s</string>
|
||||
<string name="share_relay_address">Átjátszó címének megosztása</string>
|
||||
<string name="relay_section_footer_owner">A feliratkozók az átjátszó hivatkozását használják a csatornához való kapcsolódáshoz.\nAz átjátszócím ennek az átjátszónak a beállítására szolgált a csatornához.</string>
|
||||
<string name="relay_section_footer_owner">A feliratkozók az átjátszó hivatkozását használják a csatornához való kapcsolódáshoz.\nAz átjátszó címe ennek az átjátszónak a beállítására szolgált a csatornához.</string>
|
||||
<string name="relay_section_footer_subscriber">Ön ezen az átjátszóhivatkozáson keresztül kapcsolódott a csatornához.</string>
|
||||
<string name="button_remove_subscriber">Feliratkozó eltávolítása</string>
|
||||
<string name="block_subscriber_for_all_question">Az összes feliratkozó számára letiltja a feliratkozót?</string>
|
||||
<string name="error_creating_channel">Hiba a csatorna létrehozásakor</string>
|
||||
<string name="cancel_creating_channel_question">Visszavonja a csatorna létrehozását?</string>
|
||||
<string name="enable_at_least_one_chat_relay">Engedélyezzen legalább egy csevegési átjátszót a csatorna létrehozásához.</string>
|
||||
<string name="your_profile_shared_with_channel_relays">A saját profilja (%1$s) meg lesz osztva a csatorna átjátszóival és feliratkozóival.</string>
|
||||
<string name="your_profile_shared_with_channel_relays">A(z) %1$s nevű profilja meg lesz osztva a csatorna átjátszóival és feliratkozóival.\nAz átjátszók hozzáférhetnek a csatornaüzenetekhez.</string>
|
||||
<string name="configure_relays">Átjátszók konfigurálása</string>
|
||||
<string name="relay_connection_failed">Nem sikerült kapcsolódni az átjátszóhoz</string>
|
||||
<string name="not_all_relays_connected">Nem minden átjátszó kapcsolódott</string>
|
||||
<string name="proceed_verb">Folytatás</string>
|
||||
<string name="channel_will_start_with_relays">A csatorna %2$d átjátszóból %1$d használatával kezd el működni. Folytatja?</string>
|
||||
<string name="relay_address_alert_title">Átjátszócím</string>
|
||||
<string name="relay_address_alert_title">Átjátszó címe</string>
|
||||
<string name="relay_address_alert_message">Ez egy csevegési átjátszó címe, nem használható kapcsolódásra.</string>
|
||||
<string name="connect_plan_this_is_your_link_for_channel_vName"><![CDATA[Ez a saját hivatkozása a(z) <b>%1$s</b> nevű csatornához!]]></string>
|
||||
<string name="error_opening_channel">Hiba a csatorna megnyitásakor</string>
|
||||
<string name="unblock_subscriber_for_all_question">Az összes feliratkozó számára feloldja a feliratkozó letiltását?</string>
|
||||
<string name="test_relay_to_retrieve_name"><![CDATA[<b>Átjátszó tesztelése</b> a nevének lekéréséhez.]]></string>
|
||||
<string name="channel_full_name_field">Csatorna teljes neve:</string>
|
||||
<string name="channel_profile_is_stored_on_subscribers_devices">A csatornaprofil a feliratkozók eszközén és a csevegési átjátszókon van tárolva.</string>
|
||||
<string name="snd_channel_event_channel_profile_updated">csatornaprofil frissítve</string>
|
||||
<string name="rcv_channel_events_count">%d csatornaesemény</string>
|
||||
<string name="rcv_channel_event_channel_deleted">törölt csatorna</string>
|
||||
<string name="rcv_msg_error_parse">hiba: %s</string>
|
||||
<string name="error_saving_channel_profile">Hiba a csatornaprofil mentésekor</string>
|
||||
<string name="alert_title_msg_error">Üzenethiba</string>
|
||||
<string name="save_and_notify_channel_subscribers">Mentés és a csatorna feliratkozóinak értesítése</string>
|
||||
<string name="save_channel_profile">Csatornaprofil mentése</string>
|
||||
<string name="rcv_channel_event_updated_channel_profile">frissített csatornaprofil</string>
|
||||
<string name="alert_text_msg_reception_error">Az alkalmazás %1$d sikertelen letöltési kísérlet után eltávolította ezt az üzenetet.</string>
|
||||
<string name="rcv_msg_error_dropped">eltávolítva (%1$d kísérlet)</string>
|
||||
<string name="channel_temporarily_unavailable">A csatorna ideiglenesen nem érhető el</string>
|
||||
<string name="channel_no_active_relays_try_later">A csatornának nincsenek aktív átjátszói. Próbáljon meg később csatlakozni.</string>
|
||||
<string name="cant_broadcast_message">nem lehet közvetíteni</string>
|
||||
<string name="relay_conn_status_removed_by_operator">az üzemeltető eltávolította</string>
|
||||
<string name="relay_status_inactive">inaktív</string>
|
||||
<string name="relay_bar_all_relays_removed">Az összes átjátszó el lett távolítva</string>
|
||||
<string name="relay_bar_all_relays_failed">Nem sikerült kapcsolódni egyetlen átjátszóhoz sem</string>
|
||||
<string name="relay_bar_no_active_relays">Nincsenek aktív átjátszók</string>
|
||||
<string name="relay_bar_relays_removed">%1$d átjátszó eltávolítva</string>
|
||||
<string name="relay_bar_relays_failed">%1$d átjátszóhoz nem sikerült kapcsolódni</string>
|
||||
<string name="relay_bar_relays_not_active">%1$d átjátszó inaktív</string>
|
||||
<string name="relay_bar_active_with_removed">%1$d/%2$d átjátszó aktív, %3$d eltávolítva</string>
|
||||
<string name="relay_bar_active_with_errors">%1$d/%2$d átjátszó aktív, %3$d hiba</string>
|
||||
<string name="relay_bar_connected_with_failures">%1$d/%2$d átjátszó kapcsolódott, %3$d átjátszóhoz nem sikerült kapcsolódni</string>
|
||||
<string name="relay_bar_connected_with_removed">%1$d/%2$d átjátszó kapcsolódott, %3$d eltávolítva</string>
|
||||
<string name="relay_bar_owner_no_delivery">Az átjátszók hozzáadása később lesz támogatott.</string>
|
||||
<string name="relay_bar_subscriber_waiting">Várakozás a csatorna tulajdonosára az átjátszók hozzáadásához.</string>
|
||||
<string name="chat_link_business_address">Üzleti cím</string>
|
||||
<string name="chat_link_channel">Csatornahivatkozás</string>
|
||||
<string name="chat_link_contact_address">Kapcsolattartási cím</string>
|
||||
<string name="error_sharing_channel">Hiba a csatorna megosztásakor</string>
|
||||
<string name="chat_link_from_owner">(a tulajdonostól)</string>
|
||||
<string name="chat_link_group">Csoporthivatkozás</string>
|
||||
<string name="owner_verification_passed">Hivatkozás aláírása ellenőrizve.</string>
|
||||
<string name="chat_link_one_time">Egyszer használható meghívó</string>
|
||||
<string name="share_channel">Csatorna megosztása…</string>
|
||||
<string name="share_via_chat">Megosztás egy csevegésen keresztül</string>
|
||||
<string name="owner_verification_failed">⚠️ Nem sikerült ellenőrizni az aláírást: %s.</string>
|
||||
<string name="chat_link_signed">(aláírva)</string>
|
||||
<string name="tap_to_open">Koppintson ide a megnyitáshoz</string>
|
||||
<string name="link_previews_alert_disable">Letiltás</string>
|
||||
<string name="link_previews_alert_enable">Engedélyezés</string>
|
||||
<string name="link_previews_alert_title">Engedélyezi a hivatkozáselőnézetet?</string>
|
||||
<string name="error_prefix">Hiba</string>
|
||||
<string name="network_error">Hálózati hiba</string>
|
||||
<string name="link_previews_alert_desc">A hivatkozáselőnézet küldése felfedheti az Ön IP-címét a weboldal számára. Ezt később módosíthatja az adatvédelmi beállításokban.</string>
|
||||
<string name="connection_reached_limit_of_undelivered_messages">A kapcsolat elérte a kézbesítetlen üzenetek korlátját</string>
|
||||
<string name="relay_results">Átjátszóeredmények:</string>
|
||||
<string name="channel_preferences">Csatornabeállítások</string>
|
||||
<string name="only_channel_owners_can_change_prefs">Csak a csatorna tulajdonosai módosíthatják a csatornabeállításokat.</string>
|
||||
<string name="your_public_address">Saját nyilvános cím</string>
|
||||
<string name="new_1_time_link">Új egyszer használható meghívó</string>
|
||||
<string name="chat_list_channels">Csatornák</string>
|
||||
<string name="create_your_public_address">Saját nyilvános cím létrehozása</string>
|
||||
<string name="connect_via_link_or_qr_code">Kapcsolódás hivatkozáson vagy QR-kódon keresztül</string>
|
||||
<string name="a_link_for_one_person">Egy hivatkozás, ami egyetlen partnerrel való kapcsolat létrehozására szolgál</string>
|
||||
<string name="connect_with_someone">Kapcsolatba lépés valakivel</string>
|
||||
<string name="for_anyone_to_reach_you">Bárki számára, aki el szeretné érni Önt</string>
|
||||
<string name="invite_someone_privately">Partner meghívása privátban</string>
|
||||
<string name="let_someone_connect_to_you">Hagyja, hogy valaki kapcsolatba lépjen Önnel</string>
|
||||
<string name="onboarding_or_show_qr_code">Vagy mutassa meg a QR-kódot személyesen vagy videóhíváson keresztül.</string>
|
||||
<string name="onboarding_or_use_qr_code">Vagy használja ezt a QR-kódot – nyomtassa ki vagy mutassa meg online.</string>
|
||||
<string name="onboarding_send_1_time_link">Küldje el a hivatkozást bármilyen üzenetváltó alkalmazáson keresztül – ez egy biztonságos módszer – és kérje meg a partnerét, hogy illessze be a SimpleX alkalmazásba.</string>
|
||||
<string name="talk_to_someone">Beszélgessen valakivel</string>
|
||||
<string name="onboarding_post_address">Használja ezt a címet a közösségi oldalakon használt profiljaiban, weboldalakon vagy az e-mail aláírásában.</string>
|
||||
<string name="v6_5_invite_friends">Könnyebben hívhatja meg a barátait 👋</string>
|
||||
<string name="v6_5_non_profit_governance">Nonprofit irányítás</string>
|
||||
<string name="v6_5_safe_web_links_descr">- hivatkozások előnézetének küldése.\n- hiperhivatkozásokon keresztüli adathalászat megakadályozása.\n- hivatkozások nyomonkövetési paramétereinek eltávolítása.</string>
|
||||
<string name="v6_5_ownership">Tulajdonjog: saját átjátszókat üzemeltethet.</string>
|
||||
<string name="v6_5_privacy">Adatvédelem: tulajdonosok és előfizetők számára.</string>
|
||||
<string name="v6_5_public_channels">Nyilvános csatornák – mondja el szabadon a véleményét 🚀</string>
|
||||
<string name="v6_5_reliability">Megbízhatóság: több átjátszó is használható csatornánként.</string>
|
||||
<string name="v6_5_safe_web_links">Biztonságos webhivatkozások</string>
|
||||
<string name="v6_5_security">Biztonság: a csatornák kulcsait a tulajdonosok őrzik.</string>
|
||||
<string name="v6_5_non_profit_governance_descr">A SimpleX hálózat hosszú távú működésének biztosítása érdekében.</string>
|
||||
<string name="v6_5_invite_friends_descr">Az új felhasználók számára egyszerűbbé tettük a kapcsolatok létrehozását.</string>
|
||||
|
||||
<!-- channel preferences (subscribers) -->
|
||||
<string name="group_reports_subscriber_reports">Feliratkozók jelentései</string>
|
||||
<string name="allow_direct_messages_channel">A közvetlen üzenetek küldése a feliratkozók között engedélyezve van.</string>
|
||||
<string name="prohibit_direct_messages_channel">A közvetlen üzenetek küldése a feliratkozók között le van tiltva.</string>
|
||||
<string name="enable_sending_recent_history_channel">Legfeljebb az utolsó 100 üzenet elküldése az új feliratkozók számára.</string>
|
||||
<string name="disable_sending_recent_history_channel">Az előzmények ne legyenek elküldve az új feliratkozók számára.</string>
|
||||
<string name="group_members_can_send_disappearing_channel">A feliratkozók küldhetnek eltűnő üzeneteket.</string>
|
||||
<string name="group_members_can_send_dms_channel">A feliratkozók küldhetnek egymásnak közvetlen üzeneteket.</string>
|
||||
<string name="direct_messages_are_prohibited_channel">A feliratkozók közötti közvetlen üzenetek le vannak tiltva.</string>
|
||||
<string name="group_members_can_delete_channel">A feliratkozók véglegesen törölhetik az elküldött üzeneteiket. (24 óra)</string>
|
||||
<string name="group_members_can_add_message_reactions_channel">A feliratkozók reakciókat adhatnak hozzá az üzenetekhez.</string>
|
||||
<string name="group_members_can_send_voice_channel">A feliratkozók küldhetnek hangüzeneteket.</string>
|
||||
<string name="group_members_can_send_files_channel">A feliratkozók küldhetnek fájlokat és médiatartalmakat.</string>
|
||||
<string name="group_members_can_send_simplex_links_channel">A feliratkozók küldhetnek SimpleX-hivatkozásokat.</string>
|
||||
<string name="group_members_can_send_reports_channel">A feliratkozók jelenthetik az üzeneteket a moderátorok felé.</string>
|
||||
<string name="recent_history_is_sent_to_new_members_channel">Legfeljebb az utolsó 100 üzenet lesz elküldve az új feliratkozók számára.</string>
|
||||
<string name="recent_history_is_not_sent_to_new_members_channel">Az előzmények nem lesznek elküldve az új feliratkozók számára.</string>
|
||||
</resources>
|
||||
|
||||
@@ -1105,11 +1105,11 @@
|
||||
<string name="simplex_address">Indirizzo SimpleX</string>
|
||||
<string name="theme_colors_section_title">COLORI DELL\'INTERFACCIA</string>
|
||||
<string name="your_contacts_will_remain_connected">I tuoi contatti resteranno connessi.</string>
|
||||
<string name="add_address_to_your_profile">Aggiungi l\'indirizzo al tuo profilo, in modo che i tuoi contatti possano condividerlo con altre persone. L\'aggiornamento del profilo verrà inviato ai tuoi contatti.</string>
|
||||
<string name="add_address_to_your_profile">Aggiungi l\'indirizzo al tuo profilo, in modo che i tuoi contatti di SimpleX possano condividerlo con altre persone. L\'aggiornamento del profilo verrà inviato ai tuoi contatti di SimpleX.</string>
|
||||
<string name="create_address_and_let_people_connect">Crea un indirizzo per consentire alle persone di connettersi con te.</string>
|
||||
<string name="create_simplex_address">Crea indirizzo SimpleX</string>
|
||||
<string name="share_with_contacts">Condividi con i contatti</string>
|
||||
<string name="share_address_with_contacts_question">Condividere l\'indirizzo con i contatti\?</string>
|
||||
<string name="share_with_contacts">Condividi con i contatti di SimpleX</string>
|
||||
<string name="share_address_with_contacts_question">Condividere l\'indirizzo con i contatti di SimpleX?</string>
|
||||
<string name="stop_sharing">Smetti di condividere</string>
|
||||
<string name="enter_welcome_message_optional">Inserisci il messaggio di benvenuto… (facoltativo)</string>
|
||||
<string name="email_invite_body">Ciao!
|
||||
@@ -1144,7 +1144,7 @@
|
||||
<string name="dark_theme">Tema scuro</string>
|
||||
<string name="if_you_cant_meet_in_person">Se non potete incontrarvi di persona, mostra il codice QR in una videochiamata o condividi il link.</string>
|
||||
<string name="email_invite_subject">Parliamo in SimpleX Chat</string>
|
||||
<string name="profile_update_will_be_sent_to_contacts">L\'aggiornamento del profilo verrà inviato ai tuoi contatti.</string>
|
||||
<string name="profile_update_will_be_sent_to_contacts">L\'aggiornamento del profilo verrà inviato ai tuoi contatti di SimpleX.</string>
|
||||
<string name="read_more_in_user_guide_with_link"><![CDATA[Maggiori informazioni nella <font color="#0088ff">Guida per l\'utente</font>.]]></string>
|
||||
<string name="color_surface">Menu e avvisi</string>
|
||||
<string name="stop_sharing_address">Smettere di condividere l\'indirizzo\?</string>
|
||||
@@ -1943,7 +1943,7 @@
|
||||
<string name="servers_info_reconnect_all_servers_button">Riconnetti tutti i server</string>
|
||||
<string name="network_error_broker_host_desc">L\'indirizzo del server non è compatibile con le impostazioni di rete: %1$s.</string>
|
||||
<string name="servers_info_files_tab">File</string>
|
||||
<string name="scan_paste_link">Scansiona / Incolla link</string>
|
||||
<string name="scan_paste_link">Incolla link / Scansiona</string>
|
||||
<string name="appearance_font_size">Dimensione carattere</string>
|
||||
<string name="servers_info_detailed_statistics_sent_messages_total">Totale inviato</string>
|
||||
<string name="message_forwarded_title">Messaggio inoltrato</string>
|
||||
@@ -2583,21 +2583,21 @@
|
||||
<string name="delete_channel_for_all_subscribers_cannot_undo_warning">Il canale verrà eliminato per tutti gli iscritti, non è reversibile!</string>
|
||||
<string name="delete_channel_for_self_cannot_undo_warning">Il canale verrà eliminato per te, non è reversibile!</string>
|
||||
<string name="channel_will_start_with_relays">Il canale sarà operativo con %1$d di %2$d relay. Procedere?</string>
|
||||
<string name="chat_relay">Relay della chat</string>
|
||||
<string name="button_channel_relays">Relay della chat</string>
|
||||
<string name="chat_relays">Relay della chat</string>
|
||||
<string name="channel_relays_title">Relay della chat</string>
|
||||
<string name="chat_relays_forward_messages_in_channels">I relay della chat inoltrano i messaggi nei canali che crei.</string>
|
||||
<string name="chat_relays_forward_messages">I relay della chat inoltrano i messaggi agli iscritti del canale.</string>
|
||||
<string name="chat_relay">Relay di chat</string>
|
||||
<string name="button_channel_relays">Relay di chat</string>
|
||||
<string name="chat_relays">Relay di chat</string>
|
||||
<string name="channel_relays_title">Relay di chat</string>
|
||||
<string name="chat_relays_forward_messages_in_channels">I relay di chat inoltrano i messaggi nei canali che crei.</string>
|
||||
<string name="chat_relays_forward_messages">I relay di chat inoltrano i messaggi agli iscritti del canale.</string>
|
||||
<string name="check_relay_address">Controlla l\'indirizzo del relay e riprova.</string>
|
||||
<string name="check_relay_name">Controlla il nome del relay e riprova.</string>
|
||||
<string name="configure_relays">Configura i relay</string>
|
||||
<string name="relay_test_step_connect">Connetti</string>
|
||||
<string name="relay_conn_status_connected">connesso</string>
|
||||
<string name="relay_conn_status_connecting">in connessione</string>
|
||||
<string name="create_channel_title">Crea canale</string>
|
||||
<string name="create_channel_button">Crea canale</string>
|
||||
<string name="create_channel_beta_button">Crea canale (BETA)</string>
|
||||
<string name="create_channel_title">Crea canale pubblico</string>
|
||||
<string name="create_channel_button">Crea canale pubblico</string>
|
||||
<string name="create_channel_beta_button">Crea canale pubblico (BETA)</string>
|
||||
<string name="creating_channel">Creazione canale</string>
|
||||
<string name="relay_test_step_decode_link">Decodifica il link</string>
|
||||
<string name="button_delete_channel">Elimina canale</string>
|
||||
@@ -2605,7 +2605,7 @@
|
||||
<string name="relay_conn_status_deleted">eliminato</string>
|
||||
<string name="delete_relay">Elimina relay</string>
|
||||
<string name="button_edit_channel_profile">Modifica profilo canale</string>
|
||||
<string name="enable_at_least_one_chat_relay">Attiva almeno un relay della chat per creare un canale.</string>
|
||||
<string name="enable_at_least_one_chat_relay">Attiva almeno un relay di chat per creare un canale.</string>
|
||||
<string name="enter_relay_name">Inserisci il nome del relay…</string>
|
||||
<string name="error_adding_relay">Errore di aggiunta del relay</string>
|
||||
<string name="error_creating_channel">Errore di creazione del canale</string>
|
||||
@@ -2661,7 +2661,7 @@
|
||||
<string name="relay_section_footer_subscriber">Ti sei connesso/a al canale attraverso questo link del relay.</string>
|
||||
<string name="chat_banner_your_channel">Il tuo canale</string>
|
||||
<string name="connect_plan_this_is_your_link_for_channel">Il tuo canale</string>
|
||||
<string name="your_profile_shared_with_channel_relays">Il tuo profilo %1$s verrà condiviso con i relay del canale e gli iscritti.</string>
|
||||
<string name="your_profile_shared_with_channel_relays">Il tuo profilo %1$s verrà condiviso con i relay del canale e gli iscritti.\nI relay hanno accesso ai messaggi del canale.</string>
|
||||
<string name="your_relay_address">L\'indirizzo del tuo relay</string>
|
||||
<string name="your_relay_name">Il nome del tuo relay</string>
|
||||
<string name="you_will_stop_receiving_messages_from_this_channel_chat_history_will_be_preserved">Smetterai di ricevere messaggi da questo canale. La cronologia della chat sarà preservata.</string>
|
||||
@@ -2671,4 +2671,101 @@
|
||||
<string name="chat_banner_join_channel">Tocca Iscriviti al canale</string>
|
||||
<string name="you_can_share_channel_link_anybody_will_be_able_to_connect">Puoi condividere un link o un codice QR, chiunque sarà in grado di iscriversi al canale.</string>
|
||||
<string name="compose_view_broadcast">Trasmetti</string>
|
||||
<string name="channel_full_name_field">Nome completo del canale:</string>
|
||||
<string name="channel_profile_is_stored_on_subscribers_devices">Il profilo del canale è memorizzato sui dispositivi degli iscritti e sui relay di chat.</string>
|
||||
<string name="snd_channel_event_channel_profile_updated">profilo del canale aggiornato</string>
|
||||
<string name="rcv_channel_events_count">%d eventi del canale</string>
|
||||
<string name="rcv_channel_event_channel_deleted">canale eliminato</string>
|
||||
<string name="rcv_msg_error_dropped">scartato (%1$d tentativi)</string>
|
||||
<string name="rcv_msg_error_parse">errore: %s</string>
|
||||
<string name="error_saving_channel_profile">Errore di salvataggio del profilo del canale</string>
|
||||
<string name="alert_title_msg_error">Errore del messaggio</string>
|
||||
<string name="save_and_notify_channel_subscribers">Salva e avvisa gli iscritti del canale</string>
|
||||
<string name="save_channel_profile">Salva il profilo del canale</string>
|
||||
<string name="alert_text_msg_reception_error">L\'app ha rimosso questo messaggio dopo %1$d tentativi di riceverlo.</string>
|
||||
<string name="rcv_channel_event_updated_channel_profile">profilo del canale aggiornato</string>
|
||||
<string name="relay_bar_active_with_errors">%1$d/%2$d relay attivi, %3$d errori</string>
|
||||
<string name="relay_bar_active_with_removed">%1$d/%2$d relay attivi, %3$d rimossi</string>
|
||||
<string name="relay_bar_connected_with_failures">%1$d/%2$d relay connessi, %3$d falliti</string>
|
||||
<string name="relay_bar_connected_with_removed">%1$d/%2$d relay connessi, %3$d rimossi</string>
|
||||
<string name="relay_bar_relays_failed">%1$d relay falliti</string>
|
||||
<string name="relay_bar_relays_not_active">%1$d relay non attivi</string>
|
||||
<string name="relay_bar_relays_removed">%1$d relay rimossi</string>
|
||||
<string name="relay_bar_owner_no_delivery">L\'aggiunta di relay verrà supportata prossimamente.</string>
|
||||
<string name="relay_bar_all_relays_failed">Tutti i relay falliti</string>
|
||||
<string name="relay_bar_all_relays_removed">Tutti i relay rimossi</string>
|
||||
<string name="cant_broadcast_message">impossibile trasmettere</string>
|
||||
<string name="channel_no_active_relays_try_later">Il canale non ha relay attivi. Prova a iscriverti più tardi.</string>
|
||||
<string name="channel_temporarily_unavailable">Canale non disponibile temporaneamente</string>
|
||||
<string name="relay_status_inactive">inattivo</string>
|
||||
<string name="relay_bar_no_active_relays">Nessun relay attivo</string>
|
||||
<string name="relay_conn_status_removed_by_operator">rimosso da un operatore</string>
|
||||
<string name="relay_bar_subscriber_waiting">In attesa che il proprietario del canale aggiunga dei relay.</string>
|
||||
<string name="chat_link_business_address">Indirizzo di lavoro</string>
|
||||
<string name="chat_link_channel">Link del canale</string>
|
||||
<string name="chat_link_contact_address">Indirizzo di contatto</string>
|
||||
<string name="error_sharing_channel">Errore nella condivisione del canale</string>
|
||||
<string name="chat_link_from_owner">(dal proprietario)</string>
|
||||
<string name="chat_link_group">Link del gruppo</string>
|
||||
<string name="owner_verification_passed">Firma del link verificata.</string>
|
||||
<string name="share_channel">Condividi canale…</string>
|
||||
<string name="share_via_chat">Condividi via chat</string>
|
||||
<string name="owner_verification_failed">⚠️ Verifica della firma fallita: %s.</string>
|
||||
<string name="chat_link_signed">(firmato)</string>
|
||||
<string name="tap_to_open">Tocca per aprire</string>
|
||||
<string name="chat_link_one_time">Link una tantum</string>
|
||||
<string name="link_previews_alert_disable">Disattiva</string>
|
||||
<string name="link_previews_alert_enable">Attiva</string>
|
||||
<string name="link_previews_alert_title">Attivare le anteprime dei link?</string>
|
||||
<string name="error_prefix">Errore</string>
|
||||
<string name="network_error">Errore di rete</string>
|
||||
<string name="relay_results">Risultati relay:</string>
|
||||
<string name="link_previews_alert_desc">L\'invio di un\'anteprima del link può rivelare il tuo indirizzo IP al sito. Puoi modificarlo nelle impostazioni di Privacy più tardi.</string>
|
||||
<string name="connection_reached_limit_of_undelivered_messages">La connessione ha raggiunto il limite di messaggi non consegnati</string>
|
||||
<string name="channel_preferences">Preferenze del canale</string>
|
||||
<string name="only_channel_owners_can_change_prefs">Solo i proprietari del canale possono modificarne le preferenze.</string>
|
||||
<string name="a_link_for_one_person">Un link per una persona da connettere</string>
|
||||
<string name="chat_list_channels">Canali</string>
|
||||
<string name="connect_via_link_or_qr_code">Connetti via link o codice QR</string>
|
||||
<string name="connect_with_someone">Connettiti con qualcuno</string>
|
||||
<string name="create_your_public_address">Crea il tuo indirizzo pubblico</string>
|
||||
<string name="for_anyone_to_reach_you">Per chiunque debba raggiungerti</string>
|
||||
<string name="invite_someone_privately">Invita qualcuno in modo privato</string>
|
||||
<string name="let_someone_connect_to_you">Lascia che qualcuno si connetta a te</string>
|
||||
<string name="new_1_time_link">Nuovo link una tantum</string>
|
||||
<string name="onboarding_or_show_qr_code">O mostra il QR di persona o via videochiamata.</string>
|
||||
<string name="onboarding_or_use_qr_code">O usa questo QR: stampalo o mostralo online.</string>
|
||||
<string name="onboarding_send_1_time_link">Invia il link tramite qualsiasi messenger, è sicuro. Chiedi di incollarlo in SimpleX.</string>
|
||||
<string name="talk_to_someone">Parla con qualcuno</string>
|
||||
<string name="onboarding_post_address">Usa questo indirizzo nel tuo profilo di social media, sito web o firma email.</string>
|
||||
<string name="your_public_address">Il tuo indirizzo pubblico</string>
|
||||
<string name="v6_5_invite_friends">È più facile invitare i tuoi amici 👋</string>
|
||||
<string name="v6_5_non_profit_governance">Organizzazione non a scopo di lucro</string>
|
||||
<string name="v6_5_non_profit_governance_descr">Per la sostenibilità della rete di SimpleX.</string>
|
||||
<string name="v6_5_safe_web_links_descr">- scegli se inviare anteprime dei link.\n- previeni il phishing dei collegamenti ipertestuali.\n- rimuovi il tracciamento dei link.</string>
|
||||
<string name="v6_5_ownership">Proprietà: puoi gestire i tuoi relay personali.</string>
|
||||
<string name="v6_5_privacy">Privacy: per i proprietari e gli iscritti.</string>
|
||||
<string name="v6_5_public_channels">Canali pubblici - parla liberamente 🚀</string>
|
||||
<string name="v6_5_reliability">Affidabilità: relay multipli per canale.</string>
|
||||
<string name="v6_5_safe_web_links">Link web sicuri</string>
|
||||
<string name="v6_5_security">Sicurezza: solo i proprietari hanno le chiavi del canale.</string>
|
||||
<string name="v6_5_invite_friends_descr">Abbiamo semplificato la connessione per i nuovi utenti.</string>
|
||||
|
||||
<!-- channel preferences (subscribers) -->
|
||||
<string name="group_reports_subscriber_reports">Segnalazioni degli iscritti</string>
|
||||
<string name="allow_direct_messages_channel">Permetti l\'invio di messaggi diretti agli iscritti.</string>
|
||||
<string name="prohibit_direct_messages_channel">Proibisci l\'invio di messaggi diretti agli iscritti.</string>
|
||||
<string name="enable_sending_recent_history_channel">Invia fino a 100 ultimi messaggi ai nuovi iscritti.</string>
|
||||
<string name="disable_sending_recent_history_channel">Non inviare la cronologia ai nuovi iscritti.</string>
|
||||
<string name="group_members_can_send_disappearing_channel">Gli iscritti al canale possono inviare messaggi a tempo.</string>
|
||||
<string name="group_members_can_send_dms_channel">Gli iscritti al canale possono inviare messaggi diretti.</string>
|
||||
<string name="direct_messages_are_prohibited_channel">I messaggi diretti tra gli iscritti sono vietati.</string>
|
||||
<string name="group_members_can_delete_channel">Gli iscritti al canale possono eliminare irreversibilmente i messaggi inviati. (24 ore)</string>
|
||||
<string name="group_members_can_add_message_reactions_channel">Gli iscritti al canale possono aggiungere reazioni ai messaggi.</string>
|
||||
<string name="group_members_can_send_voice_channel">Gli iscritti al canale possono inviare messaggi vocali.</string>
|
||||
<string name="group_members_can_send_files_channel">Gli iscritti al canale possono inviare file e contenuti multimediali.</string>
|
||||
<string name="group_members_can_send_simplex_links_channel">Gli iscritti al canale possono inviare link di Simplex.</string>
|
||||
<string name="group_members_can_send_reports_channel">Gli iscritti possono segnalare messaggi ai moderatori.</string>
|
||||
<string name="recent_history_is_sent_to_new_members_channel">Vengono inviati ai nuovi iscritti fino a 100 ultimi messaggi.</string>
|
||||
<string name="recent_history_is_not_sent_to_new_members_channel">La cronologia non viene inviata ai nuovi iscritti.</string>
|
||||
</resources>
|
||||
|
||||
@@ -945,7 +945,7 @@
|
||||
<string name="show_QR_code">הצג קוד QR</string>
|
||||
<string name="chat_lock">נעילת SimpleX</string>
|
||||
<string name="star_on_github">כוכב ב־GitHub</string>
|
||||
<string name="share_address_with_contacts_question">לשתף כתובת עם אנשי קשר\?</string>
|
||||
<string name="share_address_with_contacts_question">לשתף כתובת עם אנשי קשר?</string>
|
||||
<string name="stop_sharing">עצור שיתוף</string>
|
||||
<string name="set_passcode">הגדרת קוד גישה</string>
|
||||
<string name="la_notice_title_simplex_lock">נעילת SimpleX</string>
|
||||
|
||||
@@ -1097,7 +1097,7 @@
|
||||
<string name="v5_0_app_passcode_descr">システム認証の代わりに設定します。</string>
|
||||
<string name="make_profile_private">プロフィールを非表示にできます!</string>
|
||||
<string name="relay_server_protects_ip">リレー サーバーは IP アドレスを保護しますが、通話時間は監視されます。</string>
|
||||
<string name="share_address_with_contacts_question">アドレスを連絡先と共有しますか\?</string>
|
||||
<string name="share_address_with_contacts_question">アドレスを連絡先と共有しますか?</string>
|
||||
<string name="icon_descr_call_pending_sent">保留中の通話</string>
|
||||
<string name="invalid_migration_confirmation">データ移行の確認が正しくない</string>
|
||||
<string name="feature_offered_item">%s を提供しました</string>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user