Compare commits

...

97 Commits

Author SHA1 Message Date
adbenitez ebfd9ca122 Merge remote-tracking branch 'upstream/main' 2025-02-11 15:33:30 +01:00
adb 91f8e88db3 Merge pull request #3592 from deltachat/prep-1.54.0
Prep 1.54.0
2025-02-11 14:08:47 +01:00
adb a93b12909d Update CHANGELOG.md
Co-authored-by: bjoern <r10s@b44t.com>
2025-02-11 14:07:59 +01:00
adbenitez 8403abc5b9 update version number 2025-02-11 11:49:17 +01:00
adbenitez c49599f9c8 update changelog 2025-02-11 11:48:55 +01:00
adb ec590613d0 Merge pull request #3590 from deltachat/update-core-and-stuff-10/2/25
Update core and stuff 10/2/25
2025-02-11 11:31:31 +01:00
adb 0c914b3771 Merge pull request #3589 from deltachat/adb/fix-2957
direcly use awebp lib instead of broad glide plugin
2025-02-11 11:30:56 +01:00
adbenitez 24e363e130 update internal help and translations 2025-02-11 00:27:10 +01:00
adbenitez 85b9444f86 update deltachat-core-rust to 'chore(release): prepare for 1.155.4' of 'v1.155.4' 2025-02-10 23:43:01 +01:00
adbenitez 19f6bd3b5c use WebPDecoderResource instead of SimpleResource 2025-02-10 17:23:04 +01:00
adbenitez 1999bab9a0 direcly use awebp lib instead of broad glide plugin 2025-02-10 17:13:06 +01:00
B. Petersen 44eb9b32fd fix: hide 'clone chat' if there is no chat
before, 'clone chat' was hidden for contacts having a one-to-one-chats,
but not for contacts _without_ a one-to-one-chat
2025-02-08 20:25:25 +01:00
adbenitez c5cf11d36a update core 2025-02-07 19:08:49 +01:00
adbenitez fc36c6793e Merge remote-tracking branch 'upstream/main' 2025-02-07 19:08:10 +01:00
adb 257e200c9c Merge pull request #3073 from deltachat/r10s/improve-saved-messages
improve saved messages
2025-02-07 18:43:41 +01:00
adb 2c2bd2bf48 Merge branch 'main' into r10s/improve-saved-messages 2025-02-07 18:15:37 +01:00
adbenitez 95fbe25b0a rename variables to "bookmark" instead "stared" 2025-02-07 18:14:21 +01:00
link2xt 97552bc751 Add "Past Members" string 2025-02-07 15:51:26 +01:00
adb a81cdb79ad Merge pull request #3586 from deltachat/adb/improve-saved-messages
improve improved saved messages
2025-02-07 15:22:55 +01:00
adbenitez 1b8de09c41 replace star with bookmark icon 2025-02-07 13:58:31 +01:00
adbenitez db427a036e use drawable for the stared footer mark 2025-02-07 13:02:53 +01:00
adbenitez ab2151b974 fix indentation 2025-02-07 12:40:55 +01:00
adbenitez 0fa59fa22d remove save/unsave action 2025-02-07 12:39:55 +01:00
adbenitez ec7807e662 use save API for msgs forwarded to "saved messages" 2025-02-07 12:26:16 +01:00
adbenitez d47196d899 add "jump to original" button to stared messages 2025-02-06 23:43:43 +01:00
adbenitez b692abc235 don't allow to star video-call messages 2025-02-06 20:44:09 +01:00
Hocuri e3809cf1f8 fix: Opening files in external apps always works now (#3585)
The problem was that we returned `null` from `getType()`.

fix #3517
2025-02-06 13:46:19 +01:00
adbenitez 564c0fe27d don't show staring option in saved messages chat 2025-02-05 22:38:16 +01:00
adbenitez 705e283cf5 Merge remote-tracking branch 'upstream/main' 2025-02-05 21:56:21 +01:00
adbenitez 40b5e10999 remove unused code 2025-02-05 21:54:18 +01:00
B. Petersen d1f77d9de5 add 'save' option to chat's action bar 2025-02-05 16:34:43 +01:00
B. Petersen 0704f7f1e7 render saved messages accordingly 2025-02-05 16:34:43 +01:00
adb 0eb02b59a3 Merge pull request #3582 from deltachat/adb/remove-deprecated-half-camera-dep
remove deprecated half-camera dependency
2025-02-05 15:55:19 +01:00
bjoern 770861d6db update translations (#3584)
* remove deprecated strings, usage was checked with ./scripts/grep-string.sh

* add new 'Chat with...', needed currently only for iOS

* update translations
2025-02-05 12:36:14 +01:00
adb 17986e9d86 Merge branch 'main' into adb/remove-deprecated-half-camera-dep 2025-02-04 18:45:49 +01:00
adbenitez 5ce1f415ce remove deprecated half-camera dependency 2025-02-04 18:40:02 +01:00
adbenitez e1c92712a0 Merge remote-tracking branch 'upstream/main' 2025-02-04 16:18:00 +01:00
adb 6ec0f1bfce Merge pull request #3580 from deltachat/adb/issue-3566
align avatar to message bubble instead of parent bottom
2025-02-03 23:41:12 +01:00
adbenitez db410d8b44 align avatar to message bubble instead of parent bottom 2025-02-03 23:08:32 +01:00
B. Petersen cd07f3de96 update translations 2025-02-03 11:58:06 +01:00
B. Petersen 12072a0342 'exiting' may be misleading as others can create new groups with blocked contacts. try to clarify that aspect 2025-02-03 11:51:58 +01:00
B. Petersen c6f3761bb9 simplify unblock wording, it is somehow clear it is the opposite, other apps do not even clarify one way 2025-02-03 11:51:58 +01:00
B. Petersen 673f0e78b1 be more clear about the impact of blocked contacts 2025-02-03 11:51:58 +01:00
B. Petersen 65c8960ec8 update translations 2025-02-03 11:45:19 +01:00
adb 089ecc67d1 Merge pull request #3576 from deltachat/r10s/empty-apps-wording
tweak wording in empty "all apps" and "all files" views
2025-02-03 00:49:01 +01:00
B. Petersen 0f84af5b32 adapt empty-hint also for 'files' 2025-02-02 18:52:31 +01:00
B. Petersen 710ed6dd56 in 'All Apps' tap, do not say 'Media will be shared here', but 'Apps will be shown here' 2025-02-02 18:37:49 +01:00
adb 335aabd4ff Merge pull request #3570 from deltachat/adb/update-changelog-31/1/25
update changelog header for v1.52.1
2025-02-01 00:24:47 +01:00
adbenitez 98c97a8aed update changelog header for v1.52.1 2025-01-31 22:24:44 +01:00
adbenitez 23d18d2ac5 Merge remote-tracking branch 'upstream/main' 2025-01-31 21:28:47 +01:00
adbenitez a136b8b1e5 update version 2025-01-31 21:28:08 +01:00
adbenitez 7f8b71cf28 tweak attachment selector layout temporarily 2025-01-31 21:27:19 +01:00
adbenitez 9e5f2b18b9 update .github/FUNDING.yml 2025-01-31 19:50:37 +01:00
adbenitez bdfeddecd5 add "get it on google play" 2025-01-31 14:19:32 +01:00
B. Petersen 23cbe63cd4 update translations 2025-01-31 12:37:57 +01:00
B. Petersen f0f53455a5 do not deprecate string for smoother adaption of other OS 2025-01-31 12:26:09 +01:00
B. Petersen d8b49f57a9 always colorize 'Reset' as destructive-red 2025-01-31 12:26:09 +01:00
B. Petersen 7eaaf3bbb4 refine QR reset wording 2025-01-31 12:26:09 +01:00
adbenitez d4f83cd38b Merge remote-tracking branch 'upstream/main' 2025-01-30 02:03:47 +01:00
adbenitez 9eca5f518e disable location streaming for now 2025-01-30 02:02:42 +01:00
B. Petersen d17bed02e6 update translations 2025-01-29 14:47:03 +01:00
B. Petersen b4b194a59b add app-picker-strings needed for iOS 2025-01-29 14:47:03 +01:00
adb c6f62a2b81 Merge pull request #3565 from deltachat/prep-1.52.1
Prep 1.52.1
2025-01-28 17:24:22 +01:00
adbenitez e3a9f42a56 update changelog 2025-01-28 17:23:56 +01:00
adb 323bcef1fe Update CHANGELOG.md
Co-authored-by: Hocuri <hocuri@gmx.de>
2025-01-28 17:13:54 +01:00
adbenitez 095b92b498 bump version number 2025-01-28 16:50:46 +01:00
adbenitez 18c2ccd66c update changelog 2025-01-28 16:36:39 +01:00
adb 28fdeac01c Merge pull request #3564 from deltachat/update-core-and-stuff-28/1/25
Update translations and core to 1.155.1
2025-01-28 16:31:11 +01:00
adbenitez a7e4267b9b update translations 2025-01-28 16:28:24 +01:00
adbenitez d6837aa121 update deltachat-core-rust to 'chore(release): prepare for 1.155.1' of 'v1.155.1' 2025-01-28 16:25:23 +01:00
adbenitez 5a2913b36f delete unused file 2025-01-28 02:37:25 +01:00
adbenitez 20180fa89c Merge remote-tracking branch 'upstream/main' 2025-01-27 22:06:04 +01:00
Hocuri c6b89055d8 File deduplication, Android part (#3513) 2025-01-27 18:40:44 +01:00
adb bfda7ab2c3 Merge pull request #3562 from deltachat/adb/remove-android-crop-dep
remove unused com.soundcloud.android:android-crop dependency
2025-01-27 18:13:04 +01:00
adb 953ce32bea Merge branch 'main' into adb/remove-android-crop-dep 2025-01-27 17:40:34 +01:00
adbenitez 961fa5ffe6 remove unused com.soundcloud.android:android-crop dependency 2025-01-27 17:37:14 +01:00
adbenitez b1b2959bcb add .github/FUNDING.yml 2025-01-26 05:23:27 +01:00
link2xt 70ef715dc6 build(nix): update build tools from 33.0.1 to 34.0.0 2025-01-25 13:48:41 +00:00
adbenitez ffa58aae34 update bots index 2025-01-24 22:09:54 +01:00
adbenitez 24f5209c03 always create protected groups 2025-01-24 20:34:49 +01:00
adbenitez 7fd96732d6 Merge remote-tracking branch 'upstream/main' 2025-01-24 20:27:40 +01:00
adb 6e0759f719 Merge pull request #3560 from deltachat/prep-1.52.0
prepare 1.52.0
2025-01-23 23:37:01 +01:00
adbenitez 63434e1e2f prepare 1.52.0 2025-01-23 20:03:59 +01:00
adb 9c17bc412a Merge pull request #3559 from deltachat/update-core-and-stuff-23/1/25
Update core and stuff 23/1/25
2025-01-23 19:21:15 +01:00
adb d40144d50c Merge branch 'main' into update-core-and-stuff-23/1/25 2025-01-23 19:19:43 +01:00
adbenitez 131c0f5a37 update strings 2025-01-23 19:17:18 +01:00
adbenitez 7086314d8b update deltachat-core-rust to 'chore(release): prepare for 1.155.0' of 'v1.155.0' 2025-01-23 19:11:11 +01:00
adb d75b2c2bb7 Merge pull request #3558 from deltachat/adb/issue-3557
pass account ID in chat shortcuts and properly switch to account
2025-01-23 13:23:00 +01:00
adbenitez c46d174869 update strings 2025-01-23 05:37:55 +01:00
adbenitez 17e03f2903 update buid.gradle 2025-01-23 04:38:58 +01:00
adbenitez 2c12a34051 improve instant onboarding 2025-01-23 04:33:23 +01:00
adbenitez 2d3dde2101 pass account ID in chat shortcuts and properly switch to account 2025-01-23 03:45:57 +01:00
adbenitez d539f5ecf2 Merge remote-tracking branch 'upstream/main' 2025-01-23 02:45:56 +01:00
adbenitez b17d6be4fc update build.gradle 2025-01-23 00:52:48 +01:00
B. Petersen 3c737f2360 streamline help menu
- use clear "Delta Chat Homepage" for opening our homepage
  (instead of unclear "Learn more about Delta Chat",
  which is esp. weird, when used from inside the help)

- do not "promote" GitHub in our menu entry,
  instead of "Contribute on GitHub", just say "Contribute".
  destination URL is our contribute page then -
  that is also more useful for ppl doing eg. translations
2025-01-23 00:51:06 +01:00
adb 9ac5e714b8 Merge pull request #3555 from deltachat/adb/update-deps-22/1/25
update some dependencies
2025-01-22 13:40:08 +01:00
adbenitez 94defa3091 update some dependencies 2025-01-22 01:43:21 +01:00
112 changed files with 2282 additions and 1961 deletions
+3
View File
@@ -0,0 +1,3 @@
ko_fi: adbenitez
liberapay: adbenitez
custom: "https://arcanechat.me/#contribute"
+1 -1
View File
@@ -64,7 +64,7 @@ jobs:
uses: softprops/action-gh-release@v1
with:
token: "${{ secrets.GITHUB_TOKEN }}"
body: '[<img src="store/get-it-on-fdroid.png" alt="Get it on F-Droid" height="48">](https://f-droid.org/packages/chat.delta.lite) [<img src="store/get-it-on-IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="48">](https://apt.izzysoft.de/fdroid/index/apk/chat.delta.lite) [<img src="store/get-it-on-apklis.png" alt="Disponible en Apklis" height="48">](https://www.apklis.cu/application/chat.delta.lite) [<img src="store/get-it-on-github.png" alt="Get it on GitHub" height="48">](https://github.com/ArcaneChat/android/releases/latest/download/ArcaneChat-gplay.apk)'
body: '[<img src="store/get-it-on-gplay.png" alt="Get it on Google Play" height="48">](https://play.google.com/store/apps/details?id=com.github.arcanechat) [<img src="store/get-it-on-fdroid.png" alt="Get it on F-Droid" height="48">](https://f-droid.org/packages/chat.delta.lite) [<img src="store/get-it-on-IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="48">](https://apt.izzysoft.de/fdroid/index/apk/chat.delta.lite) [<img src="store/get-it-on-apklis.png" alt="Disponible en Apklis" height="48">](https://www.apklis.cu/application/chat.delta.lite) [<img src="store/get-it-on-github.png" alt="Get it on GitHub" height="48">](https://github.com/ArcaneChat/android/releases/latest/download/ArcaneChat-gplay.apk)'
prerelease: ${{ contains(github.event.ref, '-beta') }}
fail_on_unmatched_files: true
files: build/outputs/apk/foss/release/*.apk
+35
View File
@@ -1,5 +1,40 @@
# ArcaneChat Android Changelog
## v1.54.0
2025-02
* enhanced "Saved Messages" feature, now when forwarding a message to "Saved Messages" chat, it retains the sender information and a button to jump to the original message
* Saved messages are marked by a bookmark sign
* improve explanation when blocking a contact
* improve wording in empty "apps" and "files" tabs in chat media screen
* remove deprecated/legacy built-in "half-camera"
* UI improvement: keep avatars aligned to message bubble when message has reactions
* fix problems when opening attachments in external apps
* fix a bug with some big images appearing as blank/transparent
* some other small bug fixes
* update translations
* update to core 1.155.4
## v1.52.1
2025-01
* the app now requires less storage on your SD card by deduplicating newly received/sent files
* some small bug fixes
* update translations
* update to core 1.155.1
## v1.52.0
2025-01
* new group consistency algorithm
* fix: don't show animated .webp stickers as static stickers
* fix the chat shortcuts (created via long-press in launcher) to properly support multi-profile
* fix some small bugs in certain android versions and special situations
* avoid the app freezing in slow phones in some situations
* improve menu in the help screen
* update translations
* update to core 1.155.0
## v1.50.5
2025-01
+1
View File
@@ -2,6 +2,7 @@
A [Delta Chat](https://delta.chat/) client for Android. Learn more at: https://arcanechat.me
[<img src="store/get-it-on-gplay.png" alt="Get it on Google Play" height="48">](https://play.google.com/store/apps/details?id=com.github.arcanechat)
[<img src="store/get-it-on-fdroid.png" alt="Get it on F-Droid" height="48">](https://f-droid.org/packages/chat.delta.lite)
[<img src="store/get-it-on-IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="48">](https://apt.izzysoft.de/fdroid/index/apk/chat.delta.lite)
[<img src="store/get-it-on-apklis.png" alt="Disponible en Apklis" height="48">](https://www.apklis.cu/application/chat.delta.lite)
+14 -7
View File
@@ -33,8 +33,8 @@ android {
useLibrary 'org.apache.http.legacy'
defaultConfig {
versionCode 30000705
versionName "1.50.9"
versionCode 30000710
versionName "1.54.0"
applicationId "chat.delta.lite"
multiDexEnabled true
@@ -96,7 +96,7 @@ android {
keyPassword DC_RELEASE_KEY_PASSWORD
}
}
releaseGplay {
releaseApk {
// can be defined at `~/.gradle/gradle.properties` or at "Build/Generate signed APK"
if(project.hasProperty("DC_RELEASE_STORE_FILE")) {
storeFile file(DC_RELEASE_STORE_FILE)
@@ -105,6 +105,14 @@ android {
keyPassword DC_RELEASE_KEY_PASSWORD
}
}
releaseBundle {
if(project.hasProperty("DC_BUNDLE_STORE_FILE")) {
storeFile file(DC_BUNDLE_STORE_FILE)
storePassword DC_BUNDLE_STORE_PASSWORD
keyAlias DC_BUNDLE_KEY_ALIAS
keyPassword DC_BUNDLE_STORE_PASSWORD
}
}
}
productFlavors {
@@ -137,7 +145,7 @@ android {
// otherwise problems might be noticed delayed only
minifyEnabled true
productFlavors.foss.signingConfig signingConfigs.releaseFdroid
productFlavors.gplay.signingConfig signingConfigs.releaseGplay
productFlavors.gplay.signingConfig signingConfigs.releaseApk
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
@@ -229,14 +237,13 @@ dependencies {
implementation "me.leolin:ShortcutBadger:1.1.16" // display messagecount on the home screen icon.
implementation 'com.jpardogo.materialtabstrip:library:1.0.9' // used in the emoji selector for the tab selection.
implementation 'com.github.chrisbanes:PhotoView:2.1.3' // does the zooming on photos / media
implementation 'com.github.penfeizhou.android.animation:glide-plugin:3.0.2' // APNG & animated webp support.
implementation 'com.github.penfeizhou.android.animation:awebp:3.0.2' // animated webp support.
implementation 'com.caverock:androidsvg-aar:1.4' // SVG support.
implementation 'com.github.bumptech.glide:glide:4.12.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0'
annotationProcessor 'androidx.annotation:annotation:1.9.1'
implementation 'com.makeramen:roundedimageview:2.1.0' // crops the avatars to circles
implementation 'com.pnikosis:materialish-progress:1.5' // used only in the "Progress Wheel" in Share Activity.
implementation 'com.soundcloud.android:android-crop:1.0.1@aar' // used for profile and group avatar selection in Android SDK<19
implementation 'com.github.amulyakhare:TextDrawable:558677ea31' // number of unread messages,
// the one-letter circle for the contacts (when there is not avatar) and a white background.
implementation 'com.googlecode.mp4parser:isoparser:1.0.6' // MP4 recoding; upgrading eg. to 1.1.22 breaks recoding, however, i have not investigated further, just reset to 1.0.6
@@ -265,7 +272,7 @@ dependencies {
testImplementation 'org.powermock:powermock-module-junit4-rule:1.6.1'
testImplementation 'org.powermock:powermock-classloading-xstream:1.6.1'
androidTestImplementation 'androidx.test:runner:1.6.1'
androidTestImplementation 'androidx.test:runner:1.6.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'
androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.6.1'
androidTestImplementation 'androidx.test:rules:1.6.1'
+1 -1
View File
@@ -15,7 +15,7 @@
pkgs = import nixpkgs { inherit system overlays; };
android-sdk = android.sdk.${system} (sdkPkgs:
with sdkPkgs; [
build-tools-33-0-1
build-tools-34-0-0
cmdline-tools-latest
platform-tools
platforms-android-34
-205
View File
@@ -1,205 +0,0 @@
# Privacy Policy ArcaneChat Apps
**This is the privacy policy for the ArcaneChat (Delta Chat client) apps.**
## Summary
ArcaneChat is an e-mail app that follows a strict privacy-by-design approach. All communication data remains on the end devices or on the e-mail servers selected by the user.
<table>
<thead>
<tr>
<th>Requirement</th>
<th>Implementation</th>
</tr>
</thead>
<tbody>
<tr>
<td>Confidentiality</td>
<td>
<b>End-to-end encryption</b> by implementing <a href="https://autocrypt.org">Autocrypt</a> and <a href="https://securejoin.delta.chat/en/latest/new.html">Verified groups</a>. User-friendly end-to-end encryption means that the requirements of the GDPR are already implemented at the technical level, <b>Privacy by Design</b>.
</td>
</tr>
<tr>
<td>Data minimization</td>
<td><b>No upload</b> of contact lists from your phone.</td>
</tr>
<tr>
<td>Data avoidance</td>
<td><b>No ArcaneChat servers</b>, no processing of personal data. All data remains with your e-mail provider.
</td>
</tr>
<tr>
<td>Legal basis</td>
<td>
There is no need to obtain consent for address book matching, <a href="https://gdpr-info.eu/art-7-gdpr/">Art.7 GDPR</a>, as no address book data is transferred. Therefore, <b>no additional legal basis</b> is required.
</td>
</tr>
<tr>
<td>Data to third parties</td>
<td>We only receive the <b>token for the push notification</b> and forward it to the provider of your operating system. If you don't want to receive push notifications, we won't forward a token.</td>
</tr>
<tr>
<td>Data from third parties</td>
<td>
Easy implementation in companies: ArcaneChat does not process personal data on behalf of the controller and therefore <b>does not require any instruction or data processing agreement</b>. Easy connection with the own corporate e-mail server.
</td>
</tr>
<tr>
<td>
DPIA
</td>
<td>
No <b>data protection impact assessment</b> needs to be carried out for ArcaneChat <a href="https://gdpr-info.eu/art-35-gdpr/">Art.35 GDPR</a>, as no specific additional data is processed beyond the e-mail messenger process.
The risk to the rights and freedoms of natural persons is limited to the internal company data processing of the e-mail communication and that of the e-mail providers.
</td>
</tr>
<tr>
<td>
Documentation
</td>
<td>
Inclusion of the measures implemented by ArcaneChat in the <b>record of processing activities</b> may have a positive impact on possible evidence, <a href="https://gdpr-info.eu/art-30-gdpr/">Art.30 GDPR</a> as well as certification processes, <a href="https://gdpr-info.eu/art-25-gdpr/">Art.25 (4) GDPR</a>,<a href="https://gdpr-info.eu/art-42-gdpr/">Art.42 GDPR</a>.
The <b>documentation of processing activities</b> related to Messenger communication is omitted and shifts only to the record of processing activities of your e-mail provider, <a href="https://gdpr-info.eu/art-30-gdpr/">Art.30(2) GDPR</a>.
</td>
</tr>
</tbody>
</table>
## Detailed data protection information
### 1. Name and contact information of the data controller
Responsible for the processing of your personal data is
```
Asiel Diaz Benitez
Reichsgrafen Str. 20
79102 Freiburg
Germany
```
E-mail: [adbenitez@duck.com](mailto:adbenitez@duck.com)
### 2. Processing when using the ArcaneChat e-mail messenger
All data is stored locally on your device or with your e-mail provider. Neither we nor ArcaneChat developers have any possibility to access the end user's data, as all communication and data processing takes place on the end user's device without ArcaneChat servers being involved. Only for the optional Push Notification (see 2.2) the Push Notification Token is processed by Delta Chat servers without them having any knowledge about the messages themselves, not even in encrypted form.
#### 2.1 Sign up with your e-mail provider
ArcaneChat communication works through your e-mail account. In order to establish the connection, the app needs the access data. These are only stored locally on your end device:
- e-mail address
- your password
The legal basis for the processing is [Art.6 (1) lit.b GDPR](https://gdpr-info.eu/art-6-gdpr/), as you have a usage contract with us by using our services.
Security procedures are in place to protect the confidentiality of the data:
Only the bare data needed to fulfil the user request of login are stored,
encryption takes place as well as local sandboxing,
see 2.3 for further details.
#### 2.2 Heartbeat push notification
Push notifications can be sent to the user's phone at regular intervals to enable receipt of messages while the ArcaneChat app is not currently active. Current messages can then be retrieved on the end device. The token is only created if the user wants reliable receipt of messages even when the app is not active.
In order to use push notifications, a unique identifier or token (Push Notification Token) is created after the app is downloaded and installed. This token allows Delta Chat servers to send notifications to the user's device. The token is generated and provided by the provider. The token is then stored on our systems and sent to the device at regular intervals to cause the app to retrieve new messages from the e-mail provider. Our systems have no knowledge of whether a message arrives or who may have sent a message.
The aforementioned data will only be processed with your consent, in accordance with [Art.6 (1) lit.a GDPR](https://gdpr-info.eu/art-6-gdpr/).
#### 2.3 Data in the app
The ArcaneChat app works in a data-saving way. All relevant data is stored exclusively on the respective end devices:
```
- chat histories (text messages, voice messages, media, ...).
- contacts
- settings
```
ArcaneChat servers have no access to this data, not even in encrypted form, as data processing takes place only on the end devices.
#### 2.4 App permissions
Within the app, you can enter, manage, and edit various information, tasks, and activities. The app also requires the following permissions:
<table>
<thead>
<tr>
<th>Permission</th>
<th>Reason</th>
</tr>
</thead>
<tbody>
<tr>
<td>Internet access</td>
<td>This is needed to send the messages to the communication partner. </td>
</tr>
<tr>
<td>Camera access</td>
<td>
This is needed for you to take photos and send them via the app. In addition, the camera access allows you to scan QR codes.
</td>
</tr>
<tr>
<td>Microphone access (optional)</td>
<td>
This permission allows you to send voice messages.
</td>
</tr>
<tr>
<td>Location access (optional)</td>
<td>
This is needed if you want to share your location with a communication partner.
</td>
</tr>
<tr>
<td>Background location access (optional)</td>
<td>
This will be needed if you want to share your location over a certain period of time.
</td>
</tr>
<tr>
<td>Contact access (optional)</td>
<td>
This allows you to load and save contacts from your phone book into the app. The contact data is stored locally in the app and not forwarded and stored on ArcaneChat server.
</td>
</tr>
<tr>
<td>
Storage (optional)
</td>
<td>You can save images and files from the app to your device.</td>
</tr>
</tbody>
</table>
The processing and use of the above permissions are performed to provide the service. The internet access is necessary for the use, therefore the legal basis of the processing is [Art.6 (1) lit.a GDPR](https://gdpr-info.eu/art-6-gdpr/), as you have a usage contract with us by using our services.
The optional permissions only take place based on your consent according to [Art.6 (1) lit.a GDPR](https://gdpr-info.eu/art-6-gdpr/) and can also be reduced to individual services, e.g. only internet usage to send messages without pictures or location data. ArcaneChat does not receive any access to this data.
### 3. Platform dependent processing
Certain information is already processed automatically as soon as you use the app. We have listed below which personal data is processed exactly:
When you download the app, certain required information is transmitted to the app store you use ( e.g. Google Play or Apple App Store), in particular the username, the email address, the customer number of your account, the time of the download, payment information as well as the individual device identification number may be processed. The processing of this data is carried out exclusively by the respective app store and is beyond our control.
For the rest, we refer to the data protection policies of the respective app store providers or responsible parties of the operating systems. We do not collect and/or process any other data.
Your personal data will not be transferred to third parties for purposes other than those listed below.
# 4. Rights of the data subject
As a data subject of a processing of personal data, you have the right to
1. request information about your personal data processed by us in accordance with [Art.15 GDPR](https://gdpr-info.eu/art-15-gdpr/). In particular, you can request information about the processing purposes, the category of personal data, the categories of recipients to whom your data have been or will be disclosed, the planned storage period, the existence of a right to rectification, erasure, restriction of processing or objection, the existence of a right of complaint, the origin of your data if it has not been collected by us, as well as the existence of automated decision-making including profiling and, if applicable, meaningful information about its details;
2. in accordance with [Art.16 GDPR](https://gdpr-info.eu/art-16-gdpr/) of the GDPR, immediately request the correction of inaccurate or incomplete personal data stored by us;
3. pursuant to [Art.17 GDPR](https://gdpr-info.eu/art-17-gdpr/) of the GDPR, to request the erasure of your personal data stored by us, unless the processing is necessary for the exercise of the right to freedom of expression and information, for compliance with a legal obligation, for reasons of public interest, or for the establishment, exercise or defence of legal claims;
4. pursuant to [Art.18 GDPR](https://gdpr-info.eu/art-18-gdpr/), to request the restriction of the processing of your personal data, insofar as the accuracy of the data is disputed by you, the processing is unlawful, but you object to its erasure and we no longer require the data, but you need it for the assertion, exercise or defence of legal claims or you have objected to the processing pursuant to [Art.21 GDPR](https://gdpr-info.eu/art-21-gdpr/);
5. pursuant to [Art.20 GDPR](https://gdpr-info.eu/art-20-gdpr/), to receive your personal data that you have provided to us in a structured, common and machine-readable format or to request that it be transferred to another controller;
6. in accordance with [Art.7 (3) GDPR](https://gdpr-info.eu/art-7-gdpr/), to revoke your consent given to us at any time. This has the consequence that we may no longer continue the data processing based on this consent in the future; and
7. complain to a supervisory authority in accordance with [Art.77 GDPR](https://gdpr-info.eu/art-77-gdpr/) of the GDPR. As a rule, you can contact the supervisory authority of your usual place of residence or workplace.
# 5. Up-to-dateness and modification of this data protection declaration
This data protection declaration is valid as of January 2025. Due to the further development of our website and offers or due to changed legal or official requirements, it may become necessary to revise this data protection declaration from time to time.
+28
View File
@@ -691,6 +691,13 @@ JNIEXPORT void Java_com_b44t_messenger_DcContext_forwardMsgs(JNIEnv *env, jobjec
free(msg_ids_ptr);
}
JNIEXPORT void Java_com_b44t_messenger_DcContext_saveMsgs(JNIEnv *env, jobject obj, jintArray msg_ids)
{
int msg_ids_cnt = 0;
uint32_t* msg_ids_ptr = jintArray2uint32Pointer(env, msg_ids, &msg_ids_cnt);
dc_save_msgs(get_dc_context(env, obj), msg_ids_ptr, msg_ids_cnt);
free(msg_ids_ptr);
}
JNIEXPORT jboolean Java_com_b44t_messenger_DcContext_resendMsgs(JNIEnv *env, jobject obj, jintArray msg_ids)
{
@@ -1667,6 +1674,18 @@ JNIEXPORT jstring Java_com_b44t_messenger_DcMsg_getPOILocation(JNIEnv *env, jobj
}
JNIEXPORT void Java_com_b44t_messenger_DcMsg_setFileAndDeduplicate(JNIEnv *env, jobject obj, jstring file, jstring name, jstring filemime)
{
CHAR_REF(file);
CHAR_REF(name);
CHAR_REF(filemime);
dc_msg_set_file_and_deduplicate(get_dc_msg(env, obj), filePtr, namePtr, filemimePtr);
CHAR_UNREF(filemime);
CHAR_UNREF(name);
CHAR_UNREF(file);
}
JNIEXPORT void Java_com_b44t_messenger_DcMsg_setDimension(JNIEnv *env, jobject obj, int width, int height)
{
dc_msg_set_dimension(get_dc_msg(env, obj), width, height);
@@ -1711,6 +1730,15 @@ JNIEXPORT jlong Java_com_b44t_messenger_DcMsg_getParentCPtr(JNIEnv *env, jobject
return (jlong)dc_msg_get_parent(get_dc_msg(env, obj));
}
JNIEXPORT jint Java_com_b44t_messenger_DcMsg_getOriginalMsgId(JNIEnv *env, jobject obj)
{
return (jint)dc_msg_get_original_msg_id(get_dc_msg(env, obj));
}
JNIEXPORT jint Java_com_b44t_messenger_DcMsg_getSavedMsgId(JNIEnv *env, jobject obj)
{
return (jint)dc_msg_get_saved_msg_id(get_dc_msg(env, obj));
}
JNIEXPORT jstring Java_com_b44t_messenger_DcMsg_getError(JNIEnv *env, jobject obj)
{
@@ -93,7 +93,7 @@ public class SharingTest {
}
}
Uri uri = Uri.parse("content://" + BuildConfig.APPLICATION_ID + ".attachments/" + Uri.encode(pngImage));
DcHelper.sharedFiles.put(pngImage, 1);
DcHelper.sharedFiles.put(pngImage, "image/png");
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("image/png");
-3
View File
@@ -20,7 +20,6 @@
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="29" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
@@ -329,8 +328,6 @@
android:theme="@style/TextSecure.ScribbleTheme"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name="com.soundcloud.android.crop.CropImageActivity" />
<activity android:name=".InstantOnboardingActivity"
android:theme="@style/TextSecure.LightTheme"
android:windowSoftInputMode="stateHidden|adjustResize"
+27 -11
View File
@@ -599,16 +599,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -621,14 +621,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -889,7 +890,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1197,10 +1198,25 @@ Pro ostatní programy by mělo jít nalézt řešení na Interentu.</p>
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+25 -12
View File
@@ -557,16 +557,15 @@ an irgendein System, das an der Zustellung von Push-Benachrichtigungen beteiligt
<ul>
<li>
<p>Eine Delta-Chat-Anwendung erhält lokal ein „Geräte-Token“ (eine zufällige Zahl) und speichert es
<p>Eine Delta-Chat-Anwendung erhält lokal ein „Geräte-Token“, verschlüsselt und speichert es
auf dem <a href="https://delta.chat/chatmail">Chatmail</a>-Server.</p>
</li>
<li>
<p>Wenn ein <a href="https://delta.chat/chatmail">Chatmail</a>-Server eine E-Mail für einen Delta-Chat-Benutzer erhält
erhält, leitet er den „Geräte-Token an den zentralen Delta-Chat-Benachrichtigungs-Proxy weiter.</p>
erhält, leitet er das verschlüsselte Geräte-Token an den zentralen Delta-Chat-Benachrichtigungs-Proxy weiter.</p>
</li>
<li>
<p>Der zentrale Delta-Chat-Benachrichtigungs-Proxy leitet
das „Geräte-Token“ an den jeweiligen Push-Dienst (Apple, Google, etc.) weiter,
<p>Der zentrale Delta-Chat-Benachrichtigungs-Proxy entschlüsselt das Geräte-Token und leitet es an den jeweiligen Push-Dienst (Apple, Google, etc.) weiter,
ohne jemals die IP- oder E-Mail-Adresse des Delta-Chat-Benutzers zu kennen.</p>
</li>
<li>
@@ -578,14 +577,15 @@ und auch nie den Inhalt einer Nachricht (auch nicht in verschlüsselter Form).</
</li>
</ul>
<p>Stand Mai 2024 kennen die Chatmail-Server die Geräte-Token,
aber wir planen, diese Informationen an den Benachrichtigungs-Proxy zu verschlüsseln
zu verschlüsseln, so dass der Chatmail-Server niemals das „Geräte-Token“ erfährt.</p>
<p>Der zentrale Delta-Chat-Benachrichtigungs-Proxy <a href="https://github.com/deltachat/notifiers">ist klein und vollständig in Rust implementiert</a>
und vergisst die Geräte-Token, sobald Apple/Google/etc. sie verarbeitet hat,
normalerweise innerhalb weniger Millisekunden.</p>
<p>Beachten Sie, dass das Geräte-Token zwischen Anwendungen und dem Benachrichtigungs-Proxy verschlüsselt,
aber nicht signiert ist.
Der Benachrichtigungs-Proxy sieht also niemals E-Mail-Adressen, IP-Adressen oder
irgendwelche kryptografischen Identitätsinformationen, die mit dem Gerät oder dem Geräte-Token eines Nutzers verbunden sind.</p>
<p>Aufgrund dieses umfassenden Datenschutzkonzepts würde sogar die Beschlagnahmung eines Chatmail-Servers,
oder die vollständige Beschlagnahmung des zentralen Delta-Chat-Benachrichtigungsproxys
keine privaten Informationen preisgeben, die den zentralen Push-Diensten nicht bereits vorliegen.</p>
@@ -836,7 +836,7 @@ und <em>GnuPG (GPG)</em>, einem Kommandozeilenprogramm, das OpenPGP implementier
In vielen öffentlichen Kritiken zu OpenPGP wird GnuPG diskutiert, das Delta Chat nie verwendet hat.
Delta Chat verwendet stattdessen die OpenPGP-Rust-Implementierung <a href="https://github.com/rpgp/rpgp">rPGP</a>,
die als <a href="https://crates.io/crates/pgp">ein unabhängiges “pgp”-Paket</a>,
verfügbar und <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">2019 sicherheitsgeprüft</a> wurde.</p>
verfügbar ist und <a href="#security-audits">2019 und 2024 sicherheitsgeprüft</a> wurde.</p>
<p>Unser Ziel ist, zusammen mit anderen OpenPGP-Implementierungen,
die Sicherheitseigenschaften durch das im Sommer 2023 angenommene
@@ -1080,7 +1080,7 @@ aber irgendwie nicht Ihre Nachrichten - gleichzeitig aber eine vollständige Auf
vergangenen verschlüsselten Nachrichten hat.</p>
<p>In jedem Fall verwendet die Ende-zu-Ende-Verschlüsselung von Delta Chat eine <a href="#openpgp-secure">sichere Untermenge von OpenPGP</a>
das [unabhängig sicherheitsgeprüft] wurde (../assets/blog/2019-first-security-review.pdf).</p>
das <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">unabhängig sicherheitsgeprüft</a> wurde.</p>
<h3 id="importkey">
@@ -1138,9 +1138,22 @@ Für andere Programme können Sie online eine Lösung finden.</p>
</h3>
<p>Das Delta-Chat-Projekt wurde in den letzten Jahren fünf unabhängigen Sicherheitsprüfungen und -analysen unterzogen:</p>
<p>Ja, mehrfach.
Das Delta-Chat-Projekt wird kontinuierlich unabhängigen Sicherheitsaudits und -analysen unterzogen:</p>
<ul>
<li>
<p>Im Dezember 2024 fand eine <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">von NLNET in Auftrag gegebene Bewertung von rPGP</a> durch <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> statt.
rPGP wird für die <a href="https://openpgp.org">OpenPGP</a>-Ende-zu-Ende-Verschlüsselung verwendet.
Im Zusammenhang mit den Ergebnissen dieser Prüfung wurden zwei Hinweise veröffentlicht:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>Die in diesen Hinweisen beschriebenen Probleme wurden behoben und sind Bestandteil der Delta Chat Veröffentlichungen in allen Appstores seit Dezember 2024.</p>
</li>
<li>
<p>Im März 2024 erhielten wir von der Forschungsgruppe “Applied Cryptography” der ETH Zürich eine umfassende Sicherheitsanalyse und haben alle aufgeworfenen Fragen adressiert.
Weitere Informationen finden Sie in unserem Blogbeitrag über <a href="https://delta.chat/en/2024-03-25-crypto-analysis-securejoin">Hardening Guaranteed End-to-End encryption</a> und in der hinterher publizierten <a href="https://eprint.iacr.org/2024/918.pdf">Kryptografischen Analyse von Delta Chat</a></p>
@@ -1157,7 +1170,7 @@ Es wurden keine kritischen oder hochgradig gefährlichen Probleme gefunden. Der
</li>
<li>
<p>Im Jahr 2019 analysierte <a href="https://includesecurity.com">Include Security</a> die von Delta Chat verwendeten <a href="https://github.com/rpgp/rpgp">PGP-</a> und <a href="https://github.com/RustCrypto/RSA">RSA-</a> Bibliotheken.
Es wurden keine kritischen Probleme gefunden, aber zwei Probleme mit hohem Schweregrad, die wir anschließend behoben haben. Außerdem wurden ein mittelschweres und einige weniger schwerwiegende Probleme gefunden, aber es gab keine Möglichkeit, diese Schwachstellen in der Delta-Chat-Implementierung auszunutzen. Einige dieser Schwachstellen haben wir dennoch nach Abschluss des Audits behoben. Sie können den [vollständigen Bericht hier] lesen (../assets/blog/2019-first-security-review.pdf).</p>
Es wurden keine kritischen Probleme gefunden, aber zwei Probleme mit hohem Schweregrad, die wir anschließend behoben haben. Außerdem wurden ein mittelschweres und einige weniger schwerwiegende Probleme gefunden, aber es gab keine Möglichkeit, diese Schwachstellen in der Delta-Chat-Implementierung auszunutzen. Einige dieser Schwachstellen haben wir dennoch nach Abschluss des Audits behoben. Sie können den <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">vollständigen Bericht hier</a> lesen.</p>
</li>
</ul>
+27 -11
View File
@@ -603,16 +603,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -625,14 +625,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -893,7 +894,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1203,10 +1204,25 @@ For other programs, you should be able to find a solution online.</p>
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+27 -11
View File
@@ -597,16 +597,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -619,14 +619,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -871,7 +872,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1166,10 +1167,25 @@ For other programs, you should be able to find a solution online.</p>
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+58 -42
View File
@@ -8,7 +8,7 @@
<li><a href="#delta-chat-prend-il-en-charge-les-images-vidéos-et-autres-pièces-jointes-">Delta Chat prend-il en charge les images, vidéos et autres pièces jointes ?</a></li>
<li><a href="#multiple-accounts">What are profiles? How can I switch between them?</a></li>
<li><a href="#qui-peut-voir-ma-photo-de-profil-">Qui peut voir ma photo de profil ?</a></li>
<li><a href="#signature">Can I set a Bio/Signature/Status/Motto with Delta Chat?</a></li>
<li><a href="#signature">Puis-je afficher une Bio/Signature ou un Status/Motto avec Delta Chat?</a></li>
<li><a href="#que-signifient-épingler-sourdine-et-archiver-">Que signifient “épingler”, “sourdine” et “archiver” ?</a></li>
<li><a href="#que-signifie-le-point-vert-">Que signifie le point vert ?</a></li>
<li><a href="#ephemeralmsgs">How do disappearing messages work?</a></li>
@@ -115,14 +115,14 @@
</h2>
<p>Delta Chat is a reliable, decentralized and secure messaging app,
available for mobile and desktop platforms.</p>
<p>Delta Chat est une application de messagerie fiable, décentralisée et sécurisée,
Disponible pour les plateformes smartphone et ordinateurs de bureau.</p>
<p>Delta Chat feels like Whatsapp or Telegram but you can also use and regard it as an e-mail app.
You can signup anonymously to a variety of <a href="https://delta.chat/chatmail">interoperable chatmail servers</a>
which are minimal e-mail servers optimized for fast and secure operations.
Or you may use classic e-mail servers and an existing e-mail account
in which case Delta Chat acts as an e-mail app.</p>
<p>Delta Chat ressemble à Whatsapp ou Telegram mais vous pouvez aussi lutiliser et la considérer comme une application e-mail.
Vous pouvez vous inscrire anonymement à une variété <a href="https://delta.chat/chatmail">de serveurs chatmail interéopérables</a>
Qui sont des serveurs e-mails minimalistes optimisés pour des opérations rapides et sécurisées.
Ou vous pouvez utiliser des serveurs e-mail classiques et utiliser votre compte e-mail
dans ce cas Delta Chat agit comme une application de courriel.</p>
<p><img style="float:right; width:50%; max-width:360%; margin:1em;" src="../delta-what-optim.png" /></p>
@@ -134,15 +134,15 @@ in which case Delta Chat acts as an e-mail app.</p>
</h3>
<p>To securely setup contact with others <a href="#howtoe2ee">scan an invite QR code
or share an invite link</a>.
This is required when using a (default) chatmail-based chat profile
because chatmail servers reject un-encrypted outgoing messages.</p>
<p>Pour établir un contact en toute sécurité avec dautres personnes <a href="#howtoe2ee">scanner un code QR dinvitation
ou partager un lien dinvitation</a>.
Cette opération est nécessaire lors de lutilisation dun profil de discussion basé sur le chatmail (par défaut).
car les serveurs de chatmail rejettent les messages sortants non chiffrés.</p>
<p>If you create a chat profile with a classic e-mail address
you may manually create a contact if you know their e-mail address
and then write a message to them
even if the recipient is not using Delta Chat.</p>
<p>Si vous créez un profil discussion avec une adresse courriel classique
vous pouvez créer manuellement un contact si vous connaissez son adresse courriel
et lui écrire un message
même si le destinataire nutilise pas Delta Chat.</p>
<h3 id="quels-sont-les-avantages-de-delta-chat-par-rapport-aux-autres-messageries-">
@@ -154,23 +154,23 @@ even if the recipient is not using Delta Chat.</p>
<ul>
<li>
<p>Anonymous chat profiles with fast, secure and interoperable <a href="https://delta.chat/chatmail">chatmail servers</a>
which offer instant Push Notifications for iOS and Android devices.</p>
<p>Profils anonymes de discussion avec des <a href="https://delta.chat/chatmail">serveurs de chatmail</a> rapides, sécurisés et interopérables
qui offrent des notifications push instantanées pour les appareils iOS et Android.</p>
</li>
<li>
<p>Pervasive <a href="#multiple-accounts">multi-profile</a> and multi-device support on all platforms.</p>
<p>Fonctionnalités de <a href="#multiple-accounts">multi-profil</a> et de multi-appareil supportées sur toutes les plateformes.</p>
</li>
<li>
<p>Interactive <a href="https://webxdc.org/apps">web apps in chats</a> for gaming and collaboration</p>
<p><a href="https://webxdc.org/apps">web apps dans les chats</a> interactifs pour le gaming et la collaboration</p>
</li>
<li>
<p><a href="#security-audits">Audited end-to-end encryption</a>
safe against network and server attacks.</p>
<p><a href="#security-audits">Chiffrement de bout en bout audité</a>
contre les attaques ciblées sur le réseau et les serveurs.</p>
</li>
<li>
<p>Free and Open Source software, both app and server side.
Built on <a href="https://github.com/deltachat/deltachat-core-rust/blob/master/standards.md">E-mail and Web Internet Standards</a>,
<a href="https://xkcd.com/927/">to avoid “yet another standard syndrome (xkcd 927)</a></p>
<p>Logiciel libre et open source, à la fois appli et côté serveur.
Construit sur des <a href="https://github.com/deltachat/deltachat-core-rust/blob/master/standards.md">Standards dInternet et de-mail</a>,
<a href="https://xkcd.com/927/">pour éviter le syndrome du “standard de plus” (xkcd 927)</a></p>
</li>
</ul>
@@ -256,16 +256,16 @@ that tend to cause unsolicited messages (“spam”) sooner or later.</p>
<h3 id="signature">
Can I set a Bio/Signature/Status/Motto with Delta Chat? <a href="#signature" class="anchor"></a>
Puis-je afficher une Bio/Signature ou un Status/Motto avec Delta Chat? <a href="#signature" class="anchor"></a>
</h3>
<p>Yes,
you can do so under <strong>Settings → Profile → Bio</strong>.
Your contacts who use Delta Chat will see it
when they view your contact details.
Moreover, it will appear as a classic e-mail signature.</p>
<p>Oui,
vous pouvez le faire sous <strong>Paramètres → Profil → Bio</strong>.
Vos contacts qui utilisent Delta Chat le verront
lorsquils consulteront vos coordonnées.
De plus, elle apparaîtra sous la forme dune signature classique sur vos courriels.</p>
<h3 id="que-signifient-épingler-sourdine-et-archiver-">
@@ -578,16 +578,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -600,14 +600,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -868,7 +869,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1170,10 +1171,25 @@ Pour les autres programmes, vous devriez pouvoir trouver la solution en ligne.</
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+27 -11
View File
@@ -603,16 +603,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -625,14 +625,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -893,7 +894,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1203,10 +1204,25 @@ For other programs, you should be able to find a solution online.</p>
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+30 -16
View File
@@ -597,17 +597,15 @@ a qualsiasi sistema coinvolto nella consegna di Notifiche Push.</p>
<ul>
<li>
<p>Unapp Delta Chat ottiene un “gettone del dispositivo” localmente e lo memorizza
sul server <a href="https://delta.chat/chatmail">chatmail</a>.</p>
<p>Unapp Delta Chat ottiene un “token del dispositivo” localmente, lo crittografa e lo memorizza sul server <a href="https://delta.chat/chatmail">chatmail</a>.</p>
</li>
<li>
<p>Quando un server <a href="https://delta.chat/chatmail">chatmail</a> riceve une-mail per un utente Delta Chat
inoltra il “gettone del dispositivo” al proxy di notifica centrale di Delta Chat.</p>
<p>Quando un server <a href="https://delta.chat/chatmail">chatmail</a> riceve une-mail per un utente Delta Chat, inoltra il token del dispositivo crittografato al proxy di notifica centrale Delta Chat.</p>
</li>
<li>
<p>Il proxy di notifica centrale di Delta Chat inoltra
il “gettone del dispositivo” al rispettivo servizio Push (Apple, Google, ecc.),
senza mai conoscere lIP o lindirizzo e-mail degli utenti Delta Chat.</p>
<p>Il proxy di notifica centrale di Delta Chat decifra il token del dispositivo
e lo inoltra al rispettivo servizio Push (Apple, Google, ecc.),
senza mai conoscere lIP o lindirizzo e-mail degli utenti di Delta Chat.</p>
</li>
<li>
<p>Il Servizio Push centrale (Apple, Google, ecc.)
@@ -619,14 +617,15 @@ e inoltre non vedono mai il contenuto del messaggio (anche non in forma crittogr
</li>
</ul>
<p>A partire da Maggio 2024, i server chatmail conoscono i “gettoni del dispositivo”
ma prevediamo di crittografare queste informazioni nel proxy di notifica
in modo tale che il server chatmail non apprenda mai il gettone del dispositivo.</p>
<p>Il proxy di notifica centrale di Delta Chat <a href="https://github.com/deltachat/notifiers">è piccolo e completamente implementato in Rust</a>
e si dimentica dei gettoni del dispositivo non appena Apple/Google/ecc li elabora,
di solito nel giro di pochi millisecondi.</p>
<p>Si noti che il token del dispositivo è crittografato tra le app e il proxy di notifica
ma non è firmato.
Il proxy di notifica quindi non vede mai indirizzi e-mail, indirizzi IP o
alcune informazioni di identità crittografica associate al dispositivo di un utente (token).</p>
<p>Come risultato di questo disegno complessivo sulla riservatezza, anche il sequestro di un server chatmail,
o il sequestro totale del proxy di notifica centrale di Delta Chat
non rivelerebbe informazioni private che i servizi Push non abbiano già.</p>
@@ -947,7 +946,7 @@ compresi eventuali allegati,
se non sono crittografati end-to-end.</p>
<p>Delta Chat per impostazione predefinita utilizza
[Crittografia TLS] rigorosa (https://en.wikipedia.org/wiki/Transport_Layer_Security)
<a href="https://en.wikipedia.org/wiki/Transport_Layer_Security">Crittografia TLS</a> rigorosa
che protegge le connessioni tra il tuo dispositivo e il tuo provider e-mail.
Tutta la gestione TLS di Delta Chat è stata sottoposta a <a href="#security-audits">controlli di sicurezza</a> in modo indipendente.
Inoltre, la connessione tra il tuo provider e-mail e quello del destinatario
@@ -1191,10 +1190,25 @@ Per altri programmi, dovresti essere in grado di trovare una soluzione online.</
</h3>
<p>Il progetto Delta Chat è stato sottoposto a quattro controlli di sicurezza indipendenti e
unanalisi di sicurezza indipendente, dal più recente al più vecchio:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>Marzo 2024, abbiamo ricevuto unanalisi approfondita della sicurezza dalla Crittografia Applicata
gruppo di ricerca dellETH di Zurigo e ha affrontato tutte le questioni sollevate.
@@ -1911,7 +1925,7 @@ tramite <a href="https://autocrypt.org">Autocrypt</a>.</p>
prima sovvenzione 2018/2019 (~$200K) durante la quale abbiamo notevolmente migliorato lapp Android
e ha rilasciato una prima versione beta dellapp desktop, e che inoltre
ancorato i nostri sviluppi delle funzionalità nella ricerca sulla UX nei contesti dei diritti umani,
vedete il nostro [Rapporto Needfinding e UX] conclusivo (https://delta.chat/en/2019-07-19-uxreport).
vedete il nostro <a href="https://delta.chat/en/2019-07-19-uxreport">Rapporto Needfinding e UX</a> conclusivo.
La seconda sovvenzione 2019/2020 (~$300K) ci ha aiutato a farlo
rilasciare nelle versioni Delta/iOS, per convertire la nostra libreria principale in Rust, e
per fornire nuove funzionalità per tutte le piattaforme.</p>
@@ -1935,7 +1949,7 @@ e fornendo “inserimento immediato” in tutte le app rilasciate da aprile 2024
</li>
<li>
<p>Nel 2023 e nel 2024 siamo stati accettati nel programma Next Generation Internet (NGI)
per il nostro lavoro in [webxdc PUSH].(https://nlnet.nl/project/WebXDC-Push/),
per il nostro lavoro in <a href="https://nlnet.nl/project/WebXDC-Push/">webxdc PUSH</a>,
insieme ai partner di collaborazione che lavorano su
<a href="https://nlnet.nl/project/Webxdc-Evolve/">webxdc evolve</a>,
<a href="https://nlnet.nl/project/WebXDC-XMPP/">webxdc XMPP</a>,
+27 -11
View File
@@ -597,16 +597,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -619,14 +619,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -887,7 +888,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1196,10 +1197,25 @@ Voor andere programmas kun je zélf een oplossing zoeken op internet.</p>
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+23 -7
View File
@@ -494,23 +494,23 @@ nadal będziesz mógł pisać, ale nie będziesz już powiadamiany o żadnych no
<ul>
<li>
<p>Aplikacja Delta Chat uzyskuje lokalnie „token urządzenia” i przechowuje go na serwerze <a href="https://delta.chat/chatmail">chatmail</a>.</p>
<p>Aplikacja Delta Chat uzyskuje lokalnie „token urządzenia”, szyfruje i przechowuje go na serwerze <a href="https://delta.chat/chatmail">chatmail</a>.</p>
</li>
<li>
<p>Kiedy serwer <a href="https://delta.chat/chatmail">chatmail</a> odbierze wiadomość e-mail od użytkownika Delta Chat, przekazuje token urządzenia do centralnego serwera proxy powiadomień Delta Chat.</p>
<p>Kiedy serwer <a href="https://delta.chat/chatmail">chatmail</a> odbierze wiadomość e-mail od użytkownika Delta Chat, przekazuje zaszyfrowany token urządzenia do centralnego serwera proxy powiadomień Delta Chat.</p>
</li>
<li>
<p>Centralny serwer proxy powiadomień Delta Chat przekazuje token urządzenia do odpowiedniej usługi Push (Apple, Google itp.), nie znając nawet adresu IP ani adresu e-mail użytkowników Delta Chat.</p>
<p>Centralny serwer proxy powiadomień Delta Chat deszyfruje token urządzenia i przekazuje go do odpowiedniej usługi Push (Apple, Google itp.), nie znając nawet adresu IP ani adresu e-mail użytkowników Delta Chat.</p>
</li>
<li>
<p>Centralna usługa Push (Apple, Google itp.) budzi aplikację Delta Chat na twoim urządzeniu, aby sprawdzić w tle nowe wiadomości. Nie zna chatmaila ani adresu e-mail urządzenia, na którym się budzi. Centralne usługi push Apple/Google nigdy nie widzą adresu e-mail (nadawcy ani odbiorcy), a także nigdy nie widzą treści wiadomości (również w formie zaszyfrowanej).</p>
</li>
</ul>
<p>Od maja 2024 r. serwery chatmail znają „tokeny urządzenia”, ale planujemy szyfrować te informacje na serwerze proxy powiadomień, tak aby serwer chatmail nigdy nie poznał tokena urządzenia.</p>
<p>Centralny serwer proxy powiadomień Delta Chat <a href="https://github.com/deltachat/notifiers">jest mały i w pełni zaimplementowany w Rust</a> i zapomina o tokenach urządzeń zaraz po ich przetworzeniu przez Apple/Google/itp, zwykle w ciągu kilku milisekund.</p>
<p>Pamiętaj, że token urządzenia jest szyfrowany między aplikacjami a serwerem proxy powiadomień, ale nie jest podpisany. Serwer proxy powiadomień nigdy nie widzi adresów e-mail, adresów IP ani żadnych kryptograficznych informacji identyfikujących powiązanych z urządzeniem użytkownika (tokenem).</p>
<p>W wyniku tego ogólnego projektu ochrony prywatności nawet przejęcie serwera chatmail lub pełne przejęcie centralnego serwera proxy powiadomień Delta Chat nie spowodowałoby ujawnienia prywatnych informacji, których usługi Push jeszcze nie posiadają.</p>
<h3 id="dlaczego-delta-chat-integruje-się-ze-scentralizowanymi-zastrzeżonymi-usługami-push-applegoogle">
@@ -868,9 +868,25 @@ W przypadku innych programów można znaleźć rozwiązanie online.</p>
</h3>
<p>Projekt Delta Chat przeszedł cztery niezależne audyty bezpieczeństwa i jedną niezależną analizę bezpieczeństwa, od najnowszego do najstarszego:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>W marcu 2024 r. otrzymaliśmy dogłębną analizę bezpieczeństwa od grupy badawczej ds. kryptografii stosowanej w ETH Zuerich i zajęliśmy się wszystkimi poruszonymi kwestiami. Więcej szczegółowych informacji można znaleźć na naszym blogu na temat <a href="https://delta.chat/en/2024-03-25-crypto-analysis-securejoin">szyfrowania typu End-to-End z gwarancją Hardening</a> oraz opublikowanym później artykule badawczym <a href="https://eprint.iacr.org/2024/918.pdf">Cryptographic Analysis of Delta Chat</a>.</p>
</li>
@@ -945,7 +961,7 @@ W przypadku innych programów można znaleźć rozwiązanie online.</p>
<p>W systemie <strong>iOS</strong> upewnij się, że jest przydzielony dostęp do opcji „Ustawienia » Aplikacje » Delta Chat » <strong>Sieć lokalna</strong></p>
</li>
<li>
<p>W systemie <strong>macOS</strong> włącz „Ustawienia systemowe » Prywatność i bezpieczeństwo » <strong>Sieć lokalna</strong> » Delta Chat”</p>
<p>W systemie <strong>macOS</strong> włącz „Preferencje systemowe » Ochrona i prywatność » <strong>Sieć lokalna</strong> » Delta Chat”</p>
</li>
<li>
<p>Twój system może mieć „zaporę ogniową”, o której wiadomo, że powoduje problemy (szczególnie w systemie Windows).
+27 -11
View File
@@ -597,16 +597,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -619,14 +619,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -887,7 +888,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1197,10 +1198,25 @@ Para outros programas, você deveria achar uma solução online.</p>
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+28 -12
View File
@@ -118,7 +118,7 @@
<p>Delta Chat — надежное, децентрализованное и безопасное приложение для обмена сообщениями,
доступное для мобильных и настольных платформ.</p>
<p>Delta Chat напоминает Whatsapp или Telegram, но его можно использовать и приложение электронной почты.
<p>Delta Chat напоминает Whatsapp или Telegram, но его можно использовать и как приложение электронной почты.
Вы можете анонимно зарегистрироваться на различных <a href="https://delta.chat/chatmail">совместимых с chatmail серверах</a>,
которые представляют собой минимальные почтовые серверы, оптимизированные для быстрой и безопасной работы.
Или вы можете использовать обычные почтовые серверы и существующий почтовый аккаунт,
@@ -134,7 +134,7 @@
</h3>
<p>Чтобы безопасно настроить связь с другими <a href="#howtoe2ee">отсканируйте QR-код приглашения
<p>Чтобы безопасно настроить связь с другими, <a href="#howtoe2ee">отсканируйте QR-код приглашения
или поделитесь ссылкой-приглашением</a>.
Это необходимо при использовании профиля чата на основе почты chatmail (по умолчанию),
потому что серверы chatmail отклоняют незашифрованные исходящие сообщения.</p>
@@ -600,16 +600,16 @@ Push-уведомления недоступны.</p>
<ul>
<li>
<p>Приложение Delta Chat локально получает “токен устройства” и сохраняет его
<p>Приложение Delta Chat локально получает “токен устройства” шифрует его и сохраняет
на сервере <a href="https://delta.chat/chatmail">chatmail</a>.</p>
</li>
<li>
<p>Когда сервер <a href="https://delta.chat/chatmail">chatmail</a> получает электронную почту для пользователя Delta Chat
он пересылает “токен устройства” центральному прокси-серверу уведомлений Delta Chat.</p>
он пересылает “зашифрованный токен устройства” центральному прокси-серверу уведомлений Delta Chat.</p>
</li>
<li>
<p>Центральный прокси-сервер уведомлений Delta Chat пересылает
“токен устройства” в соответствующую службу Push (Apple, Google и т. д.),
<p>Центральный прокси-сервер уведомлений Delta Chat расшифровывает “токен устройства” и
пересылает его в соответствующую службу Push (Apple, Google и т. д.),
даже не зная IP-адрес или адрес электронной почты пользователей Delta Chat.</p>
</li>
<li>
@@ -622,14 +622,15 @@ Push-уведомления недоступны.</p>
</li>
</ul>
<p>По состоянию на май 2024 года серверы chatmail знают о “токенах устройства”,
но мы планируем зашифровать эту информацию для прокси-сервера уведомлений
так, чтобы сервер chatmail не смог получить доступ к токену устройства.</p>
<p>Центральный прокси-сервер уведомлений Delta Chat <a href="https://github.com/deltachat/notifiers">небольшой и полностью реализован на Rust</a>
забывает о токенах устройств, как только Apple/Google/и т. д. обработали их,
обычно за несколько миллисекунд.</p>
<p>Обратите внимание, что токен устройства шифруется между приложениями и прокси-сервером уведомлений,
но не подписывается.
Прокси-сервер уведомлений не получает доступ к адресам электронной почты, IP-адресам
или криптографическим идентификационным данным устройства пользователя (токену).</p>
<p>В результате такого общего подхода к обеспечению конфиденциальности, даже захват почтового сервера chatmail,
или полный захват центрального прокси-сервера уведомлений Delta Chat
не раскроет конфиденциальную информацию, которой сервисы Push уже не обладают.</p>
@@ -1200,10 +1201,25 @@ Delta Chat не будут иметь никакого ключа, прежде
</h3>
<p>Проект Delta Chat прошёл четыре независимых аудита безопасности и один
независимый анализ безопасности, от самого последнего к более старому:</p>
<p>Да, множество раз.
Проект Delta Chat находится в постоянном режиме аудита безопасности и анализа,
от последних до более ранних:</p>
<ul>
<li>
<p>Декабрь 2024 года, <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">экспертиза rPGP, организованная
NLNET</a> выполненная <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a>.
rPGP является движком сквозного шифрования OpenPGP <a href="https://openpgp.org">OpenPGP</a> в Delta Chat.
В результате этого аудита были подготовлены два отчета по безопасности:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Паника при обработке некорректных, недоверенных входных данных”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Возможная нехватка ресурсов при обработке непроверенных сообщений”</a> CVE-2024-53857</li>
</ul>
<p>Проблемы, описанные в этих рекомендациях, были исправлены и включены в релизы Delta Chat,
во всех магазинах приложений с декабря 2024 года.</p>
</li>
<li>
<p>В марте 2024 года мы получили подробный анализ безопасности от исследовательской группы
Applied Cryptography в ETH Цюрихе и устранили все выявленные проблемы.
+27 -11
View File
@@ -603,16 +603,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -625,14 +625,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -893,7 +894,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1203,10 +1204,25 @@ Pre iné programy by ste mali vedieť nájsť riešenie online.</p>
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+27 -11
View File
@@ -605,16 +605,16 @@ to any system involved in the delivery of Push Notifications.</p>
<ul>
<li>
<p>A Delta Chat app obtains a “device token” locally and stores it
<p>A Delta Chat app obtains a “device token” locally, encrypts it and stores it
on the <a href="https://delta.chat/chatmail">chatmail</a> server.</p>
</li>
<li>
<p>When a <a href="https://delta.chat/chatmail">chatmail</a> server receives an e-mail for a Delta Chat user
it forwards the device token to the central Delta Chat notification proxy.</p>
it forwards the encrypted device token to the central Delta Chat notification proxy.</p>
</li>
<li>
<p>The central Delta Chat notification proxy forwards
the “device token” to the respective Push service (Apple, Google, etc.),
<p>The central Delta Chat notification proxy decrypts the device token
and forwards it to the respective Push service (Apple, Google, etc.),
without ever knowing the IP or e-mail address of Delta Chat users.</p>
</li>
<li>
@@ -627,14 +627,15 @@ and also never see any message content (also not in encrypted forms).</p>
</li>
</ul>
<p>As of May 2024, chatmail servers know about “device tokens”
but we plan to encrypt this information to the notification proxy
such that the chatmail server never learns the device token.</p>
<p>The central Delta Chat notification proxy <a href="https://github.com/deltachat/notifiers">is small and fully implemented in Rust</a>
and forgets about device-tokens as soon as Apple/Google/etc processed them,
usually in a matter of milliseconds.</p>
<p>Note that the device token is encrypted between apps and notification proxy
but it is not signed.
The notification proxy thus never sees e-mail addresses, IP-addresses or
any cryptographic identity information associated with a users device (token).</p>
<p>Resulting from this overall privacy design, even the seizure of a chatmail server,
or the full seizure of the central Delta Chat notification proxy
would not reveal private information that Push services do not already have.</p>
@@ -895,7 +896,7 @@ and GnuPG (GPG), a command line tool implementing OpenPGP.
Many public critiques of OpenPGP actually discuss GnuPG which Delta Chat has never used.
Delta Chat rather uses the OpenPGP Rust implementation <a href="https://github.com/rpgp/rpgp">rPGP</a>,
available as <a href="https://crates.io/crates/pgp">an independent “pgp” package</a>,
and <a href="https://delta.chat/assets/blog/2019-first-security-review.pdf">security-audited in 2019</a>.</p>
and <a href="#security-audits">security-audited in 2019 and 2024</a>.</p>
<p>We aim, along with other OpenPGP implementors,
to further improve security characteristics by implementing the
@@ -1205,10 +1206,25 @@ Për programe të tjera, mund të gjeni një zgjidhje në internet.</p>
</h3>
<p>The Delta Chat project underwent four independent security audits and one
independent security analysis, from most recent to older:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 March, we received a deep security analysis from the Applied Cryptography
research group at ETH Zuerich and addressed all raised issues.
+22 -6
View File
@@ -498,23 +498,23 @@ Push-сповіщення автоматично активуються для
<ul>
<li>
<p>Додаток Delta Chat отримує “токен пристрою” локально і зберігає його на сервері <a href="https://delta.chat/chatmail">chatmail</a>.</p>
<p>Додаток Delta Chat отримує “токен пристрою” локально, шифрує його і зберігає на сервері <a href="https://delta.chat/chatmail">chatmail</a>.</p>
</li>
<li>
<p>Коли <a href="https://delta.chat/chatmail">chatmail</a>-сервер отримує електронний лист від користувача Delta Chat він пересилає токен пристрою до центрального проксі-сповіщення Delta Chat.</p>
<p>Коли сервер <a href="https://delta.chat/chatmail">chatmail</a> отримує електронний лист від користувача Delta Chat він пересилає зашифрований токен пристрою до центрального проксі-сервера сповіщень Delta Chat.</p>
</li>
<li>
<p>Центральний проксі-сервер сповіщень Delta Chat пересилає токен пристрою до відповідного Push-сервісу (Apple, Google тощо), навіть не знаючи IP-адреси чи електронної пошти користувачів Delta Chat.</p>
<p>Центральний проксі-сервер сповіщень Delta Chat розшифровує токен пристрою і пересилає його до відповідного Push-сервісу (Apple, Google тощо), навіть не знаючи IP-адреси або електронної пошти користувачів Delta Chat.</p>
</li>
<li>
<p>Центральний Push-сервіс (Apple, Google тощо) запускає додаток Delta Chat на вашому пристрої щоб перевірити наявність нових повідомлень у фоновому режимі. Він не знає про пошту чату або адресу електронної пошти пристрою, який він пробуджує. Центральні служби Apple/Google Push ніколи не бачать адресу електронної пошти (відправника або одержувача) а також ніколи не бачать жодного вмісту повідомлення (навіть в зашифрованому вигляді).</p>
</li>
</ul>
<p>Станом на травень 2024 року chatmail-сервери знають про “токени пристроїв” але ми плануємо зашифрувати цю інформацію для проксі-сповіщень таким чином, щоб сервер чату ніколи не дізнався токен пристрою.</p>
<p>Центральний проксі для сповіщень Delta Chat <a href="https://github.com/deltachat/notifiers">невеликий і повністю реалізований на Rust</a> забуває про токени пристроїв, як тільки Apple/Google/etc обробили їх, зазвичай за лічені мілісекунди.</p>
<p>Зверніть увагу, що токен пристрою шифрується між програмами та проксі-сповіщеннями але не підписується. Таким чином, проксі-служба сповіщень ніколи не бачить адреси електронної пошти, IP-адреси або будь-яку криптографічну ідентифікаційну інформацію, пов’язану з пристроєм користувача (токеном).</p>
<p>В результаті цього загального дизайну конфіденційності, навіть захоплення chatmail-сервера, або повне вилучення центрального проксі-сервера повідомлень Delta Chat не призведе до розкриття приватної інформації, якої ще не мають Push-сервіси.</p>
<h3 id="чому-delta-chat-інтегрується-з-централізованими-пропрієтарними-push-сервісами-applegoogle">
@@ -872,9 +872,25 @@ Look for something like <strong>Start Autocrypt Setup Transfer</strong> in the s
</h3>
<p>Проект Delta Chat пройшов чотири незалежні аудити безпеки та один незалежний аналіз безпеки, від найновіших до найстаріших:</p>
<p>Yes, multiple times.
The Delta Chat project continuously undergoes independent security audits and analysis,
from most recent to older:</p>
<ul>
<li>
<p>2024 December, an <a href="https://github.com/rpgp/docs/blob/main/audits/NGI%20Core%20rPGP%20penetration%20test%20report%202024%201.0.pdf">NLNET-commissioned Evaluation of
rPGP</a> by <a href="https://www.radicallyopensecurity.com/">Radically Open Security</a> took place.
rPGP serves as the end-to-end encyption <a href="https://openpgp.org">OpenPGP</a> engine of Delta Chat.
Two advisories were released related to the findings of this audit:</p>
<ul>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-9rmp-2568-59rv">“Panics on Malformed Untrusted Input”</a> CVE-2024-53856</li>
<li><a href="https://github.com/rpgp/rpgp/security/advisories/GHSA-4grw-m28r-q285">“Potential Resource Exhaustion when handling Untrusted Messages”</a> CVE-2024-53857</li>
</ul>
<p>The issues outlined in these advisories have been fixed and are part of Delta Chat
releases on all appstores since December 2024.</p>
</li>
<li>
<p>2024 березня ми отримали глибокий аналіз безпеки від дослідницької групи Applied Cryptography дослідницької групи з прикладної криптографії в ETH Zuerich і вирішили всі порушені питання. Більш детальну інформацію можна знайти в нашому блозі в статті <a href="https://delta.chat/en/2024-03-25-crypto-analysis-securejoin">Hardening Guaranteed End-to-end encryption</a>, а також в дослідженні <a href="https://eprint.iacr.org/2024/918.pdf">Cryptographic Analysis of Delta Chat</a>, опублікованому пізніше.</p>
</li>
File diff suppressed because it is too large Load Diff
@@ -194,6 +194,7 @@ public class DcContext {
public native int estimateDeletionCount(boolean from_server, long seconds);
public native void deleteMsgs (int msg_ids[]);
public native void forwardMsgs (int msg_ids[], int chat_id);
public native void saveMsgs (int msg_ids[]);
public native boolean resendMsgs (int msg_ids[]);
public native int sendMsg (int chat_id, DcMsg msg);
public native int sendTextMsg (int chat_id, String text);
@@ -161,6 +161,7 @@ public class DcMsg {
public native void setHtml (String text);
public native void setFile (String file, String filemime);
public native void forceSticker ();
public native void setFileAndDeduplicate(String file, String name, String filemime);
public native void setDimension (int width, int height);
public native void setDuration (int duration);
public native void setLocation (float latitude, float longitude);
@@ -190,6 +191,14 @@ public class DcMsg {
return cPtr != 0 ? new DcMsg(cPtr) : null;
}
public native int getOriginalMsgId ();
public native int getSavedMsgId ();
public boolean canSave() {
// saving info-messages out of context results in confusion, see https://github.com/deltachat/deltachat-ios/issues/2567
return !isInfo() && getType() != DC_MSG_VIDEOCHAT_INVITATION;
}
public File getFileAsFile() {
if(getFile()==null)
throw new AssertionError("expected a file to be present.");
@@ -25,6 +25,7 @@ public interface BindableConversationItem extends Unbindable {
interface EventListener {
void onQuoteClicked(DcMsg messageRecord);
void onJumpToOriginalClicked(DcMsg messageRecord);
void onShowFullClicked(DcMsg messageRecord);
void onDownloadClicked(DcMsg messageRecord);
void onReactionClicked(DcMsg messageRecord);
@@ -1028,7 +1028,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
msg = new DcMsg(dcContext, DcMsg.DC_MSG_FILE);
}
String path = attachment.getRealPath(this);
msg.setFile(path, null);
msg.setFileAndDeduplicate(path, attachment.getFileName(), null);
}
}
msg.setText(body);
@@ -1281,7 +1281,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
if (quote.isPresent()) {
msg.setQuote(quote.get().getQuotedMsg());
}
msg.setFile(path, null);
msg.setFileAndDeduplicate(path, null, null);
msg.forceSticker();
dcContext.sendMsg(chatId, msg);
}
@@ -844,20 +844,18 @@ public class ConversationFragment extends MessageSelectorFragment
}
}
@Override
public void onQuoteClicked(DcMsg messageRecord) {
DcMsg quoted = messageRecord.getQuotedMsg();
if (quoted == null) {
Log.i(TAG, "Clicked on a quote whose original message we never had.");
private void jumpToOriginal(DcMsg original) {
if (original == null) {
Log.i(TAG, "Clicked on a quote or jump-to-original whose original message was deleted/non-existing.");
Toast.makeText(getContext(), R.string.ConversationFragment_quoted_message_not_found, Toast.LENGTH_SHORT).show();
return;
}
int foreignChatId = quoted.getChatId();
int foreignChatId = original.getChatId();
if (foreignChatId != 0 && foreignChatId != chatId) {
Intent intent = new Intent(getActivity(), ConversationActivity.class);
intent.putExtra(ConversationActivity.CHAT_ID_EXTRA, foreignChatId);
int start = DcMsg.getMessagePosition(quoted, dcContext);
int start = DcMsg.getMessagePosition(original, dcContext);
intent.putExtra(ConversationActivity.STARTING_POSITION_EXTRA, start);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
((ConversationActivity) getActivity()).hideSoftKeyboard();
@@ -867,10 +865,20 @@ public class ConversationFragment extends MessageSelectorFragment
Log.e(TAG, "Activity was null");
}
} else {
scrollMaybeSmoothToMsgId(quoted.getId());
scrollMaybeSmoothToMsgId(original.getId());
}
}
@Override
public void onJumpToOriginalClicked(DcMsg messageRecord) {
jumpToOriginal(dcContext.getMsg(messageRecord.getOriginalMsgId()));
}
@Override
public void onQuoteClicked(DcMsg messageRecord) {
jumpToOriginal(messageRecord.getQuotedMsg());
}
@Override
public void onShowFullClicked(DcMsg messageRecord) {
Intent intent = new Intent(getActivity(), FullMsgActivity.class);
@@ -101,6 +101,7 @@ public class ConversationItem extends BaseConversationItem
protected ViewGroup bodyBubble;
protected ReactionsConversationView reactionsView;
protected View replyView;
protected View jumptoView;
@Nullable private QuoteView quoteView;
private ConversationItemFooter footer;
private TextView groupSender;
@@ -155,6 +156,7 @@ public class ConversationItem extends BaseConversationItem
this.quoteView = findViewById(R.id.quote_view);
this.container = findViewById(R.id.container);
this.replyView = findViewById(R.id.reply_icon);
this.jumptoView = findViewById(R.id.jumpto_icon);
this.msgActionButton = findViewById(R.id.msg_action_button);
this.showFullButton = findViewById(R.id.show_full_button);
@@ -176,12 +178,23 @@ public class ConversationItem extends BaseConversationItem
{
bind(messageRecord, dcChat, batchSelected, pulseHighlight, recipients);
this.glideRequests = glideRequests;
this.showSender = dcContext.isCommunity() || (dcChat.isMultiUser() && !messageRecord.isOutgoing()) || messageRecord.getOverrideSenderName() != null;
this.showSender = dcContext.isCommunity() || ((dcChat.isMultiUser() || dcChat.isSelfTalk()) && !messageRecord.isOutgoing()) || messageRecord.getOverrideSenderName() != null;
if (showSender) {
this.dcContact = dcContext.getContact(messageRecord.getFromId());
}
if (dcChat.isSelfTalk() && messageRecord.getOriginalMsgId() != 0) {
jumptoView.setVisibility(View.VISIBLE);
jumptoView.setOnClickListener(view -> {
if (eventListener != null) {
eventListener.onJumpToOriginalClicked(messageRecord);
}
});
} else {
jumptoView.setVisibility(View.GONE);
}
setGutterSizes(messageRecord, showSender);
setMessageShape(messageRecord);
setMediaAttributes(messageRecord, showSender);
@@ -457,7 +457,7 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit
startActivity(new Intent(this, ProfileActivity.class));
return true;
case R.id.menu_public_bots:
handleShowBot("puente@buzon.uy", "OPENPGP4FPR:4B41E5AFAF78A0C71DB56138D5BEFED00A45F97A#a=puente%40buzon.uy&n=Public%20Bots&i=ZC_oaJtuvJP&s=5SE96rRovsK");
handleShowBot("botsindex@arcanechat.me", "https://i.delta.chat/#67889B0362BEDBFEE05ACD92C1D737FA632A9582&a=botsindex%40arcanechat.me&n=Public%20Bots&i=336MTEz38EH-RJxM9OKWygYK&s=TpVVGK6C4KrJmRG0bwHLalXt");
return true;
}
@@ -42,7 +42,6 @@ import com.b44t.messenger.DcMsg;
import org.thoughtcrime.securesms.ConversationListAdapter.ItemClickListener;
import org.thoughtcrime.securesms.components.recyclerview.DeleteItemAnimator;
import org.thoughtcrime.securesms.components.reminder.DozeReminder;
import org.thoughtcrime.securesms.connect.AccountManager;
import org.thoughtcrime.securesms.connect.DcEventCenter;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.mms.GlideApp;
@@ -30,7 +30,6 @@ import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.request.target.SimpleTarget;
import com.bumptech.glide.request.transition.Transition;
import com.google.android.material.textfield.TextInputLayout;
import com.soundcloud.android.crop.Crop;
import org.thoughtcrime.securesms.components.AvatarSelector;
import org.thoughtcrime.securesms.components.InputAwareLayout;
@@ -147,10 +146,6 @@ public class CreateProfileActivity extends BaseActionBarActivity {
case ScribbleActivity.SCRIBBLE_REQUEST_CODE:
setAvatarView(data.getData());
break;
case Crop.REQUEST_CROP:
setAvatarView(Crop.getOutput(data));
break;
}
}
@@ -17,7 +17,6 @@ import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AlertDialog;
import androidx.loader.app.LoaderManager;
import com.b44t.messenger.DcChat;
@@ -26,7 +25,6 @@ import com.b44t.messenger.DcContext;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.request.target.SimpleTarget;
import com.bumptech.glide.request.transition.Transition;
import com.soundcloud.android.crop.Crop;
import org.thoughtcrime.securesms.components.AvatarSelector;
import org.thoughtcrime.securesms.connect.DcHelper;
@@ -221,22 +219,7 @@ public class GroupCreateActivity extends PassphraseRequiredActionBarActivity
updateGroup(groupName);
} else {
verified = !broadcast && allMembersVerified();
if (verified && getAdapter().getContacts().size() == 1) {
new AlertDialog.Builder(this)
.setMessage(R.string.create_verified_group_ask)
.setNeutralButton(R.string.learn_more, (d, w) -> DcHelper.openHelp(this, "#e2eeguarantee"))
.setPositiveButton(R.string.yes, (d, w) -> {
createGroup(groupName);
})
.setNegativeButton(R.string.no, (d, w) -> {
verified = false;
createGroup(groupName);
})
.setCancelable(true)
.show();
} else {
createGroup(groupName);
}
createGroup(groupName);
}
return true;
@@ -360,10 +343,6 @@ public class GroupCreateActivity extends PassphraseRequiredActionBarActivity
case ScribbleActivity.SCRIBBLE_REQUEST_CODE:
setAvatarView(data.getData());
break;
case Crop.REQUEST_CROP:
setAvatarView(Crop.getOutput(data));
break;
}
}
@@ -41,7 +41,6 @@ import com.bumptech.glide.request.target.CustomTarget;
import com.bumptech.glide.request.transition.Transition;
import com.google.zxing.integration.android.IntentIntegrator;
import com.google.zxing.integration.android.IntentResult;
import com.soundcloud.android.crop.Crop;
import org.thoughtcrime.securesms.components.AvatarSelector;
import org.thoughtcrime.securesms.connect.AccountManager;
@@ -72,7 +71,7 @@ public class InstantOnboardingActivity extends BaseActionBarActivity implements
private static final String DCACCOUNT = "dcaccount";
private static final String DCLOGIN = "dclogin";
private static final String INSTANCES_URL = "https://delta.chat/chatmail";
private static final String DEFAULT_CHATMAIL_HOST = "nine.testrun.org";
private static final String DEFAULT_CHATMAIL_HOST = "arcanechat.me";
public static final String QR_ACCOUNT_EXTRA = "qr_account_extra";
public static final String FROM_WELCOME = "from_welcome";
@@ -192,10 +191,6 @@ public class InstantOnboardingActivity extends BaseActionBarActivity implements
setAvatarView(data.getData());
break;
case Crop.REQUEST_CROP:
setAvatarView(Crop.getOutput(data));
break;
case IntentIntegrator.REQUEST_CODE:
String qrRaw = data.getStringExtra(RegistrationQrActivity.QRDATA_EXTRA);
if (qrRaw == null) {
@@ -62,16 +62,16 @@ public class LocalHelpActivity extends WebViewActivity
webView.scrollTo(0, 0);
return true;
case R.id.learn_more:
openOnlineUrl("https://delta.chat");
openOnlineUrl("https://arcanechat.me");
return true;
case R.id.privacy_policy:
openOnlineUrl("https://delta.chat/gdpr");
openOnlineUrl("https://arcanechat.me/privacy.html");
return true;
case R.id.contribute:
openOnlineUrl("https://github.com/deltachat/deltachat-android");
openOnlineUrl("https://arcanechat.me/#contribute");
return true;
case R.id.report_issue:
openOnlineUrl("https://github.com/deltachat/deltachat-android/issues");
openOnlineUrl("https://github.com/ArcaneChat/android/issues");
return true;
}
return false;
@@ -153,6 +153,7 @@ public class ProfileActivity extends PassphraseRequiredActionBarActivity
menu.findItem(R.id.share).setVisible(false);
}
} else {
menu.findItem(R.id.menu_clone).setVisible(false);
canReceive = false;
}
@@ -122,7 +122,13 @@ public class ProfileDocumentsFragment
noMedia.setVisibility(recyclerView.getAdapter().getItemCount() > 0 ? View.GONE : View.VISIBLE);
if (chatId == DC_CHAT_NO_CHAT) {
noMedia.setText(R.string.tab_all_media_empty_hint);
if (showWebxdc) {
noMedia.setText(R.string.all_apps_empty_hint);
} else if (!showAudio){
noMedia.setText(R.string.all_files_empty_hint);
} else {
noMedia.setText(R.string.tab_all_media_empty_hint);
}
} else if (showAudio) {
noMedia.setText(R.string.tab_audio_empty_hint);
} else if (showWebxdc) {
@@ -58,6 +58,7 @@ public class ShareActivity extends PassphraseRequiredActionBarActivity implement
{
private static final String TAG = ShareActivity.class.getSimpleName();
public static final String EXTRA_ACC_ID = "acc_id";
public static final String EXTRA_CHAT_ID = "chat_id";
public static final String EXTRA_MSG_TYPE = "msg_type";
public static final String EXTRA_MSG_SUBJECT = "msg_subject";
@@ -213,14 +214,10 @@ public class ShareActivity extends PassphraseRequiredActionBarActivity implement
}
private void handleResolvedMedia(Intent intent) {
int accId = intent.getIntExtra(EXTRA_ACC_ID, -1);
int chatId = intent.getIntExtra(EXTRA_CHAT_ID, -1);
String msgType = intent.getStringExtra(EXTRA_MSG_TYPE);
String shortcutId = intent.getStringExtra(ShortcutManagerCompat.EXTRA_SHORTCUT_ID);
if (chatId == -1 && shortcutId != null) {
chatId = Integer.parseInt(shortcutId);
}
String[] extraEmail = getIntent().getStringArrayExtra(Intent.EXTRA_EMAIL);
/*
usually, external app will try to start "e-mail sharing" intent, providing it:
@@ -270,9 +267,10 @@ public class ShareActivity extends PassphraseRequiredActionBarActivity implement
chatId = dcContext.createChatByContactId(contactId);
}
Intent composeIntent;
if (chatId != -1) {
if (accId != -1 && chatId != -1) {
composeIntent = getBaseShareIntent(ConversationActivity.class);
composeIntent.putExtra(ConversationActivity.CHAT_ID_EXTRA, chatId);
composeIntent.putExtra(ConversationActivity.ACCOUNT_ID_EXTRA, accId);
RelayUtil.setSharedType(composeIntent, msgType);
RelayUtil.setSharedUris(composeIntent, resolvedExtras);
startActivity(composeIntent);
@@ -93,7 +93,7 @@ public class WelcomeActivity extends BaseActionBarActivity implements DcEventCen
boolean canGoBack = AccountManager.getInstance().canRollbackAccountCreation(this);
supportActionBar.setDisplayHomeAsUpEnabled(canGoBack);
getSupportActionBar().setTitle(canGoBack? R.string.add_account : R.string.welcome_desktop);
getSupportActionBar().setTitle(canGoBack? R.string.add_account : R.string.app_name);
}
private void registerForEvents() {
@@ -20,6 +20,7 @@ import org.thoughtcrime.securesms.util.DateUtils;
public class ConversationItemFooter extends LinearLayout {
private TextView dateView;
private ImageView bookmarkIndicatorView;
private ImageView secureIndicatorView;
private ImageView locationIndicatorView;
private DeliveryStatusView deliveryStatusView;
@@ -44,6 +45,7 @@ public class ConversationItemFooter extends LinearLayout {
inflate(getContext(), R.layout.conversation_item_footer, this);
dateView = findViewById(R.id.footer_date);
bookmarkIndicatorView = findViewById(R.id.footer_bookmark_indicator);
secureIndicatorView = findViewById(R.id.footer_secure_indicator);
locationIndicatorView = findViewById(R.id.footer_location_indicator);
deliveryStatusView = new DeliveryStatusView(findViewById(R.id.delivery_indicator));
@@ -58,6 +60,8 @@ public class ConversationItemFooter extends LinearLayout {
public void setMessageRecord(@NonNull DcMsg messageRecord) {
presentDate(messageRecord);
boolean bookmark = messageRecord.getOriginalMsgId() != 0 || messageRecord.getSavedMsgId() != 0;
bookmarkIndicatorView.setVisibility(bookmark ? View.VISIBLE : View.GONE);
secureIndicatorView.setVisibility(messageRecord.isSecure() ? View.VISIBLE : View.GONE);
locationIndicatorView.setVisibility(messageRecord.hasLocation() ? View.VISIBLE : View.GONE);
presentDeliveryStatus(messageRecord);
@@ -65,6 +69,7 @@ public class ConversationItemFooter extends LinearLayout {
private void setTextColor(int color) {
dateView.setTextColor(color);
bookmarkIndicatorView.setColorFilter(color);
secureIndicatorView.setColorFilter(color);
locationIndicatorView.setColorFilter(color);
deliveryStatusView.setTint(color);
@@ -3,10 +3,8 @@ package org.thoughtcrime.securesms.components;
import android.content.Context;
import android.net.Uri;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import android.util.AttributeSet;
import android.view.View;
import android.view.Window;
@@ -5,9 +5,15 @@ import android.content.ContentValues;
import android.database.Cursor;
import android.net.Uri;
import android.os.ParcelFileDescriptor;
import android.webkit.MimeTypeMap;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.b44t.messenger.DcContext;
import org.thoughtcrime.securesms.util.MediaUtil;
import java.io.File;
import java.io.FileNotFoundException;
@@ -34,12 +40,12 @@ public class AttachmentsContentProvider extends ContentProvider {
// where ef39a39 is the file in the blob directory
// and text.txt is the original name of the file, as returned by `msg.getFilename()`.
// `uri.getPathSegments()` returns ["ef39a39", "text.txt"] in this example.
String path = uri.getPathSegments().get(0);
if (!DcHelper.sharedFiles.containsKey(path)) {
String file = uri.getPathSegments().get(0);
if (!DcHelper.sharedFiles.containsKey(file)) {
throw new FileNotFoundException("File was not shared before.");
}
File privateFile = new File(dcContext.getBlobdir(), path);
File privateFile = new File(dcContext.getBlobdir(), file);
return ParcelFileDescriptor.open(privateFile, ParcelFileDescriptor.MODE_READ_ONLY);
}
@@ -49,8 +55,17 @@ public class AttachmentsContentProvider extends ContentProvider {
}
@Override
public String getType(Uri arg0) {
return null;
public String getType(Uri uri) {
String file = uri.getPathSegments().get(0);
String mimeType = DcHelper.sharedFiles.get(file);
return DcHelper.checkMime(uri.toString(), mimeType);
}
@Override
public String getTypeAnonymous(Uri uri) {
String ext = MediaUtil.getFileExtensionFromUrl(uri.toString());
return MimeTypeMap.getSingleton().getMimeTypeFromExtension(ext);
}
@Override
@@ -269,7 +269,9 @@ public class DcHelper {
return Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
}
public static final HashMap<String, Integer> sharedFiles = new HashMap<>();
// When the user shares a file to another app or opens a file in another app, it is added here.
// `HashMap<file, mimetype>` where `file` is the name of the file in the blobdir (not the user-visible filename).
public static final HashMap<String, String> sharedFiles = new HashMap<>();
public static void openForViewOrShare(Context activity, int msg_id, String cmd) {
DcContext dcContext = getContext(activity);
@@ -294,12 +296,17 @@ public class DcHelper {
}
Uri uri;
mimeType = checkMime(filename, mimeType);
if (path.startsWith(dcContext.getBlobdir())) {
// Build a Uri that will later be passed to AttachmentsContentProvider.openFile().
// The last part needs to be `filename`, i.e. the original, user-visible name of the file,
// so that the external apps show the name of the file correctly.
uri = Uri.parse("content://" + BuildConfig.APPLICATION_ID + ".attachments/" + Uri.encode(file.getName()) + "/" + Uri.encode(filename));
sharedFiles.put(file.getName(), 1); // as different Android version handle uris in putExtra differently, we also check them on our own
// As different Android version handle uris in putExtra differently,
// we also check on our own that the file was actually shared.
// The check happens in AttachmentsContentProvider.openFile().
sharedFiles.put(file.getName(), mimeType);
} else {
if (Build.VERSION.SDK_INT >= 24) {
uri = FileProvider.getUriForFile(activity, BuildConfig.APPLICATION_ID + ".fileprovider", file);
@@ -309,7 +316,6 @@ public class DcHelper {
}
if (cmd.equals(Intent.ACTION_VIEW)) {
mimeType = checkMime(filename, mimeType);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, mimeType);
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
@@ -371,7 +377,7 @@ public class DcHelper {
activity.startActivity(intent);
}
private static String checkMime(String path, String mimeType) {
public static String checkMime(String path, String mimeType) {
if(mimeType == null || mimeType.equals("application/octet-stream")) {
path = path.replaceAll(" ", "");
String extension = MediaUtil.getFileExtensionFromUrl(path);
@@ -381,6 +387,13 @@ public class DcHelper {
return mimeType;
}
/**
* Return the path of a not-yet-existing file in the blobdir with roughly the given filename
* and the given extension.
* In many cases, since we're using setFileAndDeduplicate now, this wouldn't be necessary anymore
* and we could just create a file with a random filename,
* but there are a few usages that still need the current behavior (like `openMaps()`).
*/
public static String getBlobdirFile(DcContext dcContext, String filename, String ext) {
filename = FileUtils.sanitizeFilename(filename);
ext = FileUtils.sanitizeFilename(ext);
@@ -125,6 +125,7 @@ public class DirectShareUtil {
Intent intent = new Intent(context, ShareActivity.class);
intent.setAction(Intent.ACTION_SEND);
intent.putExtra(ShareActivity.EXTRA_ACC_ID, dcContext.getAccountId());
intent.putExtra(ShareActivity.EXTRA_CHAT_ID, chat.getId());
Recipient recipient = new Recipient(context, chat);
@@ -0,0 +1,43 @@
package org.thoughtcrime.securesms.glide.webp;
import android.graphics.drawable.Drawable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.bumptech.glide.load.Options;
import com.bumptech.glide.load.engine.Resource;
import com.bumptech.glide.load.resource.drawable.DrawableResource;
import com.bumptech.glide.load.resource.transcode.ResourceTranscoder;
import com.github.penfeizhou.animation.webp.WebPDrawable;
import com.github.penfeizhou.animation.webp.decode.WebPDecoder;
public class WebpDrawableTranscoder implements ResourceTranscoder<WebPDecoder, Drawable> {
@Nullable
@Override
public Resource<Drawable> transcode(@NonNull Resource<WebPDecoder> toTranscode, @NonNull Options options) {
final WebPDrawable webPDrawable = new WebPDrawable(toTranscode.get());
webPDrawable.setAutoPlay(true);
return new DrawableResource<Drawable>(webPDrawable) {
@NonNull
@Override
public Class<Drawable> getResourceClass() {
return Drawable.class;
}
@Override
public int getSize() {
return webPDrawable.getMemorySize();
}
@Override
public void recycle() {
webPDrawable.stop();
}
@Override
public void initialize() {
super.initialize();
}
};
}
}
@@ -0,0 +1,92 @@
package org.thoughtcrime.securesms.glide.webp;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.bumptech.glide.load.Options;
import com.bumptech.glide.load.ResourceDecoder;
import com.bumptech.glide.load.engine.Resource;
import com.github.penfeizhou.animation.loader.ByteBufferLoader;
import com.github.penfeizhou.animation.io.StreamReader;
import com.github.penfeizhou.animation.loader.Loader;
import com.github.penfeizhou.animation.webp.decode.WebPDecoder;
import com.github.penfeizhou.animation.webp.decode.WebPParser;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer;
public class WebpLoader implements ResourceDecoder<InputStream, WebPDecoder> {
@Override
public boolean handles(@NonNull InputStream source, @NonNull Options options) {
return WebPParser.isAWebP(new StreamReader(source));
}
@Nullable
@Override
public Resource<WebPDecoder> decode(@NonNull final InputStream source, int width, int height, @NonNull Options options) throws IOException {
byte[] data = inputStreamToBytes(source);
if (data == null) {
return null;
}
ByteBuffer byteBuffer = ByteBuffer.wrap(data);
Loader loader = new ByteBufferLoader() {
@Override
public ByteBuffer getByteBuffer() {
byteBuffer.position(0);
return byteBuffer;
}
};
return new WebPDecoderResource(new WebPDecoder(loader, null), byteBuffer.limit());
}
private static byte[] inputStreamToBytes(InputStream is) {
final int bufferSize = 16384;
ByteArrayOutputStream buffer = new ByteArrayOutputStream(bufferSize);
try {
int nRead;
byte[] data = new byte[bufferSize];
while ((nRead = is.read(data)) != -1) {
buffer.write(data, 0, nRead);
}
buffer.flush();
} catch (IOException e) {
return null;
}
return buffer.toByteArray();
}
private static class WebPDecoderResource implements Resource<WebPDecoder> {
private final WebPDecoder decoder;
private final int size;
WebPDecoderResource(WebPDecoder decoder, int size) {
this.decoder = decoder;
this.size = size;
}
@NonNull
@Override
public Class<WebPDecoder> getResourceClass() {
return WebPDecoder.class;
}
@NonNull
@Override
public WebPDecoder get() {
return this.decoder;
}
@Override
public int getSize() {
return this.size;
}
@Override
public void recycle() {
this.decoder.stop();
}
}
}
@@ -23,7 +23,6 @@ import android.content.ActivityNotFoundException;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.PorterDuff;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Build;
@@ -67,7 +66,6 @@ import org.thoughtcrime.securesms.permissions.Permissions;
import org.thoughtcrime.securesms.providers.PersistentBlobProvider;
import org.thoughtcrime.securesms.scribbles.ScribbleActivity;
import org.thoughtcrime.securesms.util.MediaUtil;
import org.thoughtcrime.securesms.util.ThemeUtil;
import org.thoughtcrime.securesms.util.ViewUtil;
import org.thoughtcrime.securesms.util.guava.Optional;
import org.thoughtcrime.securesms.util.views.Stub;
@@ -692,7 +690,7 @@ public class AttachmentManager {
DcMsg msg = new DcMsg(dcContext, DcMsg.DC_MSG_WEBXDC);
Attachment attachment = new UriAttachment(uri, null, MediaUtil.WEBXDC, AttachmentDatabase.TRANSFER_PROGRESS_STARTED, 0, 0, 0, fileName, null, false);
String path = attachment.getRealPath(context);
msg.setFile(path, MediaUtil.WEBXDC);
msg.setFileAndDeduplicate(path, fileName, MediaUtil.WEBXDC);
dcContext.setDraft(chatId, msg);
return new DocumentSlide(context, msg);
}
@@ -4,6 +4,8 @@ import android.content.Context;
import android.graphics.drawable.PictureDrawable;
import androidx.annotation.NonNull;
import android.graphics.drawable.Drawable;
import android.util.Log;
import com.airbnb.lottie.LottieComposition;
@@ -15,6 +17,7 @@ import com.bumptech.glide.Registry;
import com.bumptech.glide.annotation.GlideModule;
import com.bumptech.glide.load.model.UnitModelLoader;
import com.bumptech.glide.module.AppGlideModule;
import com.github.penfeizhou.animation.webp.decode.WebPDecoder;
import com.caverock.androidsvg.SVG;
@@ -24,6 +27,8 @@ import org.thoughtcrime.securesms.glide.lottie.LottieDecoder;
import org.thoughtcrime.securesms.glide.lottie.LottieDrawableTranscoder;
import org.thoughtcrime.securesms.glide.svg.SvgDecoder;
import org.thoughtcrime.securesms.glide.svg.SvgDrawableTranscoder;
import org.thoughtcrime.securesms.glide.webp.WebpDrawableTranscoder;
import org.thoughtcrime.securesms.glide.webp.WebpLoader;
import org.thoughtcrime.securesms.mms.DecryptableStreamUriLoader.DecryptableUri;
import java.io.File;
@@ -60,6 +65,10 @@ public class SignalGlideModule extends AppGlideModule {
registry.append(DecryptableUri.class, InputStream.class, new DecryptableStreamUriLoader.Factory(context));
//registry.replace(GlideUrl.class, InputStream.class, new OkHttpUrlLoader.Factory());
registry
.prepend(InputStream.class, WebPDecoder.class, new WebpLoader())
.register(WebPDecoder.class, Drawable.class, new WebpDrawableTranscoder());
registry
.register(LottieComposition.class, LottieDrawable.class, new LottieDrawableTranscoder())
.append(InputStream.class, LottieComposition.class, new LottieDecoder());
@@ -12,7 +12,6 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.b44t.messenger.DcContext;
import com.soundcloud.android.crop.Crop;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.scribbles.ScribbleActivity;
@@ -113,9 +113,12 @@ public class QrActivity extends BaseActionBarActivity implements View.OnClickLis
menu.clear();
getMenuInflater().inflate(R.menu.qr_show, menu);
menu.findItem(R.id.new_classic_contact).setVisible(!DcHelper.getContext(this).isChatmail());
Util.redMenuItem(menu, R.id.withdraw);
if(tabLayout.getSelectedTabPosition() == TAB_SCAN) {
menu.findItem(R.id.withdraw).setVisible(false);
}
return super.onPrepareOptionsMenu(menu);
}
@@ -115,35 +115,27 @@ public class QrCodeHandler {
break;
case DcContext.DC_QR_WITHDRAW_VERIFYCONTACT:
builder.setMessage(activity.getString(R.string.withdraw_verifycontact_explain));
builder.setPositiveButton(R.string.withdraw_qr_code, (dialog, which) -> {
case DcContext.DC_QR_WITHDRAW_VERIFYGROUP:
String message = qrParsed.getState() == DcContext.DC_QR_WITHDRAW_VERIFYCONTACT ? activity.getString(R.string.withdraw_verifycontact_explain)
: activity.getString(R.string.withdraw_verifygroup_explain, qrParsed.getText1());
builder.setTitle(R.string.qrshow_title);
builder.setMessage(message);
builder.setNeutralButton(R.string.reset, (dialog, which) -> {
dcContext.setConfigFromQr(rawString);
});
builder.setNegativeButton(R.string.cancel, null);
break;
builder.setPositiveButton(R.string.ok, null);
AlertDialog withdrawDialog = builder.show();
Util.redButton(withdrawDialog, AlertDialog.BUTTON_NEUTRAL);
return;
case DcContext.DC_QR_REVIVE_VERIFYCONTACT:
builder.setMessage(activity.getString(R.string.revive_verifycontact_explain));
builder.setPositiveButton(R.string.revive_qr_code, (dialog, which) -> {
dcContext.setConfigFromQr(rawString);
});
builder.setNegativeButton(R.string.cancel, null);
break;
case DcContext.DC_QR_WITHDRAW_VERIFYGROUP:
builder.setMessage(activity.getString(R.string.withdraw_verifygroup_explain, qrParsed.getText1()));
builder.setPositiveButton(R.string.withdraw_qr_code, (dialog, which) -> {
dcContext.setConfigFromQr(rawString);
});
builder.setNegativeButton(R.string.cancel, null);
break;
case DcContext.DC_QR_REVIVE_VERIFYGROUP:
builder.setMessage(activity.getString(R.string.revive_verifygroup_explain, qrParsed.getText1()));
builder.setPositiveButton(R.string.revive_qr_code, (dialog, which) -> {
builder.setTitle(R.string.qrshow_title);
builder.setMessage(activity.getString(R.string.revive_verifycontact_explain));
builder.setNeutralButton(R.string.revive_qr_code, (dialog, which) -> {
dcContext.setConfigFromQr(rawString);
});
builder.setNegativeButton(R.string.cancel, null);
builder.setPositiveButton(R.string.ok, null);
break;
default:
@@ -13,6 +13,7 @@ import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.connect.DcEventCenter;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.util.DynamicTheme;
import org.thoughtcrime.securesms.util.Util;
public class QrShowActivity extends AppCompatActivity {
@@ -68,6 +69,7 @@ public class QrShowActivity extends AppCompatActivity {
menu.findItem(R.id.new_classic_contact).setVisible(false);
menu.findItem(R.id.paste).setVisible(false);
menu.findItem(R.id.load_from_image).setVisible(false);
Util.redMenuItem(menu, R.id.withdraw);
return super.onCreateOptionsMenu(menu);
}
@@ -139,15 +139,19 @@ public class QrShowFragment extends Fragment implements DcEventCenter.DcEventDel
public void withdrawQr() {
Activity activity = getActivity();
String message = chatId == 0 ? activity.getString(R.string.withdraw_verifycontact_explain)
: activity.getString(R.string.withdraw_verifygroup_explain, dcContext.getChat(chatId).getName());
AlertDialog.Builder builder = new AlertDialog.Builder(activity);
builder.setMessage(activity.getString(R.string.withdraw_verifycontact_explain));
builder.setPositiveButton(R.string.withdraw_qr_code, (dialog, which) -> {
builder.setTitle(R.string.withdraw_qr_code);
builder.setMessage(message);
builder.setPositiveButton(R.string.reset, (dialog, which) -> {
DcContext dcContext = DcHelper.getContext(activity);
dcContext.setConfigFromQr(dcContext.getSecurejoinQr(chatId));
activity.finish();
});
builder.setNegativeButton(R.string.cancel, null);
builder.create().show();
AlertDialog dialog = builder.show();
Util.redPositiveButton(dialog);
}
public void showInviteLinkDialog() {
@@ -3,7 +3,6 @@ package org.thoughtcrime.securesms.util;
import android.content.ContentUris;
import android.content.Context;
import android.content.SharedPreferences;
import android.hardware.Camera.CameraInfo;
import android.net.Uri;
import android.preference.PreferenceManager;
import android.provider.ContactsContract;
@@ -51,8 +50,6 @@ public class Prefs {
public static final String NOTIFICATION_PRIVACY_PREF = "pref_notification_privacy";
public static final String NOTIFICATION_PRIORITY_PREF = "pref_notification_priority";
public static final String BUILTIN_CAMERA_PREF = "pref_builtin_camera";
public static final String DIRECT_CAPTURE_CAMERA_ID = "pref_direct_capture_camera_id";
private static final String PROFILE_AVATAR_ID_PREF = "pref_profile_avatar_id";
public static final String INCOGNITO_KEYBORAD_PREF = "pref_incognito_keyboard";
@@ -105,15 +102,6 @@ public class Prefs {
return Integer.valueOf(getStringPreference(context, NOTIFICATION_PRIORITY_PREF, String.valueOf(NotificationCompat.PRIORITY_HIGH)));
}
public static void setDirectCaptureCameraId(Context context, int value) {
setIntegerPreference(context, DIRECT_CAPTURE_CAMERA_ID, value);
}
@SuppressWarnings("deprecation")
public static int getDirectCaptureCameraId(Context context) {
return getIntegerPreference(context, DIRECT_CAPTURE_CAMERA_ID, CameraInfo.CAMERA_FACING_FRONT);
}
public static NotificationPrivacyPreference getNotificationPrivacy(Context context) {
return new NotificationPrivacyPreference(getStringPreference(context, NOTIFICATION_PRIVACY_PREF, "all"));
}
@@ -172,7 +160,7 @@ public class Prefs {
}
public static boolean isLocationStreamingEnabled(Context context) {
return true;
return false;
}
public static boolean isDeveloperModeEnabled(Context context) {
@@ -45,9 +45,24 @@ public class SendRelayedMessageUtil {
if (isForwarding(activity)) {
int[] forwardedMessageIDs = getForwardedMessageIDs(activity);
resetRelayingMessageContent(activity);
if (forwardedMessageIDs == null) return;
Util.runOnAnyBackgroundThread(() -> {
for (long chatId : chatIds) {
handleForwarding(activity, (int) chatId, forwardedMessageIDs);
DcContext dcContext = DcHelper.getContext(activity);
for (long longChatId : chatIds) {
int chatId = (int) longChatId;
if (dcContext.getChat(chatId).isSelfTalk()) {
for (int msgId : forwardedMessageIDs) {
DcMsg msg = dcContext.getMsg(msgId);
if (msg.canSave() && msg.getSavedMsgId() == 0 && msg.getChatId() != chatId) {
dcContext.saveMsgs(new int[]{msgId});
} else {
handleForwarding(activity, chatId, new int[]{msgId});
}
}
} else {
handleForwarding(activity, chatId, forwardedMessageIDs);
}
}
});
@@ -122,7 +137,7 @@ public class SendRelayedMessageUtil {
}
if (uri != null) {
message.setFile(getRealPathFromUri(context, uri), mimeType);
setFileFromUri(context, uri, message, mimeType);
}
if (html != null) {
message.setHtml(html);
@@ -136,11 +151,12 @@ public class SendRelayedMessageUtil {
return message;
}
private static String getRealPathFromUri(Context context, Uri uri) throws NullPointerException {
private static void setFileFromUri(Context context, Uri uri, DcMsg message, String mimeType) {
String path;
DcContext dcContext = DcHelper.getContext(context);
String filename = "cannot-resolve.jpg"; // best guess, this still leads to most images being workable if OS does weird things
try {
String filename = "cannot-resolve.jpg"; // best guess, this still leads to most images being workable if OS does weird things
if (PartAuthority.isLocalUri(uri)) {
filename = uri.getPathSegments().get(PersistentBlobProvider.FILENAME_PATH_SEGMENT);
} else if (uri.getScheme().equals("content")) {
@@ -158,14 +174,7 @@ public class SendRelayedMessageUtil {
}
}
String ext = "";
int i = filename.lastIndexOf(".");
if (i >= 0) {
ext = filename.substring(i);
filename = filename.substring(0, i);
}
String path = DcHelper.getBlobdirFile(dcContext, filename, ext);
path = DcHelper.getBlobdirFile(dcContext, filename, "temp");
// copy content to this file
if (path != null) {
@@ -173,12 +182,11 @@ public class SendRelayedMessageUtil {
OutputStream outputStream = new FileOutputStream(path);
Util.copy(inputStream, outputStream);
}
return path;
} catch (Exception e) {
e.printStackTrace();
return null;
path = null;
}
message.setFileAndDeduplicate(path, filename, mimeType);
}
private static String getHtml(Context context, Uri uri) {
@@ -108,8 +108,12 @@ public class Util {
}
public static void redPositiveButton(AlertDialog dialog) {
redButton(dialog, AlertDialog.BUTTON_POSITIVE);
}
public static void redButton(AlertDialog dialog, int whichButton) {
try {
dialog.getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(redDestructiveColor);
dialog.getButton(whichButton).setTextColor(redDestructiveColor);
} catch (Exception e) {
e.printStackTrace();
}
@@ -640,10 +640,7 @@ public class VideoRecoder {
return false;
}
if (!Util.moveFile(tempPath, inPath)) {
alert(context, String.format("Recoding failed for %s: cannot move temporary file %s", inPath, tempPath));
return false;
}
msg.setFileAndDeduplicate(tempPath, msg.getFilename(), msg.getFilemime());
Log.i(TAG, String.format("recoding for %s done", inPath));
}
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval" >
<solid android:color="#68000000" />
</shape>
@@ -0,0 +1,3 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="24dp" android:tint="#FFFFFF" android:viewportHeight="24" android:viewportWidth="24" android:width="24dp">
<path android:fillColor="@android:color/white" android:pathData="M17,3H7c-1.1,0 -1.99,0.9 -1.99,2L5,21l7,-3 7,3V5c0,-1.1 -0.9,-2 -2,-2z"/>
</vector>
+10
View File
@@ -0,0 +1,10 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="0"
android:startColor="@color/gray50"
android:endColor="@color/transparent"
android:type="linear" />
</shape>
+10
View File
@@ -0,0 +1,10 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="0"
android:startColor="@color/transparent"
android:endColor="@color/gray50"
android:type="linear" />
</shape>
+5
View File
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval" >
<solid android:color="#22000000" />
</shape>
@@ -0,0 +1,3 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:autoMirrored="true" android:height="24dp" android:tint="#FFFFFF" android:viewportHeight="960" android:viewportWidth="960" android:width="24dp">
<path android:fillColor="@android:color/white" android:pathData="M579,480L285,186Q270,171 270.5,150.5Q271,130 286,115Q301,100 321.5,100Q342,100 357,115L664,423Q676,435 682,450Q688,465 688,480Q688,495 682,510Q676,525 664,537L356,845Q341,860 321,859.5Q301,859 286,844Q271,829 271,808.5Q271,788 286,773L579,480Z"/>
</vector>
-8
View File
@@ -1,8 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".OpenActivity">
<WebView android:id="@+id/webview" android:layout_width="match_parent" android:layout_height="match_parent" />
</androidx.constraintlayout.widget.ConstraintLayout>
@@ -161,6 +161,30 @@
</LinearLayout>
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:orientation="vertical">
<org.thoughtcrime.securesms.components.CircleColorImageView
android:id="@+id/invite_video_chat_button"
android:layout_width="53dp"
android:layout_height="53dp"
android:src="@drawable/baseline_call_24"
android:scaleType="center"
android:contentDescription="@string/videochat"
app:circleColor="@color/audio_icon"/>
<TextView android:layout_marginTop="10dp"
android:id="@+id/invite_video_chat_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/AttachmentTypeLabel"
android:text="@string/videochat"/>
</LinearLayout>
<LinearLayout android:id="@+id/location_linear_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -188,30 +212,6 @@
</LinearLayout>
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:orientation="vertical">
<org.thoughtcrime.securesms.components.CircleColorImageView
android:id="@+id/invite_video_chat_button"
android:layout_width="53dp"
android:layout_height="53dp"
android:src="@drawable/baseline_call_24"
android:scaleType="center"
android:contentDescription="@string/videochat"
app:circleColor="@color/audio_icon"/>
<TextView android:layout_marginTop="10dp"
android:id="@+id/invite_video_chat_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/AttachmentTypeLabel"
android:text="@string/videochat"/>
</LinearLayout>
<!-- fill the gap -->
<LinearLayout
android:layout_width="match_parent"
@@ -8,6 +8,17 @@
android:orientation="horizontal"
tools:parentTag="org.thoughtcrime.securesms.components.ConversationItemFooter">
<ImageView
android:id="@+id/footer_bookmark_indicator"
android:layout_width="12sp"
android:layout_height="11sp"
android:src="@drawable/baseline_bookmark_24"
android:layout_gravity="center_vertical|end"
android:importantForAccessibility="no"
android:visibility="gone"
tools:visibility="visible"
/>
<ImageView
android:id="@+id/footer_secure_indicator"
android:layout_width="12sp"
@@ -3,7 +3,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="fill_parent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:background="?attr/conversation_item_background"
@@ -13,9 +13,13 @@
android:clipToPadding="false"
android:clipChildren="false">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/conversation_individual_right_gutter"
android:layout_marginEnd="@dimen/conversation_individual_right_gutter"
@@ -23,7 +27,12 @@
android:paddingLeft="6dp"
android:paddingStart="6dp"
android:clipToPadding="false"
android:clipChildren="false">
android:clipChildren="false"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toStartOf="@id/jumpto_icon"
>
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/reply_icon"
@@ -43,7 +52,7 @@
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentBottom="true">
android:layout_alignBottom="@id/body_bubble">
<org.thoughtcrime.securesms.components.AvatarImageView
android:id="@+id/contact_photo"
@@ -239,4 +248,20 @@
app:message_type="incoming" />
</RelativeLayout>
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/jumpto_icon"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_marginEnd="@dimen/conversation_individual_right_gutter"
android:padding="5dp"
android:src="@drawable/rounded_arrow_forward_24"
android:background="@drawable/jumpto_btn_bg"
android:contentDescription="@string/show_in_chat"
android:visibility="gone"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</org.thoughtcrime.securesms.ConversationItem>
@@ -13,6 +13,19 @@
android:clipToPadding="false"
android:clipChildren="false">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/jumpto_icon"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_gravity="center_vertical"
android:layout_marginStart="@dimen/conversation_individual_left_gutter"
android:padding="5dp"
android:src="@drawable/rounded_arrow_forward_24"
android:background="@drawable/jumpto_btn_bg"
android:contentDescription="@string/show_in_chat"
android:visibility="gone"
/>
<RelativeLayout
android:id="@+id/container"
android:layout_width="match_parent"
@@ -68,6 +68,41 @@
android:layout_marginTop="20dp"
android:text="@string/instant_onboarding_create"/>
<LinearLayout
android:id="@+id/or_divider"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="30dp"
android:paddingBottom="30dp"
android:gravity="center"
android:orientation="horizontal">
<View
android:layout_width="wrap_content"
android:layout_height="1dp"
android:layout_weight="1"
android:background="@drawable/divider_start"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_weight="0"
android:gravity="center"
android:text="@string/or_separator"
android:textSize="14sp"
android:fontFamily="sans-serif"
android:textColor="@color/gray50"/>
<View
android:layout_width="wrap_content"
android:layout_height="1dp"
android:layout_weight="1"
android:background="@drawable/divider_end"/>
</LinearLayout>
<Button
style="@style/ButtonSecondary"
android:id="@+id/use_other_server"
@@ -75,7 +110,6 @@
android:layout_height="wrap_content"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:layout_marginTop="16dp"
android:text="@string/instant_onboarding_other_server"/>
<Button
+2 -2
View File
@@ -5,7 +5,7 @@
<item android:title="@string/menu_scroll_to_top"
android:id="@+id/log_scroll_up" />
<item android:title="@string/global_menu_help_learn_desktop"
<item android:title="@string/delta_chat_homepage"
android:id="@+id/learn_more"
app:showAsAction="never"/>
@@ -13,7 +13,7 @@
android:id="@+id/privacy_policy"
app:showAsAction="never"/>
<item android:title="@string/global_menu_help_contribute_desktop"
<item android:title="@string/contribute"
android:id="@+id/contribute"
app:showAsAction="never"/>
-4
View File
@@ -382,9 +382,6 @@
<string name="autocrypt_bad_setup_code">Yanlış quraşdırma kodu. Yenidən cəhd edin.\n\nƏgər quraşdırma kodunu xatırlamırsınız, başqa bir cihazdan başqa bir Autocrypt quraşdırma mesajı göndərin.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Qəbul olunanları oxuyun</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name -->
<string name="group_name_changed_by_you">Qrupun adı \"%1$s\" - dən \"%2$s\" - yə deyişildi məndən. </string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name, %3$s will be replaced by name and address of the contact who did the action. -->
@@ -459,7 +456,6 @@
<string name="global_menu_view_developer_desktop">İnkişaf etdirici</string>
<string name="global_menu_view_developer_tools_desktop">İnkişaf etdirici alətləri</string>
<string name="global_menu_help_desktop">Kömək</string>
<string name="global_menu_help_contribute_desktop">GitHub-da kömək et</string>
<string name="global_menu_help_report_desktop">Problemi bildirin</string>
<string name="no_chat_selected_suggestion_desktop">Bir çat seçin və ya yeni bir çat yaradın</string>
<string name="write_message_desktop">Bir mesaj yazın</string>
+3 -18
View File
@@ -476,6 +476,7 @@
<string name="tab_audio_empty_hint">Аудио файловете и гласовите съобщения, споделени в този чат, ще се появяват тук.</string>
<string name="tab_webxdc_empty_hint">Приложенията, споделени в този чат, ще се появяват тук.</string>
<string name="tab_all_media_empty_hint">Медийните файлове, споделени в кой да е чат, ще се появяват тук.</string>
<string name="all_apps_empty_hint">Приложенията, получени или изпратени в кой да е чат, ще се появяват тук.</string>
<string name="media_preview">Предварителен преглед на медия файл</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Мрежа, запазваща съотношенията</string>
@@ -584,14 +585,6 @@
<string name="login_smtp_port">SMTP порт</string>
<string name="login_smtp_security">Сигурност на SMTP връзката</string>
<string name="login_auth_method">Метод за оторизация</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Да се използва SOCKS5</string>
<string name="login_socks5_host">SOCKS5 хост</string>
<string name="login_socks5_port">SOCKS5 порт</string>
<string name="login_socks5_user">SOCKS5 потребител</string>
<string name="login_socks5_password">SOCKS5 парола</string>
<string name="login_info_oauth2_title">Да се продължи ли с опростената настройка?</string>
<string name="login_info_oauth2_text">Въведеният адрес за електронна поща поддържа опростена настройка (OAuth 2.0).\n\nНа следващата стъпка, моля позволете на Delta Chat да действа в качеството си на избраното от Вас приложение за чат върху електронна поща.\n\nDelta Chat няма сървъри, Вашите данни стоят на Вашето устройство.</string>
<string name="login_certificate_checks">Проверки на сертификатите</string>
@@ -677,7 +670,9 @@
<string name="pref_manage_keys">Управление на ключове</string>
<string name="pref_use_system_emoji">Да се използва Emoji на системата</string>
<string name="pref_use_system_emoji_explain">Изключване на вградената поддръжка за Emoji на Delta Chat</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Да се използва камерата вътре в приложението</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">Камерата в приложението обикновено има по-малко възможности от системната камера</string>
<string name="pref_show_system_contacts">Прочитане на системната адресна книга</string>
<string name="pref_show_system_contacts_explain">Да се предлага създаване на чатове с контакти от адресната книга. За някои доставчици е необходимо първо да се настрои криптиране от край до край.</string>
@@ -814,10 +809,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Съобщението е отворено</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Съобщението \"%1$s\", което изпратихте, беше показано на екрана на получателя.\n\nТова не е гаранция, че съдържанието му е прочетено.</string>
<string name="systemmsg_cannot_decrypt">Това съобщение не може да бъде декриптирано.\n\n• Бихте могли просто да му отговорите и да помолите подателя да го изпрати отново.\n\n• Ако току-що сте преинсталирали Delta Chat, е най-добре да настроите приложението отново сега и да изберете \"Добавяне като второ устройство\" или да импортирате от архив.</string>
<string name="systemmsg_unknown_sender_for_chat">Неизвестен подател за този чат. Вижте \"информация\" за повече подробности.</string>
<string name="systemmsg_subject_for_new_contact">Съобщение от %1$s</string>
@@ -920,9 +911,7 @@
<string name="withdraw_verifycontact_explain">Чрез сканиране на този QR код други хора могат да се свързват с Вас.\n\nМожете да деактивирате QR кода тук и повторно да го активирате, като го сканирате отново.</string>
<string name="withdraw_verifygroup_explain">Чрез сканиране на този QR код други хора могат да се присъединяват към крупата \"%1$s\".\n\nМожете да деактивирате QR кода тук и повторно да го активирате, като го сканирате отново.</string>
<string name="withdraw_qr_code">Деактивиране на QR кода</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Чрез сканиране на този QR код други хора могат да се свързват с Вас.\n\nQR кодът не е активен на това устройство.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Този QR код е давал възможност други да се присъединяват към групата \"%1$s\" чрез сканирането му.\n\nQR кодът не е активен на това устройство.</string>
<string name="revive_qr_code">Активиране на QR кода</string>
<string name="qrshow_title">QR код за покана</string>
@@ -1021,8 +1010,6 @@
<string name="global_menu_view_developer_desktop">Разработчик</string>
<string name="global_menu_view_developer_tools_desktop">Инструменти за разработчици</string>
<string name="global_menu_help_desktop">Помощ</string>
<string name="global_menu_help_learn_desktop">Научете повече за Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Допринесете в GitHub</string>
<string name="global_menu_help_report_desktop">Съобщаване за проблем</string>
<string name="global_menu_help_about_desktop">Относно Delta Chat</string>
<string name="global_menu_file_open_desktop">Отваряне на Delta Chat</string>
@@ -1094,8 +1081,6 @@
<string name="notifications_avg_minutes">Средно всеки %1$d минути</string>
<string name="notifications_avg_hours">Средно всеки %1$d часа</string>
<string name="last_check_at">Проверено на %1$s</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Приложенията, получени или изпратени в кой да е чат, ще се появяват тук. \"Файлове\" показва току-що свалените приложения.</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Delta Chat използва Вашата камера, за да прави и изпраща снимки и видеоклипове, както и да сканира QR кодове.</string>
<string name="InfoPlist_NSContactsUsageDescription">Delta Chat използва Вашите контакти, за да показва списък на e-mail адресите, до които можете да пишете. Delta Chat няма собствен сървър, Вашите контакти не се пращат никъде.</string>
+426 -98
View File
@@ -2,16 +2,16 @@
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">
<!-- common strings without special context -->
<string name="app_name">Delta Chat</string>
<string name="ok">OK</string>
<string name="ok">D\'acord</string>
<string name="cancel">Cancel·la</string>
<string name="clear_search">Neteja la cerca</string>
<!-- a noun, used on a button, short for "show link" -->
<string name="link">Enllaç</string>
<!-- "scan" in the meaning of "scan QR code" -->
<string name="scan">Escaneja</string>
<string name="yes">Si</string>
<string name="yes">Sí</string>
<string name="no">No</string>
<string name="select">Trieu</string>
<string name="select">Selecciona</string>
<string name="on">Activat</string>
<string name="off">Desactivat</string>
<string name="def">Per defecte</string>
@@ -22,21 +22,22 @@
<string name="automatic">Automàtic</string>
<string name="strict">Estricte</string>
<string name="open">Obre</string>
<string name="download">Descarrega</string>
<string name="downloading">Descarregant...</string>
<string name="download">Baixa</string>
<string name="downloading">S\'està baixant...</string>
<string name="open_attachment">Obre l\'adjunt</string>
<string name="join">Uneix-te</string>
<string name="rejoin">Torna a unir-te</string>
<string name="delete">Esborra</string>
<string name="info">Info</string>
<string name="update">Actualitza</string>
<string name="emoji">Emoticona</string>
<string name="emoji">Emojis</string>
<string name="attachment">Adjunt</string>
<string name="back">Enrere</string>
<string name="close">Tanca</string>
<string name="close_window">Tanca la finestra</string>
<string name="forward">Reenvia</string>
<string name="create">Crea</string>
<string name="reset">Reinicialitza</string>
<string name="later">Després</string>
<!-- "Resend" means "Sending the selected message(s) again to the same chat". The string is used in a menu and should be as short as possible. Resending may be needed after failures or to repost old messages to new members. -->
<string name="resend">Torna-ho a enviar</string>
@@ -44,10 +45,11 @@
<string name="archive">Arxiva</string>
<!-- Verb "to unarchive", as in "remove a chat from the archive", opposite of the previous string -->
<string name="unarchive">Treu de l\'arxiu</string>
<string name="mute">Emmudeix</string>
<string name="mute">Silencia</string>
<string name="muted">Silenciat</string>
<string name="ephemeral_messages">Missatges efímers</string>
<string name="ephemeral_messages_hint">Aquestes opcions són d\'aplicació per tots els integrants que usin Delta Chat. Tot i això, poden copiar, guardar o reenviar missatges o usar altres clients de correu.</string>
<string name="save">Guarda</string>
<string name="ephemeral_messages_hint">Aquestes opcions s\'apliquen a tots els integrants del xat que usin Delta Chat. Tot i això, poden copiar, desar o reenviar missatges o utilitzar altres clients de correu.</string>
<string name="save">Desa</string>
<string name="chat">Xat</string>
<string name="media">Multimèdia</string>
<string name="profile">Perfil</string>
@@ -56,16 +58,16 @@
<string name="show_full_message">Mostra el missatge sencer...</string>
<!-- Stay short here, say ~16 characters. The source string could also be "All Read", maybe that hint can make translations easier :) -->
<string name="mark_all_as_read">Marca-ho tot com a llegit</string>
<string name="mark_as_read">Marca com a llegit</string>
<string name="mark_as_read">Marca-ho com a llegit</string>
<!-- Shortest text for "Mark as being read". In english, this could be "Read" (past tense of "to read"), in german, this could be "Gelesen". -->
<string name="mark_as_read_short">Llegit</string>
<!-- Placeholder text when something is loading -->
<string name="loading">Carregant...</string>
<string name="loading">S\'està carregant...</string>
<string name="hide">Amaga</string>
<string name="activate">Activa-ho</string>
<string name="load_remote_content">Carrega les imatges remotes</string>
<!-- Possible answers to the question are: Never, Always, Once -->
<string name="load_remote_content_ask">Les imatges remotes es poden usar per rastrejar-te.\n\nEl paràmetre també permet la càrrega de fonts i altres continguts. Fins i tot si és deshabilitat, encara podríeu veure imatges incrustades o en memòria catxè.\n\nCàrrega d\'imatges remotes?</string>
<string name="load_remote_content_ask">Les imatges remotes es poden usar per rastrejar-vos.\n\nEl paràmetre també pot permetre la càrrega de fonts i altre contingut. Fins i tot desactivat, encara podríeu veure imatges incrustades o en memòria cau.\n\nVoleu carregar les imatges remotes?</string>
<string name="always">Sempre</string>
<string name="always_load_remote_images">Carrega sempre les imatges remotes</string>
<string name="once">Una vegada</string>
@@ -77,20 +79,20 @@
<string name="one_moment">Espereu...</string>
<string name="done">Fet</string>
<string name="undo">Desfés</string>
<string name="offline">En desconnexió</string>
<string name="offline">Fora de línia</string>
<!-- For the next view or as "continue". Should be as short as possible. -->
<string name="next">Següent</string>
<string name="error">Error</string>
<string name="error_x">Error: %1$s</string>
<string name="no_app_to_handle_data">No hi ha cap app per gestionar aquestes dades.</string>
<string name="no_browser_installed">Cap navegador instal·lat.</string>
<string name="no_app_to_handle_data">No sé trobar cap aplicació per a gestionar aquest tipus de dades.</string>
<string name="no_browser_installed">No hi ha instal·lat cap navegador.</string>
<string name="file_not_found">No s\'ha trobat %1$s.</string>
<string name="copied_to_clipboard">Copiat al porta-retalls.</string>
<string name="contacts_headline">Contactes</string>
<string name="email_address">Adreça de correu electrònic</string>
<string name="bad_email_address">Adreça de correu electrònic errònia.</string>
<string name="password">Contrasenya</string>
<string name="existing_password">Contrasenya existent</string>
<string name="existing_password">Ja existeix aquesta contrasenya</string>
<string name="now">Ara</string>
<!-- Headline for destructive actions with no undo. Could also be "Caution" or "Warning". -->
<string name="danger">Perill</string>
@@ -101,10 +103,10 @@
<string name="last_week">La setmana passada</string>
<string name="last_month">El mes passat</string>
<!-- Refers to the time a contact was last seen. Shown below contact name in the profile. The placeholder will be replaced by date or time, resulting in "Last seen at 12:13 AM" or "Last seen Nov 12" -->
<string name="last_seen_at">Vist per darrer cop a les %1$s</string>
<string name="last_seen_at">Vist per darrer cop: %1$s</string>
<!-- Refers to the time a contact was last seen. Shown below contact name in the profile. The placeholder will be replaced by a relative point in time as "3 minutes ago" (see https://momentjs.com for more examples and languages)-->
<string name="last_seen_relative">Vist per darrer cop %1$s</string>
<string name="last_seen_unknown">Vist per darrer cop: Ves a saber</string>
<string name="last_seen_relative">Vist per darrer cop: %1$s</string>
<string name="last_seen_unknown">Vist per darrer cop: desconegut</string>
<!-- Shown beside messages that are "N minutes old". Prefer short strings, or well-known abbreviations. -->
<plurals name="n_minutes">
<item quantity="one">%d min</item>
@@ -127,6 +129,10 @@
<item quantity="one">%d missatge</item>
<item quantity="other">%d missatges</item>
</plurals>
<plurals name="n_reactions">
<item quantity="one">%d reacció</item>
<item quantity="other">%d reaccions</item>
</plurals>
<plurals name="n_members">
<item quantity="one">%d membre</item>
<item quantity="other">%d membres</item>
@@ -137,8 +143,8 @@
</plurals>
<!-- Short form for "N Items Selected" -->
<plurals name="n_selected">
<item quantity="one">%d Triat</item>
<item quantity="other">%d Triats</item>
<item quantity="one">%d triat</item>
<item quantity="other">%d seleccionats</item>
</plurals>
<string name="self">Jo</string>
@@ -146,11 +152,12 @@
<string name="image">Imatge</string>
<!-- Used in summaries as "Draft: Reply", similar as "Draft: Image". Use a noun here, not a verb (not: "to reply") -->
<string name="reply_noun">Respon</string>
<string name="gif">Gif</string>
<string name="gif">GÌF</string>
<!-- "Stickers" as known from other messengers; in some languages, the English "Sticker" is fine. -->
<string name="sticker">Adhesiu</string>
<string name="add_to_sticker_collection">Afegeix a la Col·lecció d\'adhesius</string>
<string name="open_sticker_folder">Obre la carpeta dels adhesius</string>
<string name="add_to_sticker_collection">Afegeix a la col·lecció d\'adhesius</string>
<string name="add_stickers_instructions">Per a afegir adhesius: premeu \"Obre la carpeta d\'adhesius\", creeu una subcarpeta per a la vostra col·lecció d\'adhesius i arrossegueu-hi la imatge i els fitxers d\'adhesius.</string>
<string name="open_sticker_folder">Obre la carpeta d\'adhesius</string>
<string name="images">Imatges</string>
<string name="audio">Àudio</string>
<string name="voice_message">Missatge de veu</string>
@@ -161,6 +168,7 @@
<string name="video">Vídeo</string>
<string name="documents">Documents</string>
<string name="contact">Contacte</string>
<string name="bot">Bot</string>
<string name="camera">Càmera</string>
<!-- As in "start a video recording" or "take a photo"; eg. the description of the "shutter button" in cameras -->
<string name="capture">Captura</string>
@@ -176,6 +184,16 @@
<string name="webxdc_app">App</string>
<!-- plural of "App"; used to present "Webxdc App" (https://webxdc.org) in a user friendly way. Please stay close to the original term and keep it short (it is used in menus with few screen space). -->
<string name="webxdc_apps">Apps</string>
<string name="webxdc_store_url">URL del selector d\'aplicacions</string>
<string name="webxdc_store_url_explain">Si està definit, s\'usarà l\'URL com a selector d\'aplicacions en comptes del predeterminat</string>
<string name="home">Inici</string>
<string name="games">Jocs</string>
<string name="tools">Eines</string>
<string name="app_size">Mida</string>
<string name="app_date_published">Publicat</string>
<string name="add_to_chat">Afegeix al xat</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">Explora</string>
<string name="unknown">Desconegut</string>
<string name="green">Verd</string>
@@ -188,7 +206,7 @@
<string name="white">Blanc</string>
<string name="zoom">Zoom</string>
<string name="extra_small">Més petit</string>
<string name="extra_small">Molt petit</string>
<string name="small">Petit</string>
<string name="normal">Normal</string>
<string name="large">Gran</string>
@@ -199,37 +217,50 @@
<!-- menu labels (or icon, buttons...) -->
<string name="menu_new_contact">Contacte nou</string>
<string name="menu_new_chat">Nova conversa</string>
<string name="menu_new_classic_contact">Afegeix un contacte de forma manual</string>
<string name="new_classic_contact_explain">Els contactes afegits manualment es poden usar per a enviar correus electrònics clàssics i no es garanteix que se xifrin d\'extrem a extrem.</string>
<string name="menu_new_chat">Xat nou</string>
<string name="menu_new_group">Grup nou</string>
<!-- "Chat" is a verb here, "Message to" would also fit. the string might be used in the "New Chat" screen above the contact list -->
<string name="chat_with">Xateja amb…</string>
<string name="clone_chat">Clona el xat</string>
<!-- consider keeping the term "broadcast" as in WhatsApp or Telegram -->
<string name="broadcast_list">Llista de difusió</string>
<string name="broadcast_lists">Llistes de difusió</string>
<string name="new_broadcast_list">Nova llista de difusió</string>
<string name="new_broadcast_list">Llista de difusió nova</string>
<string name="add_recipients">Afegeix destinataris</string>
<string name="edit_broadcast_list">Edita la llista de difusió</string>
<string name="broadcast_list_name">Nom de la llista de difusió</string>
<string name="please_enter_broadcast_list_name">Poseu el nom de la llista de difusió.</string>
<string name="menu_send">Envia</string>
<string name="menu_toggle_keyboard">Canvia al teclat d\'emoticones</string>
<string name="menu_edit_group">Modifica el grup</string>
<string name="menu_toggle_keyboard">Canvia al teclat d\'emojis</string>
<string name="menu_edit_group">Edita el grup</string>
<string name="menu_group_name_and_image">Nom i imatge del grup</string>
<string name="menu_show_global_map">Mostra totes les ubicacions</string>
<string name="menu_show_global_map">Totes les ubicacions</string>
<string name="menu_archive_chat">Arxiva el xat</string>
<string name="menu_unarchive_chat">Desarxiva el xat</string>
<string name="menu_add_attachment">Afegeix un adjunt</string>
<string name="menu_leave_group">Deixa el grup</string>
<string name="menu_delete_chat">Esborra el xat</string>
<!-- Command to delete all messages in a chat. The chat itself will not be deleted but will be empty afterwards, so make sure to be different from "Delete Chat" here. "Clear" is a verb here, "Empty Chat" would also be fine (eg. in German "Chat leeren") -->
<string name="clear_chat">Neteja el xat</string>
<string name="clear_chat">Buida el xat</string>
<string name="menu_delete_messages">Esborra els missatges</string>
<string name="delete_contact">Esborra el contacte</string>
<string name="menu_delete_location">Voleu esborrar aquesta ubicació?</string>
<string name="menu_message_details">Detalls del missatge</string>
<string name="menu_message_details">Informació del missatge</string>
<string name="menu_copy_to_clipboard">Copia al porta-retalls</string>
<string name="menu_copy_selection_to_clipboard">Copia el seleccionat</string>
<string name="menu_copy_link_to_clipboard">Enllaç de còpia</string>
<string name="share_invite_link">Comparteix l\'enllaç d\'invitació</string>
<string name="share_invite_link_explain">Qualsevol amb aquest enllaç pot veure el vostre perfil i començar un xat amb vós. Compartiu-lo només amb qui tingueu confiança.</string>
<string name="invite_friends">Convida amics</string>
<!-- %1$s is replaced by the user's invitation link ("https://i.delta.chat/...") -->
<string name="invite_friends_text">Contacta amb mi a Delta Chat:\n %1$s</string>
<string name="menu_copy_selection_to_clipboard">Copia la selecció</string>
<string name="menu_copy_link_to_clipboard">Copia l\'enllaç</string>
<string name="menu_copy_text_to_clipboard">Copia el text</string>
<string name="menu_copy_image_to_clipboard">Copia la imatge</string>
<string name="menu_copy_email_to_clipboard">Copia l\'email</string>
<string name="menu_copy_email_to_clipboard">Copia el correu electrònic</string>
<string name="paste_from_clipboard">Enganxa des del porta-retalls</string>
<string name="ask_copy_unopenable_link_to_clipboard">L\'enllaç «%1$d» no es pot obrir al navegador web. Voleu copiar l\'enllaç al porta-retalls?</string>
<string name="menu_forward">Reenvia el missatge</string>
<string name="menu_reply">Respon el missatge</string>
<string name="menu_mute">Silencia les notificacions</string>
@@ -239,40 +270,44 @@
<string name="menu_all_media">Tots els multimèdia</string>
<!-- Command to jump to the original message corresponding to a gallery image or document -->
<string name="show_in_chat">Mostra al xat</string>
<string name="show_app_in_chat">Mostra l\'app al xat</string>
<string name="show_app_in_chat">Mostra l\'aplicació al xat</string>
<string name="menu_share">Comparteix</string>
<!-- Verb "to block sth." usually a mailing list or a contact, not a noun -->
<string name="block">Bloqueja</string>
<string name="block">Bloca</string>
<string name="menu_block_contact">Bloca el contacte</string>
<string name="menu_unblock_contact">Desbloca el contacte</string>
<string name="accept">Accepta</string>
<string name="accept">Accepto</string>
<string name="menu_play">Reprodueix</string>
<string name="menu_pause">Pausa</string>
<string name="menu_scroll_to_bottom">Vés al final</string>
<string name="menu_scroll_to_top">Desplaça\'t al cap d\'amunt</string>
<string name="menu_scroll_to_bottom">Desplaça\'t al final</string>
<string name="menu_scroll_to_top">Desplaça\'t a l\'inici</string>
<string name="menu_help">Ajuda</string>
<string name="what_is_webxdc">Què és Webxdc?</string>
<string name="privacy_policy">Política de Privacitat</string>
<string name="privacy_policy">Política de privadesa</string>
<string name="menu_select_all">Selecciona-ho tot</string>
<string name="select_chat">Tria el xat</string>
<string name="select_more">Tria\'n més</string>
<string name="select_chat">Selecciona el xat</string>
<string name="select_more">Selecciona\'n més</string>
<string name="menu_edit_name">Edita el nom</string>
<!-- The placeholder will be replaced by the name the contact gave themself (if any) or by an e-mail address. -->
<string name="edit_name_explain">Indiqueu un sobrenom que se us mostrarà en comptes de «%1$s». Deixeu-ho buit per a usar el nom triat pel contacte.</string>
<!-- The placeholder will be replaced by the name the contact gave themself (if any) or by an e-mail address. -->
<string name="edit_name_placeholder">Sobrenom per a «%1$s»</string>
<string name="menu_settings">Preferències</string>
<string name="menu_advanced">Avançat</string>
<string name="menu_view_profile">Visualitza el perfil</string>
<string name="menu_view_profile">Veure el perfil</string>
<string name="menu_zoom_in">Apropa</string>
<string name="menu_zoom_out">Allunya</string>
<string name="menu_save_log">Guarda el registre</string>
<string name="menu_save_log">Desa el registre</string>
<string name="menu_more_options">Més opcions</string>
<string name="menu_learn_spelling">Aprèn l\'ortografia</string>
<string name="menu_chat_audit_log">Registre de l\'auditoria de xat</string>
<string name="jump_to_message">Ves al missatge</string>
<string name="copy_json">Copia JSON</string>
<string name="copy_json">Copia el JSON</string>
<string name="replace_draft">Substitueix l\'esborrany</string>
<string name="title_share_location">Comparteix la ubicació amb tots els membres del grup</string>
<string name="device_talk">Missatges del dispositiu</string>
<string name="device_talk_subtitle">Missatges generats localment</string>
<string name="device_talk_explain">Els missatges d\'aquest xat són generats localment per la vostra app de Delta Chat. Els seus creadors els usen per informar-vos d\'actualitzacions de l\'app i problemes durant el seu ús.</string>
<string name="device_talk_explain">Els missatges d\'aquest xat són generats en el vostre dispositiu per a informar-vos sobre actualitzacions de l\'aplicació o de problemes durant el seu ús.</string>
<string name="edit_contact">Edita el contacte</string>
<!-- Verb "to pin", making something sticky, not a noun or abbreviation for "pin number". -->
<string name="pin_chat">Fixa el xat</string>
@@ -284,7 +319,7 @@
<string name="unpin">Desfixa</string>
<string name="ConversationFragment_quoted_message_not_found">No s\'ha trobat el missatge original</string>
<string name="reply_privately">Respon en privat</string>
<string name="source_code">Codi Font</string>
<string name="source_code">Codi font</string>
<!-- Menu item beside an app/chat that adds an icon to the system's home screen. If the user taps that icon, the app/chat is opened directly. -->
<string name="add_to_home_screen">Afegeix a la finestra d\'inici</string>
<string name="donate">Fes un donatiu</string>
@@ -305,19 +340,20 @@
<item quantity="one">Voleu enviar el següent fitxer a %s?</item>
<item quantity="other">Voleu enviar els següents %d fitxers a %s?</item>
</plurals>
<string name="file_saved_to">Fitxer desat a \"%1$s\".</string>
<string name="file_saved_to">El fitxer s\'ha desat a «%1$s».</string>
<string name="videochat">Vídeo xat</string>
<string name="videochat_invite_user_to_videochat">Voleu convidar %1$s a un vídeo xat?</string>
<string name="videochat_invite_user_hint">Això requereix una app compatible o un navegador compatible a ambdós extrems.</string>
<string name="videochat_contact_invited_hint">%1$s ha sigut convidat a un vídeo xat.</string>
<string name="videochat_you_invited_hint">Vostè va convidar a un vídeo xat.</string>
<string name="videochat_tap_to_join">Toca per afegir-t\'hi</string>
<string name="videochat_tap_to_open">Toca per obrir-ho</string>
<string name="videochat_invite_user_hint">Això requereix una aplicació o navegador compatible en ambdós extrems.</string>
<string name="videochat_contact_invited_hint">%1$s ha estat convidat a un vídeo xat.</string>
<string name="videochat_you_invited_hint">Heu enviat una invitació de videoxat.</string>
<string name="videochat_tap_to_join">Toca per a afegir-t\'hi</string>
<string name="videochat_tap_to_open">Toca per a obrir-ho</string>
<string name="videochat_instance">Instància de vídeo xat</string>
<string name="videochat_instance_placeholder">La vostra instància de vídeo xat</string>
<string name="videochat_instance_placeholder">La vostra instància de vídeoxat</string>
<!-- Do not translate "$ROOM", since it is a fixed token Delta Chat will replace with a generated room ID like "aOclju5eCky" -->
<string name="videochat_instance_example">Exemples: https://meet.jit.si/$ROOM o basicwebrtc:https://your-server</string>
<string name="videochat_instance_example">Exemple: https://el-vostre-servidor.org/$SALA</string>
<string name="videochat_instance_explain_2">Si està activada, podeu iniciar un videoxat des de cada xat. Necessita una aplicació o navegador compatible en ambdós extrems.</string>
<string name="videochat_invitation">Invitació a un vídeo xat</string>
<string name="videochat_invitation_body">Heu sigut convidats a un vídeo xat, cliqueu %1$s per unir-vos-hi.</string>
@@ -327,7 +363,7 @@
<item quantity="one">Esborra %d xat? Ja no es mostrarà al llistat de xats, i els seus missatges no romandran al servidor.</item>
<item quantity="other">Voleu esborrar %d xats? Ja no es mostraran al llistat de xats i els missatges no quedaran al servidor.</item>
</plurals>
<string name="ask_delete_named_chat">Segur que voleu esborrar \"%1$s\"?</string>
<string name="ask_delete_named_chat">Voleu esborrar el xat «%1$s»? Ja no es mostrà més en el llistat de xats i els missatges romandran al servidor.</string>
<string name="ask_delete_message">Esteu segur de voler esborrar aquest missatge?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Esborra %d missatge aquí i al servidor?</item>
@@ -339,7 +375,7 @@
</plurals>
<string name="ask_forward">Reenvia missatges a %1$s?</string>
<string name="ask_forward_multiple">Voleu reenviar els missatges a %1$d xats?</string>
<string name="ask_export_attachment">Exporto l\'adjunt? En exportar els adjunts permetreu que altres apps del dispositiu hi puguin accedir.\n\nVoleu continuar endavant?</string>
<string name="ask_export_attachment">En exportar els adjunts permetreu que altres aplicacions del dispositiu hi puguin accedir.\n\nVoleu continuar?</string>
<string name="ask_block_contact">Voleu blocar aquest contacte? En aquest cas ja no en rebreu més missatges.</string>
<string name="ask_unblock_contact">Voleu desblocar aquest contacte? Llavors podreu tornar a rebre\'n missatges.</string>
<string name="ask_delete_contacts">Voleu esborrar els contactes? Això eliminarà definitivament els contactes seleccionats.\n\nEls contactes amb xats oberts i els que estiguin al vostre directori d\'adreces no es poden eliminar definitivament. </string>
@@ -375,15 +411,16 @@
<string name="chat_unable_to_record_audio">No es pot gravar so.</string>
<plurals name="chat_n_new_messages">
<item quantity="one">%d nou missatge</item>
<item quantity="other">%d nous missatges</item>
<item quantity="other">%d missatges nous</item>
</plurals>
<!-- The placeholder will be replaced by the name of the recipient in a one-to-one chat. -->
<string name="chat_new_one_to_one_hint">Envieu un missatge. No hi fa pas res si %1$s no fa servir Delta Chat.</string>
<string name="chat_new_group_hint">Escriviu el primer missatge i així els altres podran respondre a tot el grup.\n\n• No patiu si hi ha membres que no fan servir Delta Chat.\n\n• El lliurament del primer missatge pot trigar una estona.</string>
<string name="chat_new_broadcast_hint">En una llista de difusió, els destinataris rebran missatges en mode de només lectura en un xat amb tu.</string>
<string name="chat_new_group_hint">Els altres membres només veuran aquest grup després que hi envieu el primer missatge.</string>
<string name="chat_record_slide_to_cancel">Llisca per cancel·lar</string>
<string name="chat_record_explain">Mantingues premut per gravar un missatge de veu i deixa anar per enviar-lo</string>
<string name="chat_no_chats_yet_title">Safata d\'entrada buida.\nPrem \"+\" per començar un xat nou.</string>
<string name="chat_all_archived">Tots els xats s\'han arxivat.\nPrem \"+\" per començar-ne un de nou.</string>
<string name="chat_no_chats_yet_title">No hi ha cap xat.\nPrem «+» per a començar un xat nou.</string>
<string name="chat_all_archived">Tots els xats s\'han arxivat.\nPrem «+» per a començar-ne un de nou.</string>
<string name="chat_share_with_title">Comparteix amb</string>
<string name="chat_input_placeholder">Missatge</string>
<string name="chat_archived_label">Arxivat</string>
@@ -392,6 +429,7 @@
<string name="chat_self_talk_subtitle">Missatges enviats a mi mateix/a</string>
<string name="archive_empty_hint">Si arxiveu xats, els voreu aquí.</string>
<string name="saved_messages">Missatges desats</string>
<string name="saved_messages_explain">• Reenvieu missatges aquí per a un accés ràpid\n\n• Preneu notes de text o de veu\n\n• Adjunteu multimedia per a desar-la</string>
<!-- Should match "Saved" from "Saved messages" -->
<string name="saved">Desat</string>
<string name="save_as">Desa com</string>
@@ -417,6 +455,9 @@
<string name="send_file_to">Envia \"%1$s\" a…</string>
<!-- title shown above a list contacts where one should be selected (eg. when a webxdc attempts to send a message to a chat) -->
<string name="send_message_to">Envia el missatge a...</string>
<string name="enable_realtime">Aplicacions en temps real</string>
<string name="enable_realtime_explain">Activa connexions en temps real per a aplicacions compartides als xats. Si està activada, els companys de xat poden descobrir la vostra IP en iniciar una aplicació.</string>
<!-- map -->
<string name="filter_map_on_time">Mostra les ubicacions al llarg del temps</string>
<string name="show_location_traces">Mostra el rastre</string>
@@ -425,22 +466,32 @@
<!-- chat audit log -->
<string name="chat_audit_log_empty_message">Els missatges de sistema d\'aquest xat es mostraran aquí</string>
<string name="chat_audit_log_title">Registre de l\'auditoria del xat per %1$s</string>
<string name="chat_audit_log_description">Només mostra els missatges del sistema i informació. Això és útil per a trobar les últimes accions al xat sense desplaçar-se entre massa missatges.</string>
<!-- punycode warning / labeled links -->
<!-- placeholder is domain/hostname that should be trusted -->
<string name="open_external_url_trust_domain">No em tornis a demanar per %1$s</string>
<string name="puny_code_warning_header">S\'ha detectat un enllaç sospitós</string>
<!-- placeholder contains the hostname converted to ascii -->
<string name="puny_code_warning_question">Esteu segur de voler visitar %1$s?</string>
<!-- this message is shown whenever a link with non-latin characters is clicked. first placeholder is original hostname with special chars, second placeholder is hostname encoded in ascii -->
<string name="puny_code_warning_description">Aquest enllaç usa caràcters amb un aspecte similar però de diferents alfabets. Si seguiu l\'enllaç %1$sus enviarà a %2$s, que és normal per a caràcters no llatins. Si no espereu aquests caràcters, l\'enllaç podria ser maliciós. </string>
<!-- search -->
<string name="search">Busca</string>
<string name="search_in_chat">Busca al xat</string>
<string name="search_files">Busca els fitxers</string>
<string name="search_explain">Busca als xats, contactes i missatges</string>
<string name="search_no_result_for_x">No s\'han trobat resultats per \"%s\"</string>
<!-- Adjective, as in "Show Unread Messages" -->
<string name="search_unread">Sense llegir</string>
<!-- create/edit groups, contact/group profile -->
<string name="group_name">Nom del grup</string>
<string name="group_avatar">Imatge del grup</string>
<string name="remove_group_image">Esborra la imatge del grup</string>
<string name="remove_group_image">Elimina la imatge del grup</string>
<string name="change_group_image">Canvia la imatge del grup</string>
<string name="group_create_button">Crea el grup</string>
<string name="group_please_enter_group_name">Si us plau, poseu nom al grup.</string>
@@ -449,6 +500,8 @@
<string name="profile_encryption">Encriptació</string>
<string name="profile_shared_chats">Xats compartits</string>
<string name="related_chats">Xats relacionats</string>
<!-- Separator between the list of actual members and past members -->
<string name="past_members">Antics membres</string>
<string name="tab_contact">Contacte</string>
<string name="tab_group">Grup</string>
<string name="tab_gallery">Galeria</string>
@@ -462,6 +515,8 @@
<string name="tab_audio_empty_hint">Els fitxers d\'àudio i els missatges de veu compartits en aquest xat sortiran aquí.</string>
<string name="tab_webxdc_empty_hint">Les apps compartides en aquest xat sortiran aquí.</string>
<string name="tab_all_media_empty_hint">Els fitxers multimèdia compartits en aquest xat sortiran aquí.</string>
<string name="all_files_empty_hint">Els documents i altres fitxers compartits en qualsevol xat apareixeran aquí.</string>
<string name="all_apps_empty_hint">Les aplicacions compartides en qualsevol xat apareixeran aquí.</string>
<string name="media_preview">Previsualització multimèdia</string>
<string name="send_message">Envia el missatge</string>
<!-- Placeholder %1$s will be replaced by the name of the contact changing their address. Placeholders %2$s and %3$s will be replaced by old/new email addresses. -->
@@ -470,7 +525,22 @@
<!-- "Second Device" can also be translated as "Another Device", if that is catchier in the destination language. However, make sure to use the term consistently. -->
<string name="multidevice_title">Afegeix un segon dispositiu</string>
<string name="multidevice_same_network_hint">Assegureu-vos que els dos dispositius estan a la mateixa Wi-Fi o xarxa</string>
<string name="multidevice_this_creates_a_qr_code">Això crea codi QR que es pot escanejar en el segon dispositiu per a copiar el perfil.</string>
<string name="multidevice_install_dc_on_other_device">Instal·leu Delta Chat en el vostre altre dispositiu (https://get.delta.chat)</string>
<!-- Shown inside a "QR code card" with very limited space; please formulate the text as short as possible therefore. The placeholder will be replaced by name and/or address eg. "Scan to set up second device for Alice (alice@example.org)" -->
<string name="multidevice_qr_subtitle">Escanegeu-lo per configurar un segon dispositiu per a %1$s</string>
<string name="multidevice_receiver_title">Afegeix com a segon dispositiu</string>
<string name="multidevice_open_settings_on_other_device">En el primer dispositiu, aneu a «Configuració / Afegeix un segon dispositiu» i escanegeu el codi que es mostra allà.</string>
<string name="multidevice_receiver_scanning_ask">Voleu copiar el perfil de l\'altre dispositiu en aquest?</string>
<string name="multidevice_abort">Voleu cancel·lar la configuració d\'un segon dispositiu?</string>
<string name="multidevice_abort_will_invalidate_copied_qr">Això invalidarà el codi QR copiat al porta-retalls.</string>
<string name="multidevice_transfer_done_devicemsg">️ El perfil s\'ha transferit al segon dispositiu.</string>
<!-- Shown beside progress bar, stay short -->
<string name="preparing_account">S\'està preparant el perfil...</string>
<!-- Shown beside progress bar, stay short -->
<string name="transferring">S\'està transferint...</string>
<string name="troubleshooting">Resolució de problemes</string>
<!-- Connectivity -->
<!-- Headline for the "Inbox" eg. in the "Connectivity" view -->
<string name="incoming_messages">Missatges entrants</string>
@@ -494,12 +564,26 @@
<string name="part_of_total_used">%1$s de %2$s usats</string>
<!-- welcome and login -->
<!-- Primary button on the welcome screen, allows to create an instant profile -->
<string name="onboarding_create_instant_account">Crea un perfil nou</string>
<!-- Secondary button on the welcome screen, allows to "Add as Second Device", "Restore from Backup" -->
<string name="onboarding_alternative_logins">Ja tinc un perfil</string>
<!-- Instant onboarding title (there is not more to do than to set name and avatar) -->
<string name="instant_onboarding_title">El vostre perfil</string>
<!-- The placeholder will be replaced by instance name, the whole text will link to the instance page -->
<string name="instant_onboarding_agree_instance">Quant als perfils en %1$s</string>
<!-- Secondary, link-like button to open a page with other possible instances -->
<string name="instant_onboarding_show_more_instances">Usa un altre servidor</string>
<string name="instant_onboarding_other_server">Llista els servidors chatmail</string>
<!-- Hint about what happens when "Create Profile" button in pressed; the placeholder will be replaced by the group name -->
<string name="instant_onboarding_group_info">Creeu un perfil per unir-vos al grup \"%1$s\".</string>
<string name="scan_invitation_code">Escaneja el Codi d\'Invitació</string>
<string name="login_title">Identifiqueu-vos</string>
<!-- for classic email, we use the classical term "Account" -->
<string name="login_header">Identifiqueu-vos al vostre servidor</string>
<string name="login_subheader">Als proveïdors de mail coneguts els paràmetres es configuren automàticament. De vegades l\'IMAP s\'ha d\'activar a la interfície web. Consulta el teu proveïdor de correu electrònic o a un amic perquè t\'ajudi. </string>
<string name="login_no_servers_hint">No hi ha servidors de Delta Chat: les teves dades es queden al teu dispositiu!</string>
<string name="login_no_servers_hint">No hi ha servidors de Delta Chat: les vostres dades es queden al vostre dispositiu!</string>
<string name="login_inbox">Safata d\'entrada</string>
<string name="login_imap_login">Nom d\'identificació IMAP</string>
<string name="login_imap_server">Servidor IMAP</string>
@@ -512,10 +596,23 @@
<string name="login_smtp_port">Port SMTP</string>
<string name="login_smtp_security">Seguretat SMTP</string>
<string name="login_auth_method">Mètode d\'autorització</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<!-- the word "Proxy" might be left untranslated unless the destination language has a well-known term for a "Proxy Server", acting intermediary between the app and the chatmail or email server -->
<string name="proxy_settings">Servidor intermediari</string>
<string name="proxy_use_proxy">Usa un servidor intermediari</string>
<string name="proxy_add">Afegeix un servidor intermediari</string>
<string name="proxy_add_explain">Tipus de servidors intermediaris suportats: HTTP(S), SOCK5 i Shadowsocks.</string>
<string name="proxy_add_url_hint">Introduïu l\'enllaç del servidor intermediari aquí</string>
<string name="proxy_invalid">Servidor intermediari no compatible o invàlid</string>
<string name="proxy_list_header">Proxies desats</string>
<string name="proxy_delete">Esborra el proxy</string>
<string name="proxy_delete_explain">Esteu segur de voler esborrar «%1$s»?</string>
<string name="proxy_use_proxy_confirm">Voleu utilitzar el proxy \"%1$s\"?</string>
<string name="proxy_share_explain">Els vostres amics poden afegir aquest servidor intermediari escanejant el codi QR.</string>
<string name="proxy_share_link">Comparteix l\'enllaç</string>
<string name="login_info_oauth2_title">Voleu continuar amb la configuració simplificada?</string>
<string name="login_info_oauth2_text">Ladreça d\'e-mail que heu introduït admet una configuració simplificada. (OAuth2).\n\nEn el pas següent, permeteu que Delta Chat actuï com a xat amb l\'aplicació de correu electrònic..\n\nNo hi ha servidors de Delta Chat, les vostres dades romanen al vostre dispositiu!</string>
<string name="login_info_oauth2_text">Ladreça electrònica que heu introduït admet una configuració simplificada. (OAuth2).\n\nEn el pas següent, permeteu que Delta Chat actuï com a xat amb l\'aplicació de correu electrònic..\n\nNo hi ha servidors de Delta Chat, les vostres dades romanen al vostre dispositiu!</string>
<string name="login_certificate_checks">El certificat coincideix</string>
<string name="login_error_mail">Si us plau poseu una adreça d\'email vàlida</string>
<string name="login_error_server">Si us plau poseu un servidor / adreça IP vàlida</string>
<string name="login_error_port">Si us plau poseu un port vàlid (1-65535)</string>
@@ -525,35 +622,63 @@
<string name="import_backup_no_backup_found">No s\'han trobat còpies de seguretat.\n\nCopieu la còpia de seguretat a \"%1$s\" i torneu-ho a provar. Com a alternativa, premeu \"Comença a escriure\" per encetar el procés de configuració habitual.</string>
<!-- Translators: %1$s will be replaced by the e-mail address -->
<string name="login_error_cannot_login">No es pot iniciar la sessió com a \"%1$s\". Comproveu que l\'adreça electrònica i la contrasenya són correctes.</string>
<!-- TLS certificate checks -->
<string name="accept_invalid_certificates">Accepta certificats no vàlids</string>
<string name="switch_account">Canvia el perfil</string>
<string name="add_account">Afegeix un compte</string>
<string name="profile_tag">Etiqueta privada</string>
<string name="profile_tag_hint">p.ex. treball, família</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Desplaçat a l\'inici</string>
<string name="delete_account">Esborra el perfil</string>
<string name="delete_account_ask">Esteu segur de voler esborrar les dades del vostre perfil?</string>
<string name="unconfigured_account">Perfil sense configurar</string>
<string name="unconfigured_account_hint">Obriu el per perfil per a configurar-lo.</string>
<string name="try_connect_now">Prova de connectar-hi ara</string>
<string name="sync_all">Sincronitza-ho tot</string>
<!-- Translations: %1$s will be replaced by a more detailed error message -->
<string name="configuration_failed_with_error">La configuració ha fallat. Error:%1$s</string>
<!-- share and forward messages -->
<!-- Translators: shown above a chat/contact list when selecting recipients to forward messages -->
<string name="forward_to">Reenvia a ...</string>
<!-- first placeholder is replaced by the number of files (always 2 or more); second placeholder is replaced by a chat name -->
<string name="ask_send_files_to_chat">Voleu enviar %1$d fitxers a \"%2$s\"?</string>
<string name="ask_send_files_to_selected_chats">Voleu enviar %1$d fitxer(s) a %2$d xats?</string>
<string name="share_text_multiple_chats">Voleu enviar aquest text a %1$d xats?\n\n«%2$s»</string>
<string name="share_abort">S\'ha avortat la compartició per falta de permisos.</string>
<!-- preferences -->
<string name="pref_using_custom">Ús personalitzat: %s</string>
<string name="pref_using_default">Ús per defecte: %s</string>
<string name="pref_profile_info_headline">Informació del vostre perfil</string>
<string name="pref_profile_info_headline">El vostre perfil</string>
<string name="pref_profile_photo">Fotografia de perfil</string>
<string name="pref_blocked_contacts">Contactes bloquejats</string>
<string name="blocked_empty_hint">Els contactes blocats apareixeran aquí.</string>
<!-- for classic email, we use the classical term "Account" -->
<string name="pref_password_and_account_settings">Contrasenya i compte</string>
<string name="pref_who_can_see_profile_explain">La vostra imatge de perfil i el vostre nom es mostraran en els missatges que envieu als altres usuaris. La informació que ja s\'hagi enviat no es pot eliminar ni esborrar.</string>
<string name="pref_who_can_see_profile_explain">La vostra imatge de perfil, el vostre nom i també la biografia s\'enviaran amb els missatges que envieu als altres usuaris.</string>
<string name="pref_your_name">El vostre nom</string>
<!-- Translators: Visible only to recipients who DO NOT use Delta Chat, so it's the last line in an E-mail and not a "Status". -->
<string name="pref_default_status_label">Signatura</string>
<string name="pref_enter_sends">La tecla \"Intro\" envia</string>
<string name="pref_enter_sends_explain">Els missatges s\'enviaran prement la tecla \"Intro\"</string>
<string name="pref_outgoing_balanced">Balancejat</string>
<string name="pref_outgoing_worse">Pitjor qualitat, mida petita</string>
<string name="pref_vibrate">Vibració</string>
<string name="pref_screen_security">Seguretat de la pantalla</string>
<!-- Translators: Must indicate that there is no guarantee as the system may not honor our request. -->
<string name="pref_screen_security_explain">Demana de bloquejar les captures de pantalla al llistat de recents i dins de l\'app </string>
<string name="pref_screen_security_please_restart_hint">Per fer efectiva la configuració de seguretat de la pantalla, torneu a iniciar laplicació.</string>
<string name="pref_notifications">Notificacions</string>
<string name="pref_mention_notifications">Mencions</string>
<string name="pref_mention_notifications_explain">En els grups silenciats, notifica els missatges dirigits a vós, com ara respostes i reaccions</string>
<string name="pref_notifications_show">Mostra</string>
<string name="pref_notifications_priority">Prioritat</string>
<string name="pref_notifications_explain">Habilita les notificacions del sistema per als missatges nous</string>
<string name="pref_show_notification_content">Mostra el contingut del missatge en la notificació</string>
<string name="pref_show_notification_content_explain">Mostra el remitent i les primeres paraules del missatge en les notificacions</string>
<string name="pref_led_color">Color LED</string>
<string name="pref_sound">So</string>
<string name="pref_silent">Silenci</string>
@@ -566,23 +691,35 @@
<string name="pref_appearance">Aspecte</string>
<string name="pref_theme">Plantilla</string>
<string name="pref_language">Idioma</string>
<string name="pref_use_system_ui_font">Usa la lletra del sistema</string>
<string name="pref_incognito_keyboard">Teclat d\'incògnit</string>
<!-- Translators: Must indicate that there is no guarantee as the system may not honor our request. -->
<string name="pref_incognito_keyboard_explain">Sol·licita al teclat que deshabiliti l\'aprenentatge personalitzat</string>
<string name="pref_read_receipts">Confirmació de lectura</string>
<string name="pref_read_receipts_explain">Si desactiveu la confirmació de lectura dels vostres missatges, tampoc no rebreu la dels altres usuaris.</string>
<string name="pref_server">Servidor</string>
<string name="pref_encryption">Xifratge</string>
<string name="pref_manage_keys">Gestioneu les claus</string>
<string name="pref_use_system_emoji">Useu emojis de sistema</string>
<string name="pref_use_system_emoji_explain">Deshabilita el suport de sèrie per emoticones a Delta Chat</string>
<string name="pref_use_system_emoji">Usa els emojis del sistema</string>
<string name="pref_use_system_emoji_explain">Desactiva el suport de sèrie per emojis a Delta Chat</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Usa la càmera en l\'aplicació</string>
<string name="pref_show_system_contacts">Llegeix la llibreta d\'adreces del sistema</string>
<string name="pref_app_access">Accés a l\'aplicació</string>
<string name="pref_chats">Xats</string>
<string name="pref_in_chat_sounds">Sons d\'entrada</string>
<string name="pref_view_log">Veure el registre</string>
<string name="pref_view_log">Mostra el registre</string>
<string name="pref_saved_log">El registre s\'ha desat a la carpeta «Baixades»</string>
<string name="pref_save_log_failed">No s\'ha pogut desar el registre</string>
<string name="pref_log_header">Registre</string>
<string name="pref_other">Altres</string>
<string name="pref_backup">Còpia de seguretat</string>
<string name="pref_backup_explain">Copia els xats a un magatzem extern</string>
<string name="pref_backup_export_explain">La còpia de seguretat és útil a l\'hora de reinstal·lar l\'aplicació en aquest dispositiu o en un altre.\n\nLa còpia tindrà tot els missatges, contactes i xats i la configuració d\'extrem a extrem d\'Autocrypt. Conserveu el fitxer de la còpia en un lloc segur o esborreu-lo tan aviat com pugueu.</string>
<!-- the placeholder will be replaced by the name of the profile's email address -->
<string name="pref_backup_export_x">Exporta %1$s</string>
<!-- the placeholder will be replaced by the number of profiles to export; the number is always larger than 1 -->
<string name="pref_backup_export_all">Exporta tots %1$d perfils</string>
<string name="pref_backup_export_start_button">Inicia la còpia de seguretat</string>
<string name="pref_backup_written_to_x">La còpia de seguretat s\'ha escrit correctament a %1$s</string>
<string name="pref_managekeys_menu_title">Gestiona les claus</string>
@@ -595,19 +732,82 @@
<!-- No need to translate "Wallpaper" literally. Chose what is common in your language for a "Wallpaper" or a "Background". Avoid adding the term "image" here, as the "Wallpaper" may also be just a single color. -->
<string name="pref_background">Fons</string>
<string name="pref_background_btn_default">Usa la imatge per defecte</string>
<string name="pref_background_btn_gallery">Tria de la galeria</string>
<string name="pref_background_btn_gallery">Trieu de la galeria</string>
<string name="pref_imap_folder_handling">Gestió de carpetes IMAP</string>
<string name="pref_imap_folder_warn_disable_defaults">Si desactiveu aquesta opció, assegureu-vos que el vostre servidor i els altres programes estiguin configurats de la mateixa manera.\n\nAltrament podeu tenir problemes de funcionament.</string>
<string name="pref_watch_sent_folder">Mostra la safata de sortida</string>
<string name="pref_send_copy_to_self">Envia\'n una còpia a mi mateix</string>
<!-- for classic email, we use the classical term "Account" -->
<string name="pref_send_copy_to_self_explain">Imprescindible quan s\'utilitza aquest compte en diversos dispositius.</string>
<string name="pref_auto_folder_moves">Moure automàticament a la carpeta de Delta Chat</string>
<string name="pref_auto_folder_moves_explain">Les converses de xat s\'han mogut per no atapeir la safata dentrada</string>
<string name="pref_show_emails">Mostra els e-mails clàssics</string>
<string name="pref_show_emails">Mostra els correus clàssics</string>
<string name="pref_show_emails_no">No, només xats</string>
<string name="pref_show_emails_accepted_contacts">Per a contactes acceptats</string>
<string name="pref_show_emails_all">Tot</string>
<string name="pref_experimental_features">Funcionalitats experimentals</string>
<string name="pref_on_demand_location_streaming">Difusió de la ubicació sota demanda</string>
<string name="pref_developer_mode">Mode de desenvolupador</string>
<string name="pref_background_default">Imatge per defecte</string>
<string name="pref_background_default_color">Color per defecte</string>
<string name="pref_background_custom_image">Imatge personalitzada</string>
<string name="pref_background_custom_color">Color personalitzat</string>
<string name="export_aborted">S\'ha cancel·lat l\'exportació.</string>
<string name="auto_download_messages">Baixa els missatges automàticament</string>
<!-- %1$s will be replaced by a human-readable number of bytes, eg. 32 KiB, 1 MiB -->
<string name="up_to_x">Fins a %1$s</string>
<string name="download_failed">La baixada ha fallat</string>
<!-- %1$s will be replaced by a human-readable number of bytes, eg. 32 KiB, 1 MiB. Resulting string eg. "1 MiB message" -->
<string name="n_bytes_message">%1$s missatge</string>
<string name="profile_image_select">Trieu la imatge de perfil</string>
<string name="select_your_new_profile_image">Trieu la imatge nova de perfil</string>
<string name="profile_image_delete">Esborra la imatge del perfil</string>
<string name="pref_show_tray_icon">Mostra la icona de la safata</string>
<string name="pref_edit_profile">Edita el perfil</string>
<string name="disable_imap_idle">Desactiva IMAP IDLE</string>
<string name="send_stats_to_devs">Envia estadístiques als desenvolupadors del Delta Chat</string>
<!-- Emoji picker and categories -->
<string name="emoji_search_results">Resultats de la cerca</string>
<string name="emoji_not_found">No s\'ha trobat cap emoji</string>
<string name="emoji_recent">Usats recentment</string>
<string name="emoji_people">Persones i cos</string>
<string name="emoji_nature">Animals i natura</string>
<string name="emoji_foods">Menjar i begudes</string>
<string name="emoji_activity">Activitat</string>
<string name="emoji_places">Viatges i llocs</string>
<string name="emoji_objects">Objectes</string>
<string name="emoji_symbols">Simbols</string>
<string name="emoji_flags">Banderes</string>
<!-- Reactions -->
<string name="reactions">Reaccions</string>
<!-- Verb, the action of adding a "Reaction" to a message. Used eg. in context menus, similar to "Reply" or "Forward" -->
<string name="react">Reacciona</string>
<!-- %1$s will be replaced by an emoji. %2$s will be replaced by message summary (the summary is often long and whole string gets truncated; words after %2$s will often not being visible). Eg. 'You reacted 👍 to "Found my suitcase"'. Use less than 20 characters, otherwise the string will be truncated too soon and too few information are shown. Do not try to translate "reacted to" too strict. Depending on the language, "added 👍 to" or "gave 👍 to" or just "👍 to" may be shorter and/or clearer and work as well. -->
<string name="reaction_by_you">Heu reaccionat amb %1$s a «%2$s»</string>
<!-- automatically delete message -->
<string name="delete_old_messages">Esborra els missatges antics</string>
<string name="autodel_device_title">Esborra els missatges del dispositiu</string>
<string name="autodel_server_title">Esborra els missatges del servidor</string>
<!-- shown below enabled autodel_server-option, should be a summary of autodel_server_ask and remind about the impact -->
<string name="autodel_server_enabled_hint">Això inclou els correus electrònics, contingut multimèdia i «Missatges desats» en totes les carpetes del servidor. No useu aquesta funció si voleu conservar dades al servidor o si useu altres clients de correu més enllà de Delta Chat.</string>
<string name="autodel_server_warn_multi_device_title">Activa l\'esborrament immediat</string>
<string name="autodel_server_warn_multi_device">Si habiliteu l\'esborrament immediat no podeu usar múltiples dispositius en aquest perfil.</string>
<string name="autodel_confirm">Ho entenc, esborra tots aquests missatges</string>
<!-- "At once" in the meaning of "Immediately", without any intervening time. -->
<string name="autodel_at_once">Immediatament després de baixar</string>
<string name="after_30_seconds">Després de 30 segons</string>
<string name="after_1_minute">Després d\'1 minut</string>
<string name="after_5_minutes">Després de 5 minuts</string>
<string name="after_30_minutes">Després de 30 minuts</string>
<string name="autodel_after_1_hour">Després d\'1 hora</string>
<string name="autodel_after_1_day">Després d\'1 dia</string>
<string name="autodel_after_1_week">Després d\'1 setmana</string>
<string name="after_5_weeks">Després de 5 setmanes</string>
<string name="autodel_after_1_year">Després d\'1 any</string>
<!-- autocrypt -->
<string name="autocrypt_send_asm_title">Envia el missatge de configuració Autocrypt</string>
<string name="autocrypt_send_asm_explain_before">Un \"missatge de configuració Autocrypt\" comparteix de forma segura la vostra configuració d\'extrem a extrem amb altres aplicacions compatibles amb Autocrypt.\n\nLa configuració es xifrarà amb un codi de configuració que es mostrarà aquí i que haureu d\'escriure a laltre dispositiu.</string>
@@ -615,46 +815,96 @@
<string name="autocrypt_send_asm_explain_after">Se us ha enviat la vostra configuració. Canvieu a l\'altre dispositiu i obriu el missatge de configuració. Se us demanarà un codi de configuració. Introduïu els dígits següents a l\'indicador.\n\nUn cop fet, l\'altre dispositiu estarà llest per utilitzar Autocrypt.</string>
<string name="autocrypt_prefer_e2ee">Prefereix l\'encriptació d\'extrem a extrem</string>
<string name="autocrypt_asm_subject">Missatge de configuració Autocrypt</string>
<string name="autocrypt_asm_general_body">Aquest és el missatge de configuració Autocrypt que sutilitza per transferir la vostra configuració d\'extrem a extrem entre dispositius.\n\nPer desxifrar i utilitzar aquesta configuració, obriu el missatge en un dispositiu compatible amb Autocript i introduïu el codi de configuració que apareix al dispositiu primari.</string>
<string name="autocrypt_asm_click_body">Aquest és el missatge de configuració Autocrypt que sutilitza per transferir la vostra configuració d\'extrem a extrem entre clients.\n\nPer desxifrar i utilitzar la vostra configuració, toqueu o feu clic en aquest missatge.</string>
<string name="autocrypt_asm_general_body">Aquest és el missatge de configuració Autocrypt que susa per a transferir la vostra configuració d\'extrem a extrem entre dispositius.\n\nPer a desxifrar i usar aquesta configuració, obriu el missatge en un dispositiu compatible amb Autocript i introduïu el codi de configuració que apareix al dispositiu primari.</string>
<string name="autocrypt_asm_click_body">Aquest és el missatge de configuració Autocrypt que susa per a transferir la vostra configuració d\'extrem a extrem entre clients.\n\nPer a desxifrar i usar la vostra configuració, toqueu o feu clic en aquest missatge.</string>
<string name="autocrypt_continue_transfer_title">Missatge de configuració Autocrypt</string>
<string name="autocrypt_continue_transfer_please_enter_code">Si us plau introduïu el codi d\'instal·lació que es mostra a l\'altre dispositiu.</string>
<string name="autocrypt_continue_transfer_succeeded">S\'ha transferit la configuració d\'extrem a extrem. Aquest dispositiu ja està preparat per utilitzar Autocrypt amb la mateixa configuració que laltre dispositiu.</string>
<string name="autocrypt_continue_transfer_succeeded">S\'ha transferit la configuració d\'extrem a extrem. Aquest dispositiu ja està preparat per a usar Autocrypt amb la mateixa configuració que laltre dispositiu.</string>
<string name="autocrypt_continue_transfer_retry">Torna-ho a provar</string>
<string name="autocrypt_bad_setup_code">Codi de configuració incorrecte. Siusplau torneu-ho a provar.\n\nSi no recordeu el codi de configuració Autocrypt, envieu-ne un de nou des de laltre dispositiu.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Confirmació de lectura</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Confirmació de lectura del missatge \"%1$s\".\n\nVol dir que el missatge s\'ha mostrat al dispositiu del receptor, no necessàriament que s\'hagi llegit.</string>
<string name="systemmsg_unknown_sender_for_chat">Remitent desconegut per a aquest xat. Vegeu «informació» per a més detalls.</string>
<string name="systemmsg_subject_for_new_contact">Missatge de %1$s</string>
<string name="systemmsg_failed_sending_to">No s\'ha pogut enviar el missatge a %1$s.</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name -->
<string name="group_name_changed_by_you">Nom del grup \"%1$s\" canviat a \"%2$s\" per mi.</string>
<string name="group_name_changed_by_you">Heu canviat el nom del grup de «%1$s» a «%2$s».</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name, %3$s will be replaced by name and address of the contact who did the action. -->
<string name="group_name_changed_by_other">Nom del grup \"%1$s\" canviat a \"%2$s\" per %3$s.</string>
<string name="group_image_changed_by_you">Imatge de grup canviada per mi.</string>
<string name="group_image_changed_by_you">Heu canviat la imatge de grup.</string>
<!-- %1$s will be replaced by name and address of the contact who did the action -->
<string name="group_image_changed_by_other">Imatge de grup canviada per %1$s.</string>
<!-- %1$s will be replaced by name and address of the contact added to the group -->
<string name="add_member_by_you">Membre %1$s afegit per mi.</string>
<string name="member_x_added">S\'ha afegit el membre %1$s.</string>
<!-- %1$s will be replaced by name and address of the contact added to the group -->
<string name="add_member_by_you">Heu afegit el membre %1$s.</string>
<!-- %1$s will be replaced by name and address of the contact added to the group, %2$s will be replaced by name and address of the contact who did the action -->
<string name="add_member_by_other">Membre %1$s afegit per %2$s.</string>
<!-- %1$s will be replaced by name and address of the contact removed from the group -->
<string name="remove_member_by_you">Membre %1$s eliminat per mi.</string>
<string name="remove_member_by_you">Heu eliminat el membre %1$s.</string>
<!-- %1$s will be replaced by name and address of the contact removed from the group, %2$s will be replaced by name and address of the contact who did the action -->
<string name="remove_member_by_other">Membre %1$s eliminat per %2$s.</string>
<string name="group_image_deleted_by_you">Imatge de grup eliminada per mi.</string>
<!-- "left" in the meaning of "exited" -->
<string name="group_left_by_you">Heu abandonat el grup.</string>
<!-- "left" in the meaning of "exited"; %1$s will be replaced by name and address of the contact leaving the group -->
<string name="group_left_by_other">%1$sha abandonat el grup</string>
<string name="group_image_deleted_by_you">Heu esborrat la imatge de grup.</string>
<!-- %1$s will be replaced by name and address of the contact -->
<string name="group_image_deleted_by_other">Imatge de grup eliminada per %1$s.</string>
<string name="group_image_deleted_by_other">%1$s ha esborrat la imatge de grup.</string>
<string name="location_enabled_by_you">Heu habilitat la difusió de la ubicació.</string>
<!-- %1$s will be replaced by name and address of the contact -->
<string name="location_enabled_by_other">%1$sha habilitat la difusió de la ubicació.</string>
<string name="ephemeral_timer_disabled_by_you">Heu desactivat el temporitzador dels missatges efímers.</string>
<!-- %1$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_disabled_by_other">%1$s ha desactivat el temporitzador dels missatges efímers.</string>
<!-- %1$s will be replaced by the number of seconds (always >1) the timer is set to -->
<string name="ephemeral_timer_seconds_by_you">Heu definit el temporitzador dels missatges efímers a %1$s segons.</string>
<!-- %1$s will be replaced by the number of seconds (always >1) the timer is set to, %2$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_seconds_by_other">%2$s ha definit el temporitzador dels missatges efímers a %1$s segons.</string>
<string name="ephemeral_timer_1_minute_by_you">Heu definit el temporitzador dels missatges fonedissos a 1 segon.</string>
<!-- %1$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_1_minute_by_other">%1$s ha definit el temporitzador dels missatges efímers a 1 minut.</string>
<string name="ephemeral_timer_1_hour_by_you">Heu definit el temporitzador dels missatges fonedissos a 1 hora.</string>
<!-- %1$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_1_hour_by_other">%1$s ha definit el temporitzador dels missatges efímers a 1 hora.</string>
<string name="ephemeral_timer_1_day_by_you">Heu definit el temporitzador dels missatges fonedissos a 1 dia.</string>
<!-- %1$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_1_day_by_other">%1$s ha definit el temporitzador dels missatges efímers a 1 dia.</string>
<string name="ephemeral_timer_1_week_by_you">Heu definit el temporitzador dels missatges fonedissos a 1 setmana</string>
<!-- %1$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_1_week_by_other">%1$s ha definit el temporitzador dels missatges efímers a 1 setmana.</string>
<!-- %1$s will be replaced by the number of minutes (always >1) the timer is set to -->
<string name="ephemeral_timer_minutes_by_you">Heu definit el temporitzador dels missatges fonedissos a %1$s minuts.</string>
<!-- %1$s will be replaced by the number of minutes (always >1) the timer is set to, %2$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_minutes_by_other">%2$s ha definit el temporitzador dels missatges efímers a %1$s minuts.</string>
<!-- %1$s will be replaced by the number of hours (always >1) the timer is set to -->
<string name="ephemeral_timer_hours_by_you">Heu definit el temporitzador dels missatges fonedissos a %1$s hores.</string>
<!-- %1$s will be replaced by the number of hours (always >1) the timer is set to, %2$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_hours_by_other">%2$s ha definit el temporitzador dels missatges efímers a %1$s hores.</string>
<!-- %1$s will be replaced by the number of days (always >1) the timer is set to -->
<string name="ephemeral_timer_days_by_you">Heu definit el temporitzador dels missatges fonedissos a %1$s dies.</string>
<!-- %1$s will be replaced by the number of days (always >1) the timer is set to, %2$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_days_by_other">%2$s ha definit el temporitzador dels missatges efímers a %1$s dies.</string>
<!-- %1$s will be replaced by the number of weeks (always >1) the timer is set to -->
<string name="ephemeral_timer_weeks_by_you">Heu definit el temporitzador dels missatges fonedissos a %1$s setmanes.</string>
<!-- %1$s will be replaced by the number of weeks (always >1) the timer is set to, %2$s will be replaced by name and address of the contact -->
<string name="ephemeral_timer_weeks_by_other">%2$s ha definit el temporitzador dels missatges efímers a %1$s setmanes.</string>
<!-- this may be shown instead of the chat's input field, with buttons "More Info" and "OK" -->
<string name="chat_protection_broken">%1$s ha enviat un missatge des d\'un altre dispositiu.</string>
<string name="chat_protection_broken_tap_to_learn_more">%1$s ha enviat un missatge des d\'un altre dispositiu. Toqueu per a obtenir més informació.</string>
<string name="devicemsg_self_deleted">Heu esborrat el xat «Missatges desats».\n\n️ Per a usar altre cop la funcionalitat de «Missatges desats», creeu un xat nou amb vós mateix.</string>
<!-- qr code stuff -->
<string name="qr_code">Codi QR</string>
<string name="load_qr_code_as_image">Carrega el codi QR com a imatge</string>
<string name="qrscan_title">Escaneja codi QR</string>
<string name="qrscan_hint">Poseu la càmera davant del codi QR</string>
<string name="qrscan_ask_join_group">Voleu unir-vos al grup \"%1$s\"?</string>
<string name="qrscan_ask_join_group">Voleu unir-vos al grup «%1$s»?</string>
<string name="qrscan_fingerprint_mismatch">L\'empremta escanejada no coincideix amb l\'última empremta de %1$s</string>
<string name="qrscan_no_addr_found">Aquest codi QR conté una empremta digital, però no hi ha cap adreça de correu electrònic.\n\nPer a una verificació fora de banda, establiu primer una connexió xifrada amb el destinatari.</string>
<string name="qrscan_contains_text">Text del codi QR escanejat:\n\n%1$s</string>
<string name="qrscan_contains_url">URL del codi QR escanejat:\n\n%1$s</string>
<string name="qrscan_fingerprint_label">Empremta</string>
<string name="revive_qr_code">Activa el codi QR</string>
<string name="qrshow_title">Codi QR d\'invitació</string>
<string name="qrshow_x_joining">%1$s s\'uneix.</string>
<string name="qrshow_x_verified">%1$s verificat.</string>
@@ -665,10 +915,13 @@
<string name="qrshow_join_contact_title">Codi QR d\'invitació</string>
<!-- This text is shown inside the "QR code card" with very limited space; please formulate the text as short as possible therefore. The placeholder will be replaced by name and address eg. "Scan to chat with Alice (alice@example.org)" -->
<string name="qrshow_join_contact_hint">Escanegeu això per establir contacte amb %1$s</string>
<string name="qrshow_join_contact_no_connection_toast">No hi ha connexió a internet, no es pot fer la configuració amb codi QR.</string>
<string name="set_name_and_avatar_explain">Indiqueu un nom que els vostres contactes puguin reconèixer. També podeu establir una imatge de perfil.</string>
<string name="contact_verified">%1$s verificat.</string>
<string name="contact_not_verified">No es pot verificar%1$s</string>
<!-- translators: "setup" is the "encryption setup" here, as in "Autocrypt Setup Message" -->
<string name="contact_setup_changed">Configuració canviada per %1$s</string>
<string name="mailto_dialog_header_select_chat">Trieu el xat on enviar el missatge</string>
<!-- notifications -->
<string name="notify_reply_button">Respondre</string>
<string name="notify_new_message">Missatge nou</string>
@@ -678,23 +931,34 @@
<string name="notify_name_and_message">Nom i missatge</string>
<string name="notify_name_only">Només nom</string>
<string name="notify_no_name_or_message">Ni nom ni missatge</string>
<string name="new_messages">Missatges nous</string>
<!-- Body text for a generic "New messages" notification. Shown if we do not have more information about a new messages. Note, that the string is also referenced at https://github.com/deltachat/notifiers -->
<string name="new_messages_body">Teniu missatges nous</string>
<!-- permissions -->
<string name="perm_required_title">Es requereix permís</string>
<string name="perm_continue">Continua</string>
<string name="perm_explain_access_to_camera_denied">Delta Chat demana accés a la càmera per poder fer fotos o vídeos, però li ha estat denegat. Sisplau, vés al menú de configuració de l\'app, busca-hi els \"Permisos\" i habilita\'n la \"Càmera\".</string>
<string name="perm_explain_access_to_mic_denied">Delta Chat demana accés al micròfon per poder enviar missatges d\'àudio, però li ha estat denegat. Sisplau, vés al menú de configuració de l\'app, busca-hi els \"Permisos\" i habilita\'n el \"Micròfon\".</string>
<string name="perm_explain_access_to_storage_denied">Delta Chat necessita accedir a lemmagatzematge per adjuntar o exportar fotos, vídeos o àudio, però se li ha denegat permanentment. Aneu al menú de configuració de l\'aplicació, seleccioneu \"Permisos\" i activeu \"Emmagatzematge\".</string>
<string name="perm_explain_access_to_location_denied">Delta Chat necessita accedir a la ubicació per poder-la adjuntar, però li ha estat denegada de forma permanent. Vés a les preferències del menú de l\'aplicació, tria \"Permisos i activa-hi la \"Ubicació\".</string>
<string name="perm_explain_access_to_storage_denied">Per a rebre o enviar fitxers, aneu a la configuració de l\'aplicació, seleccioneu «Permisos» i activeu «Emmagatzematge».</string>
<string name="perm_explain_access_to_location_denied">Per a adjuntar la ubicació, aneu a la configuració de l\'aplicació, trieu «Permisos» i activeu la «Ubicació».</string>
<string name="perm_explain_access_to_notifications_denied">Per a rebre les notificacions, aneu a «Configuració del sistema / Aplicacions / Delta Chat» i activeu «Notificacions»</string>
<string name="ImageEditorHud_add_text">Afegeix text</string>
<string name="ImageEditorHud_rotate">Gira</string>
<!-- dc_str_* resources -->
<string name="encrypted_message">Missatge encriptat</string>
<!-- strings introduced on desktop. we want to share strings between the os, in general, please do not add generic strings here -->
<string name="about_offical_app_desktop">Aquesta és l\'aplicació d\'escriptori oficial de Delta Chat.</string>
<string name="welcome_desktop">Us donem la benvinguda al Delta Chat</string>
<string name="global_menu_preferences_language_desktop">Trieu l\'idioma...</string>
<string name="global_menu_file_desktop">Arxiva</string>
<string name="global_menu_file_quit_desktop">Surt</string>
<string name="global_menu_edit_desktop">Modifica</string>
<string name="global_menu_edit_undo_desktop">Desfés</string>
<string name="global_menu_edit_redo_desktop">Refés</string>
<string name="global_menu_edit_cut_desktop">Talla</string>
<string name="global_menu_edit_cut_desktop">Retalla</string>
<string name="global_menu_edit_copy_desktop">Copia</string>
<string name="global_menu_edit_paste_desktop">Enganxa</string>
<string name="global_menu_view_desktop">Mostra</string>
@@ -702,25 +966,89 @@
<string name="global_menu_view_developer_desktop">Desenvolupador</string>
<string name="global_menu_view_developer_tools_desktop">Eines de desenvolupador</string>
<string name="global_menu_help_desktop">Ajuda</string>
<string name="global_menu_help_contribute_desktop">Col·labora a GitHub</string>
<string name="delta_chat_homepage">Lloc web de Delta Chat</string>
<string name="contribute">Col·laboreu</string>
<string name="global_menu_help_report_desktop">Informa d\'un problema</string>
<string name="no_chat_selected_suggestion_desktop">Tria un xat o crea\'n un de nou</string>
<string name="global_menu_help_about_desktop">Quant al Delta Chat</string>
<string name="global_menu_file_open_desktop">Obre el Delta Chat</string>
<string name="global_menu_minimize_to_tray">Minimitza</string>
<string name="no_chat_selected_suggestion_desktop">Trieu un xat o creeu-ne un de nou</string>
<string name="write_message_desktop">Escriu un missatge</string>
<string name="encryption_info_title_desktop">Informació de xifratge</string>
<string name="delete_message_desktop">Esborra missatge</string>
<string name="delete_message_desktop">Esborra el missatge</string>
<string name="more_info_desktop">Més informació</string>
<string name="timestamp_format_m_desktop">MMM D</string>
<string name="timestamp_format_m_desktop">D MMM</string>
<string name="remove_desktop">Elimina</string>
<string name="save_desktop">Desa</string>
<!-- Opposite of "Save". Undo a "Save" action. Similar to "Unmute", "Unpin". Could also be worded as "Save no longer" or so. -->
<string name="unsave">No desis</string>
<string name="name_desktop">Nom</string>
<string name="select_group_image_desktop">Tria una imatge de grup</string>
<string name="select_group_image_desktop">Trieu una imatge de grup</string>
<string name="export_backup_desktop">Exporta la còpia de seguretat</string>
<string name="autocrypt_correct_desktop">S\'ha transferit correctament la configuració Autocrypt!</string>
<string name="forget_login_confirmation_desktop">Voleu suprimir aquesta sessió? S\'eliminarà tot, incloent-hi la configuració, els contactes, els xats, els missatges i els arxius multimèdia. Aquesta acció és definitiva i no es pot desfer.</string>
<string name="forget_login_confirmation_desktop">Voleu esborrar aquest perfil? S\'esborrarà tot, incloent-hi la configuració, els contactes, els xats, els missatges i el contingut multimèdia. Aquesta acció és definitiva i no es pot desfer.</string>
<string name="message_detail_sent_desktop">enviat</string>
<string name="message_detail_received_desktop">rebut</string>
<string name="menu.view.developer.open.log.folder">Obre la carpeta de registre</string>
<string name="menu.view.developer.open.current.log.file">Obre el fitxer de registre actual</string>
<string name="no_spellcheck_suggestions_found">No s\'ha trobat cap suggeriment ortogràfic.</string>
<string name="show_window">Mostra la finestra</string>
<string name="force_refresh_network">Força l\'actualització de la xarxa</string>
<string name="insert_newline">Insereix un salt de línia</string>
<!-- accessibility, the general idea is to use the normal strings for accessibility hints wherever possible -->
<string name="a11y_delivery_status_error">Estat d\'entrega: error</string>
<string name="a11y_delivery_status_sending">Estat d\'entrega: enviant-se</string>
<string name="a11y_delivery_status_draft">Estat d\'entrega: esborrany</string>
<string name="a11y_delivery_status_delivered">Estat d\'entrega: entregat</string>
<string name="a11y_delivery_status_read">Estat d\'entrega: llegit</string>
<string name="a11y_delivery_status_invalid">Estat d\'entrega no vàlid</string>
<string name="a11y_message_context_menu_btn_label">Accions de missatge</string>
<string name="a11y_disappearing_messages_activated">S\'han activat els missatges efímers</string>
<!-- iOS specific strings, developers: please take care to remove strings that are no longer used! -->
<string name="stop_sharing_location">Deixa de compartir la ubicació</string>
<string name="login_error_no_internet_connection">No hi ha connexió a internet, l\'inici de sessió ha fallat.</string>
<string name="share_account_not_configured">No s\'ha configurat el perfil.</string>
<string name="cannot_play_audio_file">No es pot reproduir l\'`audio.</string>
<!-- iOS camera permission alert -->
<string name="perm_ios_explain_access_to_camera_denied">Per a fer fotos, capturar vídeos o usar l\'escàner de codis QR, obriu la configuració del sistema i activeu «Càmera».</string>
<string name="open_settings">Obre la configuració</string>
<!-- iOS device contact alert -->
<string name="import_device_contacts">Importa els contactes del dispositiu</string>
<string name="import_device_contacts_hint">Per a xatejar amb contactes des del vostre dispositiu, obriu Configuració i activeu «Contactes».</string>
<string name="notifications_avg_minutes">De mitjana, cada %1$d minuts</string>
<string name="notifications_avg_hours">De mitjana, cada %1$d hores</string>
<string name="last_check_at">Comprovat a les %1$s</string>
<string name="system_settings">Paràmetres del sistema</string>
<!-- iOS shortcut widget -->
<!-- use the same translation for "Shortcuts" as the system is using, often the term "Shortcut" stays untranslated; check eg. how the "Shortcuts" system app is called in your locale -->
<string name="shortcuts_widget_title">Dreceres</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="shortcuts_widget_description">Useu «Afegeix al giny» de Delta Chat per a afegir elements</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="remove_from_widget">Elimina del giny</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="add_to_widget">Afegeix al giny</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Delta Chat usa la càmera per a fer i enviar fotos i vídeos i per a escanejar codis QR.</string>
<string name="InfoPlist_NSContactsUsageDescription">Delta Chat usa els vostres contactes per a mostrar una llista d\'adreces electròniques on podeu escriure. Delta Chat no té cap servidor, els contactes no s\'envien enlloc.</string>
<string name="InfoPlist_NSLocationAlwaysAndWhenInUseUsageDescription">Delta Chat necessita permisos per a compartir la vostra ubicació durant el temps que heu habilitat la compartició de la ubicació.</string>
<string name="InfoPlist_NSLocationWhenInUseUsageDescription">Delta Chat necessita permisos per a compartir la vostra ubicació durant el temps que heu habilitat la compartició de la ubicació.</string>
<string name="InfoPlist_NSMicrophoneUsageDescription">Delta Chat usa el vostre micròfon per a enregistrar i enviar missatges de veu i vídeos amb so.</string>
<string name="InfoPlist_NSPhotoLibraryUsageDescription">Delta Chat us permetrà triar quines fotos de la biblioteca s\'han d\'enviar.</string>
<string name="InfoPlist_NSPhotoLibraryAddUsageDescription">Delta Chat vol desar imatges a la biblioteca de fotografies.</string>
<string name="InfoPlist_NSFaceIDUsageDescription">Delta Chat pot usar Face ID per a protegir el vostre perfil local, la creació de còpies de seguretat i la configuració d\'un segon dispositiu.</string>
<!-- android specific strings, developers: please take care to remove strings that are no longer used! -->
<string name="pref_instant_delivery">Entrega immediata</string>
<string name="pref_background_notifications">Usa la connexió en segon pla</string>
<string name="pref_reliable_service">Força la connexió en segon pla</string>
<string name="pref_reliable_service_explain">Causa una notificació permanent</string>
<!-- disabling "Reliable service" will hide a the maybe annoying permanent-notification with the drawback that new-message-notifications get potentially unreliable -->
<string name="perm_enable_bg_reminder_title">Prem aquí per rebre missatges mentre Delta Chat és en segon pla.</string>
<!-- device messages for updates -->
<string name="update_1_50_android">Què hi ha de nou?\n\n❤️‍🔥 Un selector d\'emojis nou amb més emojis\n\n🎮 Aplicacions al xat millorades: rebeu notificacions i obriu les aplicacions suportades segons el context. P. ex. obriu una entrada afegida al calendari directament.\n\n👍 Rebeu notificacions de les reaccions dels vostres missatges\n\n... 🛠️ Correccions i moltes coses més a %1$s</string>
</resources>
-4
View File
@@ -488,9 +488,6 @@
<string name="autocrypt_asm_subject">پەیامی ڕێکخستنی ئۆتۆکریپت</string>
<string name="autocrypt_continue_transfer_title">پەیامی ڕێکخستنی ئۆتۆکریپت</string>
<string name="autocrypt_continue_transfer_retry">دیسان هەوڵدانەوە</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">پەیامەکە کرایەوە</string>
<string name="systemmsg_unknown_sender_for_chat">پەیامنێری ئەم وتووێژە نەناسراوە. بۆ وردەکاری زۆرتر سەیری \'زانیارییەکان\' بکە.</string>
<string name="systemmsg_subject_for_new_contact">پەیام لەلایەن %1$s</string>
<string name="systemmsg_failed_sending_to">هەناردنی پەیام بۆ %1$s سەرنەکەوت</string>
@@ -555,7 +552,6 @@
<string name="global_menu_edit_paste_desktop">لکاندن</string>
<string name="global_menu_view_desktop">دیتن</string>
<string name="global_menu_help_desktop">یارمەتی</string>
<string name="global_menu_help_learn_desktop">زۆرتر سەبارەت بە دێڵتاچات_ەوە بزانە</string>
<string name="global_menu_help_report_desktop">کێشەیەک گوزارشت بکە</string>
<string name="global_menu_help_about_desktop">سەبارەت بە دێڵتا چات</string>
<string name="no_chat_selected_suggestion_desktop">وتووێژێک هەڵبژێرە یان وتووێژێکی نوێ درووست بکە</string>
+1 -8
View File
@@ -444,6 +444,7 @@
<string name="tab_audio_empty_hint">Zde se zobrazí zvukové soubory a hlasové zprávy sdílené v tomto chatu.</string>
<string name="tab_webxdc_empty_hint">Zde se zobrazí aplikace sdílené v tomto chatu.</string>
<string name="tab_all_media_empty_hint">Zde se zobrazí média sdílená v jakémkoli chatu.</string>
<string name="all_apps_empty_hint">Zde se zobrazí aplikace přijaté nebo odeslané v libovolném chatu.</string>
<string name="media_preview">Náhled multimedia</string>
<string name="send_message">Pošli zprávu</string>
<string name="multidevice_install_dc_on_other_device">Nainstalujte si Delta Chat do druhého zařízení (https://get.delta.chat)</string>
@@ -648,10 +649,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Zpráva otevřena</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Odeslaná zpráva \"%1$s\" byla příjemci zobrazena na jeho přístroji.\n\nNicméně přečtení obsahu není zaručeno.</string>
<string name="systemmsg_cannot_decrypt">Tuto zprávu nelze dešifrovat.\n\n• Už teď by mohlo pomoci jednoduše odpovědět na tuto zprávu a požádat odesílatele, aby zprávu poslal znovu.\n\n• Pokud jste právě přeinstalovali Delta Chat, bude nejlepší, když znovu nastavíte Delta Chat a zvolíte \"Přidat jako druhé zařízení\" nebo importujete zálohu. </string>
<string name="systemmsg_unknown_sender_for_chat">Neznámý odesílatel tohoto chatu. Další podrobnosti naleznete v části „informace“. </string>
<string name="systemmsg_subject_for_new_contact">Zpráva od %1$s</string>
@@ -790,8 +787,6 @@
<string name="global_menu_view_developer_desktop">Vývojář</string>
<string name="global_menu_view_developer_tools_desktop">Nástroje pro vývojáře</string>
<string name="global_menu_help_desktop">Nápověda</string>
<string name="global_menu_help_learn_desktop">Víc podrobností o Delta Chatu</string>
<string name="global_menu_help_contribute_desktop">Přispěj na GitHubu</string>
<string name="global_menu_help_report_desktop">Nahlaš problém</string>
<string name="global_menu_help_about_desktop">O aplikaci Delta Chat</string>
<string name="global_menu_file_open_desktop">Otevřít Delta Chat</string>
@@ -827,8 +822,6 @@
<string name="a11y_disappearing_messages_activated">Samomazací zprávy jsou zapnuty</string>
<string name="import_device_contacts_hint">Chcete-li chatovat s kontakty ze svého zařízení, otevřete Nastavení a povolte „Kontakty“.</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Zde se zobrazí aplikace přijaté nebo odeslané v libovolném chatu. „Soubory“ zobrazuje právě stažené aplikace. </string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Delta Chat využívá kameru k focení, filmování a snímání QR kódů.</string>
<string name="InfoPlist_NSContactsUsageDescription">Delta Chat používá tvé kontakty k zobrazení e-mailů na které můžeš psát. Delta Chat nemá žádné vlastní servery - tvé kontakty se nikam noposílají.</string>
-15
View File
@@ -396,14 +396,6 @@
<string name="login_smtp_port">SMTP port</string>
<string name="login_smtp_security">SMTP sikkerhed</string>
<string name="login_auth_method">Autorisationsmetode</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Brug SOCKS5</string>
<string name="login_socks5_host">SOCKS5 Værtsnavn</string>
<string name="login_socks5_port">SOCKS5 Port</string>
<string name="login_socks5_user">SOCKS5 Brugernavn</string>
<string name="login_socks5_password">SOCKS5 adgangskode</string>
<string name="login_info_oauth2_title">Fortsæt med forenklet opsætning?</string>
<string name="login_info_oauth2_text">Indtastet e-mail adresse understøtter simple opsætning (OAuth2).\n\nTillad i næste trin at Delta Chat agerer som samtale med e-mail program.\n\nDer er ingen Delta Chat servere, data forbliver på enhed.</string>
<string name="login_certificate_checks">Certifikationstjek</string>
@@ -581,11 +573,6 @@
<string name="autocrypt_bad_setup_code">Ugyldig opsætningskode. Prøv igen.\n\nKan opsætningskoden ikke huskes, send blot en anden Autocrypt opsætning besked fra den anden enhed.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Besked åbnet</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Beskeden \"%1$s\" du har sendt blev vist på modtagerens skærm.\n\nDette er ikke en garanti for at indholdet blev læst.</string>
<string name="systemmsg_unknown_sender_for_chat">Ukent afsender af denne chat. Se \'info\' for flere detaljer.</string>
<string name="systemmsg_subject_for_new_contact">Besked fra %1$s</string>
<string name="systemmsg_failed_sending_to">Mislykket forsøg på afsendelse af besked til %1$s.</string>
@@ -716,8 +703,6 @@
<string name="global_menu_view_developer_desktop">Udvikler</string>
<string name="global_menu_view_developer_tools_desktop">Udvikler værktøj</string>
<string name="global_menu_help_desktop">Hjælp</string>
<string name="global_menu_help_learn_desktop">Lær mere om Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Bidrag på GitHub</string>
<string name="global_menu_help_report_desktop">Rapporter en sag</string>
<string name="global_menu_help_about_desktop">Om Delta Chat</string>
<string name="global_menu_minimize_to_tray">Minimer</string>
+18 -28
View File
@@ -192,6 +192,8 @@
<string name="app_size">Größe</string>
<string name="app_date_published">Veröffentlicht</string>
<string name="add_to_chat">Zum Chat hinzufügen</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">Entdecken</string>
<string name="unknown">Unbekannt</string>
<string name="green">Grün</string>
@@ -219,6 +221,8 @@
<string name="new_classic_contact_explain">Manuell hinzugefügte Kontakte können verwendet werden, um klassische E-Mail-Adressen anzuschreiben; diese sind nicht garantiert Ende-zu-Ende-verschlüsselt.</string>
<string name="menu_new_chat">Neuer Chat</string>
<string name="menu_new_group">Neue Gruppe</string>
<!-- "Chat" is a verb here, "Message to" would also fit. the string might be used in the "New Chat" screen above the contact list -->
<string name="chat_with">Chatte mit…</string>
<string name="clone_chat">Chat klonen</string>
<!-- consider keeping the term "broadcast" as in WhatsApp or Telegram -->
<string name="broadcast_list">Broadcast-Liste</string>
@@ -375,8 +379,8 @@
<string name="ask_forward">Nachricht weiterleiten an %1$s?</string>
<string name="ask_forward_multiple">Nachrichten an %1$d Chats weiterleiten?</string>
<string name="ask_export_attachment">Das Exportieren von Anhängen ermöglicht es allen anderen Anwendungen auf Ihrem Gerät, auf diese zuzugreifen.\n\nFortfahren? </string>
<string name="ask_block_contact">Diesen Kontakt blockieren? Sie werden keine Nachrichten mehr von diesem Kontakt erhalten.</string>
<string name="ask_unblock_contact">Diesen Kontakt nicht mehr blockieren? Nachrichten von diesem Kontakt werden dann wieder angezeigt.</string>
<string name="ask_block_contact">Diesen Kontakt blockieren?\n\nDirektnachrichten oder Gruppen, die von blockierten Kontakten erstellt wurden, werden nicht angezeigt.\n\nIn anderen Gruppen mit blockierten Kontakten werden deren Nachrichten weiterhin angezeigt.</string>
<string name="ask_unblock_contact">Diesen Kontakt nicht mehr blockieren?</string>
<string name="ask_delete_contacts">Kontakte dauerhaft löschen?\n\nKontakte mit laufenden Chats und Kontakte aus dem Adressbuch des Systems können nicht dauerhaft gelöscht werden.</string>
<string name="ask_delete_contact">Kontakt %1$s dauerhaft löschen?\n\nKontakte mit laufenden Chats und Kontakte aus dem Adressbuch des Systems können nicht dauerhaft gelöscht werden.</string>
<string name="cannot_delete_contacts_in_use">Kontakte mit laufenden Chats können nicht gelöscht werden.</string>
@@ -513,6 +517,8 @@
<string name="tab_audio_empty_hint">In diesem Chat geteilte Audiodateien und Sprachnachrichten werden hier angezeigt.</string>
<string name="tab_webxdc_empty_hint">In diesem Chat geteilte Apps werden hier angezeigt.</string>
<string name="tab_all_media_empty_hint">Medien aus allen Chats werden hier angezeigt.</string>
<string name="all_files_empty_hint">Dokumente und Dateien aus allen Chats werden hier angezeigt.</string>
<string name="all_apps_empty_hint">Apps aus allen Chats werden hier angezeigt.</string>
<string name="media_preview">Medien-Vorschau</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Raster im Seitenverhältnis</string>
@@ -583,7 +589,7 @@
<!-- Instant onboarding title (there is not more to do than to set name and avatar) -->
<string name="instant_onboarding_title">Ihr Profil</string>
<!-- The placeholder will be replaced by the default onboarding server -->
<string name="instant_onboarding_agree_default2">Datenschutzerklärung für %1$s</string>
<string name="instant_onboarding_agree_default2">Nutzungsbedingungen und Datenschutzerklärung für %1$s</string>
<!-- The placeholder will be replaced by instance name, the whole text will link to the instance page -->
<string name="instant_onboarding_agree_instance">Infos zu Profilen auf %1$s</string>
<!-- Confirmation button on the instant onboarding screen -->
@@ -635,14 +641,6 @@
<string name="proxy_share_explain">Freunde können das Proxy durch Scannen des QR-Codes verwenden.</string>
<string name="proxy_share_link">Link teilen</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">SOCKS5 verwenden</string>
<string name="login_socks5_host">SOCKS5-Host</string>
<string name="login_socks5_port">SOCKS5-Port</string>
<string name="login_socks5_user">SOCKS5-Anmeldename</string>
<string name="login_socks5_password">SOCKS5-Passwort</string>
<string name="login_info_oauth2_title">Weiter mit vereinfachter Einrichtung?</string>
<string name="login_info_oauth2_text">Die eingegebene E-Mail-Adresse unterstützt eine vereinfachte Einrichtung (OAuth 2.0).\n\nBitte erlauben Sie Delta Chat im nächsten Schritt, als Chat-über-E-Mail-App zu arbeiten.\n\nDelta Chat sammelt keine Benutzerdaten, alles bleibt auf Ihrem Gerät.</string>
<string name="login_certificate_checks">Zertifikatsüberprüfung</string>
@@ -739,7 +737,9 @@
<string name="pref_manage_keys">Schlüssel verwalten</string>
<string name="pref_use_system_emoji">System-Emoji benutzen</string>
<string name="pref_use_system_emoji_explain">Eingebaute Emoji-Unterstützung von Delta Chat deaktivieren</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">In-App Kamera verwenden</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">Die In-App-Kamera hat in der Regel weniger Funktionen als die Systemkamera</string>
<string name="pref_show_system_contacts">System-Adressbuch lesen</string>
<string name="pref_show_system_contacts_explain">Anbieten, Chats mit Kontakten aus dem Adressbuch zu erstellen. Bei einigen E-Mail-Anbieter muss zunächst eine Ende-zu-Ende-Verschlüsselung eingerichtet werden.</string>
@@ -878,10 +878,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Empfangsbestätigung</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Ihre Nachricht \"%1$s\" wurde auf dem Empfangsgerät angezeigt.\n\nDas ist keine Garantie dafür, dass sie auch gelesen wurde.</string>
<string name="systemmsg_cannot_decrypt">Diese Nachricht kann nicht entschlüsselt werden.\n\n• Es kann bereits helfen, auf diese Nachricht zu antworten und den Absender zu bitten, die Nachricht noch einmal zu senden.\n\n• Wenn Sie Delta Chat gerade neu installiert haben, ist es am besten, wenn Sie Delta Chat mit \"Als Zweitgerät hinzufügen\" neu einrichten oder ein Backup importieren.</string>
<string name="systemmsg_unknown_sender_for_chat">Absender ist für diesen Chat unbekannt. Siehe \"Info\" für weitere Details,</string>
<string name="systemmsg_subject_for_new_contact">Nachricht von %1$s</string>
@@ -956,7 +952,6 @@
<string name="chat_protection_broken_explanation">Die Ende-zu-Ende-Verschlüsselung kann nicht mehr garantiert werden, wahrscheinlich weil %1$s Delta Chat neu installiert oder eine Nachricht von einem anderen Gerät gesendet hat.\n\nSie können sich persönlich treffen und den QR-Code erneut scannen, um die garantierte Ende-zu-Ende-Verschlüsselung wiederherzustellen.</string>
<string name="invalid_unencrypted_tap_to_learn_more">⚠️ %1$s verlangt eine Ende-zu-Ende-Verschlüsselung, die für diesen Chat noch nicht hergestellt wurde. Tippen, um mehr zu erfahren.</string>
<string name="invalid_unencrypted_explanation">Um eine Ende-zu-Ende-Verschlüsselung herzustellen, können Sie Kontakte persönlich treffen und ihren QR-Code scannen.</string>
<string name="encryption_required_for_new_contact">Ende-zu-Ende-Verschlüsselung ist notwendig, aber für %1$s nicht eingerichtet.\n\nZum Herstellen der Ende-zu-Ende-Verschlüsselung, können Sie Ihren Einladungslink teilen oder den Kontakt persönlich zum QR-Code-Scannen treffen.</string>
<string name="learn_more">Mehr erfahren</string>
<string name="devicemsg_self_deleted">Sie haben den Chat \"Gespeicherte Nachrichten\" gelöscht.\n\n️ Um die Funktion \"Gespeicherte Nachrichten\" erneut zu verwenden, erstellen Sie einfach einen Chat mit sich selbst.</string>
@@ -982,13 +977,11 @@
<string name="qrscan_contains_text">Gescannter QR-Code text:\n\n%1$s</string>
<string name="qrscan_contains_url">Gescannter QR-Code URL:\n\n%1$s</string>
<string name="qrscan_fingerprint_label">Fingerabdruck</string>
<string name="withdraw_verifycontact_explain">Dieser QR-Code kann von anderen gescannt werden, um Sie zu kontaktieren.\n\n Sie können den QR-Code hier deaktivieren und durch erneutes Scannen wieder aktivieren.</string>
<string name="withdraw_verifygroup_explain">Dieser QR-Code kann von anderen gescannt werden, um der Gruppe \"%1$s\" beizutreten.\n\n Sie können den QR-Code hier deaktivieren und durch erneutes Scannen wieder aktivieren.</string>
<string name="withdraw_qr_code">QR-Code deaktivieren</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Dieser QR-Code konnte von anderen gescannt werden, um Sie zu kontaktieren.\n\nDer QR-Code ist auf diesem Gerät nicht aktiv.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Dieser QR-Code konnte von anderen gescannt werden, um der Gruppe \"%1$s\" bezutreten.\n\nDer QR-Code ist auf diesem Gerät nicht aktiv.</string>
<string name="withdraw_verifycontact_explain">Dieser QR-Code kann von anderen gescannt werden, um Sie zu kontaktieren.\n\nSie können den QR-Code zurücksetzen; der bestehende QR-Code oder Einladungslink wird dann nicht mehr funktionieren.</string>
<string name="withdraw_verifygroup_explain">Dieser QR-Code kann von anderen gescannt werden, um der Gruppe \"%1$s\" beizutreten.\n\nSie können den QR-Code zurücksetzen; der bestehende QR-Code oder Einladungslink wird dann nicht mehr funktionieren.</string>
<string name="withdraw_qr_code">QR-Code zurücksetzen</string>
<string name="revive_verifycontact_explain">Dieser QR-Code wurde zurückgesetzt und ist nicht mehr aktiv.</string>
<string name="revive_verifygroup_explain">Dieser QR-Code für die Gruppe \"%1$s\" wurde zurückgesetzt und ist nicht mehr aktiv.</string>
<string name="revive_qr_code">QR-Code aktivieren</string>
<string name="qrshow_title">QR-Einladungscode</string>
<string name="qrshow_x_joining">%1$s beigetreten.</string>
@@ -1086,8 +1079,8 @@
<string name="global_menu_view_developer_desktop">EntwicklerIn</string>
<string name="global_menu_view_developer_tools_desktop">Entwicklungswerkzeug</string>
<string name="global_menu_help_desktop">Hilfe</string>
<string name="global_menu_help_learn_desktop">Mehr über Delta Chat erfahren</string>
<string name="global_menu_help_contribute_desktop">Auf GitHub mitwirken</string>
<string name="delta_chat_homepage">Delta Chat Homepage</string>
<string name="contribute">Mitwirken</string>
<string name="global_menu_help_report_desktop">Ein Problem melden</string>
<string name="global_menu_help_about_desktop">Über Delta Chat</string>
<string name="global_menu_file_open_desktop">Delta Chat öffnen</string>
@@ -1164,8 +1157,6 @@
<string name="system_settings">Systemeinstellungen</string>
<!-- shown below the button "System Settings" on the notification screen. this is a hint about what can be edited on System Settings' Notification page - eg. the notification type (banner, lock screen, notification centre), sound, badges and so on. no need to be exhaustive here, it is only to give the user an idea. -->
<string name="system_settings_notify_explain_ios">Töne, Vorschau, Stil und mehr bearbeiten</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Empfangene oder gesendete Apps werden hier angezeigt. Unter \"Dateien\" können Sie auf heruntergeladene Apps zugreifen.</string>
<!-- iOS shortcut widget -->
<!-- use the same translation for "Shortcuts" as the system is using, often the term "Shortcut" stays untranslated; check eg. how the "Shortcuts" system app is called in your locale -->
<string name="shortcuts_widget_title">Shortcuts</string>
@@ -1200,6 +1191,5 @@
<!-- device messages for updates -->
<string name="update_1_50_android">Was ist neu?\n\n❤️‍🔥 Neuer Emoji-icker mit mehr Emojis\n\n🎮 In-Chat-App Verbesserungen: Benachrichtigungen erhalten und Apps im Kontext öffnen, z.B. einen hinzugefügten Kalendereintrag direkt anzeigen\n\n👍 Lassen Sie sich über Reaktionen auf Ihre Nachrichten benachrichtigen\n\n... 🛠️ FIXES und NOCH MEHR unter %1$s</string>
<string name="update_1_46_ios">Neuer Startbildschirm 🐣 und mehr:\n\n⚡️ Melden Sie sich bei sicheren, schnellen Chatmail-Servern (https://delta.chat/chatmail) an oder nutzen Sie klassische E-Mail-Server\n\n👉 PUSH-Benachrichtigungen auf allen Chatmail-Server\n\n👤 Empfangen Sie „Angehängte Kontakte“ von Ihren Freunden\n\n🥰 Direktere Auswahl von Reaktionen ... und MEHR auf %1$s</string>
<string name="update_switch_profile_placement">️ \"Profil wechseln\" verschoben: Tippen Sie auf Ihr Profilbild in der oberen Ecke des Hauptbildschirms, um Profile hinzuzufügen oder zu wechseln 💡.</string>
</resources>
+1 -19
View File
@@ -437,6 +437,7 @@
<string name="tab_video_empty_hint">Τα βίντεο που κοινοποιούνται σε αυτήν τη συνομιλία θα εμφανίζονται εδώ.</string>
<string name="tab_audio_empty_hint">Τα αρχεία ήχου και τα φωνητικά μηνύματα που κοινοποιούνται σε αυτήν τη συνομιλία θα εμφανίζονται εδώ.</string>
<string name="tab_webxdc_empty_hint">Οι ιδιωτικές εφαρμογές που κοινοποιούνται σε αυτήν τη συνομιλία θα εμφανίζονται εδώ.</string>
<string name="all_apps_empty_hint">Οι ιδιωτικές εφαρμογές που λαμβάνονται ή αποστέλλονται σε οποιαδήποτε συνομιλία θα εμφανίζονται εδώ.</string>
<string name="media_preview">Προεπισκόπιση</string>
<string name="send_message">Αποστολή μηνύματος</string>
<!-- Placeholder %1$s will be replaced by the name of the contact changing their address. Placeholders %2$s and %3$s will be replaced by old/new email addresses. -->
@@ -490,14 +491,6 @@
<string name="login_smtp_port">Θύρα SMTP</string>
<string name="login_smtp_security">Ασφάλεια SMTP</string>
<string name="login_auth_method">Μέθοδος Πιστοποίησης</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Χρήση SOCKS5</string>
<string name="login_socks5_host">SOCKS5 Κεντρικός</string>
<string name="login_socks5_port">Θύρα SOCKS5</string>
<string name="login_socks5_user">Χρήστης SOCKS5</string>
<string name="login_socks5_password">Κωδικός SOCKS5</string>
<string name="login_info_oauth2_title">Συνέχεια με την απλοποιημένη ρύθμιση;</string>
<string name="login_info_oauth2_text">Η εισαγόμενη διεύθυνση e-mail υποστηρίζει μια απλοποιημένη ρύθμιση (OAuth 2.0).\n\nΣτο επόμενο βήμα, επιτρέψτε στο Delta Chat να λειτουργεί ως η εφαρμογή Chat μέσω ηλεκτρονικού ταχυδρομείου.\n\nΔεν υπάρχουν διακομιστές Delta Chat, τα δεδομένα σας παραμένει στη συσκευή σας.</string>
<string name="login_certificate_checks">Έλεγχοι Πιστοποιητικών</string>
@@ -695,11 +688,6 @@
<string name="autocrypt_bad_setup_code">Εσφαλμένος κωδικός εγκατάστασης. Δοκιμάστε ξανά.\n\nΕάν δεν θυμάστε τον κωδικό ρύθμισης, στείλτε ένα νέο μήνυμα ρύθμισης αυτόματης κρυπτογράφησης από την άλλη συσκευή.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Το μήνυμα ανοίχτηκε</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Το μήνυμα \"%1$s\" που στείλατε εμφανίστηκε στην οθόνη του παραλήπτη.\n\nΑυτό δεν αποτελεί εγγύηση για την ανάγνωση του περιεχομένου.</string>
<string name="systemmsg_unknown_sender_for_chat">Άγνωστος αποστολέας για αυτήν τη συνομιλία. Δείτε \"πληροφορίες\" για περισσότερες λεπτομέρειες.</string>
<string name="systemmsg_subject_for_new_contact">Μήνυμα από τον/την %1$s</string>
<string name="systemmsg_failed_sending_to">Αποτυχία αποστολής μηνύματος σε %1$s.</string>
@@ -788,9 +776,7 @@
<string name="withdraw_verifycontact_explain">Αυτός ο κωδικός QR μπορεί να σαρωθεί από άλλους για να επικοινωνήσουν μαζί σας.\n\nΜπορείτε να απενεργοποιήσετε τον κωδικό QR εδώ και να τον ξαναενεργοποιήσετε ξανασαρώνοντάς τον.</string>
<string name="withdraw_verifygroup_explain">Αυτός ο κωδικός QR μπορεί να σαρωθεί από άλλους για να συμμετάσχουν στην ομάδα \"%1$s\".\n\nΜπορείτε να απενεργοποιήσετε τον κωδικό QR εδώ και να τον ξαναενεργοποιήσετε ξανασαρώνοντάς τον.</string>
<string name="withdraw_qr_code">Απενεργοποίηση του κωδικού QR</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Αυτός ο κωδικός QR θα μπορούσε να σαρωθεί από άλλους για να επικοινωνήσουν μαζί σας.\n\nΟ κωδικός QR δεν είναι ενεργός σε αυτήν τη συσκευή.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Αυτός ο κωδικός QR θα μπορούσε να σαρωθεί από άλλους για να συμμετάσχουν στην ομάδα \"%1$s\".\n\nΟ κωδικός QR δεν είναι ενεργός σε αυτήν τη συσκευή.</string>
<string name="revive_qr_code">Ενεργοποίηση του κωδικού QR</string>
<string name="qrshow_title">Κωδικός Πρόσκλησης QR</string>
@@ -872,8 +858,6 @@
<string name="global_menu_view_developer_desktop">Προγραμματιστής</string>
<string name="global_menu_view_developer_tools_desktop">Εργαλεία Προγραμματιστή</string>
<string name="global_menu_help_desktop">Βοήθεια</string>
<string name="global_menu_help_learn_desktop">Μάθετε περισσότερα για το Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Συνεισφέρετε στο GitHub</string>
<string name="global_menu_help_report_desktop">Αναφέρετε ένα πρόβλημα</string>
<string name="global_menu_help_about_desktop">Για το Delta Chat</string>
<string name="global_menu_file_open_desktop">Ανοίξτε το Delta Chat</string>
@@ -945,8 +929,6 @@
<string name="notifications_avg_minutes">Κατά μέσο όρο κάθε %1$d λεπτά</string>
<string name="notifications_avg_hours">Κατά μέσο όρο κάθε %1$d ώρες</string>
<string name="last_check_at">Έλεγχος στις %1$s</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Οι ιδιωτικές εφαρμογές που λαμβάνονται ή αποστέλλονται σε οποιαδήποτε συνομιλία θα εμφανίζονται εδώ. Το \"Αρχεία\" εμφανίζει ιδιωτικές εφαρμογές που μόλις κατεβάσατε.</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Το Delta Chat χρησιμοποιεί την κάμερά σας για λήψη και αποστολή φωτογραφιών και βίντεο και για σάρωση κωδικών QR.</string>
<string name="InfoPlist_NSContactsUsageDescription">Το Delta Chat χρησιμοποιεί τις επαφές σας για να εμφανίσει μια λίστα με διευθύνσεις e-mail στις οποίες μπορείτε να γράψετε. Το Delta Chat δεν έχει διακομιστή, οι επαφές σας δεν αποστέλλονται πουθενά.</string>
+41 -24
View File
@@ -8,6 +8,7 @@
<string name="app_name">Delta Chat</string>
<string name="ok">OK</string>
<string name="cancel">Cancelar</string>
<string name="or_separator">o</string>
<string name="clear_search">Borrar búsqueda</string>
<!-- a noun, used on a button, short for "show link" -->
<string name="link">Enlace</string>
@@ -41,6 +42,7 @@
<string name="close_window">Cerrar ventana</string>
<string name="forward">Reenviar</string>
<string name="create">Crear</string>
<string name="reset">Restablecer</string>
<string name="later">Luego</string>
<!-- "Resend" means "Sending the selected message(s) again to the same chat". The string is used in a menu and should be as short as possible. Resending may be needed after failures or to repost old messages to new members. -->
<string name="resend">Volver a enviar</string>
@@ -49,6 +51,7 @@
<!-- Verb "to unarchive", as in "remove a chat from the archive", opposite of the previous string -->
<string name="unarchive">Des-archivar</string>
<string name="mute">Silenciar</string>
<string name="muted">Silenciar</string>
<string name="ephemeral_messages">Desaparición de mensajes</string>
<string name="ephemeral_messages_hint">Estos ajustes se aplican a todos los participantes que usan Delta Chat. Sin embargo, pueden copiar, guardar y reenviar mensajes o usar otros clientes de correo</string>
<string name="save">Guardar</string>
@@ -196,6 +199,16 @@
<string name="webxdc_app">Aplicación</string>
<!-- plural of "App"; used to present "Webxdc App" (https://webxdc.org) in a user friendly way. Please stay close to the original term and keep it short (it is used in menus with few screen space). -->
<string name="webxdc_apps">Aplicaciones</string>
<string name="webxdc_store_url">App Picker URL</string>
<string name="webxdc_store_url_explain">Si se establece, la URL se utilizará como App Picker en lugar de la predeterminada</string>
<string name="home">Inicio</string>
<string name="games">Juegos</string>
<string name="tools">Herramientas</string>
<string name="app_size">Tamaño</string>
<string name="app_date_published">Publicado</string>
<string name="add_to_chat">Agregar al chat</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">Navegar</string>
<string name="unknown">Desconocido</string>
<string name="green">Verde</string>
@@ -533,6 +546,7 @@
<string name="tab_audio_empty_hint">Los archivos de audio y los mensajes de voz compartidos en este chat se mostrarán aquí.</string>
<string name="tab_webxdc_empty_hint">Apps compartidas en este chat se mostrarán aquí</string>
<string name="tab_all_media_empty_hint">La multimedia compartida en cualquier chat aparecerá aquí</string>
<string name="all_apps_empty_hint">Aplicaciones privadas recibidas o enviadas en cualquier chat aparecerán aquí.</string>
<string name="media_preview">Vista previa de multimedia</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Cuadrícula de relación de aspecto</string>
@@ -603,7 +617,7 @@
<!-- Instant onboarding title (there is not more to do than to set name and avatar) -->
<string name="instant_onboarding_title">Tu perfil</string>
<!-- The placeholder will be replaced by the default onboarding server -->
<string name="instant_onboarding_agree_default2">Política de privacidad para %1$s</string>
<string name="instant_onboarding_agree_default2">Términos y política de privacidad para %1$s</string>
<!-- The placeholder will be replaced by instance name, the whole text will link to the instance page -->
<string name="instant_onboarding_agree_instance">Acerca de los perfiles en %1$s</string>
<!-- Confirmation button on the instant onboarding screen -->
@@ -655,14 +669,6 @@
<string name="proxy_share_explain">Tus amigos pueden agregar este proxy escaneando el código QR.</string>
<string name="proxy_share_link">Compartir enlace</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Usar SOCKS5</string>
<string name="login_socks5_host">Servidor SOCKS5</string>
<string name="login_socks5_port">Puerto SOCKS5</string>
<string name="login_socks5_user">Usuario SOCKS5</string>
<string name="login_socks5_password">Contraseña SOCKS5</string>
<string name="login_info_oauth2_title">¿Continuar con la configuración simplificada?</string>
<string name="login_info_oauth2_text">La dirección de correo electrónico introducida admite una configuración simplificada (OAuth 2.0).\n\nEn el próximo paso, permita que Delta Chat actúe como su aplicación de chat por correo electrónico.\n\nNo hay servidores de Delta Chat, tus datos permanecen en tu dispositivo.</string>
<string name="login_certificate_checks">Comprobaciones de certificados</string>
@@ -682,6 +688,8 @@
<string name="profile_tag">Etiqueta privada</string>
<string name="profile_tag_hint">ej. Trabajo, Familia</string>
<string name="profile_tag_explain">Etiqueta que es visible sólo para ti; útil para diferenciar tus perfiles.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Mover arriba</string>
<string name="delete_account">Eliminar cuenta</string>
<string name="delete_account_ask">¿Estás seguro de que quieres eliminar los datos de tu cuenta?</string>
<string name="delete_account_explain_with_name">Todos los datos de la cuenta de \"%s\" este dispositivo serán eliminados. Incluyendo la configuración de encriptado punto a punto, contactos, chats, mensajes y multimedia. Esta acción no puede ser deshecha.</string>
@@ -727,8 +735,8 @@
<string name="pref_screen_security_explain">Solicitar bloqueo de capturas de pantalla en la lista de recientes y dentro de la aplicación</string>
<string name="pref_screen_security_please_restart_hint">Para aplicar la configuración de seguridad de la pantalla, reinicie la aplicación.</string>
<string name="pref_notifications">Notificaciones </string>
<string name="pref_mention_notifications">Notificar menciones</string>
<string name="pref_mention_notifications_explain">Notificar mensajes en chats silenciados si están dirigidos a ti, como en respuestas o reacciones a tus mensajes</string>
<string name="pref_mention_notifications">Menciones</string>
<string name="pref_mention_notifications_explain">En los grupos silenciados, notifica los mensajes dirigidos a ti, como respuestas o reacciones</string>
<string name="pref_notifications_show">Mostrar</string>
<string name="pref_notifications_priority">Prioridad</string>
<string name="pref_notifications_explain">Habilitar las notificaciones del sistema para nuevos mensajes</string>
@@ -746,6 +754,7 @@
<string name="pref_appearance">Apariencia</string>
<string name="pref_theme">Tema</string>
<string name="pref_language">Idioma</string>
<string name="pref_use_system_ui_font">Usar fuentes del sistema</string>
<string name="pref_incognito_keyboard">Teclado incógnito</string>
<!-- Translators: Must indicate that there is no guarantee as the system may not honor our request. -->
<string name="pref_incognito_keyboard_explain">Solicitar al teclado deshabilitar el aprendizaje personalizado</string>
@@ -756,7 +765,9 @@
<string name="pref_manage_keys">Administrar claves</string>
<string name="pref_use_system_emoji">Usar emoji del sistema</string>
<string name="pref_use_system_emoji_explain">Deshabilitar el soporte de emoji integrado de Delta Chat</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Usar cámara interna</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">La cámara interna suele tener menos funcionalidades que la cámara del sistema</string>
<string name="pref_show_system_contacts">Leer la libreta de direcciones del sistema</string>
<string name="pref_show_system_contacts_explain">Ofrecer crear chats con contactos de la libreta de direcciones. Algunos proveedores necesitan primero una configuración de cifrado de extremo a extremo.</string>
@@ -895,10 +906,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Recibo de lectura</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">El mensaje \"%1$s\" que enviaste se mostró en la pantalla del destinatario.\n\nEsto no garantiza que el contenido haya sido leído.</string>
<string name="systemmsg_cannot_decrypt">Este mensaje no se puede descifrar.\n\n• Podría ayudar simplemente responder a este mensaje y pedir al remitente que lo envíe de nuevo.\n\n• Si acabas de reinstalar Delta Chat, es mejor que configures Delta Chat de nuevo y elijas \"Agregar como segundo dispositivo\" o importes una copia de seguridad.</string>
<string name="systemmsg_unknown_sender_for_chat">Remitente desconocido. Mira \"info\" para más detalles.</string>
<string name="systemmsg_subject_for_new_contact">Mensaje de %1$s</string>
@@ -973,7 +980,6 @@
<string name="chat_protection_broken_explanation">El cifrado de extremo a extremo ya no se puede garantizar, probablemente porque %1$s reinstaló Delta Chat o envió un mensaje desde otro dispositivo.\n\nPueden encontrarse en persona y escanear su código QR nuevamente para restablecer el cifrado de extremo a extremo garantizado.</string>
<string name="invalid_unencrypted_tap_to_learn_more">⚠️ %1$s requiere cifrado de extremo a extremo que aún no está configurado para este chat. Toca para obtener más información.</string>
<string name="invalid_unencrypted_explanation">Para establecer un cifrado de extremo a extremo, puede reunirse con los contactos en persona y escanear su código QR.</string>
<string name="encryption_required_for_new_contact">Se requiere cifrado de extremo a extremo, pero aún no está disponible para %1$s.\n\nPuede compartir su enlace de invitación o reunirse en persona y escanear su código QR.</string>
<string name="learn_more">Aprender más</string>
<string name="devicemsg_self_deleted">Eliminaste los chats de los \"Mensajes guardados\". \n\n️ Para volver a usar los\"Mensajes guardados\", debes crear un chat contigo mismo.</string>
@@ -1002,9 +1008,7 @@
<string name="withdraw_verifycontact_explain">Este código QR puede ser escaneado por otras personas para contactarlo.\n\nPuede desactivar el código QR aquí y reactivarlo escaneándolo de nuevo.</string>
<string name="withdraw_verifygroup_explain">Este código QR puede ser escaneado por otros para unirse al grupo \"%1$s\".\n\nPuede desactivar el código QR aquí y reactivarlo escaneándolo de nuevo.</string>
<string name="withdraw_qr_code">Desactivar código QR</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Este código QR puede ser escaneado por otros para contactarlo.\n\nEl código QR no está activo en este dispositivo.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Este código QR puede ser escaneado por otros para unirse al grupo \"%1$s\".\n\nEl código QR no está activo en este dispositivo.</string>
<string name="revive_qr_code">Activar código QR</string>
<string name="qrshow_title">Código de invitación QR</string>
@@ -1041,7 +1045,6 @@
<!-- translators: "setup" is the "encryption setup" here, as in "Autocrypt Setup Message" -->
<string name="contact_setup_changed">Configuración cambiada para %1$s.</string>
<string name="verified_contact_required_explain">Para garantizar el cifrado de extremo a extremo, solo puedes añadir contactos con una marca de verificación verde</string>
<string name="create_verified_group_ask">¿Quieres crear un grupo protegido que garantiza el cifrado de extremo a extremo?\n\nSolo contactos que tengan una estampilla verde de verificación pueden ser añadidos a un grupo protegido.</string>
<string name="copy_qr_data_success">URL del código QR copiado al portapapeles</string>
<string name="mailto_dialog_header_select_chat">Seleccione el chat para enviar el mensaje</string>
<!-- first placeholder is the name of the chat -->
@@ -1104,8 +1107,8 @@
<string name="global_menu_view_developer_desktop">Programador</string>
<string name="global_menu_view_developer_tools_desktop">Herramientas del Programador</string>
<string name="global_menu_help_desktop">Ayuda</string>
<string name="global_menu_help_learn_desktop">Aprender más sobre Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Contribuir en GitHub</string>
<string name="delta_chat_homepage">Página de inicio de Delta Chat</string>
<string name="contribute">Contribuir</string>
<string name="global_menu_help_report_desktop">Reportar un problema</string>
<string name="global_menu_help_about_desktop">Sobre Delta Chat</string>
<string name="global_menu_file_open_desktop">Abrir Delta Chat</string>
@@ -1118,6 +1121,8 @@
<string name="timestamp_format_m_desktop">MMM D</string>
<string name="remove_desktop">Eliminar</string>
<string name="save_desktop">Guardar</string>
<!-- Opposite of "Save". Undo a "Save" action. Similar to "Unmute", "Unpin". Could also be worded as "Save no longer" or so. -->
<string name="unsave">Deshacer guardado</string>
<string name="name_desktop">Nombre</string>
<string name="select_group_image_desktop">Seleccionar imagen de grupo</string>
<string name="export_backup_desktop">Exportar copia de respaldo</string>
@@ -1177,8 +1182,18 @@
<string name="notifications_avg_minutes">Promedio cada %1$d minutos</string>
<string name="notifications_avg_hours">Promedio cada %1$d horas</string>
<string name="last_check_at">Comprobado en %1$s</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Aplicaciones privadas recibidas o enviadas en cualquier chat aparecerán aquí. \"Archivos\" muestra aplicaciones privadas descargadas. </string>
<string name="system_settings">Configuración del sistema</string>
<!-- shown below the button "System Settings" on the notification screen. this is a hint about what can be edited on System Settings' Notification page - eg. the notification type (banner, lock screen, notification centre), sound, badges and so on. no need to be exhaustive here, it is only to give the user an idea. -->
<string name="system_settings_notify_explain_ios">Editar tipo, insignias, vista previa y más</string>
<!-- iOS shortcut widget -->
<!-- use the same translation for "Shortcuts" as the system is using, often the term "Shortcut" stays untranslated; check eg. how the "Shortcuts" system app is called in your locale -->
<string name="shortcuts_widget_title">Accesos directos</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="shortcuts_widget_description">Utilice «Añadir al widget» de Delta Chat para añadir elementos</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="remove_from_widget">Quitar del widget.</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="add_to_widget">Agregar al widget</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Al permitir el acceso a la cámara podrás tomar fotos y videos.</string>
<string name="InfoPlist_NSContactsUsageDescription">Al permitir acceder a tu libreta de direcciones podrás chatear con los contactos de tu dispositivo.</string>
@@ -1187,6 +1202,9 @@
<string name="InfoPlist_NSMicrophoneUsageDescription">Al permitir el acceso al micrófono podrás grabar audio.</string>
<string name="InfoPlist_NSPhotoLibraryUsageDescription">Al permitir el acceso a la galería de fotos podrás subir tus imágenes desde allí.</string>
<string name="InfoPlist_NSPhotoLibraryAddUsageDescription">Delta Chat quiere guardar imágenes en tu galería</string>
<string name="InfoPlist_NSFaceIDUsageDescription">Delta Chat puede utilizar Face ID para proteger su perfil local, la creación de copias de seguridad y la configuración de un segundo dispositivo.</string>
<!-- android specific strings, developers: please take care to remove strings that are no longer used! -->
<string name="pref_instant_delivery">Entrega inmediata</string>
<string name="pref_background_notifications">Usar conexión en segundo plano</string>
@@ -1201,6 +1219,5 @@
<!-- device messages for updates -->
<string name="update_1_50_android">¿Qué hay de nuevo?\n\n❤️‍🔥 Nuevo selector de emojis con más emojis\n\n🎮 Aplicaciones de chat mejoradas: recibe notificaciones y abre aplicaciones en contexto, por ejemplo, abre una entrada de calendario agregada directamente\n\n👍 Recibe notificaciones sobre las reacciones a tus mensajes\n\n... 🛠️ CORRECCIONES y AÚN MÁS en %1$s</string>
<string name="update_1_46_ios">Nueva pantalla inicial 🐣 y más:\n\n⚡️ Regístrese en servidores de chatmail rápidos y seguros (https://delta.chat/chatmail) o use servidores de correo electrónico clásicos\n\n👉 Notificaciones PUSH para cualquier servidor de chatmail\n\n👤 Reciba \"Contactos adjuntos\" y conéctese con sus amigos\n\n🥰 Selección de reacción más rápida... y MÁS en %1$s</string>
<string name="update_switch_profile_placement">️ Se movió la opción \"Cambiar perfil\": toca tu imagen de perfil en la esquina superior de la pantalla principal para agregar o cambiar perfiles 💡</string>
</resources>
-7
View File
@@ -430,11 +430,6 @@
<string name="autocrypt_bad_setup_code">Ezarpen kode okerra. Saiatu berriro mesedez.\n\nEz baduzu ezarpen kodea gogoratzen, bidali beste Autocrypt ezarpen mezu bat beste gailutik.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Irakurragiria</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Hau \"%1$s\" mezuaren irakurragiri bat da.\n\nHonek mezua jasotzailearen gailuan bistaratu dela esan nahi du, ez edukia irakurri dela.</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name -->
<string name="group_name_changed_by_you">Nik: Taldearen izena \"%1$s\" izatetik \"%2$s\" izatera aldatu da</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name, %3$s will be replaced by name and address of the contact who did the action. -->
@@ -514,8 +509,6 @@
<string name="global_menu_view_developer_desktop">Garatzailea</string>
<string name="global_menu_view_developer_tools_desktop">Garatzaile-tresnak</string>
<string name="global_menu_help_desktop">Laguntza</string>
<string name="global_menu_help_learn_desktop">Ikasi gehiago Delta Chat-i buruz</string>
<string name="global_menu_help_contribute_desktop">Hartu parte GitHub-en</string>
<string name="global_menu_help_report_desktop">Eman arazo baten berri</string>
<string name="global_menu_help_about_desktop">Delta Chat-i buruz</string>
<string name="no_chat_selected_suggestion_desktop">Hautatu txat bat edo sortu txat berri bat</string>
+2 -20
View File
@@ -630,14 +630,6 @@ https://meet.jit.si/$ROOM
<string name="proxy_share_explain">دوست‌هایتان می‌توانند با اسکن کردن کد QR این پروکسی را اضافه کنند.</string>
<string name="proxy_share_link">اشتراک گذاشتن پیوند</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">استفاده از SOCKS5</string>
<string name="login_socks5_host">SOCKS5 Host</string>
<string name="login_socks5_port">SOCKS5 Port</string>
<string name="login_socks5_user">SOCKS5 User</string>
<string name="login_socks5_password">SOCKS5 Password</string>
<string name="login_info_oauth2_title">با تنظیم‌ها ساده‌ شده ادامه می‌دهید؟</string>
<string name="login_info_oauth2_text">نشانی رایانامه وارد شده از تنظیم‌های ساده پشتیبانی می‌کند
(OAuth 2.0).\n\nIn
@@ -731,7 +723,9 @@ https://meet.jit.si/$ROOM
<string name="pref_manage_keys">مدیریت کلیدها</string>
<string name="pref_use_system_emoji">استفاده از شکلک‌های سیستم</string>
<string name="pref_use_system_emoji_explain">غیرفعال کردن شکلک‌های داخلی دلتاچت</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">استفاده از دوربین درون‌برنامه</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">دوربین درون‌برنامه معمولا امکانات کمتری نسبت به دوربین سیستم دارد</string>
<string name="pref_show_system_contacts">خواندن دفترچه آدرس دستگاه</string>
<string name="pref_app_access">دسترسی نرم‌افزار</string>
@@ -865,11 +859,6 @@ https://meet.jit.si/$ROOM
<string name="autocrypt_bad_setup_code">کد برپاسازی نادرست. لطفاً دوباره تلاش کنید. \n\n اگر کد برپاسازی را فراموش کرده‌اید یک پیام برپاسازی اتوکریپت جدید را از دستگاه دیگر ارسال کنید. </string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">پیام باز شد</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">پیام\"%1$s\" که ارسال کرده بودید در ثفحه گیرنده نمایش داده شد\n\n. تضمینی وجود ندارد که محتوای پیام را خوانده باشد. </string>
<string name="systemmsg_unknown_sender_for_chat">فرستنده در این گفت و گو ناشناس است. برای جزئیات بیشتر به \"اطلاعات\" مراجعه کنید.</string>
<string name="systemmsg_subject_for_new_contact">پیام از%1$s</string>
<string name="systemmsg_failed_sending_to">ارسال ناموفق پیام به %1$s.</string>
@@ -941,7 +930,6 @@ https://meet.jit.si/$ROOM
<string name="chat_protection_enabled_explanation">رمزنگاری سراسری پیام‌های این گفتگو اکنون تضمین می‌شود. رمزنگاری سراسری باعث می‌شود پیام‌هایتان بین شما و مخاطبین شما محرمانه بماند. حتی ارائه‌دهنده رایانامه شما هم نمی‌تواند آن‌ها را بخواند.</string>
<string name="chat_protection_broken_tap_to_learn_more">%1$s پیامی را از دستگاه دیگری ارسال کرد. برای اطلاعات بیشتر ضربه بزنید.</string>
<string name="invalid_unencrypted_tap_to_learn_more">⚠️ %1$s به رمزنگاری سراسری نیاز دارد که هنوز برای این گپ پیکره‌بندی نشده است. برای یادگیری بیش‌تر این‌جا بزنید.</string>
<string name="encryption_required_for_new_contact">رمزنگاری سراسری لازم است اما برای %1$s هنوز پیکره‌بندی نشده است.\n\nمی‌توانید پیوند دعوت خود را به مخاطبتان بدهید یا این‌که به صورت حضوری کد QR مخاطب را اسکن کنید.</string>
<string name="learn_more">بیشتر بدانید</string>
<string name="devicemsg_self_deleted">شما گپ «پیام‌های ذخیره شده» را پاک کردید.\n\nℹ️ برای استفادهٔ دوباره از «پیام‌های ذخیره شده» کافی است یک گپ جدید با خودتان درست کنید. </string>
@@ -974,9 +962,7 @@ https://meet.jit.si/$ROOM
<string name="withdraw_verifycontact_explain">دیگران برای ارتباط با شما می‌توانند این کد کیوآر را اسکن کنند. \n\n می‌توان کد کیوآر را در اینجا غیر فعال کنید و با اسکن کردن مجدد، آن را فعال کنید. </string>
<string name="withdraw_verifygroup_explain">این کد کیوآر می‌تواند توسط دیگران و برای پیوستن به گروه \"%1$s\" اسکن شود.\n\n شما می‌تواند این کد کیوآر را در اینجا غیرفعال کنید و با اسکن کردن مجدد، آن را فعال نمایید. </string>
<string name="withdraw_qr_code">غیرفعال کردن کد کیوآر</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">دیگران برای تماس با شما می‌توانند این کد کیوآر را اسکن کنند. \n\n این کد کیوآر در این دستگاه فعال نیست. </string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">دیگران می‌توانند برای پیوستن به گروه \"%1$s\" این کد کیوآر را اسکن کنند. این کد کیوآر روی این دستگاه فعال نیست. </string>
<string name="revive_qr_code">فعال کردن کد کیوآر</string>
<string name="qrshow_title">کد دعوت کیوآر</string>
@@ -1093,8 +1079,6 @@ GNU GPL ورژن ۳
<string name="global_menu_view_developer_desktop">برنامه‌نویس</string>
<string name="global_menu_view_developer_tools_desktop">ابزار برنامه نویس</string>
<string name="global_menu_help_desktop">کمک</string>
<string name="global_menu_help_learn_desktop">یادگیری بیشتر درمورد دلتاچت</string>
<string name="global_menu_help_contribute_desktop">کمک به گیت‌هاب</string>
<string name="global_menu_help_report_desktop">گزارش یک مشکل</string>
<string name="global_menu_help_about_desktop">درباره دلتاچت</string>
<string name="global_menu_file_open_desktop">بازکردن دلتاچت</string>
@@ -1166,8 +1150,6 @@ GNU GPL ورژن ۳
<string name="notifications_avg_minutes">به صورت متوسط هر%1$d دقیقه</string>
<string name="notifications_avg_hours">به صورت متوسط هر %1$d ساعت</string>
<string name="last_check_at">بررسی شده در %1$s</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">برنامه‌های دریافت‌شده یا ارسال‌شده از همه چت‌ها در این‌جا نمایش داده می‌شود. «پرونده‌ها» تنها برنامه‌های اخیرا دریافت‌شده را نمایش می‌دهد.</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">دلتاچت برای گرفتن و ارسال عکس و فیلم و برای اسکن کردن کیوآر کد از دوربین شما استفاده می‌کند. </string>
<string name="InfoPlist_NSContactsUsageDescription">دلتاچت از مخاطبین شما برای نمایش فهرست رایانامه‌هایی که می‌توانید برایشان پیام ارسال کنید استفاده می‌کند. دلتاچت کارساز ندارد، مخاطبین شما به جایی ارسال نمی‌شوند. </string>
+3 -19
View File
@@ -476,6 +476,7 @@
<string name="tab_audio_empty_hint">Tässä keskustelussa jaetut äänitiedostot ja -viestit näkyvät tässä.</string>
<string name="tab_webxdc_empty_hint">Keskustelussa jaetut yksityiset sovellukset näkyvät tässä.</string>
<string name="tab_all_media_empty_hint">Kun keskusteluissa jaetaan mediaa, se tulee näkymään täällä.</string>
<string name="all_apps_empty_hint">Kaikissa keskusteluissa jaetut yksityiset sovellukset näkyvät tässä.</string>
<string name="media_preview">Median esikatselu</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Kuvasuhteen mukainen ruudukko</string>
@@ -584,14 +585,6 @@
<string name="login_smtp_port">SMTP -portti</string>
<string name="login_smtp_security">SMTP -turvallisuusprotokolla</string>
<string name="login_auth_method">Kirjautumismenetelmä</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Käytä SOCKS5</string>
<string name="login_socks5_host">SOCKS5 -isäntä</string>
<string name="login_socks5_port">SOCKS5 -portti</string>
<string name="login_socks5_user">SOCKS5 -käyttäjä</string>
<string name="login_socks5_password">SOCKS5 -salasana</string>
<string name="login_info_oauth2_title">Jatka yksinkertaistetulla käyttöönotolla?</string>
<string name="login_info_oauth2_text">Annettu sähköpostiosoite tukee yksinkertaista käyttöönottoa (OAuth 2.0).\n\nSeuraavassa vaiheessa sinun tulisi antaa Delta Chatille oikeus toimia keskustelusovelluksena sähköpostia hyödyntäen.\n\nDelta Chat ei kerää käyttäjädataa, kaikki tallennetaan vain laitteellesi.</string>
<string name="login_certificate_checks">Varmenteiden tarkastus</string>
@@ -677,7 +670,9 @@
<string name="pref_manage_keys">Hallinnoi avaimia</string>
<string name="pref_use_system_emoji">Käytä järjestelmän emojeja</string>
<string name="pref_use_system_emoji_explain">Poista Delta Chatin sisäänrakennettu emoji -tuki käytöstä</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Käytä sovelluksen sisäistä kameraa</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">Sovelluksen sisäisessä kamerassa on usein vähemmän toiminnallisuutta kuin järjestelmän kamerassa</string>
<string name="pref_show_system_contacts">Lue laitteen osoitekirja</string>
<string name="pref_show_system_contacts_explain">Tarjoa keskustelujen avaamista yhteystietojen perusteella. Jotkin palveluntarjoajat vaativat ensin päästä-päähän salauksen käyttöönottoa. </string>
@@ -814,10 +809,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Viesti avattu</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Lähettämäsi viesti \"%1$s\" näytettiin vastaanottajan näytöllä.\n\nTämä ei takaa, että sisältö luettiin.</string>
<string name="systemmsg_cannot_decrypt">Viestin salausta ei voitu purkaa.\n\n• Voi olla että vastaamalla tähän ja pyytämällä lähettäjää lähettämään viesti uudelleen ongelma ratkeaa.\n\n• Jos juuri uudelleenasensit Delta Chatin, lienee parasta että otat sovelluksen uudelleen käyttöön ja valitset \"Lisää toisena laitteena\" tai palauta varmuuskopiosta.</string>
<string name="systemmsg_unknown_sender_for_chat">Tuntematon lähettäjä. Katso \"lisätietoja\".</string>
<string name="systemmsg_subject_for_new_contact">Viesti lähettäjältä %1$s</string>
@@ -920,9 +911,7 @@
<string name="withdraw_verifycontact_explain">Muut voivat skannata tämän QR-koodin ottaakseen yhteyttä sinuun.\n\nVoit kytkeä QR-koodin pois täällä ja aktivoida sen uudelleen skannaamalla uudestaan.</string>
<string name="withdraw_verifygroup_explain">Muut voivat skannata tämän QR-koodin liittyäkseen ryhmään \"%1$s\".\n\nVoit kytkeä QR-koodin pois täällä ja aktivoida sen uudelleen skannaamalla.</string>
<string name="withdraw_qr_code">Kytke QR-koodi pois käytöstä</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Muut voivat skannata tämän QR-koodin ottaakseen yhteyttä sinuun.\n\nQR-koodi ei ole aktiivinen tällä laitteella.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Muut voivat skannata tämän QR-koodin liittyäkseen ryhmään \"%1$s\".\n\nQR-koodi ei ole aktiivinen tällä laitteella.</string>
<string name="revive_qr_code">Aktivoi QR-koodi</string>
<string name="qrshow_title">QR-kutsukoodi</string>
@@ -1021,8 +1010,6 @@
<string name="global_menu_view_developer_desktop">Kehittäjä</string>
<string name="global_menu_view_developer_tools_desktop">Kehittäjätyökalut</string>
<string name="global_menu_help_desktop">Ohje</string>
<string name="global_menu_help_learn_desktop">Lisätietoja Delta Chatista</string>
<string name="global_menu_help_contribute_desktop">Osallistu GitHubissa</string>
<string name="global_menu_help_report_desktop">Ilmoita ongelma</string>
<string name="global_menu_help_about_desktop">Tietoja Delta Chatista</string>
<string name="global_menu_file_open_desktop">Avaa Delta Chat</string>
@@ -1094,8 +1081,6 @@
<string name="notifications_avg_minutes">Keskimäärin%1$d minuutin välein</string>
<string name="notifications_avg_hours">Keskimäärin %1$d tunnin välein</string>
<string name="last_check_at">Tarkistettu %1$s</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Kaikissa keskusteluissa jaetut yksityiset sovellukset näkyvät tässä. \"Tiedostot\" näyttää ladatut yksityiset sovellukset.</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Delta Chat käyttää kameraa kuvien ja videoiden kuvaamiseen ja lähettämiseen sekä QR-koodien skannaamiseen.</string>
<string name="InfoPlist_NSContactsUsageDescription">Delta Chat käyttää yhteystietojasi näyttämään listan sähköpostiosoitteista, joihin voit kirjoittaa. Delta Chatilla ei ole palvelimia, eikä yhteystietojasi lähetetä mihinkään.</string>
@@ -1116,5 +1101,4 @@
<string name="perm_enable_bg_reminder_title">Napauta vastaanottaaksesi viestejä, kun Delta Chat on taustalla.</string>
<string name="perm_enable_bg_already_done">Annoit jo luvan viestien vastaanottamiselle taustalla.\n\nJos et saa viestejä taustalla, tarkista myös järjestelmäasetukset.</string>
<string name="update_1_46_ios">Uusittu käyttöönotto 🐣 ja muuta:\n\n⚡️ Rekisteröidy nopeille chatmail -palvelimille (https://delta.chat/chatmail) tai käytä tavanomaisia sähköpostipalvelimia\n\n👉 PUSH -ilmoitukset toimivat millä tahansa chatmail -palvelimella\n\n👤 Vastaanota \"Liitettyjä yhteystietoja\" ja ota yhteys ystäviisi\n\n🥰 Nopeampi reaktioiden valinta ... LISÄÄ osoitteessa %1$s</string>
</resources>
+3 -18
View File
@@ -492,6 +492,7 @@
<string name="tab_audio_empty_hint">Les fichiers audio et messages vocaux partagés dans cette discussion seront affichés ici.</string>
<string name="tab_webxdc_empty_hint">Les applis partagées dans cette discussion seront affichées ici.</string>
<string name="tab_all_media_empty_hint">Les fichiers multimédias partagés dans une discussion apparaissent ici.</string>
<string name="all_apps_empty_hint">Les applications envoyées ou reçues dans une discussion apparaissent ici.</string>
<string name="media_preview">Prévisualiser le fichier multimédia</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Grille de proportions</string>
@@ -591,14 +592,6 @@
<string name="proxy_add_explain">Types de proxy supportés: HTTP(S), SOCKS5 et Shadowsocks.</string>
<string name="proxy_list_header">Sauver les proxy</string>
<string name="proxy_delete">Effacer le proxy</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Utiliser SOCKS5</string>
<string name="login_socks5_host">Hôte SOCKS5</string>
<string name="login_socks5_port">Port SOCKS5</string>
<string name="login_socks5_user">Utilisateur SOCKS5</string>
<string name="login_socks5_password">Mot de passe SOCKS5</string>
<string name="login_info_oauth2_title">Continuer avec une configuration simplifiée ?</string>
<string name="login_info_oauth2_text">L\'adresse de courriel saisie prend en charge une configuration simplifiée (OAuth2.0). \n\nDans l\'étape suivante, autorisez Delta Chat à agir comme votre application de Chat avec courriel . Il n\'y a pas de serveur Delta Chat, vos données restent sur votre appareil !</string>
<string name="login_certificate_checks">Vérification du certificat</string>
@@ -684,7 +677,9 @@
<string name="pref_manage_keys">Gérer les clés</string>
<string name="pref_use_system_emoji">Utiliser les émojis système</string>
<string name="pref_use_system_emoji_explain">Désactiver la prise en charge des émojis intégrés de Delta Chat</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Utiliser l\'appareil photo de l\'appli</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">L\'appareil photo de l\'appli possède généralement moins de fonctionnalités que celui du système</string>
<string name="pref_app_access">Accès à l\'application</string>
<string name="pref_chats">Discussions</string>
@@ -812,10 +807,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Accusé de lecture</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Ceci est un accusé de lecture pour le message \"%1$s\".\n\nCela signifie que le message a été affiché sur l\'appareil du destinataire, pas forcément que le contenu ait été lu.</string>
<string name="systemmsg_cannot_decrypt">Ce message ne peut pas être déchiffré.\n\n• Essayez de demander à l\'expéditeur de vous l\'envoyer à nouveaux.\n\n• Si vous venez de réinstaller Delta Chat il serait bien de le reconfigurer en sélectionnant \"Ajouter un deuxième appareil\" ou d\'importer une sauvegarde.</string>
<string name="systemmsg_unknown_sender_for_chat">Expéditeur inconnu de cette discussion. Voir « Info » pour plus de détails.</string>
<string name="systemmsg_subject_for_new_contact">Message de %1$s</string>
@@ -915,9 +906,7 @@
<string name="withdraw_verifycontact_explain">Ce code QR pourrait être scanné par d\'autre personnes pour vous contacter.\n\nVous pouvez désactiver le QR code ici et le réactiver en le scannant ici de nouveau.</string>
<string name="withdraw_verifygroup_explain">Le code QR peut être scanné par d\'autres personnes pour rejoindre le groupe \"%1$s\".\n\nVous pouvez désactiver le QR code ici et le réactiver en le scannant ici de nouveau.</string>
<string name="withdraw_qr_code">Désactiver le QR Code</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Ce code QR pourrait être scanné par d\'autre personnes pour vous contacter.\n\nCe code QR n\'est pas actif sur cet appareil.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Ce code QR pourrait être scanné par d\'autre personnes pour rejoindre le groupe \"%1$s\".\n\nLe code QR n\'est pas actif sur cet appareil.</string>
<string name="revive_qr_code">Activer le QR Code</string>
<string name="qrshow_title">QR Code d\'Invitation</string>
@@ -1015,8 +1004,6 @@
<string name="global_menu_view_developer_desktop">Développeur</string>
<string name="global_menu_view_developer_tools_desktop">Outils de développement</string>
<string name="global_menu_help_desktop">Aide</string>
<string name="global_menu_help_learn_desktop">En savoir plus sur Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Contribuer sur Github</string>
<string name="global_menu_help_report_desktop">Signaler un problème</string>
<string name="global_menu_help_about_desktop">À propos de Delta Chat</string>
<string name="global_menu_file_open_desktop">Ouvrir Delta Chat</string>
@@ -1088,8 +1075,6 @@
<string name="notifications_avg_minutes">Toutes les %1$d minutes en moyenne</string>
<string name="notifications_avg_hours">Toutes les %1$d heures en moyenne</string>
<string name="last_check_at">Dernièrement vu à %1$s</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Les applications envoyées ou reçues dans une discussion apparaissent ici. « Fichiers » affiche les applis que vous venez de télécharger.</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Delta Chat utilise votre appareil photo pour prendre des photos et des vidéos et les envoyer, ainsi que pour scanner des QR codes.</string>
<string name="InfoPlist_NSContactsUsageDescription">Delta Chat utilise vos contacts pour montrer une liste d\'adresses de courriel auxquels vous pouvez écrire. Delta Chat n\'a pas de serveur, vos contacts ne sont envoyés nulle part.</string>
-17
View File
@@ -497,14 +497,6 @@
<string name="login_smtp_port">Porto SMTP</string>
<string name="login_smtp_security">Seguridade SMTP</string>
<string name="login_auth_method">Método de autorización</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Usar SOCKS5</string>
<string name="login_socks5_host">Servidor SOCKS5</string>
<string name="login_socks5_port">Porto SOCKS5</string>
<string name="login_socks5_user">Usuaria SOCKS5</string>
<string name="login_socks5_password">Contrasinal SOCKS5</string>
<string name="login_info_oauth2_title">Continuar co axuste simplificado?</string>
<string name="login_info_oauth2_text">O enderezo introducido soporta o axuste simplificado (OAuth 2.0).\n\nNo seguinte paso, permite a Delta Chat actuar como app de Conversa sobre Correo-e.\n\nNon hai servidores Delta Chat, os teus datos permanecen no dispositivo.</string>
<string name="login_certificate_checks">Comprobacións do certificado</string>
@@ -702,11 +694,6 @@
<string name="autocrypt_bad_setup_code">Código incorrecto. Inténtao outra vez.\n\nSe non lembras o código, envía unha nova Mensaxe de Configuración Autocrypt desde o outro dispositivo.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Mensaxe aberta</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">A mensaxe \"%1$s\" que enviaches mostrouse na pantalla do correspondente.\n\nNon hai garantía de que o contido fose lido.</string>
<string name="systemmsg_unknown_sender_for_chat">Remitente descoñecido para esta convers. Mira en \'info\' para saber máis.</string>
<string name="systemmsg_subject_for_new_contact">Mensaxe de %1$s</string>
<string name="systemmsg_failed_sending_to">Fallou o envío para %1$s.</string>
@@ -768,9 +755,7 @@
<string name="withdraw_verifycontact_explain">Este código QR permite que outras persoas contacten contigo.\n\nPodes desactivar o código QR aquí e reactivalo volvéndoo a escanear.</string>
<string name="withdraw_verifygroup_explain">Este código QR permite que outras persoas se unan ao grupo \"%1$s\".\n\nPodes desactivar aquí o código QR e reactivalo volvéndoo a escanear.</string>
<string name="withdraw_qr_code">Desactivar código QR</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Este código QR podía ser escaneado por outras persoas para contactar contigo.\n\nO código QR non está activo neste dispositio.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">O código QR podía ser escaneado por outras persoas para unirse ao grupo \"%1$s\".\n\nO código QR non está activo neste dispositivo.</string>
<string name="revive_qr_code">Activar código QR</string>
<string name="qrshow_title">Código QR de convite</string>
@@ -848,8 +833,6 @@
<string name="global_menu_view_developer_desktop">Desenvolvedora</string>
<string name="global_menu_view_developer_tools_desktop">Ferramentas de desenvolvedora</string>
<string name="global_menu_help_desktop">Axuda</string>
<string name="global_menu_help_learn_desktop">Coñece máis sobre Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Contribúe en GitHub</string>
<string name="global_menu_help_report_desktop">Informa dun fallo</string>
<string name="global_menu_help_about_desktop">Acerca de Delta Chat</string>
<string name="global_menu_file_open_desktop">Abrir Delta Chat</string>
+10 -21
View File
@@ -192,6 +192,8 @@
<string name="app_size">Méret</string>
<string name="app_date_published">Közzétéve</string>
<string name="add_to_chat">Hozzáadás csevegéshez</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">Böngészés</string>
<string name="unknown">Ismeretlen</string>
<string name="green">Zöld</string>
@@ -512,6 +514,7 @@
<string name="tab_audio_empty_hint">Az ebben a csevegésben megosztott hangfájlok és hangüzenetek itt fognak megjelenni.</string>
<string name="tab_webxdc_empty_hint">Az ebben a csevegésben megosztott alkalmazások itt fognak megjelenni.</string>
<string name="tab_all_media_empty_hint">A bármelyik csevegésben megosztott média itt fog megjelenni.</string>
<string name="all_apps_empty_hint">A bármelyik csevegésben kapott vagy küldött alkalmazások itt fognak megjelenni.</string>
<string name="media_preview">Média előnézete</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Tengelyarányrács</string>
@@ -634,14 +637,6 @@
<string name="proxy_share_explain">Az ismerősei a QR-kód beolvasásával hozzáadhatják ezt a proxyt.</string>
<string name="proxy_share_link">Hivatkozás megosztása</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">SOCKS5 használata</string>
<string name="login_socks5_host">SOCKS5-kiszolgáló</string>
<string name="login_socks5_port">SOCKS5-port</string>
<string name="login_socks5_user">SOCKS5-felhasználó</string>
<string name="login_socks5_password">SOCKS5-jelszó</string>
<string name="login_info_oauth2_title">Folytatja az egyszerűsített beállítást?</string>
<string name="login_info_oauth2_text">A megadott e-mail-cím támogatja az egyszerűsített beállítást (OAuth 2.0).\n\nA következő lépésben engedélyezze a Delta Chat számára, hogy az e-mailen keresztüli csevegés alkalmazásaként működjön.\n\nA Delta Chat nem gyűjt felhasználói adatokat, az Ön összes adata az eszközén van tárolva.</string>
<string name="login_certificate_checks">Tanúsítvány ellenőrzése</string>
@@ -738,7 +733,9 @@
<string name="pref_manage_keys">Privát kulcsok kezelése</string>
<string name="pref_use_system_emoji">Rendszeremodzsik használata</string>
<string name="pref_use_system_emoji_explain">A Delta Chat beépített emodzsi-támogatásának letiltása</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Alkalmazás kamerájának használata</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">Az alkalmazáson belüli kamera általában kevesebb funkcióval rendelkezik, mint a rendszer kamerája.</string>
<string name="pref_show_system_contacts">A rendszer névjegyzékének olvasása</string>
<string name="pref_show_system_contacts_explain">Csevegések létrehozása a névjegyzékéből származó ismerőseivel. Egyes szolgáltatóknál először a végpontok közötti titkosítás beállítására van szükség.</string>
@@ -877,11 +874,7 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Üzenet megnyitva</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Az Ön által küldött „%1$s” tartalmú üzenet megjelent a címzett képernyőjén.\n\nEz nem garancia arra, hogy a tartalmat elolvasták.</string>
<string name="systemmsg_cannot_decrypt">Ez az üzenet nem dekódolható.\n\n• Már az is segíthet, ha egyszerűen válaszol erre az üzenetre, és megkéri a feladóját, hogy küldje el újra az üzenetet.\n\n• Ha most telepítette újra a Delta Chat-et, akkor a legjobb, ha most újraindítja a Delta Chat-et, és kiválasztja a „Második eszközként való hozzáadás” lehetőséget, vagy importál egy biztonsági mentést.</string>
<string name="systemmsg_cannot_decrypt">Ez az üzenet nem dekódolható.\n\n• Már az is segíthet, ha egyszerűen válaszol erre az üzenetre, és megkéri a feladóját, hogy küldje el újra az üzenetet.\n\n• Ha most telepítette újra a Delta Chatet, akkor a legjobb, ha most újraindítja a Delta Chatet, és kiválasztja a „Második eszközként való hozzáadás” lehetőséget, vagy importál egy biztonsági mentést.</string>
<string name="systemmsg_unknown_sender_for_chat">Az üzenet küldője ismeretlen ebben a csevegésben. További részletekért nézze meg az \'Infót\'.</string>
<string name="systemmsg_subject_for_new_contact">Üzenet tőle: %1$s</string>
<string name="systemmsg_failed_sending_to">Nem sikerült elküldeni az üzenetet „%1$s” számára.</string>
@@ -955,7 +948,6 @@
<string name="chat_protection_broken_explanation">A végpontok közötti titkosítás már nem garantálható, valószínűleg azért, mert %1$s újratelepítette a Delta Chatet, vagy egy másik eszközről küldött üzenetet.\n\n Személyesen találkozhat vele, és újra beolvashatja a QR-kódját a garantált végpontok közötti titkosítás visszaállításához.</string>
<string name="invalid_unencrypted_tap_to_learn_more">⚠️ A(z) %1$s végpontok közötti titkosítást igényel, ami még nincs beállítva erre a csevegésre. Koppintson, ha többet szeretne megtudni.</string>
<string name="invalid_unencrypted_explanation">A végpontok közötti titkosítás létrehozásához személyesen is találkozhat az ismerőseivel, és a QR-kódjukat beolvasva bemutathatja őket.</string>
<string name="encryption_required_for_new_contact">A végpontok közötti titkosítás beállítása szükséges, de a(z) %1$s nevű ismerőse esetében az még nincs beállítva.\n\nMegoszthatja a meghívó-hivatkozását, vagy személyesen is találkozhat vele, és beolvashatja a QR-kódját.</string>
<string name="learn_more">Tudjon meg többet</string>
<string name="devicemsg_self_deleted">Ön törölte a „Mentett üzenetek” csevegést.\n\n️ A „Mentett üzenetek” funkció újbóli használatához hozzon létre egy új csevegést önmagával.</string>
@@ -984,9 +976,7 @@
<string name="withdraw_verifycontact_explain">Ezt a QR-kódot mások is beolvashatják, hogy felvegyék önnel a kapcsolatot.\n\nA QR-kódot itt kikapcsolhatja, és újból bekapcsolhatja, ha újra beolvassa.</string>
<string name="withdraw_verifygroup_explain">Ezt a QR-kódot mások is beolvashatják, hogy csatlakozhassanak a(z) „%1$s” nevű csoporthoz.\n\nA QR-kódot itt kikapcsolhatja, és újra bekapcsolhatja, ha újra beolvassa.</string>
<string name="withdraw_qr_code">QR-kód kikapcsolása</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Ezt a QR-kódot mások is beolvashatják, hogy kapcsolatba lépjenek Önnel.\n\nA QR-kód nincs bekapcsolva ezen az eszközön.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Ezt a QR-kódot mások is beolvashatják, hogy csatlakozzanak a(z) „%1$s” nevű csoporthoz.\n\nA QR-kód nincs bekapcsolva ezen az eszközön.</string>
<string name="revive_qr_code">QR-kód bekapcsolása</string>
<string name="qrshow_title">QR-kód-meghívó</string>
@@ -1085,8 +1075,8 @@
<string name="global_menu_view_developer_desktop">Fejlesztő</string>
<string name="global_menu_view_developer_tools_desktop">Fejlesztői eszközök</string>
<string name="global_menu_help_desktop">Súgó</string>
<string name="global_menu_help_learn_desktop">Tudjon meg többet a Delta Chatről</string>
<string name="global_menu_help_contribute_desktop">Hozzájárulás a GitHubon</string>
<string name="delta_chat_homepage">A Delta Chat weboldala</string>
<string name="contribute">Közreműködés</string>
<string name="global_menu_help_report_desktop">Jelentsen egy problémát</string>
<string name="global_menu_help_about_desktop">A Delta Chat-ről</string>
<string name="global_menu_file_open_desktop">Delta Chat megnyitása</string>
@@ -1099,6 +1089,8 @@
<string name="timestamp_format_m_desktop">MMM D</string>
<string name="remove_desktop">Eltávolítás</string>
<string name="save_desktop">Mentés</string>
<!-- Opposite of "Save". Undo a "Save" action. Similar to "Unmute", "Unpin". Could also be worded as "Save no longer" or so. -->
<string name="unsave">Mentés megszüntetése</string>
<string name="name_desktop">Név</string>
<string name="select_group_image_desktop">Csoport képének kiválasztása</string>
<string name="export_backup_desktop">Biztonsági mentés exportálása</string>
@@ -1161,8 +1153,6 @@
<string name="system_settings">Rendszer-beállítások</string>
<!-- shown below the button "System Settings" on the notification screen. this is a hint about what can be edited on System Settings' Notification page - eg. the notification type (banner, lock screen, notification centre), sound, badges and so on. no need to be exhaustive here, it is only to give the user an idea. -->
<string name="system_settings_notify_explain_ios">Típus-, kitűzők-, előnézet- és egyebek szerkesztése</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">A bármelyik csevegésben kapott vagy küldött alkalmazások itt fognak megjelenni. A „Fájlok” az éppen letöltött alkalmazásokat jeleníti meg.</string>
<!-- iOS shortcut widget -->
<!-- use the same translation for "Shortcuts" as the system is using, often the term "Shortcut" stays untranslated; check eg. how the "Shortcuts" system app is called in your locale -->
<string name="shortcuts_widget_title">Parancsikonok</string>
@@ -1197,7 +1187,6 @@
<!-- device messages for updates -->
<string name="update_1_50_android">Mik az újdonságok?\n\n❤️‍🔥 Új emodzsi-választó még több emodzsival\n\n🎮 Továbbfejlesztett, a csevegésben használható alkalmazások: Értesítéseket kaphat és megnyithatja az azokat támogató alkalmazásokban, azaz közvetlenül megnyithat egy hozzáadott naptárbejegyzést\n\n👍 Értesítést kaphat az üzeneteire adott reakciókról\n\n… 🛠️ Egyéb javítások, tudjon meg többet itt: %1$s</string>
<string name="update_1_46_ios">Új szolgáltatások 🐣 és további tudnivalók:\n\n⚡️ Regisztráljon biztonságos, gyors chatmail-kiszolgálókra (https://delta.chat/chatmail) vagy használja a klasszikus e-mail-kiszolgálókat\n\n👉 PUSH értesítések bármely chatmail-kiszolgálóra\n\n👤 Fogadjon „Csatolt névjegyeket\" és csatlakozzon az ismerőseihez\n\n🥰 Gyorsabb üzenetreakció kiválasztás … tudjon meg többet itt: %1$s</string>
<string name="update_switch_profile_placement">️ A „Profilváltás” beállítás át lett helyezve:
Érintse meg a főképernyő felső sarkában lévő profilképet a profilok hozzáadásához vagy váltásához 💡</string>
</resources>
-7
View File
@@ -546,11 +546,6 @@
<string name="autocrypt_bad_setup_code">Kode pengaturan jelek. Ayo cakepan lagi.\n\nKalau Anda lupa kode pengaturan, kirim lagi Autocrypt Setup Message dari perangkat lainnya.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Pesan dibuka</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Pesan \"%1$s\" yang Anda kirimkan tampak di layar penerima.\n\nIni bukan jaminan kalau isinya dibaca.</string>
<string name="systemmsg_unknown_sender_for_chat">Pengirim tidak dikenal untuk obrolan ini. Lihat \'info\' untuk lebih jelasnya.</string>
<string name="systemmsg_subject_for_new_contact">Pesan dari %1$s</string>
<string name="systemmsg_failed_sending_to">Gagal mengirim pesan ke %1$s.</string>
@@ -638,8 +633,6 @@
<string name="global_menu_view_developer_desktop">Pengembang</string>
<string name="global_menu_view_developer_tools_desktop">Alat pengembang</string>
<string name="global_menu_help_desktop">Bantuan</string>
<string name="global_menu_help_learn_desktop">Pelajari lebih lanjut Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Kontribusi di GitHub</string>
<string name="global_menu_help_report_desktop">Laporkan masalah</string>
<string name="global_menu_help_about_desktop">Tentang Delta Chat</string>
<string name="no_chat_selected_suggestion_desktop">Pilih obrolan atau buat sebuah obrolan baru</string>
+21 -27
View File
@@ -201,6 +201,8 @@
<string name="app_size">Dimensione</string>
<string name="app_date_published">Pubblicato</string>
<string name="add_to_chat">Aggiungi alla Chat</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">Sfoglia</string>
<string name="unknown">Sconosciuto</string>
<string name="green">Verde</string>
@@ -228,6 +230,8 @@
<string name="new_classic_contact_explain">I contatti aggiunti manualmente possono essere utilizzati per inviare testo all\' e-mail classica e non sono garantiti con crittografia end-to-end.</string>
<string name="menu_new_chat">Nuova Chat</string>
<string name="menu_new_group">Nuovo Gruppo</string>
<!-- "Chat" is a verb here, "Message to" would also fit. the string might be used in the "New Chat" screen above the contact list -->
<string name="chat_with">Chatta con…</string>
<string name="clone_chat">Clona Chat</string>
<!-- consider keeping the term "broadcast" as in WhatsApp or Telegram -->
<string name="broadcast_list">Lista Trasmissione</string>
@@ -388,8 +392,8 @@
<string name="ask_forward">Inoltrare messaggi a %1$s?</string>
<string name="ask_forward_multiple">Inoltra messaggi a %1$d chats?</string>
<string name="ask_export_attachment">Esportare allegati permetterà ad ogni altra app sul tuo dispositivo di accedervi.\n\nContinuare?</string>
<string name="ask_block_contact">Bloccare questo contatto? Non riceverai più messaggi da esso.</string>
<string name="ask_unblock_contact">Sbloccare il contatto? Potrai nuovamente ricevere messaggi da esso.</string>
<string name="ask_block_contact">Vuoi bloccare questo contatto?\n\nI messaggi diretti o i gruppi creati dai contatti bloccati non verranno visualizzati.\n\nGli altri gruppi con contatti bloccati continueranno a visualizzare i loro messaggi.</string>
<string name="ask_unblock_contact">Sbloccare questo contatto?</string>
<string name="ask_delete_contacts">Eliminare contatti?\n\nI contatti con chat in corso o in rubrica di sistema non possono essere eliminati definitivamente.</string>
<string name="ask_delete_contact">Eliminare il contatto %1$s?\n\nI contatti con chat in corso o in rubrica di sistema non possono essere eliminati definitivamente.</string>
<string name="cannot_delete_contacts_in_use">Impossibile eliminare contatti con chat in corso.</string>
@@ -516,6 +520,8 @@
<string name="profile_encryption">Crittografia</string>
<string name="profile_shared_chats">Chats Condivise</string>
<string name="related_chats">Chats Correlate</string>
<!-- Separator between the list of actual members and past members -->
<string name="past_members">Membri Passati</string>
<string name="tab_contact">Contatto</string>
<string name="tab_group">Gruppo</string>
<string name="tab_gallery">Galleria</string>
@@ -529,6 +535,8 @@
<string name="tab_audio_empty_hint">I files audio e i messaggi vocali condivisi in questa chat verranno mostrati qui.</string>
<string name="tab_webxdc_empty_hint">Le app condivise in questa chat verranno mostrate qui.</string>
<string name="tab_all_media_empty_hint">I media condivisi in qualsiasi chat verranno mostrate qui.</string>
<string name="all_files_empty_hint">Qui verranno visualizzati i documenti e gli altri file condivisi in qualsiasi chat.</string>
<string name="all_apps_empty_hint">Le apps condivise in qualsiasi chat appariranno qui.</string>
<string name="media_preview">Anteprima Media</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Aspetto Griglia Proporzioni</string>
@@ -651,14 +659,6 @@
<string name="proxy_share_explain">I tuoi amici possono aggiungere questo proxy scansionando il codice QR.</string>
<string name="proxy_share_link">Condividi Collegamento</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Usa SOCKS5</string>
<string name="login_socks5_host">SOCKS5 Host</string>
<string name="login_socks5_port">SOCKS5 Porta</string>
<string name="login_socks5_user">SOCKS5 Utente</string>
<string name="login_socks5_password">SOCKS5 Password</string>
<string name="login_info_oauth2_title">Continuare con la configurazione semplificata?</string>
<string name="login_info_oauth2_text">L\'indirizzo e-mail inserito supporta una configurazione semplificata (OAuth 2.0).\n\nNel passaggio successivo, per piacere consenti a Delta Chat di fungere da app Chat tramite e-mail.\n\nDelta Chat non raccoglie dati utente, tutto rimane sul tuo dispositivo.</string>
<string name="login_certificate_checks">Controlli Certificato</string>
@@ -755,7 +755,9 @@
<string name="pref_manage_keys">Gestisci Chiavi</string>
<string name="pref_use_system_emoji">Usa Emoji di Sistema</string>
<string name="pref_use_system_emoji_explain">Disattiva il supporto delle emoji integrato in Delta Chat</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Usa Fotocamera App</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">La fotocamera dell\'app di solito ha meno funzionalità della fotocamera di sistema</string>
<string name="pref_show_system_contacts">Leggi Rubrica di Sistema</string>
<string name="pref_show_system_contacts_explain">Offri la possibilità di creare chats con i contatti della rubrica. Alcuni provider necessitano prima della configurazione della crittografia end-to-end.</string>
@@ -894,10 +896,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Messaggio aperto</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Il messaggio \"%1$s\" inviato è stato visualizzato sullo schermo del destinatario.\n\nNon vi è alcuna garanzia che il contenuto sia stato letto.</string>
<string name="systemmsg_cannot_decrypt">Questo messaggio non può essere decrittografato.\n\n• Potrebbe essere già utile rispondere semplicemente a questo messaggio e chiedere al mittente d\'inviare nuovamente il messaggio.\n\n• Se hai appena reinstallato Delta Chat, è meglio se riconfiguri ora Delta Chat e scegli \"Aggiungi come secondo dispositivo\" o importa un backup.</string>
<string name="systemmsg_unknown_sender_for_chat">Mittente sconosciuto per questa chat. Vedi \'info\' per maggiori dettagli.</string>
<string name="systemmsg_subject_for_new_contact">Messaggio da %1$s</string>
@@ -972,7 +970,6 @@
<string name="chat_protection_broken_explanation">La crittografia end-to-end non può più essere garantita, probabilmente perché %1$s ha reinstallato Delta Chat o inviato un messaggio da un altro dispositivo.\n\nPuoi incontrarlo di persona e scansionare nuovamente il suo Codice QR per ristabilire la crittografia end-to-end garantita.</string>
<string name="invalid_unencrypted_tap_to_learn_more">⚠️ %1$s richiede la crittografia end-to-end che non è ancora configurata per questa chat. Tocca per saperne di più.</string>
<string name="invalid_unencrypted_explanation">Per stabilire la crittografia end-to-end, potresti incontrare i contatti di persona e scansionare il loro Codice QR per verificarli.</string>
<string name="encryption_required_for_new_contact">È richiesta la crittografia end-to-end, ma non è ancora configurata per %1$s.\n\nPuoi condividere con loro il collegamento d\'invito o incontrarli di persona e scansionare il loro Codice QR.</string>
<string name="learn_more">Per Saperne di Più</string>
<string name="devicemsg_self_deleted">Hai eliminato la chat \"Messaggi salvati\".\n\n️ Per utilizzare nuovamente la funzione \"Messaggi salvati\", crea una nuova chat con te stesso.</string>
@@ -998,13 +995,11 @@
<string name="qrscan_contains_text">Testo codice QR scansionato:\n\n%1$s</string>
<string name="qrscan_contains_url">URL del codice QR scansionato:\n\n%1$s</string>
<string name="qrscan_fingerprint_label">Impronta digitale</string>
<string name="withdraw_verifycontact_explain">Questo codice QR può essere scansionato da altri utenti per contattarti.\n\nÈ possibile disattivare il codice QR qui e riattivarlo scansionandolo di nuovo.</string>
<string name="withdraw_verifygroup_explain">Questo codice QR può essere scansionato da altri per unirsi al gruppo \"%1$s\".\n\nPuoi disattivare il codice QR qui e riattivarlo scansionandolo di nuovo.</string>
<string name="withdraw_qr_code">Disattiva Codice QR</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Questo codice QR potrebbe essere scansionato da altri per contattarti.\n\nIl codice QR non è attivo su questo dispositivo.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Questo codice QR può essere scansionato da altri per unirsi al gruppo \"%1$s\".\n\nIl codice QR non è attivo su questo dispositivo.</string>
<string name="withdraw_verifycontact_explain">Questo codice QR può essere scansionato da altri per contattarti.\n\nPuoi reimpostarlo, in modo che il codice QR o il link di invito esistente non funzionino più.</string>
<string name="withdraw_verifygroup_explain">Questo codice QR può essere scansionato da altri per unirsi al gruppo \"%1$s\".\n\nPuoi reimpostarlo, in modo che il codice QR o il link di invito esistente non funzionino più.</string>
<string name="withdraw_qr_code">Reimposta Codice QR</string>
<string name="revive_verifycontact_explain">Questo codice QR è stato reimpostato e non è più attivo.</string>
<string name="revive_verifygroup_explain">Questo codice QR per unirsi al gruppo \"%1$s\" è stato reimpostato e non è più attivo.</string>
<string name="revive_qr_code">Attiva Codice QR </string>
<string name="qrshow_title">Codice QR Invito</string>
<string name="qrshow_x_joining">%1$s si unisce.</string>
@@ -1102,8 +1097,8 @@
<string name="global_menu_view_developer_desktop">Sviluppatore</string>
<string name="global_menu_view_developer_tools_desktop">Strumenti di Sviluppo</string>
<string name="global_menu_help_desktop">Aiuto</string>
<string name="global_menu_help_learn_desktop">Scopri di più su Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Contribuisci su GitHub</string>
<string name="delta_chat_homepage">Delta Chat Pagina Iniziale</string>
<string name="contribute">Contribuisci</string>
<string name="global_menu_help_report_desktop">Segnala Problema</string>
<string name="global_menu_help_about_desktop">Informazioni Delta Chat</string>
<string name="global_menu_file_open_desktop">Apri Delta Chat</string>
@@ -1116,6 +1111,8 @@
<string name="timestamp_format_m_desktop">D MMM</string>
<string name="remove_desktop">Rimuovi</string>
<string name="save_desktop">Salva</string>
<!-- Opposite of "Save". Undo a "Save" action. Similar to "Unmute", "Unpin". Could also be worded as "Save no longer" or so. -->
<string name="unsave">Non Salvare</string>
<string name="name_desktop">Nome</string>
<string name="select_group_image_desktop">Seleziona Immagine Gruppo</string>
<string name="export_backup_desktop">Esporta Backup</string>
@@ -1178,8 +1175,6 @@
<string name="system_settings">Impostazioni di Sistema</string>
<!-- shown below the button "System Settings" on the notification screen. this is a hint about what can be edited on System Settings' Notification page - eg. the notification type (banner, lock screen, notification centre), sound, badges and so on. no need to be exhaustive here, it is only to give the user an idea. -->
<string name="system_settings_notify_explain_ios">Modifica tipo, distintivi, anteprima e altro</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Le app ricevute o inviate in qualsiasi chat verranno mostrate qui. \"Files\" mostra le app appena scaricate.</string>
<!-- iOS shortcut widget -->
<!-- use the same translation for "Shortcuts" as the system is using, often the term "Shortcut" stays untranslated; check eg. how the "Shortcuts" system app is called in your locale -->
<string name="shortcuts_widget_title">Scorciatoie</string>
@@ -1214,6 +1209,5 @@
<!-- device messages for updates -->
<string name="update_1_50_android">Novità?\n\n❤️‍🔥 Nuovo selettore di emoji con più emoji\n\n🎮 App in chat migliorate: ricevi notifiche e apri le app supportate nel contesto, es. apri una voce del calendario cliccando direttamente sul messaggio\n\n👍 Ricevi notifiche sulle reazioni ai tuoi messaggi...\n\n🛠️ CORREZIONI e ANCORA DI PIÙ su %1$s</string>
<string name="update_1_46_ios">Nuovo Inserimento 🐣 e Altro:\n\n⚡️ Iscriviti ai sicuri e veloci server chatmail (https://delta.chat/chatmail) o usa i classici server e-mail\n\n👉 Notifiche PUSH per qualsiasi server chatmail\n\n👤 Ricevi \"Contatti allegati\" e connettiti ai tuoi amici\n\n🥰 Selezione della reazione più rapida ... e ALTRO su %1$s</string>
<string name="update_switch_profile_placement">️ Opzione \"Cambia Profilo\" spostata: Tocca l\'immagine del tuo profilo nell\'angolo superiore della schermata principale per aggiungere o cambiare profili 💡</string>
</resources>
-5
View File
@@ -537,9 +537,6 @@
<string name="autocrypt_asm_subject">自動暗号化設定用メッセージ</string>
<string name="autocrypt_continue_transfer_title">自動暗号化設定用メッセージ</string>
<string name="autocrypt_continue_transfer_retry">再試行</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">既読</string>
<string name="systemmsg_subject_for_new_contact">%1$sさんからのメッセージ</string>
<string name="systemmsg_failed_sending_to">%1$sさんへのメッセージ送信に失敗しました。</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name -->
@@ -655,8 +652,6 @@
<string name="global_menu_view_developer_desktop">開発者</string>
<string name="global_menu_view_developer_tools_desktop">開発者ツール</string>
<string name="global_menu_help_desktop">ヘルプ</string>
<string name="global_menu_help_learn_desktop">DeltaChatについて詳しく知る</string>
<string name="global_menu_help_contribute_desktop">GitHubで貢献する</string>
<string name="global_menu_help_report_desktop">問題を報告する</string>
<string name="global_menu_help_about_desktop">Delta Chatについて</string>
<string name="write_message_desktop">メッセージを送信</string>
-17
View File
@@ -435,14 +435,6 @@
<string name="login_smtp_port">ច្រករបស SMTP</string>
<string name="login_smtp_security">សន្តិសុខ SMTP</string>
<string name="login_auth_method">ការចុះបញ្ជី</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">ប្រើ SOCKS5</string>
<string name="login_socks5_host">ម្ចាស់ SOCKS5</string>
<string name="login_socks5_port">ច្រក SOCKS5</string>
<string name="login_socks5_user">អ្នកប្រើប្រាស់ SOCKS5</string>
<string name="login_socks5_password">ពាក្យសម្ងាត់ SOCKS5</string>
<string name="login_info_oauth2_title">បន្តជាមួយការដំឡើងសាមញ្ញ?</string>
<string name="login_info_oauth2_text">អស័យដ្ឋានអុីម៉េលដែលបានបញ្ចូល គាំទ្រការដំឡើងសាមញ្ញ (OAuth 2.0)\n\nនៅជំហានបន្ទាប់ សូមអនុញ្ញាតឲ្យសាហារីសង្ឃ ដើរតួជាការសន្ទនារបស់អ្នកនៅលើកម្មវិធីអុីម៉េល។\n\nមិនមាន ម៉ាសុីនមេ សាហារីសង្ឃទេ។ ទិន្ន័យរបស់អ្នកស្ថិតនៅលើឧបករណ៍របស់អ្នក។</string>
<string name="login_certificate_checks">ការត្រួតពិនិត្យលិខិតបញ្ជាក់</string>
@@ -633,11 +625,6 @@
<string name="autocrypt_bad_setup_code">កូដតម្លើងមិនត្រឹមត្រូវ។ សូមព្យាយាមម្តងទៀត\n\nប្រសិនបើអ្នកមិនចងចាំកូដតម្លើង ចូរផ្ញើសារតម្លើងចាក់អ៊ិនគ្រីបស្វ័យប្រវត្តិថ្មីមួយពីឧបករណ៍ផ្សេងទៀត។</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">សារត្រូវបានបើក</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">\"%1$s\" សារដែលអ្នកបានផ្ញើត្រូវបានបង្ហាញនៅលើ អេក្រង់របស់អ្នកទទួល\n\nនេះមិនមែនជាការធានាថា មាតិកាត្រួវបានអានទេ។</string>
<string name="systemmsg_unknown_sender_for_chat">មិនស្គាល់អ្នកផ្ញើការសន្ទនានេះ។ មើល \'ពត៌មាន\' សម្រាប់ពត៌មានលំអិត</string>
<string name="systemmsg_subject_for_new_contact">សារពី %1$s</string>
<string name="systemmsg_failed_sending_to">បានបរាបានក្នុងការផ្ញើសារទៅ %1$s</string>
@@ -719,9 +706,7 @@
<string name="withdraw_verifycontact_explain">អ្នកផ្សេងទៀតអាចស្កេនលេខកូដ QR នេះដើម្បីទាក់ទងអ្នក។\n\nអ្នកអាចធ្វើឱ្យកូដ QR អសកម្មនៅទីនេះហើយបើកដំណើរ។</string>
<string name="withdraw_verifygroup_explain">អ្នកផ្សេងទៀតអាចស្កេនលេខកូដ QR នេះដើម្បីចូលរួមក្រុម \"%1$s\"។\n\nអ្នកអាចធ្វើឱ្យកូដ QR អសកម្មនៅទីនេះ ហើយធ្វើឱ្យវាសកម្មឡើងវិញដោយស្កេនម្តងទៀត។</string>
<string name="withdraw_qr_code">ធ្វើឱ្យកូដ QR អសកម្ម</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">អ្នកផ្សេងទៀតអាចស្កេនលេខកូដ QR នេះដើម្បីទាក់ទងអ្នក។\n\nកូដ QR មិនសកម្មនៅលើឧបករណ៍នេះទេ។</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">អ្នកផ្សេងទៀតអាចស្កេនលេខកូដ QR នេះដើម្បីចូលរួមក្រុម \"%1$s \"។\n\n កូដ QR មិនសកម្មនៅលើឧបករណ៍នេះទេ។</string>
<string name="revive_qr_code">ធ្វើឱ្យកូដ QR សកម្ម</string>
<string name="qrshow_title">កូដ QR សម្រាប់ការអញ្ជើញ</string>
@@ -793,8 +778,6 @@
<string name="global_menu_view_developer_desktop">អ្នកអភិវឌ្ឍន៍</string>
<string name="global_menu_view_developer_tools_desktop">ឧបករណ៍អភិវឌ្ឍន៍</string>
<string name="global_menu_help_desktop">ជួយ</string>
<string name="global_menu_help_learn_desktop">ស្វែងយល់បន្ថែមអំពី សា Delta Chat</string>
<string name="global_menu_help_contribute_desktop">រួមចំណែកនៅលើ GitHub</string>
<string name="global_menu_help_report_desktop">រាយការណ៍ពីបញ្ហា</string>
<string name="global_menu_help_about_desktop">អំពីសា Delta Chat</string>
<string name="global_menu_file_open_desktop">បើក Delta Chat</string>
+1 -19
View File
@@ -416,6 +416,7 @@
<string name="tab_video_empty_hint">채팅에 공유된 비디오가 여기에 나타납니다.</string>
<string name="tab_audio_empty_hint">이 채팅에서 공유된 오디오 파일과 음성 메시지가 여기에 나타납니다.</string>
<string name="tab_webxdc_empty_hint">이 채팅에서 공유된 개인 앱이 여기에 나타납니다.</string>
<string name="all_apps_empty_hint">채팅에서 보내거나 받은 개인 앱들이 여기에 나타납니다.</string>
<string name="media_preview">미디어 미리보기</string>
<string name="send_message">메시지 전송</string>
<!-- Placeholder %1$s will be replaced by the name of the contact changing their address. Placeholders %2$s and %3$s will be replaced by old/new email addresses. -->
@@ -469,14 +470,6 @@
<string name="login_smtp_port">SMTP 포트</string>
<string name="login_smtp_security">SMTP 보안</string>
<string name="login_auth_method">권한 부여 방법</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">SOCKS5 사용</string>
<string name="login_socks5_host">SOCKS5 호스트</string>
<string name="login_socks5_port">SOCKS5 포트</string>
<string name="login_socks5_user">SOCKS5 사용자</string>
<string name="login_socks5_password">SOCKS5 비밀번호</string>
<string name="login_info_oauth2_title">간소화된 설치를 계속하시겠습니까?</string>
<string name="login_info_oauth2_text">입력한 이메일 주소는 단순화된 설정(OAuth 2.0)을 지원합니다.\n\n다음 단계에서는 Delta Chat 이 이메일을 통한 채팅 앱 역할을 하도록 허용하십시오.\n\nDelta 채팅 서버가 없으며 데이터가 장치에 남아 있습니다.</string>
<string name="login_certificate_checks">인증서 확인</string>
@@ -659,11 +652,6 @@
<string name="autocrypt_bad_setup_code">잘못된 설정 코드입니다. 다시 시도하십시오.\n\n설정 코드가 기억나지 않으면 다른 장치에서 새 자동 암호화 설치 메시지를 보냅니다.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">메시지 열림</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">보낸 \"%1$s\" 메시지가 수신자의 화면에 표시되었습니다.\n\n이것은 내용이 읽혔다는 것을 보장하지 않습니다.</string>
<string name="systemmsg_unknown_sender_for_chat">이 채팅의 발신자를 알 수 없습니다. 자세한 내용은 \'info\'를 확인하세요.</string>
<string name="systemmsg_subject_for_new_contact">%1$s가 보낸 메시지</string>
<string name="systemmsg_failed_sending_to">%1$s에게 메시지를 보내지 못했습니다.</string>
@@ -750,9 +738,7 @@
<string name="withdraw_verifycontact_explain">이 QR 코드는 다른 사용자가 스캔하여 사용자에게 연락할 수 있습니다.\n\n여기서 QR 코드를 비활성화하고 다시 스캔하여 다시 활성화할 수 있습니다.</string>
<string name="withdraw_verifygroup_explain">이 QR 코드는 다른 사용자가 스캔하여 \"%1$s\" 그룹에 가입할 수 있습니다.\n\n여기서 QR 코드를 비활성화하고 다시 스캔하여 다시 활성화할 수 있습니다.</string>
<string name="withdraw_qr_code">QR 코드 비활성화</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">이 QR 코드는 다른 사용자가 스캔하여 사용자에게 연락할 수 있습니다.\n\nQR 코드가 이 장치에서 활성화되지 않았습니다.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">이 QR 코드는 다른 사람이 스캔하여 그룹 \"%1$s\"에 가입할 수 있다.\n\nQR 코드가 이 장치에서 활성화되지 않았습니다.</string>
<string name="revive_qr_code">QR 코드 활성화</string>
<string name="qrshow_title">QR 초대 코드</string>
@@ -834,8 +820,6 @@
<string name="global_menu_view_developer_desktop">개발자</string>
<string name="global_menu_view_developer_tools_desktop">개발자 도구</string>
<string name="global_menu_help_desktop">도움말</string>
<string name="global_menu_help_learn_desktop">Delta Chat에 대해 더 알아보기</string>
<string name="global_menu_help_contribute_desktop">GitHub에 기여</string>
<string name="global_menu_help_report_desktop">문제 보고</string>
<string name="global_menu_help_about_desktop">Delta Chat에 대해</string>
<string name="global_menu_file_open_desktop">Delta Chat 열기</string>
@@ -897,8 +881,6 @@
<string name="notifications_avg_minutes">평균적으로 %1$d분마다</string>
<string name="notifications_avg_hours">평균적으로 %1$d시간마다</string>
<string name="last_check_at">%1$s에 확인됨</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">채팅에서 보내거나 받은 개인 앱들이 여기에 나타납니다. \"파일\"에서 방금 다운로드 받은 개인 앱들을 보여줍니다.</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Delta Chat은 카메라를 사용하여 사진과 비디오를 찍고 전송하고 QR 코드를 스캔합니다.</string>
<string name="InfoPlist_NSContactsUsageDescription">Delta Chat 은 연락처를 사용하여 쓸 수 있는 이메일 주소 목록을 표시합니다. Delta Chat 에는 서버가 없으며 연락처는 아무 곳에도 전송되지 않습니다.</string>
+5 -15
View File
@@ -31,6 +31,7 @@
<string name="close_window">Užverti langą</string>
<string name="forward">Persiųsti</string>
<string name="create">Sukurti</string>
<string name="reset">Atstatyti</string>
<string name="later">Vėliau</string>
<!-- "Resend" means "Sending the selected message(s) again to the same chat". The string is used in a menu and should be as short as possible. Resending may be needed after failures or to repost old messages to new members. -->
<string name="resend">Siųsti iš naujo</string>
@@ -169,6 +170,10 @@
<string name="webxdc_app">Privati programėlė</string>
<!-- plural of "App"; used to present "Webxdc App" (https://webxdc.org) in a user friendly way. Please stay close to the original term and keep it short (it is used in menus with few screen space). -->
<string name="webxdc_apps">Privačios programėlės</string>
<string name="games">Žaidimai</string>
<string name="app_size">Dydis</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">Naršyti</string>
<string name="unknown">Nežinoma</string>
<string name="green">Žalia</string>
@@ -496,14 +501,6 @@
<string name="proxy_delete">Ištrinti įgaliotąjį serverį</string>
<string name="proxy_delete_explain">Ar tikrai norite ištrinti „%1$s“?</string>
<string name="proxy_use_proxy_confirm">Ar norite naudoti įgaliotąjį serverį „%1$s“?</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Naudoti SOCKS5</string>
<string name="login_socks5_host">SOCKS5 serveris</string>
<string name="login_socks5_port">SOCKS5 prievadas</string>
<string name="login_socks5_user">SOCKS5 naudotojas</string>
<string name="login_socks5_password">SOCKS5 slaptažodis</string>
<string name="login_info_oauth2_title">Tęsti naudojant supaprastintą sąranką?</string>
<string name="login_certificate_checks">Liudijimų patikrinimai</string>
<string name="login_error_mail">Įveskite teisingą el. pašto adresą.</string>
@@ -692,11 +689,6 @@
<string name="autocrypt_bad_setup_code">Blogas sąrankos kodas. Bandykite dar kartą.\n\nJeigu neprisimenate sąrankos kodo, tiesiog, išsiųskite dar vieną Autocrypt sąrankos žinutę iš kito įrenginio.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Pranešimas apie skaitymą</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Tai yra pranešimas apie žinutės \"%1$s\" skaitymą.\n\nTai reiškia, kad žinutė buvo atvaizduota gavėjo įrenginyje, tačiau neužtikrina, kad jos turinys buvo perskaitytas.</string>
<string name="systemmsg_subject_for_new_contact">Žinutė nuo %1$s</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name -->
<string name="group_name_changed_by_you">Jūs pakeitėte grupės pavadinimą iš „%1$s“ į „%2$s“.</string>
@@ -832,8 +824,6 @@
<string name="global_menu_view_developer_desktop">Plėtotojas</string>
<string name="global_menu_view_developer_tools_desktop">Plėtotojo įrankiai</string>
<string name="global_menu_help_desktop">Žinynas</string>
<string name="global_menu_help_learn_desktop">Sužinokite daugiau apie Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Talkinti „Github“ svetainėje</string>
<string name="global_menu_help_report_desktop">Pranešti apie klaidą</string>
<string name="global_menu_help_about_desktop">Apie Delta Chat</string>
<string name="global_menu_file_open_desktop">Atverti Delta Chat</string>
-5
View File
@@ -361,11 +361,6 @@
<string name="autocrypt_bad_setup_code">Feil oppsettskode. Prøv igjen.\n\nHvis du ikke husker den, sett igang nøkkeloverføringen på en andre enheten igjen.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Meldingskvittering</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Dette er en meldingskvittering for meldingen \"%1$s\".\n\nDenne meldingskvitteringen bekrefter bare at meldingen ble vist på mottakerens enhet. Det finnes ingen garanti for at mottakeren har lest meldingsinnholdet.</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name -->
<string name="group_name_changed_by_you">Gruppenavn endret fra \"%1$s\" til \"%2$s\" av meg.</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name, %3$s will be replaced by name and address of the contact who did the action. -->
+19 -25
View File
@@ -192,6 +192,8 @@
<string name="app_size">Grootte</string>
<string name="app_date_published">Publicatiedatum</string>
<string name="add_to_chat">Toevoegen aan gesprek</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">Ontdekken</string>
<string name="unknown">Onbekend</string>
<string name="green">Groen</string>
@@ -219,6 +221,8 @@
<string name="new_classic_contact_explain">Handmatig toegevoegde contactpersonen zijn bedoeld voor traditionele e-mailcommunicatie - eind-tot-endversleuteling is daarom niet gegarandeerd.</string>
<string name="menu_new_chat">Nieuw gesprek</string>
<string name="menu_new_group">Nieuwe groep</string>
<!-- "Chat" is a verb here, "Message to" would also fit. the string might be used in the "New Chat" screen above the contact list -->
<string name="chat_with">Gesprek voeren met…</string>
<string name="clone_chat">Gesprek klonen</string>
<!-- consider keeping the term "broadcast" as in WhatsApp or Telegram -->
<string name="broadcast_list">Verzendlijst</string>
@@ -499,6 +503,8 @@
<string name="profile_encryption">Versleuteling</string>
<string name="profile_shared_chats">Gedeelde gesprekken</string>
<string name="related_chats">Verwante gesprekken</string>
<!-- Separator between the list of actual members and past members -->
<string name="past_members">Voormalige deelnemers</string>
<string name="tab_contact">Contactpersoon</string>
<string name="tab_group">Groep</string>
<string name="tab_gallery">Galerij</string>
@@ -506,12 +512,14 @@
<string name="tab_links">Links</string>
<string name="tab_map">Kaart</string>
<string name="tab_gallery_empty_hint">De in dit gesprek gedeelde afbeeldingen en video\'s verschijnen hier.</string>
<string name="tab_docs_empty_hint">De in dit gesprek gedeelde documenten, muziek en overige bestanden verschijnen hier.</string>
<string name="tab_docs_empty_hint">Gedeelde documenten en andere bestanden uit dit gesprek worden hier getoond.</string>
<string name="tab_image_empty_hint">De in dit gesprek gedeelde afbeeldingen verschijnen hier.</string>
<string name="tab_video_empty_hint">De in dit gesprek gedeelde video\'s verschijnen hier.</string>
<string name="tab_audio_empty_hint">De in dit gesprek gedeelde audiobestanden en spraakberichten verschijnen hier.</string>
<string name="tab_webxdc_empty_hint">Privéapps in dit gesprek worden hier getoond.</string>
<string name="tab_all_media_empty_hint">De in gesprekken gedeelde media verschijnen hier.</string>
<string name="all_files_empty_hint">Gedeelde documenten en andere bestanden uit gesprekken worden hier getoond.</string>
<string name="all_apps_empty_hint">Privéapps die je verstuurt of ontvangt worden hier getoond.</string>
<string name="media_preview">Mediavoorbeeld</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Beeldverhouding van rooster</string>
@@ -634,14 +642,6 @@
<string name="proxy_share_explain">Je kunt vrienden toevoegen aan deze proxy door de QR-code te scannen.</string>
<string name="proxy_share_link">Link delen</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">SOCKS5 gebruiken</string>
<string name="login_socks5_host">SOCKS5-host</string>
<string name="login_socks5_port">SOCKS5-poort</string>
<string name="login_socks5_user">SOCKS5-gebruiker</string>
<string name="login_socks5_password">SOCKS5-wachtwoord</string>
<string name="login_info_oauth2_title">Wil je doorgaan met vereenvoudigd instellen?</string>
<string name="login_info_oauth2_text">Het ingevoerde e-mailadres ondersteunt vereenvoudigd instellen (OAuth2).\n\nTijdens de volgende stap moet je Delta Chat toestaan te fungeren als je e-mailapp.\n\nDelta Chat heeft geen eigen servers; jóuw gegevens blijven op jóuw apparaat!</string>
<string name="login_certificate_checks">Certificaatcontrole</string>
@@ -738,7 +738,9 @@
<string name="pref_manage_keys">Sleutels beheren</string>
<string name="pref_use_system_emoji">Systeememoji gebruiken</string>
<string name="pref_use_system_emoji_explain">Schakel Delta Chats ingebouwde emojiondersteuning uit</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Ingebouwde camera gebruiken</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">Let op: de ingebouwde camera beschikt over minder functies dan de systeemcamera</string>
<string name="pref_show_system_contacts">Adresboek uitlezen</string>
<string name="pref_show_system_contacts_explain">Bied aan om gesprekken te beginnen met contactpersonen uit het adresboek. Let op: voor sommige providers is eind-tot-eindversleuteling benodigd.</string>
@@ -877,10 +879,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Leesbevestiging</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Het door jou verstuurde bericht, “%1$s”, heeft het scherm van de ontvanger bereikt.\n\nDit betekent echter niet dat het ook gelezen is.</string>
<string name="systemmsg_cannot_decrypt">Dit bericht kan niet worden ontsleuteld.\n\n• Het kan helpen dit bericht te beantwoorden en de afzender te vragen het opnieuw te versturen.\n\n• Als je Delta Chat of een andere e-mailapp opnieuw hebt geïnstalleerd, voeg het dan toe als tweede apparaat of importeer een reservekopie.</string>
<string name="systemmsg_unknown_sender_for_chat">Dit gesprek bevat een onbekende afzender. Zie Informatie voor meer informatie.</string>
<string name="systemmsg_subject_for_new_contact">Bericht van %1$s</string>
@@ -955,7 +953,6 @@
<string name="chat_protection_broken_explanation">Eind-tot-eindversleuteling kan niet meer worden gegarandeerd, omdat %1$s Delta Chat opnieuw heeft geïnstalleerd of een bericht vanaf een ander apparaat heeft verstuurd.\n\nMaak een afspraak met hem/haar en scan de QR-code opnieuw om eind-tot-eindversleuteling weer in te schakelen.</string>
<string name="invalid_unencrypted_tap_to_learn_more">⚠️ Voor %1$s is eind-tot-eindversleuteling vereist, maar dit is nog niet ingesteld in het huidige gesprek. Druk voor meer informatie.</string>
<string name="invalid_unencrypted_explanation">Spreek met elkaar af en scan elkaars QR-code om eind-tot-eindversleuteling op te zetten.</string>
<string name="encryption_required_for_new_contact">Eind-tot-eindversleuteling is vereist, maar nog niet ingesteld op %1$s.\n\nJe kunt deze link alleen delen met personen die je kent of die je in het echt ontmoet en waarvan je de QR-code scant.</string>
<string name="learn_more">Meer informatie</string>
<string name="devicemsg_self_deleted">Je hebt het gesprek Bewaarde berichten verwijderd.\n\n️ Als je weer gebruik wilt maken van deze functie, begin dan een nieuw gesprek met jezelf.</string>
@@ -981,13 +978,11 @@
<string name="qrscan_contains_text">Gescande QR-codetekst:\n\n %1$s</string>
<string name="qrscan_contains_url">Gescande QR-code-url:\n\n %1$s</string>
<string name="qrscan_fingerprint_label">Vingerafdruk</string>
<string name="withdraw_verifycontact_explain">Deze QR-code kan door anderen worden gescand om contact met je op te nemen.\n\nJe kunt de QR-code hier deactiveren en opnieuw activeren door deze opnieuw te scannen.</string>
<string name="withdraw_verifygroup_explain">Deze QR-code kan door anderen worden gescand om deel te nemen aan de groep %1$s.\n\nJe kunt de QR-code hier deactiveren en opnieuw activeren door deze opnieuw te scannen.</string>
<string name="withdraw_verifycontact_explain">Deze QR-code kan door anderen worden gescand om contact met je op te nemen.\n\nJe kunt de QR-code hier deactiveren, zodat die niet meer werkt.</string>
<string name="withdraw_verifygroup_explain">Deze QR-code kan door anderen worden gescand om deel te nemen aan de groep %1$s.\n\nJe kunt de QR-code hier deactiveren, zodat die niet meer werkt.</string>
<string name="withdraw_qr_code">QR-code deactiveren</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Deze QR-code kan door anderen worden gescand om contact met je op te nemen.\n\nDe QR-code is niet actief op dit apparaat.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Deze QR-code kan door anderen worden gescand om deel te nemen aan de groep %1$s.\n\nDe QR-code is niet actief op dit apparaat.</string>
<string name="revive_verifycontact_explain">Deze QR-code is gedactiveerd en kan niet meer worden gebruikt.</string>
<string name="revive_verifygroup_explain">Deze QR-code voor de groep %1$s is gedeactiveerd en kan niet meer worden gebruikt.</string>
<string name="revive_qr_code">QR-code activeren</string>
<string name="qrshow_title">QR-uitnodigingscode</string>
<string name="qrshow_x_joining">%1$s heeft deelgenomen.</string>
@@ -1085,8 +1080,8 @@
<string name="global_menu_view_developer_desktop">Ontwikkelaar</string>
<string name="global_menu_view_developer_tools_desktop">Ontwikkelaarshulpmiddelen</string>
<string name="global_menu_help_desktop">Hulp</string>
<string name="global_menu_help_learn_desktop">Meer informatie over Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Draag bij op GitHub</string>
<string name="delta_chat_homepage">Delta Chat-website</string>
<string name="contribute">Bijdragen</string>
<string name="global_menu_help_report_desktop">Meld een probleem</string>
<string name="global_menu_help_about_desktop">Over Delta Chat</string>
<string name="global_menu_file_open_desktop">Delta Chat openen</string>
@@ -1099,6 +1094,8 @@
<string name="timestamp_format_m_desktop">MMM D</string>
<string name="remove_desktop">Verwijderen</string>
<string name="save_desktop">Opslaan</string>
<!-- Opposite of "Save". Undo a "Save" action. Similar to "Unmute", "Unpin". Could also be worded as "Save no longer" or so. -->
<string name="unsave">Niet meer bewaren</string>
<string name="name_desktop">Naam</string>
<string name="select_group_image_desktop">Kies een groepsafbeelding</string>
<string name="export_backup_desktop">Reservekopie exporteren</string>
@@ -1161,8 +1158,6 @@
<string name="system_settings">Systeeminstellingen</string>
<!-- shown below the button "System Settings" on the notification screen. this is a hint about what can be edited on System Settings' Notification page - eg. the notification type (banner, lock screen, notification centre), sound, badges and so on. no need to be exhaustive here, it is only to give the user an idea. -->
<string name="system_settings_notify_explain_ios">Pas het type, emblemen, de voorvertoning en meer aan</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Privéapps die je verstuurt of ontvangt worden hier getoond. Bij de bestanden zie je de zojuist gedownloade apps.</string>
<!-- iOS shortcut widget -->
<!-- use the same translation for "Shortcuts" as the system is using, often the term "Shortcut" stays untranslated; check eg. how the "Shortcuts" system app is called in your locale -->
<string name="shortcuts_widget_title">Opdrachten</string>
@@ -1197,6 +1192,5 @@
<!-- device messages for updates -->
<string name="update_1_50_android">Wijzigingslog:\n\n❤️‍🔥 Nieuwe emojikiezer met veel meer emojis\n\n🎮 Verbeterde apps in gesprekken: ontvang meldingen open ondersteunde apps met links, bijv. een agenda-uitnodiging\n\n👍 Ontvang meldingen bij reacties op berichten\n\n… 🛠️ Opgeloste fouten en VEEL MEER op %1$s</string>
<string name="update_1_46_ios">Nieuwe registratiemogelijkheden 🐣 en nog veel meer:\n\n⚡️ Registreer een account bij snelle chatmailservers (https://delta.chat/chatmail) of maak gebruik van traditionele mailservers\n\n👉 Ontvang pushmeldingen van elke chatmailserver\n\n👤 Voeg contactpersonen toe via Contactpersonen bijvoegen\n\n🥰 Reageer met een emoji\n\n📌 Maak gesprekken vast … en nog veel meer op %1$s</string>
<string name="update_switch_profile_placement">️ De optie om een ander profiel te kiezen is verplaatst: druk op je profielfoto op het hoofdscherm om het profielmenu te openen.💡</string>
</resources>
+21 -20
View File
@@ -37,6 +37,7 @@
<string name="close_window">Zamknij okno</string>
<string name="forward">Przekaż</string>
<string name="create">Utwórz</string>
<string name="reset">Zresetuj</string>
<string name="later">Później</string>
<!-- "Resend" means "Sending the selected message(s) again to the same chat". The string is used in a menu and should be as short as possible. Resending may be needed after failures or to repost old messages to new members. -->
<string name="resend">Wyślij ponownie</string>
@@ -45,6 +46,7 @@
<!-- Verb "to unarchive", as in "remove a chat from the archive", opposite of the previous string -->
<string name="unarchive">Przywróć z archiwum</string>
<string name="mute">Wyłącz powiadomienia</string>
<string name="muted">Wyciszony</string>
<string name="ephemeral_messages">Znikające wiadomości</string>
<string name="ephemeral_messages_hint">Te ustawienia dotyczą wszystkich uczestników korzystających z Delta Chat. Mogą jednak kopiować, zapisywać i przekazywać wiadomości lub korzystać z innych klientów poczty e-mail.</string>
<string name="save">Zapisz</string>
@@ -202,6 +204,14 @@
<string name="webxdc_apps">Prywatne aplikacje</string>
<string name="webxdc_store_url">Adres URL selektora aplikacji</string>
<string name="webxdc_store_url_explain">Jeśli ustawiony, adres URL będzie używany jako selektor aplikacji zamiast domyślnego</string>
<string name="home">Główna</string>
<string name="games">Gry</string>
<string name="tools">Narzędzia</string>
<string name="app_size">Rozmiar</string>
<string name="app_date_published">Opublikowany</string>
<string name="add_to_chat">Dodaj do czatu</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">Przeglądaj</string>
<string name="unknown">Nieznany</string>
<string name="green">Zielony</string>
@@ -229,6 +239,8 @@
<string name="new_classic_contact_explain">Ręcznie dodane kontakty mogą być używane do wysyłania tekstu w klasycznych e-mailach i nie ma gwarancji, że będą one szyfrowane metodą end-to-end.</string>
<string name="menu_new_chat">Nowy czat</string>
<string name="menu_new_group">Nowa grupa</string>
<!-- "Chat" is a verb here, "Message to" would also fit. the string might be used in the "New Chat" screen above the contact list -->
<string name="chat_with">Czat z…</string>
<string name="clone_chat">Klonuj czat</string>
<!-- consider keeping the term "broadcast" as in WhatsApp or Telegram -->
<string name="broadcast_list">Lista rozgłoszeniowa</string>
@@ -536,6 +548,8 @@
<string name="tab_audio_empty_hint">Tutaj pojawią się pliki dźwiękowe i wiadomości głosowe udostępnione w tym czacie.</string>
<string name="tab_webxdc_empty_hint">Tutaj pojawią się prywatne aplikacje udostępnione na tym czacie.</string>
<string name="tab_all_media_empty_hint">Tutaj pojawią się multimedia udostępnione w dowolnym czacie.</string>
<string name="all_files_empty_hint">Tutaj pojawią się dokumenty, muzyka i inne pliki udostępnione w dowolnym czacie.</string>
<string name="all_apps_empty_hint">Tutaj pojawią się prywatne aplikacje otrzymane lub wysłane w dowolnym czacie.</string>
<string name="media_preview">Podgląd multimediów</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
<string name="aspect_ratio_grid">Siatka proporcjonalna</string>
@@ -658,14 +672,6 @@
<string name="proxy_share_explain">Twoi znajomi mogą dodać ten serwer proxy, skanując kod QR.</string>
<string name="proxy_share_link">Udostępnij link</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Użyj SOCKS5</string>
<string name="login_socks5_host">Host SOCKS5</string>
<string name="login_socks5_port">Port SOCKS5</string>
<string name="login_socks5_user">Użytkownik SOCKS5</string>
<string name="login_socks5_password">Hasło SOCKS5</string>
<string name="login_info_oauth2_title">Kontynuuj w uproszczonej konfiguracji?</string>
<string name="login_info_oauth2_text">Wprowadzony adres e-mail obsługuje uproszczoną konfigurację (OAuth2.0).\n\nW następnym kroku pozwól, aby Delta Chat działał jako czat z aplikacją e-mail.\n\nNie ma serwerów Delta Chat, Twoje dane pozostają na Twoim urządzeniu!</string>
<string name="login_certificate_checks">Sprawdzanie certyfikatów</string>
@@ -751,6 +757,7 @@
<string name="pref_appearance">Wygląd</string>
<string name="pref_theme">Motyw</string>
<string name="pref_language">Język</string>
<string name="pref_use_system_ui_font">Użyj czcionki systemowej</string>
<string name="pref_incognito_keyboard">Klawiatura incognito</string>
<!-- Translators: Must indicate that there is no guarantee as the system may not honor our request. -->
<string name="pref_incognito_keyboard_explain">Poproś klawiaturę o wyłączenie spersonalizowanej nauki</string>
@@ -761,7 +768,9 @@
<string name="pref_manage_keys">Zarządzaj prywatnymi kluczami</string>
<string name="pref_use_system_emoji">Użyj emoji systemowych</string>
<string name="pref_use_system_emoji_explain">Wyłącza wbudowaną obsługę emoji Delta Chat</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera">Użyj aparatu w aplikacji</string>
<!-- deprecated -->
<string name="pref_use_inapp_camera_explain">Aparat w aplikacji ma zwykle mniej funkcji niż aparat systemowy</string>
<string name="pref_show_system_contacts">Odczytaj systemową książkę adresową</string>
<string name="pref_show_system_contacts_explain">Zaproponuj tworzenie czatów z kontaktami z książki adresowej. Niektórzy dostawcy wymagają najpierw szyfrowania end-to-end.</string>
@@ -900,10 +909,6 @@
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Potwierdzenie odczytu</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">To jest potwierdzenie odczytu dla wiadomości ”%1$s„.\n\nTo potwierdzenie odczytu tylko informuje, że wiadomość została wyświetlona na urządzeniu odbiorcy. Nie ma gwarancji, że odbiorca przeczytał treść wiadomości.</string>
<string name="systemmsg_cannot_decrypt">Tej wiadomości nie można odszyfrować.\n\n• Możesz teraz pomóc odpowiadając po prostu na tą wiadomość i poprosić nadawcę o ponowne wysłanie wiadomości.\n\n• Jeśli właśnie ponownie zainstalowałeś Delta Chat, najlepiej będzie, jeśli ponownie skonfigurujesz Delta Chat teraz i wybierzesz „Dodaj jako drugie urządzenie” lub zaimportujesz kopię zapasową.</string>
<string name="systemmsg_unknown_sender_for_chat">Nieznany nadawca tego czatu. Więcej szczegółów znajdziesz w sekcji „Informacje”.</string>
<string name="systemmsg_subject_for_new_contact">Wiadomość od %1$s</string>
@@ -978,7 +983,6 @@
<string name="chat_protection_broken_explanation">Nie można już zagwarantować szyfrowania end-to-end, prawdopodobnie z powodu ponownej instalacji Delta Chat przez %1$s lub wysłania wiadomości z innego urządzenia.\n\nMożesz spotkać się z tą osobą osobiście i ponownie zeskanować jej kod QR, aby przywrócić gwarantowane szyfrowanie end-to-end.</string>
<string name="invalid_unencrypted_tap_to_learn_more">⚠️ %1$s wymaga szyfrowania end-to-end, które nie zostało jeszcze skonfigurowane dla tego czatu. Dotknij, aby dowiedzieć się więcej.</string>
<string name="invalid_unencrypted_explanation">Aby ustanowić szyfrowanie end-to-end, możesz spotkać się z kontaktami osobiście i zeskanować ich kod QR, żeby ich wprowadzić.</string>
<string name="encryption_required_for_new_contact">Wymagane jest szyfrowanie end-to-end, ale nie zostało ono jeszcze skonfigurowane dla %1$s.\n\nMożesz udostępnić im swój link zaproszenia lub spotkać się osobiście i zeskanować ich kod QR.</string>
<string name="learn_more">Czytaj więcej</string>
<string name="devicemsg_self_deleted">Usunięto czat „Zapisane wiadomości”.\n\n️ Aby ponownie użyć funkcji „Zapisane wiadomości”, utwórz nowy czat ze sobą.</string>
@@ -1007,9 +1011,7 @@
<string name="withdraw_verifycontact_explain">Ten kod QR może zostać zeskanowany przez inne osoby w celu skontaktowania się z Tobą.\n\nTutaj możesz dezaktywować kod QR i ponownie go aktywować poprzez zeskanowanie.</string>
<string name="withdraw_verifygroup_explain">Ten kod QR może zostać zeskanowany przez inne osoby, aby dołączyć do grupy „%1$s”.\n\nTutaj możesz dezaktywować kod QR i ponownie go aktywować poprzez zeskanowanie.</string>
<string name="withdraw_qr_code">Dezaktywuj kod QR</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Ten kod QR mógł być skanowany przez inne osoby w celu skontaktowania się z Tobą.\n\nKod QR nie jest już aktywny na tym urządzeniu.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Ten kod QR mógł być skanowany przez inne osoby, aby dołączyć do grupy „%1$s”.\n\nKod QR nie jest już aktywny na tym urządzeniu.</string>
<string name="revive_qr_code">Aktywuj kod QR</string>
<string name="qrshow_title">Kod QR zaproszenia</string>
@@ -1108,8 +1110,8 @@
<string name="global_menu_view_developer_desktop">Programista</string>
<string name="global_menu_view_developer_tools_desktop">Narzędzia Programisty</string>
<string name="global_menu_help_desktop">Pomoc</string>
<string name="global_menu_help_learn_desktop">Dowiedz się więcej o Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Przyczyń się do rozwoju na GitHub</string>
<string name="delta_chat_homepage">Strona Delta Chat</string>
<string name="contribute">Wsparcie</string>
<string name="global_menu_help_report_desktop">Zgłoś problem</string>
<string name="global_menu_help_about_desktop">O Delta Chat</string>
<string name="global_menu_file_open_desktop">Otwórz Delta Chat</string>
@@ -1122,6 +1124,8 @@
<string name="timestamp_format_m_desktop">D MMM</string>
<string name="remove_desktop">Usuń</string>
<string name="save_desktop">Zapisz</string>
<!-- Opposite of "Save". Undo a "Save" action. Similar to "Unmute", "Unpin". Could also be worded as "Save no longer" or so. -->
<string name="unsave">Przywróć</string>
<string name="name_desktop">Nazwa</string>
<string name="select_group_image_desktop">Wybierz obraz grupy</string>
<string name="export_backup_desktop">Eksport kopii zapasowej</string>
@@ -1184,8 +1188,6 @@
<string name="system_settings">Ustawienia systemowe</string>
<!-- shown below the button "System Settings" on the notification screen. this is a hint about what can be edited on System Settings' Notification page - eg. the notification type (banner, lock screen, notification centre), sound, badges and so on. no need to be exhaustive here, it is only to give the user an idea. -->
<string name="system_settings_notify_explain_ios">Edytuj typ, plakietki, podgląd i więcej</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Tutaj pojawią się prywatne aplikacje otrzymane lub wysłane w dowolnym czacie. „Pliki” pokazuje właśnie pobrane prywatne aplikacje.</string>
<!-- iOS shortcut widget -->
<!-- use the same translation for "Shortcuts" as the system is using, often the term "Shortcut" stays untranslated; check eg. how the "Shortcuts" system app is called in your locale -->
<string name="shortcuts_widget_title">Skróty</string>
@@ -1220,6 +1222,5 @@
<!-- device messages for updates -->
<string name="update_1_50_android">Co nowego?\n\n❤️‍🔥 Nowy selektor emoji z większą liczbą emoji\n\n🎮 Ulepszone aplikacje czatu: Otrzymuj powiadomienia i otwieraj aplikacje pomocnicze w kontekście, np. otwieraj dodany wpis kalendarza bezpośrednio\n\n👍 Otrzymuj powiadomienia o reakcjach na swoje wiadomości\n\n... 🛠️ POPRAWKI i JESZCZE WIĘCEJ na %1$s</string>
<string name="update_1_46_ios">Nowe wdrożenie 🐣 i nie tylko:\n\n⚡️ Zarejestruj się, aby korzystać z bezpiecznych i szybkich serwerów chatmail (https://delta.chat/chatmail) lub korzystaj z klasycznych serwerów e-mail\n\n👉 Powiadomienia PUSH dla dowolnego serwera chatmail\n\n👤 Odbierz „Dołączone kontakty” i łącz się ze znajomymi\n\n🥰 Szybszy wybór reakcji… i wiele WIĘCEJ na %1$s</string>
<string name="update_switch_profile_placement">️ Opcja „Przełącz profil” została przeniesiona: Dotknij swojego zdjęcia profilowego w górnym rogu ekranu głównego, aby dodać lub przełączyć profile 💡</string>
</resources>
+1 -19
View File
@@ -475,6 +475,7 @@
<string name="tab_audio_empty_hint">Os arquivos de áudio e mensagens de voz compartilhados neste chat serão exibidos aqui.</string>
<string name="tab_webxdc_empty_hint">Apps compartilhadas neste chat serão exibidas aqui.</string>
<string name="tab_all_media_empty_hint">Mídias compartilhadas em qualquer bate-papo aparecerão aqui.</string>
<string name="all_apps_empty_hint">Apps recebidas ou enviadas em qualquer bate-papo aparecerão aqui.</string>
<string name="media_preview">Pré-visualização.</string>
<string name="send_message">Enviar mensagem</string>
<!-- Placeholder %1$s will be replaced by the name of the contact changing their address. Placeholders %2$s and %3$s will be replaced by old/new email addresses. -->
@@ -551,14 +552,6 @@
<string name="login_smtp_port">Porta SMTP</string>
<string name="login_smtp_security">Segurança SMTP</string>
<string name="login_auth_method">Método de autorização</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Usar SOCKS5</string>
<string name="login_socks5_host">Servidor SOCKS5 </string>
<string name="login_socks5_port">Porta SOCKS5</string>
<string name="login_socks5_user">Usuário SOCKS5</string>
<string name="login_socks5_password">Senha SOCKS5</string>
<string name="login_info_oauth2_title">Prosseguir pela configuração simplificada?</string>
<string name="login_info_oauth2_text">Seu servidor de e-mail aceita o método de configuração simplificada (OAuth 2.0).\n\n No próximo passo, por favor, permita que o Delta Chat seja seu aplicativo de e-mail.\n\nNão há servidor do Delta Chat. Seus dados ficam no seu aparelho.</string>
<string name="login_certificate_checks">Verificações de certificado</string>
@@ -756,11 +749,6 @@
<string name="autocrypt_bad_setup_code">Código errado. Tente novamente.\n\nSe você não se lembra do código recomece a transferência de chaves no dispositivo original.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Confirmação de leitura</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Confirmação de recebimento da mensagem \"%1$s\".\n\nEsta confirmação somente assegura que a mensagem foi exibida no aparelho do destinatário, mas não há garantia de que ele tenha lido o seu conteúdo.</string>
<string name="systemmsg_unknown_sender_for_chat">Remetente desconhecido para esta conversa. Veja \'informações\' para mais detalhes.</string>
<string name="systemmsg_subject_for_new_contact">Mensagem de %1$s</string>
<string name="systemmsg_failed_sending_to">Falha ao enviar mensagem para %1$s.</string>
@@ -849,9 +837,7 @@
<string name="withdraw_verifycontact_explain">Este código QR pode ser lido por outras pessoas para entrar em contato com você.\n\nVocê pode desativar o código QR aqui e reativá-lo escaneando-o novamente.</string>
<string name="withdraw_verifygroup_explain">Este código QR pode ser lido por outras pessoas para entrar no grupo \"%1$s\".\n\nVocê pode desativar o código QR aqui e reativá-lo escaneando-o novamente.</string>
<string name="withdraw_qr_code">Desativar Código QR</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifycontact_explain">Este código QR pode ser lido por outras pessoas para entrar em contato com você.\n\nO código QR não está ativo neste dispositivo.</string>
<!-- "could" in the meaning of "possible at some point in the past, but no longer possible today" -->
<string name="revive_verifygroup_explain">Este código QR pode ser lido por outras pessoas para se juntar ao grupo \"%1$s\".\n\nO código QR não está ativo neste dispositivo.</string>
<string name="revive_qr_code">Ativar Código QR</string>
<string name="qrshow_title">Código QR de convite</string>
@@ -935,8 +921,6 @@
<string name="global_menu_view_developer_desktop">Desenvolvedor</string>
<string name="global_menu_view_developer_tools_desktop">Ferramentas de desenvolvedor</string>
<string name="global_menu_help_desktop">Ajuda</string>
<string name="global_menu_help_learn_desktop">Aprenda mais sobre o Delta Chat</string>
<string name="global_menu_help_contribute_desktop">Contribua no GitHub</string>
<string name="global_menu_help_report_desktop">Relatar um erro</string>
<string name="global_menu_help_about_desktop">Sobre o Delta Chat</string>
<string name="global_menu_file_open_desktop">Abrir o Delta Chat </string>
@@ -1008,8 +992,6 @@
<string name="notifications_avg_minutes">Em média, a cada %1$d minutos</string>
<string name="notifications_avg_hours">Em média, a cada %1$d horas</string>
<string name="last_check_at">Verificado em %1$s</string>
<!-- iOS webxdc selector -->
<string name="webxdc_selector_empty_hint">Apps recebidas ou enviadas em qualquer bate-papo aparecerão aqui. \"Arquivos\" mostra as apps que acabaram de serem baixadas.</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Delta Chat usa sua câmera para tirar e enviar fotos e vídeos e para escanear códigos QR.</string>
<string name="InfoPlist_NSContactsUsageDescription">O Delta Chat usa seus contatos para mostrar uma lista de endereços de e-mail para os quais você pode escrever. O Delta Chat não tem servidor, seus contatos não são enviados a lugar nenhum.</string>
+1 -6
View File
@@ -201,6 +201,7 @@
<string name="group_add_members">Adicionar membros</string>
<string name="group_self_not_in_group">Você deve ser um membro do grupo para executar essa ação.</string>
<string name="profile_encryption">Encriptação</string>
<string name="all_apps_empty_hint">Apps recebidas ou enviadas em qualquer bate-papo aparecerão aqui.</string>
<string name="media_preview">Visualização de mídia</string>
<string name="login_title">Login</string>
<!-- for classic email, we use the classical term "Account" -->
@@ -316,11 +317,6 @@
<string name="autocrypt_bad_setup_code">Código de configuração inválido Por favor, tente novamente.\n\nSe não se lembrar do código de configuração, basta re-enviar outra Mensagem de Configuração de Autocrypt do outro dispositivo.</string>
<!-- system messages -->
<!-- deprecated -->
<string name="systemmsg_read_receipt_subject">Ler recibos</string>
<!-- deprecated -->
<string name="systemmsg_read_receipt_body">Este é um recibo de confirmação de leitura da mensagem \"%1$s\".\n\nEsta mensagem foi exibida no dispositivo do destinatário, não necessariamente que o conteúdo foi lido.</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name -->
<string name="group_name_changed_by_you">O nome do grupo mudou de \"%1$s\" para \"%2$s\" por mim.</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name, %3$s will be replaced by name and address of the contact who did the action. -->
@@ -394,7 +390,6 @@
<string name="global_menu_view_developer_desktop">Programador</string>
<string name="global_menu_view_developer_tools_desktop">Ferramentas do programador</string>
<string name="global_menu_help_desktop">Ajuda</string>
<string name="global_menu_help_contribute_desktop">Contribuir no GitHub</string>
<string name="global_menu_help_report_desktop">Comunicar um problema</string>
<string name="no_chat_selected_suggestion_desktop">Selecione um CHAT ou crie um novo</string>
<string name="write_message_desktop">Escreva uma mensagem</string>
-8
View File
@@ -537,14 +537,6 @@
<string name="login_smtp_port">Portul SMTP </string>
<string name="login_smtp_security">Securitate SMTP</string>
<string name="login_auth_method">Metoda de autorizare</string>
<!-- deprecated -->
<string name="login_socks5">SOCKS5</string>
<string name="login_socks5_use_socks5">Utilizați SOCKS5</string>
<string name="login_socks5_host">Gazdă SOCKS5</string>
<string name="login_socks5_port">Portul SOCKS5</string>
<string name="login_socks5_user">Utilizator SOCKS5</string>
<string name="login_socks5_password">Parolă SOCKS5</string>
<string name="login_info_oauth2_title">Continuați cu configurația simplificată?</string>
<string name="login_info_oauth2_text">Adresa de e-mail introdusă suportă o configurare simplificată (OAuth 2.0).\n\nÎn pasul următor, vă rugăm să permiteți ca Delta Chat să acționeze ca aplicație de chat prin e-mail.\n\nNu există servere Delta Chat, datele voastre rămân pe dispozitivul dumneavoastră.</string>
<string name="login_certificate_checks">Verificări de certificate</string>

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