Compare commits

...

71 Commits

Author SHA1 Message Date
adbenitez 3a5f9b3fed update app name to avoid confusion in f-droid 2024-12-13 22:48:31 +01:00
adbenitez 5ffbc19d03 Merge remote-tracking branch 'upstream/main' 2024-12-13 22:42:20 +01:00
adb d9db4b818a Merge pull request #3487 from deltachat/prep-1.50.3
Prepare 1.50.3
2024-12-13 20:12:04 +01:00
adbenitez 693efdbd0f add back device message 2024-12-13 20:10:45 +01:00
adbenitez 399b783437 update changelog 2024-12-13 19:30:34 +01:00
adbenitez 4bc574dfbe change version name 2024-12-13 19:29:47 +01:00
adbenitez 294af0981d disable previous version's device message 2024-12-13 18:28:25 +01:00
adbenitez e8c7014993 update changelog 2024-12-13 18:27:25 +01:00
adbenitez 0edc8303c1 update version number 2024-12-13 14:21:20 +01:00
adb 8c89c3e225 Merge pull request #3484 from deltachat/adb/issue-3479
download .xdc files in background
2024-12-13 14:12:42 +01:00
adb a93c8ab055 Merge pull request #3485 from deltachat/adb/issue-3481
add missing webxdc api
2024-12-13 14:00:12 +01:00
adbenitez c5cb79d116 add missing webxdc api 2024-12-13 13:42:39 +01:00
adbenitez b3c50b9571 download .xdc files in background 2024-12-13 13:18:40 +01:00
adb 41579de502 Merge pull request #3483 from deltachat/update-core-and-stuff-13/12/24
Update core to 1.152.0
2024-12-13 12:50:54 +01:00
adbenitez e6f735b8bc update scripts/update-core.sh 2024-12-13 12:50:24 +01:00
adbenitez 70b6f2cdfa update strings 2024-12-13 12:36:09 +01:00
adbenitez c1e716d6a3 update deltachat-core-rust to 'chore(release): prepare for 1.152.0' of 'v1.152.0' 2024-12-13 12:36:09 +01:00
adb dde59b4673 Merge pull request #3482 from deltachat/link2xt/update-rust-1.83
Update Rust to 1.83.0
2024-12-13 12:33:51 +01:00
link2xt 9d77920adf build: update Rust to 1.83.0 2024-12-12 13:28:33 +00:00
link2xt 6f50ee0cfb build(nix): remove ndk-bundle 2024-12-12 13:28:33 +00:00
link2xt 4c86d6d49e chore: nix flake update 2024-12-12 12:47:08 +00:00
Hocuri 963327dd64 Remove prepareMsg (and OUT_PREPARING message state) (#3468)
This PR removes prepareMsg, which put messages into the OUT_PREPARING state and was used while videos were recoded. It also removes the now-unused method isIncreation().
- It was buggy because when you forwarded a message while it was InPreparation, or when the app was killed while a message is InPreparation, the message would stay InPreparation forever.
- Android is the only UI using this InPreparation (according to @r10s, I didn't check this myself), so we can simplify some things in core, which will also make it easier to deduplicate blob files.
2024-12-11 13:53:36 +01:00
adbenitez 5cba1ccd98 remove duplicate realtime preference 2024-12-09 11:57:51 +01:00
adbenitez de8e6b6852 remove store from main menu 2024-12-07 17:37:01 +01:00
adbenitez 811089f3b3 Merge remote-tracking branch 'upstream/main' 2024-12-07 17:11:55 +01:00
adbenitez e045a09d36 Merge remote-tracking branch 'upstream/main' 2024-12-07 17:10:18 +01:00
B. Petersen a3a6919b08 center attachment icons
this PR centers the icons in the attachment selector,
the right-aligned ones looks esp. odd when no experiments are enabled.

the default now looks good,
and when all experiments are enabled, things are perfect as well.
but even if only one experiment is enabled, things are better imo
(but we anyway should optimize for default and not for experimental options)
2024-12-07 16:59:33 +01:00
adbenitez cbee839a43 Merge remote-tracking branch 'upstream/main' 2024-12-07 14:29:12 +01:00
adb efdd92b6a1 Merge pull request #3463 from deltachat/adb/webxdc-picker
add webxdc picker
2024-12-07 14:19:27 +01:00
adb 75296e189a Merge pull request #3456 from deltachat/adb/improve-notifications
notify webxdc events, replies and reactions to own messages even if chat is muted
2024-12-06 15:33:51 +01:00
adb 708a68119e Merge pull request #3476 from deltachat/adb/fix-upload-relese-script
fix scripts/upload-release.sh
2024-12-06 10:57:55 +01:00
adbenitez 1d5ab98892 fix scripts/upload-release.sh 2024-12-06 07:59:49 +01:00
adb 07753e211d Merge pull request #3475 from deltachat/prep-1.50.2
prepare 1.50.2
2024-12-06 07:47:10 +01:00
adbenitez 8135d96300 update build.gradle 2024-12-06 07:44:00 +01:00
adbenitez d151e825da update changelog 2024-12-06 07:42:34 +01:00
adb d5289cc3df Merge pull request #3474 from deltachat/adb/update-translations-6/12/24
update translations
2024-12-06 07:40:29 +01:00
adbenitez af40a8b57e update translations 2024-12-06 07:39:00 +01:00
B. Petersen 529139099e fix starting of webxdc
the issue is that unset `EXTRA_HREF` is passed around as an empty string,
however `Bundle.getString(href, "index.html")` returns `index.html` only when `href` is `NULL`,
which is mostly never the case.

this results in webxdc never started with index.html,
and then not started at all
2024-12-06 01:19:44 +01:00
B. Petersen b4aa18abae amend 1.50 changelog 2024-12-05 21:40:28 +01:00
adb a7cee63d1c Merge pull request #3469 from deltachat/update-core-and-stuff-5.12.25
Update core to 1.151.5
2024-12-05 17:47:34 +01:00
adbenitez eda735925a update local help and translations 2024-12-05 17:46:03 +01:00
adbenitez 46650c8cc3 update deltachat-core-rust to 'chore(release): prepare for 1.151.5' of 'v1.151.5' 2024-12-05 16:34:26 +01:00
adbenitez fbab156d22 tweak apps icon 2024-12-05 15:50:14 +01:00
adb 539cb670f1 Merge pull request #3465 from deltachat/adb/force-base-url-in-webxdc-href
always prefix href with baseURL
2024-12-04 16:54:32 +01:00
adb 2a6aba110b Update src/main/java/org/thoughtcrime/securesms/WebxdcStoreActivity.java
Co-authored-by: Hocuri <hocuri@gmx.de>
2024-12-04 16:40:02 +01:00
adb 0351a1e974 Update src/main/res/values/strings.xml
Co-authored-by: bjoern <r10s@b44t.com>
2024-12-04 16:06:32 +01:00
adbenitez d48ab128a0 open clicked non-xdc URLs in external browsers instead of internally 2024-12-04 16:01:49 +01:00
adbenitez ef67585529 remove label 2024-12-04 14:59:10 +01:00
adbenitez 953e7c6da0 don't export WebxdcStoreActivity 2024-12-04 14:57:12 +01:00
adbenitez ab5a9c9d60 rename config name and meaning 2024-12-04 13:55:02 +01:00
adb af91cf7413 Update src/main/res/values/strings.xml
Co-authored-by: bjoern <r10s@b44t.com>
2024-12-04 12:59:18 +01:00
adbenitez 6a618986d0 rename to ui.notify_mentions_if_muted and improve code 2024-12-04 12:59:18 +01:00
adbenitez 9eefcacbc1 add option to disable notifying "mentions" in muted chats 2024-12-04 12:59:18 +01:00
adbenitez e245e29058 notify webxdc events, replies and reactions to own messages even if chat is muted 2024-12-04 12:59:18 +01:00
adbenitez 7d879f8d1f always prefix href with baseURL 2024-12-04 11:24:13 +01:00
adbenitez f7963a56e9 add App Picker URL setting 2024-12-03 19:32:36 +01:00
adbenitez 0a73877c25 add app picker to attachments menu 2024-12-03 18:52:15 +01:00
adb 1b57880be3 Merge pull request #3464 from deltachat/adb/fix-strings
fix strings.xml
2024-12-03 14:07:59 +01:00
adbenitez f54144e7e8 fix strings.xml 2024-12-03 13:41:09 +01:00
adb b735759bd0 Merge pull request #3462 from deltachat/prep-1.50.0
prepare 1.50.0
2024-12-03 13:22:29 +01:00
adb a7199ecedf Update src/main/res/values/strings.xml
Co-authored-by: bjoern <r10s@b44t.com>
2024-12-03 13:22:10 +01:00
adbenitez 2cb529be32 update ndk-make.sh 2024-12-03 12:05:30 +01:00
adbenitez 235038027b Merge remote-tracking branch 'upstream/main' 2024-12-03 11:54:39 +01:00
adbenitez e8eb036594 prepare 1.50.0 2024-12-03 11:36:26 +01:00
adb d531eb8b47 Merge pull request #3461 from deltachat/update-core-and-stuff-3.12.24
update core to 1.151.3
2024-12-03 11:02:46 +01:00
adbenitez a88a619099 update deltachat-core-rust to 'chore(release): prepare for 1.151.3' of 'v1.151.3' 2024-12-03 10:56:47 +01:00
adb 00bc429f20 Merge pull request #3460 from deltachat/adb/dont-notify-open-webxdc
do not notify if the webxdc is open
2024-12-02 18:40:31 +01:00
adbenitez 3f25d002e4 do not notify if the webxdc is open 2024-12-02 18:01:50 +01:00
adb 74c6f20c3e Merge pull request #3457 from deltachat/adb/fix-callJavascriptFunction
fix WebxdcActivity.callJavaScriptFunction()
2024-12-02 14:41:05 +01:00
B. Petersen 8728a0a39b remove dead code
these RPC calls are probably a relict of first tries,
they are not exhaustive in their area are nor were ever used,
maybe not even working.
if we decide to go that way at some point anyways much more is needed :)
2024-12-02 13:30:38 +01:00
adbenitez dcf5cf7f54 translate mention pref to Spanish 2024-11-30 18:21:35 +01:00
77 changed files with 849 additions and 528 deletions
+21 -4
View File
@@ -1,7 +1,21 @@
# ArcaneChat Android Changelog
## v1.49.0
2024-11
## v1.50.3
2024-12
* Add in-chat apps picker to attachments options
* Notify replies and reactions to your messages in muted chats (can be disabled in settings)
* Cache HTTP GET requests (ex. when loading images from HTML messages)
* update to core 1.152.0
## v1.50.2
2024-12
* Encrypt notification tokens
* update to core 1.151.5
## v1.50.0
2024-12
* New emoji picker with support for more emojis
* Webxdc apps can now trigger notifications
@@ -16,7 +30,10 @@
* Removed internal font scaling setting in favor of the better system settings
* Use privacy-preserving webxdc addresses
* Use Rustls for connections with strict TLS
* fix: Trim whitespace from scanned QR codes.
* QR codes for adding contacts and joining groups provide help when opened in a normal browser
* Mark Saved Messages chat as protected
* Allow the user to replace maps integration
* fix: Trim whitespace from scanned QR codes
* fix quotes: Line-before-quote may be up to 120 character long instead of 80
* fix: Prevent accidental wrong-password-notifications
* fix: Remove footers from "Show Full Message..."
@@ -26,7 +43,7 @@
* fix: Do not percent-encode dot when passing to autoconfig server (so, fix handling of some servers)
* fix displaynames not being updated when intially scanned by a QR code
* several bug fixes
* update to core 1.151.2
* update to core 1.151.3
## v1.48.3
2024-10
+2 -2
View File
@@ -33,8 +33,8 @@ android {
useLibrary 'org.apache.http.legacy'
defaultConfig {
versionCode 30000698
versionName "1.49.0"
versionCode 30000700
versionName "1.50.4"
applicationId "chat.delta.lite"
multiDexEnabled true
Generated
+26 -60
View File
@@ -3,15 +3,15 @@
"android": {
"inputs": {
"devshell": "devshell",
"flake-utils": "flake-utils_2",
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1720988215,
"narHash": "sha256-nQ0Zx0vAWJo0IOGNFjCOdIkDSgOpMa//GalR8tbTl3A=",
"lastModified": 1733948466,
"narHash": "sha256-o/uq/tU458Ykudi8Zk3sRga5iazkuSczt9wDOCUDOSU=",
"owner": "tadfisher",
"repo": "android-nixpkgs",
"rev": "5a052c62cdb51b210bc0717177d5bd014cba3df1",
"rev": "0bf99ffaea6a7c0948ae10cf2e40c2905e4e4d6b",
"type": "github"
},
"original": {
@@ -22,18 +22,17 @@
},
"devshell": {
"inputs": {
"flake-utils": "flake-utils",
"nixpkgs": [
"android",
"nixpkgs"
]
},
"locked": {
"lastModified": 1717408969,
"narHash": "sha256-Q0OEFqe35fZbbRPPRdrjTUUChKVhhWXz3T9ZSKmaoVY=",
"lastModified": 1728330715,
"narHash": "sha256-xRJ2nPOXb//u1jaBnDP56M7v5ldavjbtR6lfGqSvcKg=",
"owner": "numtide",
"repo": "devshell",
"rev": "1ebbe68d57457c8cae98145410b164b5477761f4",
"rev": "dd6b80932022cea34a019e2bb32f6fa9e494dfef",
"type": "github"
},
"original": {
@@ -47,11 +46,11 @@
"systems": "systems"
},
"locked": {
"lastModified": 1701680307,
"narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=",
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "4022d587cbbfd70fe950c1e2083a02621806a725",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
@@ -65,29 +64,11 @@
"systems": "systems_2"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_3": {
"inputs": {
"systems": "systems_3"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
@@ -98,11 +79,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1720768451,
"narHash": "sha256-EYekUHJE2gxeo2pM/zM9Wlqw1Uw2XTJXOSAO79ksc4Y=",
"lastModified": 1733759999,
"narHash": "sha256-463SNPWmz46iLzJKRzO3Q2b0Aurff3U1n0nYItxq7jU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "7e7c39ea35c5cdd002cd4588b03a3fb9ece6fad9",
"rev": "a73246e2eef4c6ed172979932bc80e1404ba2d56",
"type": "github"
},
"original": {
@@ -114,11 +95,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1723221148,
"narHash": "sha256-7pjpeQlZUNQ4eeVntytU3jkw9dFK3k1Htgk2iuXjaD8=",
"lastModified": 1733749988,
"narHash": "sha256-+5qdtgXceqhK5ZR1YbP1fAUsweBIrhL38726oIEAtDs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "154bcb95ad51bc257c2ce4043a725de6ca700ef6",
"rev": "bc27f0fde01ce4e1bfec1ab122d72b7380278e68",
"type": "github"
},
"original": {
@@ -130,11 +111,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1718428119,
"narHash": "sha256-WdWDpNaq6u1IPtxtYHHWpl5BmabtpmLnMAx0RdJ/vo8=",
"lastModified": 1728538411,
"narHash": "sha256-f0SBJz1eZ2yOuKUr5CA9BHULGXVSn6miBuUWdTyhUhU=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "e6cea36f83499eb4e9cd184c8a8e823296b50ad5",
"rev": "b69de56fac8c2b6f8fd27f2eca01dcda8e0a4221",
"type": "github"
},
"original": {
@@ -147,7 +128,7 @@
"root": {
"inputs": {
"android": "android",
"flake-utils": "flake-utils_3",
"flake-utils": "flake-utils_2",
"nixpkgs": "nixpkgs_2",
"rust-overlay": "rust-overlay"
}
@@ -157,11 +138,11 @@
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1723429325,
"narHash": "sha256-4x/32xTCd+xCwFoI/kKSiCr5LQA2ZlyTRYXKEni5HR8=",
"lastModified": 1733970833,
"narHash": "sha256-sPEKtSaZk2CtfF9cdhtbY93S6qGq+d2PKI1fcoDfDaI=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "65e3dc0fe079fe8df087cd38f1fe6836a0373aad",
"rev": "f7f4c59ccdf1bec3f1547d27398e9589aa94e3e8",
"type": "github"
},
"original": {
@@ -199,21 +180,6 @@
"repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}
},
"root": "root",
-1
View File
@@ -17,7 +17,6 @@
with sdkPkgs; [
build-tools-33-0-1
cmdline-tools-latest
ndk-bundle
platform-tools
platforms-android-34
ndk-27-0-11902837
-12
View File
@@ -702,12 +702,6 @@ JNIEXPORT jboolean Java_com_b44t_messenger_DcContext_resendMsgs(JNIEnv *env, job
}
JNIEXPORT jint Java_com_b44t_messenger_DcContext_prepareMsg(JNIEnv *env, jobject obj, jint chat_id, jobject msg)
{
return dc_prepare_msg(get_dc_context(env, obj), chat_id, get_dc_msg(env, msg));
}
JNIEXPORT jint Java_com_b44t_messenger_DcContext_sendMsg(JNIEnv *env, jobject obj, jint chat_id, jobject msg)
{
return dc_send_msg(get_dc_context(env, obj), chat_id, get_dc_msg(env, msg));
@@ -1588,12 +1582,6 @@ JNIEXPORT jboolean Java_com_b44t_messenger_DcMsg_isForwarded(JNIEnv *env, jobjec
}
JNIEXPORT jboolean Java_com_b44t_messenger_DcMsg_isIncreation(JNIEnv *env, jobject obj)
{
return dc_msg_is_increation(get_dc_msg(env, obj))!=0;
}
JNIEXPORT jboolean Java_com_b44t_messenger_DcMsg_isInfo(JNIEnv *env, jobject obj)
{
return dc_msg_is_info(get_dc_msg(env, obj))!=0;
+3 -2
View File
@@ -38,8 +38,6 @@
#
# If anything doesn't work, please open an issue!!
"$(dirname "$0")/rebrand.sh"
set -e
echo "starting time: `date`"
@@ -176,4 +174,7 @@ else
rm -f ndkArch # Remove ndkArch, ignore if it doesn't exist
fi
"$(dirname "$0")/rebrand.sh"
echo "ending time: `date`"
+1 -1
View File
@@ -1 +1 @@
1.77.0
1.83.0
+1
View File
@@ -4,3 +4,4 @@ find ./src/main/assets/help/ -type f -name '*.html' | xargs sed -i 's/github.com
find ./src/main/assets/help/ -type f -name '*.html' | xargs sed -i 's/ArcaneChat/Delta Chat/g'
find ./src/ -type f -name 'strings.xml' | xargs sed -i 's/github.com\/ArcaneChat/get.delta.chat/g'
find ./src/ -type f -name 'strings.xml' | xargs sed -i 's/ArcaneChat/Delta Chat/g'
sed -i 's/>Delta Chat</>ArcaneChat</g' ./src/main/res/values/strings.xml
+2
View File
@@ -1,3 +1,5 @@
#!/usr/bin/env bash
set -e # stop on all errors
git submodule update --init --recursive
+1
View File
@@ -1,3 +1,4 @@
#!/usr/bin/env bash
VERSION=$1
+5
View File
@@ -389,6 +389,11 @@
android:exported="true">
</activity>
<activity android:name=".WebxdcStoreActivity"
android:theme="@style/TextSecure.LightTheme"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize|uiMode">
</activity>
<activity android:name=".FullMsgActivity"
android:theme="@style/TextSecure.LightTheme"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize">
+1 -1
View File
@@ -730,7 +730,7 @@ Das Einführen geschieht automatisch, wenn Sie Mitglieder zu Gruppen hinzufügen
Wer einen Kontakt zu einer Gruppe mit grünem Häkchen hinzufügt, wird zum Einführenden
für die Mitglieder, die noch nichts von dem hinzugefügten Kontakt wussten.
In einem Kontaktprofil können Sie wiederholt auf den Text “Eingeführt von …” tippen
bis du zu demjenigen gelangst, mit dem Sie einen direkten <a href="#howtoe2ee">QR-Scan</a> gemacht haben.</p>
bis Sie zu demjenigen gelangen, mit dem Sie einen direkten <a href="#howtoe2ee">QR-Scan</a> gemacht haben.</p>
<p>Beachten Sie, dass Sie in einem Kontaktprofil unter Umständen Einführende sehen und antippen können, aber kein grünes Häkchen im Profiltitel vorhanden ist.
Dies bedeutet normalerweise, dass der Kontakt <a href="#nocryptanymore">“eine Nachricht von einem anderen Gerät gesendet hat”</a>.</p>
@@ -86,7 +86,7 @@ public class DcContext {
public final static int DC_CONNECTIVITY_CONNECTED = 4000;
private static final String CONFIG_ACCOUNT_ENABLED = "ui.enabled";
private static final String CONFIG_MENTION_NOTIF_ENABLED = "ui.notify_mentions";
private static final String CONFIG_MUTE_MENTIONS_IF_MUTED = "ui.mute_mentions_if_muted";
// when using DcAccounts, use DcAccounts.addAccount() instead
public DcContext(String osName, String dbfile) {
@@ -195,7 +195,6 @@ public class DcContext {
public native void deleteMsgs (int msg_ids[]);
public native void forwardMsgs (int msg_ids[], int chat_id);
public native boolean resendMsgs (int msg_ids[]);
public native int prepareMsg (int chat_id, DcMsg msg);
public native int sendMsg (int chat_id, DcMsg msg);
public native int sendTextMsg (int chat_id, String text);
public native int sendVideochatInvitation(int chat_id);
@@ -228,11 +227,11 @@ public class DcContext {
}
public boolean isMentionsEnabled() {
return !"0".equals(getConfig(CONFIG_MENTION_NOTIF_ENABLED));
return getConfigInt(CONFIG_MUTE_MENTIONS_IF_MUTED) != 1;
}
public void setMentionsEnabled(boolean enabled) {
setConfigInt(CONFIG_MENTION_NOTIF_ENABLED, enabled? 1 : 0);
setConfigInt(CONFIG_MUTE_MENTIONS_IF_MUTED, enabled? 0 : 1);
}
public String getName() {
@@ -156,7 +156,6 @@ public class DcMsg {
public native String getSetupCodeBegin ();
public native String getVideochatUrl ();
public native int getVideochatType ();
public native boolean isIncreation ();
public native void setText (String text);
public native void setSubject (String text);
public native void setHtml (String text);
@@ -79,23 +79,6 @@ public class Rpc {
}
}
public int addAccount() throws RpcException {
return gson.fromJson(getResult("add_account"), int.class);
}
public void startIO() throws RpcException {
getResult("start_io_for_all_accounts");
}
public void stopIO() throws RpcException {
getResult("stop_io_for_all_accounts");
}
public Map<String, String> getSystemInfo() throws RpcException {
TypeToken<Map<String, String>> mapType = new TypeToken<Map<String, String>>(){};
return gson.fromJson(getResult("get_system_info"), mapType.getType());
}
public List<VcardContact> parseVcard(String path) throws RpcException {
TypeToken<List<VcardContact>> listType = new TypeToken<List<VcardContact>>(){};
return gson.fromJson(getResult("parse_vcard", path), listType.getType());
@@ -117,6 +117,7 @@ import org.thoughtcrime.securesms.util.Util;
import org.thoughtcrime.securesms.util.ViewUtil;
import org.thoughtcrime.securesms.util.concurrent.AssertedSuccessListener;
import org.thoughtcrime.securesms.util.guava.Optional;
import org.thoughtcrime.securesms.util.views.ProgressDialog;
import org.thoughtcrime.securesms.util.views.Stub;
import org.thoughtcrime.securesms.video.recode.VideoRecoder;
import org.thoughtcrime.securesms.videochat.VideochatUtil;
@@ -160,8 +161,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
private static final int GROUP_EDIT = 6;
private static final int TAKE_PHOTO = 7;
private static final int RECORD_VIDEO = 8;
private static final int PICK_LOCATION = 9; // TODO: i think, this can be deleted
private static final int SMS_DEFAULT = 11; // TODO: i think, this can be deleted
private static final int PICK_WEBXDC = 9;
private GlideRequests glideRequests;
protected ComposeText composeText;
@@ -174,6 +174,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
private View composePanel;
private ScaleStableImageView backgroundView;
private MessageRequestsBottomView messageRequestBottomView;
private ProgressDialog progressDialog;
private AttachmentTypeSelector attachmentTypeSelector;
private AttachmentManager attachmentManager;
@@ -335,8 +336,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
public void onActivityResult(final int reqCode, int resultCode, Intent data) {
super.onActivityResult(reqCode, resultCode, data);
if ((data == null && reqCode != TAKE_PHOTO && reqCode != RECORD_VIDEO && reqCode != SMS_DEFAULT) ||
(resultCode != RESULT_OK && reqCode != SMS_DEFAULT))
if (resultCode != RESULT_OK || (data == null && reqCode != TAKE_PHOTO && reqCode != RECORD_VIDEO))
{
return;
}
@@ -372,6 +372,10 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
setMedia(data.getData(), docMediaType);
break;
case PICK_WEBXDC:
setMedia(data.getData(), MediaType.DOCUMENT);
break;
case PICK_CONTACT:
addAttachmentContactInfo(data.getIntExtra(AttachContactActivity.CONTACT_ID_EXTRA, 0));
break;
@@ -399,16 +403,9 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
}
break;
case PICK_LOCATION:
break;
case ScribbleActivity.SCRIBBLE_REQUEST_CODE:
setMedia(data.getData(), MediaType.IMAGE);
break;
case SMS_DEFAULT:
initializeSecurity(isSecureText, isDefaultSms);
break;
}
}
@@ -931,6 +928,8 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
case AttachmentTypeSelector.RECORD_VIDEO:
attachmentManager.captureVideo(this, RECORD_VIDEO);
break;
case AttachmentTypeSelector.ADD_WEBXDC:
AttachmentManager.selectWebxdc(this, PICK_WEBXDC); break;
}
}
@@ -1072,7 +1071,17 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
{
boolean doSend = true;
if (recompress==DcMsg.DC_MSG_VIDEO) {
Util.runOnMain(() -> {
progressDialog = ProgressDialog.show(
ConversationActivity.this,
"",
getString(R.string.one_moment),
true,
false
);
});
doSend = VideoRecoder.prepareVideo(ConversationActivity.this, dcChat.getId(), msg);
Util.runOnMain(() -> progressDialog.dismiss());
}
if (doSend) {
@@ -113,7 +113,7 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit
// it is not needed to keep all past update messages, however, when deleted, also the strings should be deleted.
try {
DcContext dcContext = DcHelper.getContext(this);
final String deviceMsgLabel = "update_1_46_0l_android";
final String deviceMsgLabel = "update_1_50_0_android";
if (!dcContext.wasDeviceMsgEverAdded(deviceMsgLabel)) {
DcMsg msg = null;
if (!getIntent().getBooleanExtra(FROM_WELCOME, false)) {
@@ -124,7 +124,7 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit
// Util.copy(inputStream, new FileOutputStream(outputFile));
// msg.setFile(outputFile, "image/jpeg");
msg.setText(getString(R.string.update_1_46_android, "https://raw.githubusercontent.com/ArcaneChat/android/refs/heads/main/CHANGELOG.md"));
msg.setText(getString(R.string.update_1_50_android, "https://raw.githubusercontent.com/ArcaneChat/android/refs/heads/main/CHANGELOG.md"));
}
dcContext.addDeviceMsg(deviceMsgLabel, msg);
@@ -458,9 +458,6 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit
case R.id.menu_all_media:
startActivity(new Intent(this, ProfileActivity.class));
return true;
case R.id.menu_webxdc_apps_store:
handleShowBot("juegos@buzon.uy", "OPENPGP4FPR:d3d403a734be71fe9293a00311fef80dbe5dbc89#a=juegos%40buzon.uy&n=&i=WQZY-8FODS3&s=ZQBkaclFzao");
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");
return true;
@@ -75,7 +75,9 @@ public class WebxdcActivity extends WebViewActivity implements DcEventCenter.DcE
private DcMsg dcAppMsg;
private String baseURL;
private String sourceCodeUrl = "";
private String selfAddr = "";
private String selfAddr;
private int sendUpdateMaxSize;
private int sendUpdateInterval;
private boolean internetAccess = false;
private boolean hideActionBar = false;
@@ -203,7 +205,9 @@ public class WebxdcActivity extends WebViewActivity implements DcEventCenter.DcE
// this is needed here because if the app is opened while already in landscape mode, onConfigurationChanged() is not triggered
setScreenMode(getResources().getConfiguration());
}
selfAddr = JsonUtils.optString(info, "self_addr");
selfAddr = info.optString("self_addr");
sendUpdateMaxSize = info.optInt("send_update_max_size");
sendUpdateInterval = info.optInt("send_update_interval");
toggleFakeProxy(!internetAccess);
@@ -220,7 +224,12 @@ public class WebxdcActivity extends WebViewActivity implements DcEventCenter.DcE
webView.setNetworkAvailable(internetAccess); // this does not block network but sets `window.navigator.isOnline` in js land
webView.addJavascriptInterface(new InternalJSApi(), "InternalJSApi");
String href = b.getString(EXTRA_HREF, "");
String extraHref = b.getString(EXTRA_HREF, "");
if (TextUtils.isEmpty(extraHref)) {
extraHref = "index.html";
}
String href = baseURL + "/" + extraHref;
String encodedHref = "";
try {
encodedHref = URLEncoder.encode(href, Charsets.UTF_8.name());
@@ -504,6 +513,16 @@ public class WebxdcActivity extends WebViewActivity implements DcEventCenter.DcE
return dcContext.isCommunity();
}
@JavascriptInterface
public int sendUpdateMaxSize() {
return WebxdcActivity.this.sendUpdateMaxSize;
}
@JavascriptInterface
public int sendUpdateInterval() {
return WebxdcActivity.this.sendUpdateInterval;
}
@JavascriptInterface
public String selfAddr() {
if (dcContext.isCommunity() && !TextUtils.isEmpty(dcContext.getCommunityUser())) {
@@ -0,0 +1,139 @@
package org.thoughtcrime.securesms;
import android.annotation.TargetApi;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.view.MenuItem;
import android.webkit.WebResourceRequest;
import android.webkit.WebResourceResponse;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;
import androidx.appcompat.app.ActionBar;
import com.b44t.messenger.DcContext;
import com.b44t.messenger.rpc.HttpResponse;
import com.b44t.messenger.rpc.Rpc;
import com.b44t.messenger.rpc.RpcException;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.providers.PersistentBlobProvider;
import org.thoughtcrime.securesms.util.MediaUtil;
import org.thoughtcrime.securesms.util.Prefs;
import org.thoughtcrime.securesms.util.Util;
import java.io.ByteArrayInputStream;
import java.util.HashMap;
public class WebxdcStoreActivity extends PassphraseRequiredActionBarActivity {
private static final String TAG = WebxdcStoreActivity.class.getSimpleName();
private DcContext dcContext;
private Rpc rpc;
@Override
protected void onCreate(Bundle state, boolean ready) {
setContentView(R.layout.web_view_activity);
rpc = DcHelper.getRpc(this);
dcContext = DcHelper.getContext(this);
WebView webView = findViewById(R.id.webview);
ActionBar actionBar = getSupportActionBar();
if (actionBar != null) {
actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setTitle(R.string.webxdc_apps);
}
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
String ext = MediaUtil.getFileExtensionFromUrl(Uri.parse(url).getPath());
if ("xdc".equals(ext)) {
Util.runOnAnyBackgroundThread(() -> {
try {
HttpResponse httpResponse = rpc.getHttpResponse(dcContext.getAccountId(), url);
Uri uri = PersistentBlobProvider.getInstance().create(WebxdcStoreActivity.this, httpResponse.getBlob(), "application/octet-stream", "app.xdc");
Intent intent = new Intent();
intent.setData(uri);
setResult(Activity.RESULT_OK, intent);
finish();
} catch (RpcException e) {
e.printStackTrace();
Util.runOnMain(() -> Toast.makeText(WebxdcStoreActivity.this, "Error: " + e.getMessage(), Toast.LENGTH_LONG).show());
}
});
} else {
WebViewActivity.openUrlInBrowser(WebxdcStoreActivity.this, url);
}
return true;
}
@TargetApi(Build.VERSION_CODES.N)
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
return shouldOverrideUrlLoading(view, request.getUrl().toString());
}
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {
return interceptRequest(request.getUrl().toString());
}
});
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setAllowFileAccess(false);
webSettings.setAllowContentAccess(false);
webSettings.setGeolocationEnabled(false);
webSettings.setAllowFileAccessFromFileURLs(false);
webSettings.setAllowUniversalAccessFromFileURLs(false);
webSettings.setDatabaseEnabled(true);
webSettings.setDomStorageEnabled(true);
webView.setNetworkAvailable(true); // this does not block network but sets `window.navigator.isOnline` in js land
webView.loadUrl(Prefs.getWebxdcStoreUrl(this));
}
private WebResourceResponse interceptRequest(String url) {
WebResourceResponse res = null;
try {
if (url == null) {
throw new Exception("no url specified");
}
HttpResponse httpResponse = rpc.getHttpResponse(dcContext.getAccountId(), url);
String mimeType = httpResponse.getMimetype();
if (mimeType == null) {
mimeType = "application/octet-stream";
}
ByteArrayInputStream data = new ByteArrayInputStream(httpResponse.getBlob());
res = new WebResourceResponse(mimeType, httpResponse.getEncoding(), data);
} catch (Exception e) {
e.printStackTrace();
ByteArrayInputStream data = new ByteArrayInputStream(("Could not load apps. Are you online?\n\n" + e.getMessage()).getBytes());
res = new WebResourceResponse("text/plain", "UTF-8", data);
}
HashMap<String, String> headers = new HashMap<>();
headers.put("access-control-allow-origin", "*");
res.setResponseHeaders(headers);
return res;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
super.onOptionsItemSelected(item);
switch (item.getItemId()) {
case android.R.id.home:
finish();
return true;
}
return false;
}
}
@@ -41,6 +41,7 @@ public class AttachmentTypeSelector extends PopupWindow {
public static final int TAKE_PHOTO = 5;
public static final int ADD_LOCATION = 6;
public static final int RECORD_VIDEO = 7;
public static final int ADD_WEBXDC = 8;
private static final int ANIMATION_DURATION = 300;
@@ -53,7 +54,7 @@ public class AttachmentTypeSelector extends PopupWindow {
//private final @NonNull ImageView cameraButton;
private final @NonNull ImageView videoButton;
private final @NonNull ImageView locationButton;
private final @NonNull ImageView closeButton;
private final @NonNull ImageView webxdcButton;
private @Nullable View currentAnchor;
private @Nullable AttachmentClickedListener listener;
@@ -76,7 +77,7 @@ public class AttachmentTypeSelector extends PopupWindow {
//this.cameraButton = ViewUtil.findById(layout, R.id.camera_button);
this.videoButton = ViewUtil.findById(layout, R.id.record_video_button);
this.locationButton = ViewUtil.findById(layout, R.id.location_button);
this.closeButton = ViewUtil.findById(layout, R.id.close_button);
this.webxdcButton = ViewUtil.findById(layout, R.id.webxdc_button);
this.imageButton.setOnClickListener(new PropagatingClickListener(ADD_GALLERY));
this.videoChatButton.setOnClickListener(new PropagatingClickListener(INVITE_VIDEO_CHAT));
@@ -85,7 +86,7 @@ public class AttachmentTypeSelector extends PopupWindow {
//this.cameraButton.setOnClickListener(new PropagatingClickListener(TAKE_PHOTO));
this.videoButton.setOnClickListener(new PropagatingClickListener(RECORD_VIDEO));
this.locationButton.setOnClickListener(new PropagatingClickListener(ADD_LOCATION));
this.closeButton.setOnClickListener(new CloseClickListener());
this.webxdcButton.setOnClickListener(new PropagatingClickListener(ADD_WEBXDC));
this.recentRail.setListener(new RecentPhotoSelectedListener());
if (!Prefs.isLocationStreamingEnabled(context)) {
@@ -140,8 +141,8 @@ public class AttachmentTypeSelector extends PopupWindow {
animateButtonIn(contactButton, ANIMATION_DURATION / 3);
animateButtonIn(locationButton, ANIMATION_DURATION / 4);
animateButtonIn(documentButton, ANIMATION_DURATION / 4);
animateButtonIn(webxdcButton, 0);
animateButtonIn(videoChatButton, 0);
animateButtonIn(closeButton, 0);
}
@Override
@@ -289,13 +290,6 @@ public class AttachmentTypeSelector extends PopupWindow {
}
private class CloseClickListener implements View.OnClickListener {
@Override
public void onClick(View v) {
dismiss();
}
}
public interface AttachmentClickedListener {
public void onClick(int type);
public void onQuickAttachment(Uri uri);
@@ -50,6 +50,7 @@ import org.thoughtcrime.securesms.ApplicationContext;
import org.thoughtcrime.securesms.MediaPreviewActivity;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.ShareLocationDialog;
import org.thoughtcrime.securesms.WebxdcStoreActivity;
import org.thoughtcrime.securesms.attachments.Attachment;
import org.thoughtcrime.securesms.attachments.UriAttachment;
import org.thoughtcrime.securesms.audio.AudioSlidePlayer;
@@ -451,6 +452,11 @@ public class AttachmentManager {
selectMediaType(activity, "*/*", null, requestCode);
}
public static void selectWebxdc(Activity activity, int requestCode) {
Intent intent = new Intent(activity, WebxdcStoreActivity.class);
activity.startActivityForResult(intent, requestCode);
}
public static void selectGallery(Activity activity, int requestCode) {
// to enable camera roll,
// we're asking for "gallery permissions" also on newer systems that do not strictly require that.
@@ -675,15 +675,11 @@ public class NotificationCenter {
}
public void updateVisibleWebxdc(int accountId, int msgId) {
Util.runOnAnyBackgroundThread(() -> {
if (accountId != 0 && msgId != 0) {
visibleWebxdc = new Pair<>(accountId, msgId);
} else {
visibleWebxdc = null;
}
});
if (accountId != 0 && msgId != 0) {
visibleWebxdc = new Pair<>(accountId, msgId);
} else {
visibleWebxdc = null;
}
}
public void clearVisibleWebxdc() {
@@ -42,6 +42,7 @@ import org.thoughtcrime.securesms.connect.DcEventCenter;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.mms.AttachmentManager;
import org.thoughtcrime.securesms.permissions.Permissions;
import org.thoughtcrime.securesms.util.Prefs;
import org.thoughtcrime.securesms.util.ScreenLockUtil;
import org.thoughtcrime.securesms.util.StorageUtil;
import org.thoughtcrime.securesms.util.StreamUtil;
@@ -134,6 +135,10 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
webrtcInstance.setOnPreferenceClickListener(new WebrtcInstanceListener());
updateWebrtcSummary();
Preference webxdcStore = this.findPreference(Prefs.WEBXDC_STORE_URL_PREF);
webxdcStore.setOnPreferenceClickListener(new WebxdcStoreUrlListener());
updateWebxdcStoreSummary();
Preference developerModeEnabled = this.findPreference("pref_developer_mode_enabled");
developerModeEnabled.setOnPreferenceChangeListener((preference, newValue) -> {
WebView.setWebContentsDebuggingEnabled((Boolean) newValue);
@@ -280,6 +285,29 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
}
}
private class WebxdcStoreUrlListener implements Preference.OnPreferenceClickListener {
@Override
public boolean onPreferenceClick(Preference preference) {
View gl = View.inflate(getActivity(), R.layout.single_line_input, null);
EditText inputField = gl.findViewById(R.id.input_field);
inputField.setHint(Prefs.DEFAULT_WEBXDC_STORE_URL);
inputField.setText(Prefs.getWebxdcStoreUrl(getActivity()));
inputField.setSelection(inputField.getText().length());
inputField.setInputType(TYPE_TEXT_VARIATION_URI);
new AlertDialog.Builder(getActivity())
.setTitle(R.string.webxdc_store_url)
.setMessage(R.string.webxdc_store_url_explain)
.setView(gl)
.setNegativeButton(android.R.string.cancel, null)
.setPositiveButton(android.R.string.ok, (dlg, btn) -> {
Prefs.setWebxdcStoreUrl(getActivity(), inputField.getText().toString());
updateWebxdcStoreSummary();
})
.show();
return true;
}
}
private void updateWebrtcSummary() {
Preference webrtcInstance = this.findPreference("pref_webrtc_instance");
if (webrtcInstance != null) {
@@ -288,6 +316,13 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
}
}
private void updateWebxdcStoreSummary() {
Preference preference = this.findPreference(Prefs.WEBXDC_STORE_URL_PREF);
if (preference != null) {
preference.setSummary(Prefs.getWebxdcStoreUrl(getActivity()));
}
}
private void openRegistrationActivity() {
Intent intent = new Intent(getActivity(), RegistrationActivity.class);
startActivity(intent);
@@ -62,6 +62,8 @@ public class Prefs {
public static final boolean ALWAYS_LOAD_REMOTE_CONTENT_DEFAULT = false;
public static final String LAST_DEVICE_MSG_LABEL = "pref_last_device_msg_id";
public static final String WEBXDC_STORE_URL_PREF = "pref_webxdc_store_url";
public static final String DEFAULT_WEBXDC_STORE_URL = "https://webxdc.org/apps/";
public enum VibrateState {
DEFAULT(0), ENABLED(1), DISABLED(2);
@@ -144,6 +146,15 @@ public class Prefs {
return getStringPreference(context, THEME_PREF, DynamicTheme.systemThemeAvailable() ? DynamicTheme.SYSTEM : DynamicTheme.LIGHT);
}
public static String getWebxdcStoreUrl(Context context) {
return getStringPreference(context, WEBXDC_STORE_URL_PREF, DEFAULT_WEBXDC_STORE_URL);
}
public static void setWebxdcStoreUrl(Context context, String url) {
if (url == null || url.trim().isEmpty() || DEFAULT_WEBXDC_STORE_URL.equals(url)) url = null;
setStringPreference(context, WEBXDC_STORE_URL_PREF, url);
}
public static void setPromptedDozeMsgId(Context context, int msg_id) {
setIntegerPreference(context, PROMPTED_DOZE_MSG_ID_PREF, msg_id);
}
@@ -23,6 +23,7 @@ import com.googlecode.mp4parser.util.Path;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.util.Prefs;
import org.thoughtcrime.securesms.util.Util;
import org.thoughtcrime.securesms.util.views.ProgressDialog;
import java.io.File;
import java.nio.ByteBuffer;
@@ -551,11 +552,9 @@ public class VideoRecoder {
}
// prepareVideo() assumes the msg object is set up properly to being sent;
// the function fills out missing information and also recodes the video as needed;
// to get a responsive ui, DcChat.prepareMsg() may be called.
// the function fills out missing information and also recodes the video as needed.
// return: true=video might be prepared, can be sent, false=error
public static boolean prepareVideo(Context context, int chatId, DcMsg msg) {
try {
String inPath = msg.getFile();
Log.i(TAG, "Preparing video: " + inPath);
@@ -623,7 +622,6 @@ public class VideoRecoder {
msg.setDimension(vei.resultWidth, vei.resultHeight);
}
msg.setDuration((int) resultDurationMs);
DcHelper.getContext(context).prepareMsg(chatId, msg);
// calculate bytes
vei.estimatedBytes = VideoRecoder.calculateEstimatedSize((float) resultDurationMs / vei.originalDurationMs,
@@ -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="M4,8h4L8,4L4,4v4zM10,20h4v-4h-4v4zM4,20h4v-4L4,16v4zM4,14h4v-4L4,10v4zM10,14h4v-4h-4v4zM16,4v4h4L20,4h-4zM10,8h4L14,4h-4v4zM16,14h4v-4h-4v4zM16,20h4v-4h-4v4z"/>
</vector>
@@ -78,58 +78,50 @@
</LinearLayout>
<LinearLayout android:id="@+id/location_linear_layout"
android:layout_width="match_parent"
<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/document_button"
android:layout_width="53dp"
android:layout_height="53dp"
android:src="@drawable/ic_insert_drive_file_white_24dp"
android:scaleType="center"
android:contentDescription="@string/file"
app:circleColor="@color/document_icon"/>
<TextView android:layout_marginTop="10dp"
style="@style/AttachmentTypeLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/file"/>
</LinearLayout>
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<org.thoughtcrime.securesms.components.CircleColorImageView
android:id="@+id/location_button"
android:layout_width="53dp"
android:layout_height="53dp"
android:src="@drawable/ic_location_on_white_24dp"
android:scaleType="center"
android:visibility="visible"
android:contentDescription="@string/location"
app:circleColor="@color/location_icon"/>
android:id="@+id/webxdc_button"
android:layout_width="53dp"
android:layout_height="53dp"
android:src="@drawable/baseline_apps_24"
android:scaleType="center"
android:contentDescription="@string/webxdc_apps"
app:circleColor="@color/apps_icon"
/>
<TextView android:layout_marginTop="10dp"
android:id="@+id/location_button_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="visible"
style="@style/AttachmentTypeLabel"
android:text="@string/location"/>
</LinearLayout>
<LinearLayout android:id="@+id/apps_linear_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical"
android:visibility="invisible">
<org.thoughtcrime.securesms.components.CircleColorImageView
android:id="@+id/apps_button"
android:layout_width="53dp"
android:layout_height="53dp"
android:src="@drawable/ic_location_on_white_24dp"
android:scaleType="center"
android:visibility="visible"
android:contentDescription="@string/location"
app:circleColor="@color/location_icon"/>
<TextView android:layout_marginTop="10dp"
android:id="@+id/apps_button_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="visible"
style="@style/AttachmentTypeLabel"
android:text="@string/location"/>
android:text="@string/webxdc_apps"/>
</LinearLayout>
@@ -169,26 +161,30 @@
</LinearLayout>
<LinearLayout android:layout_width="match_parent"
<LinearLayout android:id="@+id/location_linear_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<org.thoughtcrime.securesms.components.CircleColorImageView
android:id="@+id/document_button"
android:id="@+id/location_button"
android:layout_width="53dp"
android:layout_height="53dp"
android:src="@drawable/ic_insert_drive_file_white_24dp"
android:src="@drawable/ic_location_on_white_24dp"
android:scaleType="center"
android:contentDescription="@string/file"
app:circleColor="@color/document_icon"/>
android:visibility="visible"
android:contentDescription="@string/location"
app:circleColor="@color/location_icon"/>
<TextView android:layout_marginTop="10dp"
style="@style/AttachmentTypeLabel"
android:id="@+id/location_button_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/file"/>
android:visibility="visible"
style="@style/AttachmentTypeLabel"
android:text="@string/location"/>
</LinearLayout>
@@ -216,30 +212,14 @@
</LinearLayout>
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<org.thoughtcrime.securesms.components.CircleColorImageView
android:id="@+id/close_button"
android:layout_width="53dp"
android:layout_height="53dp"
android:src="@drawable/ic_keyboard_arrow_down_white_24dp"
android:scaleType="center"
android:contentDescription="@string/cancel"
app:circleColor="?attr/close_icon_color"/>
<TextView android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/AttachmentTypeLabel"
android:text=" "/>
<!-- fill the gap -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:visibility="invisible">
</LinearLayout>
</LinearLayout>
</LinearLayout>
-2
View File
@@ -30,8 +30,6 @@
<group android:id="@+id/extra_services" >
<item android:title="@string/webxdc_apps_store"
android:id="@+id/menu_webxdc_apps_store" />
<item android:title="@string/public_bots"
android:id="@+id/menu_public_bots" />
+3
View File
@@ -46,6 +46,9 @@ window.webxdc = (() => {
deltalab: InternalJSApi.arcanechat(),
isCommunity: InternalJSApi.isCommunity(),
sendUpdateMaxSize: InternalJSApi.sendUpdateMaxSize(),
sendUpdateInterval: InternalJSApi.sendUpdateInterval(),
selfAddr: InternalJSApi.selfAddr(),
+1 -1
View File
@@ -145,7 +145,7 @@
const params = new URLSearchParams(document.location.search);
const internetAccess = (params.get("i") || "0") === "1";
let href = params.get("href") || "index.html";
const href = params.get("href");
if (internetAccess) { // fill500 not needed, just load the frame
fill500 = (href) => {
+1
View File
@@ -194,6 +194,7 @@
<string name="pref_app_access">دخول البرنامج</string>
<string name="pref_chats">المحادثات</string>
<string name="pref_in_chat_sounds">أصوات خلال الدردش</string>
<!-- deprecated -->
<string name="pref_message_text_size">حجم الخط في الرسائل</string>
<string name="pref_other">أخرى</string>
<!-- 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. -->
+1
View File
@@ -332,6 +332,7 @@
<string name="pref_app_access">Daxil oldu</string>
<string name="pref_chats">Çatlar</string>
<string name="pref_in_chat_sounds">Çatda olan səslər</string>
<!-- deprecated -->
<string name="pref_message_text_size">Mətnin ölçüsü</string>
<string name="pref_view_log">Log-a bax</string>
<string name="pref_saved_log">Loqi Yükləmələr qovluğuna saxlanıldı</string>
+1 -2
View File
@@ -690,6 +690,7 @@
<string name="pref_app_access">Достъп до приложението</string>
<string name="pref_chats">Чатове</string>
<string name="pref_in_chat_sounds">Звуци в чата</string>
<!-- deprecated -->
<string name="pref_message_text_size">Размер на шрифта на съобщението</string>
<string name="pref_view_log">Разглеждане на дневника</string>
<string name="pref_saved_log">Дневникът е записан в папката \"Свалени\"</string>
@@ -1123,6 +1124,4 @@
<string name="perm_enable_bg_reminder_title">Докоснете тук, за да получавате съобщения, докато Delta Chat е във фонов режим.</string>
<string name="perm_enable_bg_already_done">Вече разрешихте Delta Chat да получава съобщения във фонов режим.\n\nАко съобщенията все още не пристигат във фонов режим, моля проверете Вашите системни настройки.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">Нов начин за включване на нови потребители към приложението 🐣 и още:\n\n⚡️ Регистрирайте се в защитени бързи сървъри за чат поща (https://delta.chat/chatmail)  или използвайте класически сървъри за електронна поща\n\n👉 PUSH уведомления за всякакъв вид сървър за чат поща\n\n👤 Свържете се с Вашите приятели по защитен начин чрез \"Прикачване на контакти\"\n\n🥰 Изразете реакция с произволно emoji\n\n📌 Забождайте чатове директно от търсенето … и ПОВЕЧЕ на %1$s</string>
</resources>
+9 -8
View File
@@ -8,14 +8,14 @@
<string name="or_separator">یا</string>
<string name="clear_search">روفتن پیتینیڌن</string>
<string name="yes">هری</string>
<string name="no">na</string>
<string name="select">pêsand</string>
<string name="on">rušên</string>
<string name="off">kur</string>
<string name="def">pîš farz</string>
<string name="default_value">pîš farz (%1$s)</string>
<string name="default_value_as_above">pîš farz (jurê ro\')</string>
<string name="custom">sêfârêši</string>
<string name="no">ن</string>
<string name="select">پسند</string>
<string name="on">رۊشن</string>
<string name="off">کۊر</string>
<string name="def">پؽش فرز</string>
<string name="default_value">پؽش فرز (%1$s)</string>
<string name="default_value_as_above">پؽش فرز (جۊر روء)</string>
<string name="custom">سفارشی</string>
<string name="none">hičkoyêki</string>
<string name="automatic">xotkār</string>
<string name="strict">saxtger</string>
@@ -318,6 +318,7 @@
<string name="pref_notifications_show">nêšow dāďên</string>
<string name="pref_language">zow</string>
<string name="pref_chats">goftoloftā</string>
<!-- deprecated -->
<string name="pref_message_text_size">hêndā hîlê payom</string>
<string name="pref_log_header">gozārêš</string>
<string name="pref_background_btn_gallery">pêsand zê šîvātmāl</string>
+1
View File
@@ -572,6 +572,7 @@
<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>
<!-- deprecated -->
<string name="pref_message_text_size">Mida de la font del missatge</string>
<string name="pref_view_log">Veure el registre</string>
<string name="pref_other">Altres</string>
+1
View File
@@ -420,6 +420,7 @@
<string name="pref_app_access">ڕێگەپێدان</string>
<string name="pref_chats">وتووێژەکان</string>
<string name="pref_in_chat_sounds">دەنگەکانی نێو-وتووێژی</string>
<!-- deprecated -->
<string name="pref_message_text_size">قەبارەی فۆنتی پەیامەکان</string>
<string name="pref_other">کەسانی دی</string>
<string name="pref_backup">یەدەک</string>
+1
View File
@@ -554,6 +554,7 @@
<string name="pref_app_access">Přístup aplikace</string>
<string name="pref_chats">Chaty</string>
<string name="pref_in_chat_sounds">Zvuky v rámci chatu</string>
<!-- deprecated -->
<string name="pref_message_text_size">Velikost písma zprávy</string>
<string name="pref_view_log">Zobrazit záznam běhu</string>
<string name="pref_saved_log">Záznam běhu uložen do složky \"Downloads\"</string>
+1
View File
@@ -488,6 +488,7 @@
<string name="pref_app_access">Programadgang</string>
<string name="pref_chats">Samtaler</string>
<string name="pref_in_chat_sounds">In-chat-lyde</string>
<!-- deprecated -->
<string name="pref_message_text_size">Besked tekststørrelse</string>
<string name="pref_view_log">Visningslog</string>
<string name="pref_saved_log">Gem loggen til \"Downloads\" mappen</string>
+4 -1
View File
@@ -703,6 +703,8 @@
<string name="pref_screen_security_explain">Aufforderung zum Sperren von Screenshots in der kürzlich erstellten Liste und in der App</string>
<string name="pref_screen_security_please_restart_hint">Um die Bildschirmsicherheitseinstellungen anzuwenden, bitte App neu starten.</string>
<string name="pref_notifications">Benachrichtigungen</string>
<string name="pref_mention_notifications">Erwähnungen</string>
<string name="pref_mention_notifications_explain">In stummgeschalteten Gruppen, über an Sie gerichtete Nachrichten, wie Antworten oder Reaktionen, benachrichtigen</string>
<string name="pref_notifications_show">Anzeigen</string>
<string name="pref_notifications_priority">Priorität</string>
<string name="pref_notifications_explain">System-Benachrichtigungen bei neuen Nachrichten aktivieren</string>
@@ -737,6 +739,7 @@
<string name="pref_app_access">App-Zugriff</string>
<string name="pref_chats">Chats</string>
<string name="pref_in_chat_sounds">In-Chat-Klänge</string>
<!-- deprecated -->
<string name="pref_message_text_size">Schriftgröße</string>
<string name="pref_view_log">Protokoll anzeigen</string>
<string name="pref_saved_log">Die Logdatei wurde im Downloads Ordner gespeichert.</string>
@@ -1181,7 +1184,7 @@
<string name="perm_enable_bg_already_done">Sie haben Delta Chat bereits erlaubt, Nachrichten im Hintergrund zu empfangen.\n\nFalls keine Nachrichten eingehen, überprüfen Sie bitte auch Ihre Systemeinstellungen.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">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👤 Bringen Sie Ihre Freunde über „Kontakte anhängen“ sicher in Kontakt\n\n🥰 Mit beliebigen Emojis reagieren\n\n📌 Pinnen von Chats direkt aus der Suche ... und MEHR auf %1$s</string>
<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
View File
@@ -584,6 +584,7 @@
<string name="pref_app_access">Πρόσβαση εφαρμογής</string>
<string name="pref_chats">Συνομιλίες</string>
<string name="pref_in_chat_sounds">Ήχοι μέσα στη συνομιλία</string>
<!-- deprecated -->
<string name="pref_message_text_size">Μέγεθος γραμματοσειράς μηνύματος</string>
<string name="pref_view_log">Προβολή Αρχείου Καταγραφής</string>
<string name="pref_saved_log">ΤΟ αρχείο καταγραφής αποθηκεύτηκε στο φάκελο \"Λήψεις\".</string>
+1
View File
@@ -422,6 +422,7 @@
<string name="pref_app_access">Aliro al aplikaĵo</string>
<string name="pref_chats">Interparoloj</string>
<string name="pref_in_chat_sounds">Sonoj dum interparolado</string>
<!-- deprecated -->
<string name="pref_message_text_size">Mesaĝa tipargrando</string>
<string name="pref_view_log">Vidi protokolon</string>
<string name="pref_saved_log">Konservis protokolon al la elŝuta dosierujo</string>
+41 -2
View File
@@ -11,6 +11,10 @@
<!-- deprecated, the word "or" to separate blocks in the user interface that are mutually exclusive -->
<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>
<!-- "scan" in the meaning of "scan QR code" -->
<string name="scan">Escanear</string>
<string name="yes"></string>
<string name="no">No</string>
<string name="select">Seleccionar</string>
@@ -135,6 +139,11 @@
<item quantity="many">%d mensajes</item>
<item quantity="other">%d mensajes</item>
</plurals>
<plurals name="n_reactions">
<item quantity="one">%d reacción</item>
<item quantity="many">%d reacciones</item>
<item quantity="other">%d reacciones</item>
</plurals>
<plurals name="n_members">
<item quantity="one">%d miembro</item>
<item quantity="many">%d miembros</item>
@@ -245,6 +254,7 @@
<string name="menu_message_details">Detalles del mensaje</string>
<string name="menu_copy_to_clipboard">Copiar al portapapeles</string>
<string name="share_invite_link">Compartir enlace de invitación</string>
<string name="share_invite_link_explain">Cualquier persona que tenga este enlace podrá ver tu perfil y comenzar a chatear contigo. Compártelo solo con personas en las que confíes.</string>
<string name="invite_friends">Invitar amigos</string>
<!-- %1$s is replaced by the user's invitation link ("https://i.delta.chat/...") -->
<string name="invite_friends_text">Contáctame en Delta Chat:\n%1$s</string>
@@ -454,7 +464,6 @@
<string name="mailing_list_profile_info">Los cambios en el nombre y la imagen de la lista de correo solo se aplican a este dispositivo.</string>
<!-- extra services -->
<string name="webxdc_apps_store">🎮 Tienda de mini-apps</string>
<string name="public_bots">🤖 Bots Públicos</string>
<!-- webxdc -->
@@ -466,6 +475,9 @@
<string name="send_file_to">Enviar \"%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">Enviar mensaje a…</string>
<string name="enable_realtime">Aplicaciones en tiempo real</string>
<string name="enable_realtime_explain">Habilite las conexiones en tiempo real para las aplicaciones compartidas en los chats. Si esta opción está habilitada, los participantes del chat podrán descubrir su dirección IP cuando inicie una aplicación.</string>
<!-- map -->
<string name="filter_map_on_time">Mostrar ubicaciones en el marco de tiempo</string>
<string name="show_location_traces">Mostrar trazas</string>
@@ -492,6 +504,10 @@
<string name="search_files">Buscar archivos</string>
<string name="search_explain">Buscar chats, contactos, y mensajes</string>
<string name="search_no_result_for_x">No se encontraron resultados para \"%s\"</string>
<!-- Adjective, as in "Show Unread Messages" -->
<string name="search_unread">No leído</string>
<!-- create/edit groups, contact/group profile -->
<string name="group_name">Nombre del grupo</string>
<string name="group_avatar">Imagen del grupo</string>
@@ -631,6 +647,20 @@
<string name="login_smtp_port">Puerto SMTP</string>
<string name="login_smtp_security">Seguridad SMTP</string>
<string name="login_auth_method">Método de autorización</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">Proxy</string>
<string name="proxy_use_proxy">Usar proxy</string>
<string name="proxy_add">Añadir proxy</string>
<string name="proxy_add_explain">Tipos de proxy admitidos: HTTP(S), SOCKS5 y Shadowsocks.</string>
<string name="proxy_add_url_hint">Introduzca el enlace del proxy aquí</string>
<string name="proxy_invalid">Proxy no válido o no compatible</string>
<string name="proxy_list_header">Proxies guardados</string>
<string name="proxy_delete">Eliminar proxy</string>
<string name="proxy_delete_explain">¿Seguro que quieres eliminar \"%1$s\"?</string>
<string name="proxy_use_proxy_confirm">¿Quieres utilizar el proxy \"%1$s\"?</string>
<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>
@@ -655,6 +685,9 @@
<string name="accept_invalid_certificates">Aceptar certificados no válidos</string>
<string name="switch_account">Cambiar cuenta</string>
<string name="add_account">Agregar cuenta</string>
<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>
<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>
@@ -668,7 +701,10 @@
<!-- share and forward messages -->
<!-- Translators: shown above a chat/contact list when selecting recipients to forward messages -->
<string name="forward_to">Reenviar 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">¿Enviar %1$d archivos a \"%2$s\"?</string>
<string name="ask_send_files_to_selected_chats">¿Enviar %1$d archivo(s) a %2$d chats?</string>
<string name="videos_sent_without_recoding">(Los videos se enviarán en su tamaño original. Para enviar videos como archivos más pequeños, adjúntelos por separado)</string>
<string name="share_text_multiple_chats">¿Enviar este texto a %1$d chats?\n\n\"%2$s\"</string>
<string name="share_abort">Intercambio abortado debido a la falta de permisos.</string>
@@ -697,6 +733,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_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>
@@ -731,6 +769,7 @@
<string name="pref_app_access">Acceso a la aplicación</string>
<string name="pref_chats">Chats</string>
<string name="pref_in_chat_sounds">Sonidos en el chat</string>
<!-- deprecated -->
<string name="pref_message_text_size">Tamaño de texto del mensaje</string>
<string name="pref_view_log">Ver log</string>
<string name="pref_saved_log">El log fue guardado en la carpeta de Descargas</string>
@@ -1176,7 +1215,7 @@
<string name="perm_enable_bg_already_done">Ya has permitido que Delta Chat reciba mensajes en segundo plano.\n\nSi los mensajes aún no llegan en segundo plano, compruebe también la configuración de su sistema.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">Nueva pantalla de bienvenida 🐣 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👤 Presenta un amigo a otro de forma segura usando \"Adjuntar Contacto\"\n\n🥰 Reacciona con cualquier emoji\n\n📌 Ancla chats directamente desde los resultados de la búsqueda... y MUCHO más en %1$s</string>
<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>
+1
View File
@@ -365,6 +365,7 @@
<string name="pref_app_access">Aplikazio sarbidea</string>
<string name="pref_chats">Txatak</string>
<string name="pref_in_chat_sounds">Txat bitarteko soinuak</string>
<!-- deprecated -->
<string name="pref_message_text_size">Mezuen letra tamaina</string>
<string name="pref_view_log">Ikusi egunkaria</string>
<string name="pref_saved_log">Egunkaria deskargen karpetan gorde da</string>
+84 -2
View File
@@ -7,6 +7,10 @@
<!-- deprecated, the word "or" to separate blocks in the user interface that are mutually exclusive -->
<string name="or_separator">یا</string>
<string name="clear_search">پاک کردن جست‌وجو</string>
<!-- a noun, used on a button, short for "show link" -->
<string name="link">پیوند</string>
<!-- "scan" in the meaning of "scan QR code" -->
<string name="scan">اسکن</string>
<string name="yes">بله</string>
<string name="no">خیر</string>
<string name="select">انتخاب</string>
@@ -56,7 +60,7 @@
<string name="mark_all_as_read">همه را خوانده شده بزن</string>
<string name="mark_as_read">علامت زدن به عنوان خوانده شده</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">خوانده شد</string>
<string name="mark_as_read_short">علامت زدن به عنوان خوانده شده</string>
<!-- Placeholder text when something is loading -->
<string name="loading">در حال بارگیری...</string>
<string name="hide">مخفی کردن</string>
@@ -125,6 +129,10 @@
<item quantity="one">%d پیام</item>
<item quantity="other">%d پیام</item>
</plurals>
<plurals name="n_reactions">
<item quantity="one">%dواکنش</item>
<item quantity="other">%dواکنش</item>
</plurals>
<plurals name="n_members">
<item quantity="one">%d عضو</item>
<item quantity="other">%d عضو</item>
@@ -148,6 +156,7 @@
<!-- "Stickers" as known from other messengers; in some languages, the English "Sticker" is fine. -->
<string name="sticker">استیکر</string>
<string name="add_to_sticker_collection">افزودن به مجموعه استیکر</string>
<string name="add_stickers_instructions">برای اضافه کردن برچسب روی «بازکردن پوشهٔ برچسب» بزنید، یک زیرپوشه برای دستهٔ برچسب خود درست کنید و برچسب‌ها را به آن‌جا بکشید</string>
<string name="open_sticker_folder">بازکردن پوشه استیکر</string>
<string name="images">تصاویر</string>
<string name="audio">صدا</string>
@@ -159,6 +168,7 @@
<string name="video">فیلم</string>
<string name="documents">اسناد</string>
<string name="contact">مخاطب</string>
<string name="bot">ربات</string>
<string name="camera">دوربین</string>
<!-- As in "start a video recording" or "take a photo"; eg. the description of the "shutter button" in cameras -->
<string name="capture">گرفتن</string>
@@ -202,11 +212,15 @@
استفاده شوند و رمزگذاری سراسری برای آن‌ها تضمین نمی‌شود.</string>
<string name="menu_new_chat">گپ جدید</string>
<string name="menu_new_group">گروه جدید</string>
<string name="clone_chat">درست کردن گپ جدید از این گپ</string>
<!-- consider keeping the term "broadcast" as in WhatsApp or Telegram -->
<string name="broadcast_list">لیست Broadcast</string>
<string name="broadcast_lists">لیست‌های Broadcast</string>
<string name="new_broadcast_list">لیست Broadcast جدید</string>
<string name="add_recipients">افزودن گیرنده</string>
<string name="edit_broadcast_list">ویرایش فهرست Broadcast</string>
<string name="broadcast_list_name">نام فهرست BroadCast</string>
<string name="please_enter_broadcast_list_name">وارد کردن نام برای فهرست Broadcast.</string>
<string name="menu_send">ارسال</string>
<string name="menu_toggle_keyboard">تعییر صفحه کلید شکلک‌ها</string>
<string name="menu_edit_group">ویرایش گروه</string>
@@ -224,6 +238,12 @@
<string name="menu_delete_location">حذف این موقعیت مکانی؟</string>
<string name="menu_message_details">جزئیات پیام</string>
<string name="menu_copy_to_clipboard">رونوشت‌برداری در حافظه</string>
<string name="share_invite_link">اشتراک پیوند دعوت</string>
<string name="share_invite_link_explain">هرکس با استفاده از این پیوند می‌تواند نمایهٔ شما را ببییند و یک گپ را با شما شروع کند. این را تنها به کسانی که اعتماد دارید بدهید.</string>
<string name="invite_friends">دعوت دوستان</string>
<!-- %1$s is replaced by the user's invitation link ("https://i.delta.chat/...") -->
<string name="invite_friends_text">تماس گرفتن با من در دلتاچت:\n
%1$s</string>
<string name="menu_copy_selection_to_clipboard">رونوشت برداری از انتخاب شده</string>
<string name="menu_copy_link_to_clipboard">رونوشت برداری از لینک</string>
<string name="menu_copy_text_to_clipboard">رونوشت گرفتن از متن</string>
@@ -258,6 +278,10 @@
<string name="select_chat">انتخاب چت</string>
<string name="select_more">انتخاب بیشتر</string>
<string name="menu_edit_name">ویرایش نام</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">به شما یک نام مستعار به جای «%1$s» نمایش می‌دهد. برای نمایش نام انتخابی خود مخاطب، این را خالی بگذارید.</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">نام مستعار برای «%1$s»</string>
<string name="menu_settings">تنظیم‌ها</string>
<string name="menu_advanced">پیشرفته</string>
<string name="menu_view_profile">نمایش نمایه</string>
@@ -274,6 +298,8 @@
<string name="device_talk">پیام‌های دستگاه</string>
<string name="device_talk_subtitle">پیام‌های داخلی</string>
<string name="device_talk_explain">پیام‌ها در این گپ به صورت داخلی و توسط نرم‌افزار دلتاچت تولید شده‌اند. سازنده‌ها از این محل برای اعلان به روز‌رسانی‌ها و مشکلات پیش آمده حین کار استفاده می‌کنند. </string>
<string name="device_talk_welcome_message2">برقراری مکالمه!\n\n
روی «کد QR» در صفحهٔ اصلی هر دو دستگاه بزنید. روی یکی از دستگاه‌ها «اسکن کد QR» را انتخاب کنید و با آن روی دستگاه دیگر بگیرید\n\nاگر در یک مکان نیستید، از طریق تماس تصویری اسکن کنید یا این‌که یک پیوند دعوت از «اسکن کد QR» به اشتراک بگذارید.\n\n.سپس از تجربه کردن پیام‌رسان بر روی بزرگترین شبکهٔ نامتمرکزی که تا به حال وجود داشته یعنی رایانامه لذت ببرید. در مقایسه با دیگر پیام‌رسان‌های محبوب، دلتاچت هیچ کنترل مرکزی‌ای ندارد. و شما، دوستهایتان، همکارهایتان یا خانواده‌هایتان را ردیابی نمی‌کند یا این‌که به سازمان‌های بزرگ نمی‌فروشد.</string>
<string name="edit_contact">ویرایش مخاطب</string>
<!-- Verb "to pin", making something sticky, not a noun or abbreviation for "pin number". -->
<string name="pin_chat">سنجاق کردن گپ</string>
@@ -333,7 +359,7 @@ https://meet.jit.si/$ROOM
<item quantity="one">پاک کردن %d گپ؟ دیگر در لیست گپ‌ها نشان داده نخواهد شد ولی پیام‌ها در سرور باقی می‌مانند. </item>
<item quantity="other">پاک کردن %d گپ؟ دیگر در فهرست گپ‌ها نشان داده نخواهند شد؛ ولی پیام‌ها در کارساز باقی می‌مانند. </item>
</plurals>
<string name="ask_delete_named_chat">اطمینان دارید می‌خواهید \"%1$s\" را پاک کنید؟</string>
<string name="ask_delete_named_chat">اطمینان دارید می‌خواهید «%1$s» را پاک کنید؟</string>
<string name="ask_delete_message">مطمئن هستید می‌خواهید این پیام را پاک کنید؟</string>
<plurals name="ask_delete_messages">
<item quantity="one">پاک کردن %d گپ از اینجا و سرور؟</item>
@@ -386,6 +412,7 @@ https://meet.jit.si/$ROOM
</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">ارسال پیام. مشکلی نیست اگر %1$s از دلتاچت استفاده نمی‌کند.</string>
<string name="chat_new_broadcast_hint">در یک فهرست Broadcast گیرنده‌ها در یک گپ فقط خواندنی با شما، پیام‌ها را دریافت می‌کنند.</string>
<string name="chat_new_group_hint">نوشتن اولین پیام به دیگران امکان می‌دهد در این گروه پاسخ دهند. \n\n• مشکلی نیست اگر همه اعضا از دلتاچت استفاده نکنند\n\n• دریافت اولین پیام ممکن است به زمان بیشتری نیاز داشته باشد. </string>
<string name="chat_record_slide_to_cancel">برای لغو بکشید.</string>
<string name="chat_record_explain">برای ضبط پیام صوتی فشار داده و نگهدارید، برای ارسال رها کنید. </string>
@@ -425,6 +452,9 @@ https://meet.jit.si/$ROOM
<string name="send_file_to">ارسال \"%1$s\" به...</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">ارسال پیام به...</string>
<string name="enable_realtime">برنامه‌های بلادرنگ</string>
<string name="enable_realtime_explain">فعال‌سازی اتصال‌های بلادرنگ برای برنامه‌های به اشتراک گذاشته‌شده در گپ‌ها. در صورت فعال‌سازی، زمانی که برنامه را باز می‌کنید، دیگر اعضای گپ ممکن است بتوانند نشانی اینترنتی شما را شناسایی کنند.</string>
<!-- map -->
<string name="filter_map_on_time">نمایش موقعیت‌های مکانی در چارچوب زمان</string>
<string name="show_location_traces">نمایش ردپاها</string>
@@ -451,6 +481,10 @@ https://meet.jit.si/$ROOM
<string name="search_files">جستجوی پرونده‌ها</string>
<string name="search_explain">جست‌وجو برای گپ‌ها، مخاطبان و پیام‌ها</string>
<string name="search_no_result_for_x">نتیجه‌ای برای \"%s\" پیدا نشد</string>
<!-- Adjective, as in "Show Unread Messages" -->
<string name="search_unread">خوانده نشده</string>
<!-- create/edit groups, contact/group profile -->
<string name="group_name">نام گروه</string>
<string name="group_avatar">تصویر گروه</string>
@@ -477,6 +511,10 @@ https://meet.jit.si/$ROOM
<string name="tab_webxdc_empty_hint">برنامه‌هایی که در این چت به اشتراک گذاشته شده‌اند، این‌جا نمایش داده خواهند شد.</string>
<string name="tab_all_media_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>
<!-- option to show images in the gallery as square (instead of using correct width/height) -->
<string name="square_grid">جدول مربعی</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. -->
<string name="aeap_addr_changed">مخاطب %1$s نشانی خود را از %2$s به %3$s تغییر داده است. </string>
@@ -545,11 +583,24 @@ https://meet.jit.si/$ROOM
<string name="manual_account_setup_option">ساخت حساب کاربری با حساب رایانامه معمولی</string>
<!-- Instant onboarding title (there is not more to do than to set name and avatar) -->
<string name="instant_onboarding_title">نمایه شما</string>
<!-- The placeholder will be replaced by the default onboarding server -->
<string name="instant_onboarding_agree_default2">سیاست حریم خصوصی برای %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">دربارهٔ نمایه‌ها در %1$s</string>
<!-- Confirmation button on the instant onboarding screen -->
<string name="instant_onboarding_create">قبول کردن و ایجاد نمایه</string>
<!-- Secondary, link-like button to open a page with other possible instances -->
<string name="instant_onboarding_show_more_instances">استفاده از یک کارساز دیگر</string>
<string name="instant_onboarding_other_server">فهرست کارسازهای 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">ایجاد نمایه برای وارد شدن به گپ «%1$s».</string>
<!-- Hint about what happens when "Create Profile" button in pressed; the placeholder will be replaced by contact name and/or address -->
<string name="instant_onboarding_contact_info">برای گفتگو با %1$s یک حساب کاربری ایجاد کنید.</string>
<!-- Question shown when another user's QR code is scanned from onboarding screen -->
<string name="instant_onboarding_confirm_contact">می‌خواهید یک نمایهٔ جدید درست کنید و با %1$sشروع به گپ زدن کنید؟</string>
<!-- Question shown when group's QR code is scanned from onboarding screen -->
<string name="instant_onboarding_confirm_group">می‌خواهید یک نمایهٔ جدید درست کنید و به گروه «%1$s» ملحق شوید؟</string>
<string name="welcome_chat_over_email">گفتگو غیرمتمرکز و ایمن</string>
<string name="scan_invitation_code">اسکن کردن کد دعوت</string>
<string name="login_title">ورود</string>
@@ -571,6 +622,20 @@ https://meet.jit.si/$ROOM
<string name="login_smtp_port">SMTP Port</string>
<string name="login_smtp_security">SMTP Security</string>
<string name="login_auth_method">Authorization Method</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">پروکسی</string>
<string name="proxy_use_proxy">استفاده از پروکسی</string>
<string name="proxy_add">اضافه کردن پروکسی</string>
<string name="proxy_add_explain">پشتیبانی از پروکسی‌های: HTTP، HTTPS، SOCKS5 و Shadowsocks</string>
<string name="proxy_add_url_hint">ویرایش پیوند پروکسی</string>
<string name="proxy_invalid">پروکسی نامعتبر است یا پشتیبانی از پروکسی وجود ندارد</string>
<string name="proxy_list_header">پروکسی‌های ذخیره شده</string>
<string name="proxy_delete">حذف پروکسی</string>
<string name="proxy_delete_explain">مطمئنید می‌خواهید «%1$s» را حذف کنید؟</string>
<string name="proxy_use_proxy_confirm">می‌خواهید از پروکسی «%1$s» استفاده کنید؟</string>
<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>
@@ -597,6 +662,9 @@ https://meet.jit.si/$ROOM
<string name="accept_invalid_certificates">پذیرش گواهینامه‌های نامعتبر</string>
<string name="switch_account">تغییر حساب کاربری</string>
<string name="add_account">افزودن حساب کاربری</string>
<string name="profile_tag">پرچسب شخصی</string>
<string name="profile_tag_hint">مثل «کار» یا «خانواده»</string>
<string name="profile_tag_explain">این برچسب تنها به شما نمایش داده می‌شود تا برای تشخیص دادن نمایه‌ها از یک دیگر کمک کند.</string>
<string name="delete_account">حذف حساب کاربری</string>
<string name="delete_account_ask">آیا از حذف حساب کاربری اطمینان دارید؟</string>
<string name="delete_account_explain_with_name">همه اطلاعات حساب مربوط به «%s» روی این دستگاه پاک می‌شود. این شامل تنظیم‌های رمزگذاری سراسری، مخاطبین، گفتگوها، پیام‌ها و رسانه‌ها می‌شود. این عمل قابل بازگردانی نیست.</string>
@@ -610,7 +678,10 @@ https://meet.jit.si/$ROOM
<!-- share and forward messages -->
<!-- Translators: shown above a chat/contact list when selecting recipients to forward messages -->
<string name="forward_to">هدایت به...</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">ارسال %1$dپرونده به «%2$s»؟</string>
<string name="ask_send_files_to_selected_chats">ارسال %1$dپرونده به %2$d گپ؟</string>
<string name="videos_sent_without_recoding">(فیلم‌ها به صورت پرونده‌های بزرگ بدون تغییر ارسال می‌شوند. برای ارسال فیلم‌ها به عنوان پرونده‌های کوچک‌تر، آن‌ها را به صورت جدا پیوست کنید)</string>
<string name="share_text_multiple_chats">ارسال این متن به %1$d گپ؟n/n/«%2$s»</string>
<string name="share_abort">اشتراک گذاری به دلیل نبود مجوز‌ها متوقف شد.</string>
@@ -668,9 +739,11 @@ https://meet.jit.si/$ROOM
<string name="pref_use_system_emoji_explain">غیرفعال کردن شکلک‌های داخلی دلتاچت</string>
<string name="pref_use_inapp_camera">استفاده از دوربین درون‌برنامه</string>
<string name="pref_use_inapp_camera_explain">دوربین درون‌برنامه معمولا امکانات کمتری نسبت به دوربین سیستم دارد</string>
<string name="pref_show_system_contacts">خواندن دفترچه آدرس دستگاه</string>
<string name="pref_app_access">دسترسی نرم‌افزار</string>
<string name="pref_chats">گپ‌ها</string>
<string name="pref_in_chat_sounds">صداهای درون‌گپی</string>
<!-- deprecated -->
<string name="pref_message_text_size">اندازه نوشته‌های پیام</string>
<string name="pref_view_log">نمایش گزارش</string>
<string name="pref_saved_log">گزارش را در پوشه\"دانلودها\" ذخیره کن </string>
@@ -735,6 +808,7 @@ https://meet.jit.si/$ROOM
<string name="profile_image_delete">حذف تصویر نمایه</string>
<string name="pref_show_tray_icon">نمایش نمادک در زیر صفحه</string>
<string name="pref_edit_profile">ویرایش نمایه</string>
<string name="disable_imap_idle">غیر فعال‌سازی IMAP IDLE</string>
<string name="send_stats_to_devs">ارسال آمار برای توسعه‌دهندگان دلتاچت</string>
@@ -874,6 +948,8 @@ https://meet.jit.si/$ROOM
<string name="chat_protection_enabled_tap_to_learn_more">رمزنگاری سرتاسر پیام ها از این به بعد تضمین می شود. برای اطلاعات بیشتر ضربه بزنید.</string>
<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>
@@ -946,6 +1022,7 @@ https://meet.jit.si/$ROOM
<string name="verified_by_you">تأیید شده توسط من</string>
<!-- translators: "setup" is the "encryption setup" here, as in "Autocrypt Setup Message" -->
<string name="contact_setup_changed">تنظیم‌ها برای %1$s تغییر کرد. </string>
<string name="verified_contact_required_explain">برای تضمین رمزنگاری سراسری شما تنها می‌توانید مخاطب‌هایی که یک تیک سبز دارند به این گروه اضافه کنید.\n\nمی‌توانید با مخاطب‌هایتان حضوری ملاقات کنید و برای معرفی، کد QR آن‌ها را اسکن کنید.</string>
<string name="copy_qr_data_success">آدرس کیوآر در حافظه ذخیر شد</string>
<string name="mailto_dialog_header_select_chat">گپ را برای ارسال پیام انتخاب کنید</string>
<!-- first placeholder is the name of the chat -->
@@ -989,6 +1066,8 @@ https://meet.jit.si/$ROOM
گزینه
«موقعیت مکانی»
را فعال نمایید.</string>
<string name="perm_explain_access_to_notifications_denied">برای دریافت اعلان‌ها به «تنظیمات دستگاه > برنامه‌ها > دلتاچت» بروید و «اعلان‌ها» را فعال کنید.</string>
<!-- ImageEditorHud -->
<string name="ImageEditorHud_draw_anywhere_to_blur">هر کجا مایلید شروع به رسم کردن کنید تا مات شود.</string>
<string name="ImageEditorHud_add_text">افزودن متن</string>
@@ -1112,7 +1191,10 @@ GNU GPL ورژن ۳
<string name="InfoPlist_NSPhotoLibraryAddUsageDescription">دلتاچت میخواهد تصاویر را در آلبوم شما ذخیره کند.</string>
<!-- android specific strings, developers: please take care to remove strings that are no longer used! -->
<string name="pref_instant_delivery">تحویل آنی</string>
<string name="pref_background_notifications">استفاده از اتصال پس‌زمینه</string>
<string name="pref_background_notifications_explain">برای استفاده باید «نادیده گرفتن بهینه‌سازی‌های باتری» فعال باشد. اگر اعلان‌ها به موقع نمی‌رسند، این را فعال کنید.</string>
<string name="pref_reliable_service">اجبار کردن اتصال پس‌زمینه</string>
<string name="pref_reliable_service_explain">اعلانی دائمی نشان می‌دهد</string>
+1
View File
@@ -690,6 +690,7 @@
<string name="pref_app_access">Sovelluksen pääsy</string>
<string name="pref_chats">Keskustelut</string>
<string name="pref_in_chat_sounds">Keskustelunaikaiset äänet</string>
<!-- deprecated -->
<string name="pref_message_text_size">Viestin fonttikoko</string>
<string name="pref_view_log">Näytä loki</string>
<string name="pref_saved_log">Tallenna loki \"Lataukset\" -kansioon</string>
+1
View File
@@ -695,6 +695,7 @@
<string name="pref_app_access">Accès à l\'application</string>
<string name="pref_chats">Discussions</string>
<string name="pref_in_chat_sounds">Sons de messages entrants</string>
<!-- deprecated -->
<string name="pref_message_text_size">Taille de police des messages</string>
<string name="pref_view_log">Voir le journal</string>
<string name="pref_saved_log">Journal enregistré dans le dossier \"Téléchargements\"</string>
+1
View File
@@ -591,6 +591,7 @@
<string name="pref_app_access">Acceso a app</string>
<string name="pref_chats">Conversas</string>
<string name="pref_in_chat_sounds">Sons na conversa</string>
<!-- deprecated -->
<string name="pref_message_text_size">Tamaño da letra na mensaxe</string>
<string name="pref_view_log">Ver rexistro</string>
<string name="pref_saved_log">Gardouse o rexistro no cartafol \"Descargas\"</string>
+1
View File
@@ -211,6 +211,7 @@
<string name="pref_app_access">Pristup aplikaciji</string>
<string name="pref_chats">Razgovori</string>
<string name="pref_in_chat_sounds">Zvuk unutar razgovora</string>
<!-- deprecated -->
<string name="pref_message_text_size">Veličina fonta poruke</string>
<string name="pref_other">Ostalo</string>
<string name="pref_backup">Sigurnosna kopija</string>
+4 -1
View File
@@ -702,6 +702,8 @@
<string name="pref_screen_security_explain">Képernyőképek készítésének megakadályozása a futó alkalmazások listájában és az alkalmazáson belül</string>
<string name="pref_screen_security_please_restart_hint">A képernyő biztonsági beállításának alkalmazásához indítsa újra az alkalmazást.</string>
<string name="pref_notifications">Értesítések</string>
<string name="pref_mention_notifications">Megemlítések</string>
<string name="pref_mention_notifications_explain">A némított csoportokban csak az Önnek címzett üzenetek, (például válaszok vagy reakciók) esetén küld értesítést.</string>
<string name="pref_notifications_show">Megjelenítés</string>
<string name="pref_notifications_priority">Prioritás</string>
<string name="pref_notifications_explain">Rendszerértesítések engedélyezése az új üzenetekről</string>
@@ -736,6 +738,7 @@
<string name="pref_app_access">Alkalmazás-hozzáférés</string>
<string name="pref_chats">Csevegések</string>
<string name="pref_in_chat_sounds">Csevegésen belüli hangok</string>
<!-- deprecated -->
<string name="pref_message_text_size">Üzenetek betűmérete</string>
<string name="pref_view_log">Naplófájl megtekintése</string>
<string name="pref_saved_log">A naplófájl elmentve a „Letöltések” mappába</string>
@@ -1180,7 +1183,7 @@
<string name="perm_enable_bg_already_done">Már engedélyezve van a Delta Chat számára, hogy a háttérben üzeneteket fogadjon.\n\nHa az üzenetek még mindig nem érkeznek meg a háttérben, ellenőrizze a rendszerbeállításokat is.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">Ú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👤 Kapcsolja össze ismerőseit biztonságosan a „Névjegyek csatolásával”\n\n🥰 Reagáljon bármilyen hangulatjellel\n\n📌 Tűzze ki a csevegéseket közvetlenül a keresésből … tudjon meg többet itt: %1$s</string>
<string name="update_1_50_android">Mik az újdonságok?\n\n❤️‍🔥 Új hangulatjel-választó még több hangulatjellel\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>
+1
View File
@@ -471,6 +471,7 @@
<string name="pref_app_access">Akes Aplikasi</string>
<string name="pref_chats">Obrolan</string>
<string name="pref_in_chat_sounds">Suara dalam obrolan</string>
<!-- deprecated -->
<string name="pref_message_text_size">Ukuran huruf pesan</string>
<string name="pref_view_log">Lihat catatan</string>
<string name="pref_saved_log">Menyimpan log ke folder \"Unduhan\"</string>
File diff suppressed because it is too large Load Diff
+1
View File
@@ -459,6 +459,7 @@
<string name="pref_app_access">アプリのアクセス</string>
<string name="pref_chats">チャット</string>
<string name="pref_in_chat_sounds">着信音</string>
<!-- deprecated -->
<string name="pref_message_text_size">文字の大きさ</string>
<string name="pref_view_log">ログの表示</string>
<string name="pref_saved_log">ログはダウンロードフォルダに保存されました。</string>
+1
View File
@@ -529,6 +529,7 @@
<string name="pref_app_access">ចូលដំណើរការកម្មវិធី</string>
<string name="pref_chats">សន្ទនា</string>
<string name="pref_in_chat_sounds">សម្លេងនៅក្នុងសន្ទនា</string>
<!-- deprecated -->
<string name="pref_message_text_size">ទំហំអក្សរសារ</string>
<string name="pref_view_log">មើលកំណត់ហេតុ</string>
<string name="pref_saved_log">បានរក្សាទុក កំណត់ហេតុទៅថតឯកសារ \"ទាញយក\"</string>
+1
View File
@@ -560,6 +560,7 @@
<string name="pref_app_access">앱 접근</string>
<string name="pref_chats">채팅</string>
<string name="pref_in_chat_sounds">앱 내 알림</string>
<!-- deprecated -->
<string name="pref_message_text_size">메시지 폰트 크기</string>
<string name="pref_view_log">로그 보기</string>
<string name="pref_saved_log">로그를 \"다운로드\" 폴더에 저장했습니다.</string>
+1
View File
@@ -591,6 +591,7 @@
<string name="pref_app_access">Prieiga prie programėlės</string>
<string name="pref_chats">Pokalbiai</string>
<string name="pref_in_chat_sounds">Garsai pokalbiuose</string>
<!-- deprecated -->
<string name="pref_message_text_size">Žinučių šrifto dydis</string>
<string name="pref_view_log">Rodyti žurnalą</string>
<string name="pref_saved_log">Žurnalas įrašytas į „Atsiuntimų“ aplanką</string>
+1
View File
@@ -335,6 +335,7 @@
<string name="pref_app_access">Programtilgang</string>
<string name="pref_chats">Sludringer</string>
<string name="pref_in_chat_sounds">Merknader i programmet</string>
<!-- deprecated -->
<string name="pref_message_text_size">Skriftstørrelse i meldinger</string>
<string name="pref_view_log">Vis logg</string>
<string name="pref_log_header">Logg</string>
+4 -1
View File
@@ -702,6 +702,8 @@
<string name="pref_screen_security_explain">Geen schermfoto\'s tonen op de recent-lijst en binnen de app</string>
<string name="pref_screen_security_please_restart_hint">Herstart de app om de wijzigingen toe te passen.</string>
<string name="pref_notifications">Meldingen</string>
<string name="pref_mention_notifications">Vermeldingen</string>
<string name="pref_mention_notifications_explain">Toon berichten gericht aan jou in genegeerde groepen</string>
<string name="pref_notifications_show">Tonen</string>
<string name="pref_notifications_priority">Prioriteit</string>
<string name="pref_notifications_explain">Systeemmeldingen tonen bij nieuwe berichten</string>
@@ -736,6 +738,7 @@
<string name="pref_app_access">Apptoegang</string>
<string name="pref_chats">Gesprekken</string>
<string name="pref_in_chat_sounds">Gespreksgeluiden</string>
<!-- deprecated -->
<string name="pref_message_text_size">Tekstgrootte van berichten</string>
<string name="pref_view_log">Logboek bekijken</string>
<string name="pref_saved_log">Het logboek is opgeslagen in de downloadmap</string>
@@ -1180,7 +1183,7 @@
<string name="perm_enable_bg_already_done">Je hebt al toestemming gegeven voor het ophalen van berichten op de achtergrond.\n\nAls het nog steeds niet werkt, controleer dan de systeeminstellingen.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">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_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>
+4 -1
View File
@@ -734,6 +734,8 @@
<string name="pref_screen_security_explain">Poproś o zablokowanie zrzutów ekranu na liście ostatnich i wewnątrz aplikacji</string>
<string name="pref_screen_security_please_restart_hint">Aby zastosować ustawienia bezpieczeństwa ekranu, uruchom ponownie aplikację.</string>
<string name="pref_notifications">Powiadomienia</string>
<string name="pref_mention_notifications">Wzmianki</string>
<string name="pref_mention_notifications_explain">W wyciszonych grupach powiadamiaj o wiadomościach skierowanych do ciebie, takich jak odpowiedzi lub reakcje</string>
<string name="pref_notifications_show">Pokaż</string>
<string name="pref_notifications_priority">Priorytet</string>
<string name="pref_notifications_explain">Włącz powiadomienia systemowe o nowych wiadomościach</string>
@@ -768,6 +770,7 @@
<string name="pref_app_access">Dostęp do aplikacji</string>
<string name="pref_chats">Czaty</string>
<string name="pref_in_chat_sounds">Dźwięki w czacie</string>
<!-- deprecated -->
<string name="pref_message_text_size">Rozmiar czcionki w wiadomości</string>
<string name="pref_view_log">Wyświetl dziennik</string>
<string name="pref_saved_log">Zapisano dziennik w folderze Pobrane</string>
@@ -1212,7 +1215,7 @@
<string name="perm_enable_bg_already_done">Pozwolono już Delta Chat na odbieranie wiadomości w tle.\n\nJeśli wiadomości nadal nie docierają w tle, sprawdź też ustawienia systemu.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">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👤 Połącz bezpiecznie znajomych za pomocą opcji „Dołącz kontakty”\n\n🥰 Reaguj dowolnymi emoji\n\n📌 Przypinaj czaty bezpośrednio z wyszukiwarki… i wiele WIĘCEJ na %1$s</string>
<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
View File
@@ -651,6 +651,7 @@
<string name="pref_app_access">Acesso do aplicativo</string>
<string name="pref_chats">Conversas</string>
<string name="pref_in_chat_sounds">Sons da conversa</string>
<!-- deprecated -->
<string name="pref_message_text_size">Tamanho da fonte de mensagens</string>
<string name="pref_view_log">Ver relatório</string>
<string name="pref_saved_log">Registro salvo na pasta de \"Downloads\"</string>
+1
View File
@@ -276,6 +276,7 @@
<string name="pref_app_access">Acesso à App</string>
<string name="pref_chats">chats</string>
<string name="pref_in_chat_sounds">Sons na chat</string>
<!-- deprecated -->
<string name="pref_message_text_size">Tamanho do texto das mensagens</string>
<string name="pref_view_log">Ver o log</string>
<string name="pref_other">Outro</string>
+4 -1
View File
@@ -734,6 +734,8 @@
<string name="pref_screen_security_explain">Запрос на блокировку скриншотов в списке недавних и внутри приложения</string>
<string name="pref_screen_security_please_restart_hint">Перезапустите приложение для применения настроек безопасности экрана.</string>
<string name="pref_notifications">Уведомления</string>
<string name="pref_mention_notifications">Упоминания</string>
<string name="pref_mention_notifications_explain">В группах с отключенными уведомлениями, оповещать о сообщениях, адресованных вам, например об ответах или реакциях</string>
<string name="pref_notifications_show">Показывать</string>
<string name="pref_notifications_priority">Приоритет</string>
<string name="pref_notifications_explain">Включить системные уведомления для новых сообщений</string>
@@ -768,6 +770,7 @@
<string name="pref_app_access">Доступ приложения</string>
<string name="pref_chats">Чаты</string>
<string name="pref_in_chat_sounds">Звуки в чате</string>
<!-- deprecated -->
<string name="pref_message_text_size">Размер шрифта сообщения</string>
<string name="pref_view_log">Открыть журнал</string>
<string name="pref_saved_log">Журнал сохранён в папку \"Загрузки\"</string>
@@ -1212,7 +1215,7 @@
<string name="perm_enable_bg_already_done">Вы уже разрешили Delta Chat получать сообщения в фоновом режиме.\n\nЕсли сообщения не приходят в фоновом режиме, проверьте также системные настройки.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">Новый онбординг 🐣 и многое другое:\n\n⚡️ Зарегистрируйтесь на одном из безопасных и быстрых серверов chatmail (https://delta.chat/chatmail) или воспользуйтесь обычными серверами электронной почты\n\n👉 PUSH уведомления на любом из серверов chatmail\n\n👤 Получайте \"Прикреплённые контакты\" и присоединяйтесь к вашим друзьям\n\n🥰 Выражайте эмоции с помощью любого эмодзи\n\n📌 Закрепляйте чаты прямо из поиска … и многое другое на %1$s</string>
<string name="update_1_50_android">Что нового?\n\n❤️‍🔥 Обновленный выбор эмодзи с еще большим выбором эмодзи\n\n🎮 Расширенные приложения в чате: получайте уведомления и открывайте поддерживаемые приложения в нужном контексте, например, открывайте добавленную запись в календаре напрямую\n\n👍 Получайте уведомления о реакциях на ваши сообщения\n\n... 🛠️ ИСПРАВЛЕНИЯ и ЕЩЁ БОЛЬШЕ в %1$s</string>
<string name="update_1_46_ios">Новый онбординг 🐣 и многое другое:\n\n⚡️ Зарегистрируйтесь на одном из безопасных и быстрых серверов chatmail (https://delta.chat/chatmail) или воспользуйтесь обычными серверами электронной почты\n\n👉 PUSH уведомления на любом из серверов chatmail\n\n👤 Получайте \"Прикреплённые контакты\" и присоединяйтесь к вашим друзьям\n\n🥰 Выбор быстрой реакции … и многое другое на %1$s</string>
<string name="update_switch_profile_placement">ℹ️ \"Сменить профиль\" перемещено: Нажмите на изображение вашего профиля в верхнем углу главного экрана, чтобы добавить или переключить профили. 💡</string>
</resources>
+1
View File
@@ -413,6 +413,7 @@
<string name="pref_app_access">Atzessu a s\'aplicatzione</string>
<string name="pref_chats">Tzarradas</string>
<string name="pref_in_chat_sounds">Sonos in sa tzarrada</string>
<!-- deprecated -->
<string name="pref_message_text_size">Mannària de sos caràteres in sos messàgios</string>
<string name="pref_view_log">Pòmpia su registru</string>
<string name="pref_saved_log">Registru sarvadu in sa cartella \"Iscarrigamentos\"</string>
+1
View File
@@ -610,6 +610,7 @@
<string name="pref_app_access">Prístup k aplikácii</string>
<string name="pref_chats">Konverzácie</string>
<string name="pref_in_chat_sounds">Zvuky v konverzáciách</string>
<!-- deprecated -->
<string name="pref_message_text_size">Veľkosť písma správy</string>
<string name="pref_view_log">Prezrieť záznam</string>
<string name="pref_saved_log">Denník bol uložený do priečinka „Súbory na stiahnutie“</string>
+3 -2
View File
@@ -697,6 +697,8 @@
<string name="pref_screen_security_explain">Kërko të bllokohen foto ekrani në lista të freskëta dhe brenda aplikacionit</string>
<string name="pref_screen_security_please_restart_hint">Që të hyjnë në fuqi rregullimet mbi sigurinë e ekranit, ju lutemi, rinisni aplikacionin.</string>
<string name="pref_notifications">Njoftime</string>
<string name="pref_mention_notifications">Përmendje</string>
<string name="pref_mention_notifications_explain">Në grupe të heshtuar, njofto për mesazhe drejtuar jush, si përgjigjet, apo reagimet</string>
<string name="pref_notifications_show">Shfaqi</string>
<string name="pref_notifications_priority">Përparësi</string>
<string name="pref_notifications_explain">Aktivizoni njoftime sistemi për mesazhe të reja</string>
@@ -730,6 +732,7 @@
<string name="pref_show_system_contacts_explain">Ofro krijim fjalosjesh me kontakte prej libri adresash. Disa shërbime lypin ujdisje fshehtëzimi skaj-më-skaj së pari.</string>
<string name="pref_chats">Fjalosje</string>
<string name="pref_in_chat_sounds">Tinguj Brenda Fjalosjeje</string>
<!-- deprecated -->
<string name="pref_message_text_size">Madhësi Shkronjash Mesazhi</string>
<string name="pref_view_log">Shihni Regjistrin</string>
<string name="pref_saved_log">Regjistri u ruajt te dosja “Shkarkime”</string>
@@ -1170,8 +1173,6 @@
<string name="perm_enable_bg_reminder_title">Prekeni këtu që të merrni mesazhe, teksa Delta Chat rri në prapaskenë.</string>
<string name="perm_enable_bg_already_done">E keni lejuar tashmë Delta Chat-in të marrë mesazhe në prapaskenë.\n\nNëse mesazhet prapë nuk mbërrijnë në prapaskenë, ju lutemi, kontrolloni edhe rregullimet e sistemit tuaj.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">Hapa të Rinj Mirëseardhjeje 🐣 Etj.:\n\n⚡️ Regjistrohuni te shërbyes të siguruar, të shpejtë, chatmail-i (https://delta.chat/chatmail), ose përdorni shërbyes klasikë email-i\n\n👉 Njoftime PUSH për çfarëdo shërbyesi “chatmail”\n\n👤 Lidhuni me shokët tuaj në mënyrë të parrezik, përmes “Bashkëngjitni kontakte”\n\n🥰 Reagoni me çfarëdo emoxhi\n\n📌 Fiksoni fjalosje drejt e nga kërkimi … dhe PLOT të TJERA te %1$s</string>
<string name="update_1_46_ios">Hapa të Rinj Mirëseardhjeje 🐣 dhe të Tjera:\n\n⚡️ Regjistrohuni te shërbyes të siguruar, të shpejtë chatmail-i (https://delta.chat/chatmail), ose përdorni shërbyes klasikë email-i\n\n👉 Njoftime PUSH për çfarëdo shërbyesish “chatmail”\n\n👤 Merrni “Kontakte bashkëmgjitur” dhe lidhuni me shokët tuaj\n\n🥰 Përzgjedhje më e shpejtë reagimesh…ETJ, te %1$s</string>
<string name="update_switch_profile_placement">️ Mundësia “Ndërroni Profil” u hoq: Që të shtoni, ose ndërroni profile, prekni figurën e profilit tuaj në cepin e sipërm të skenës kryesore 💡</string>
</resources>
+1
View File
@@ -610,6 +610,7 @@
<string name="pref_app_access">Приступ апликацији</string>
<string name="pref_chats">Ћаскања</string>
<string name="pref_in_chat_sounds">Звуци ћаскања</string>
<!-- deprecated -->
<string name="pref_message_text_size">Величина слова поруке</string>
<string name="pref_view_log">Погледај дневник</string>
<string name="pref_saved_log">Дневник је снимљен у „Downloads“ директоријум</string>
+1 -2
View File
@@ -696,6 +696,7 @@
<string name="pref_app_access">Programåtkomst</string>
<string name="pref_chats">Chattar</string>
<string name="pref_in_chat_sounds">Ljud i konversationer</string>
<!-- deprecated -->
<string name="pref_message_text_size">Teckenstorlek för meddelanden</string>
<string name="pref_view_log">Visa logg</string>
<string name="pref_saved_log">Sparade loggen i mappen \"Nedladdningar\"</string>
@@ -1139,8 +1140,6 @@
<string name="perm_enable_bg_reminder_title">Tryck här för att ta emot meddelanden medan Delta Chat är i bakgrunden.</string>
<string name="perm_enable_bg_already_done">Du har redan gett Delta Chatt tillstånd att ta emot meddelanden i bakgrunden.\n\nKontrollera dina systeminställningar också, om det fortfarande inte kommer några meddelanden i bakgrunden.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">Ny onboarding 🐣 och mer:\n\n⚡️ Registrera dig för säkra snabba chatmailservrar (https://delta.chat/chatmail) eller använd klassiska e-postservrar\n\n👉 PUSH-meddelanden för alla chatmailservrar\n\n👤 Anslut dina vänner säkert via \"Bifoga kontakter\"\n\n🥰 Reagera med alla emoji\n\n📌 Fäst chattar direkt från sök ... och MER på %1$s</string>
<string name="update_1_46_ios">Ny Onboarding 🐣 och mer:\n\n⚡️ Registrera dig för säkra snabba chatmailservrar (https://delta.chat/chatmail) eller använd klassiska e-postservrar\n\n👉 PUSH-meddelanden för alla chatmailservrar\n\n👤 Ta emot \"bifogade kontakter\" och anslut till dina vänner\n\n🥰 Snabbare reaktionsval ... och MER på %1$s</string>
<string name="update_switch_profile_placement">️ Alternativet \"Byt profil\" har flyttats: Tryck på din profilbild i det övre hörnet av huvudskärmen för att lägga till eller byta profil 💡</string>
</resources>
+1
View File
@@ -214,6 +214,7 @@
<string name="pref_app_access">பயன்பாடு அணுகல்</string>
<string name="pref_chats">அரட்டைகள்</string>
<string name="pref_in_chat_sounds">௨ள்ளார்ந்த செயலி அறிவிப்புகள்</string>
<!-- deprecated -->
<string name="pref_message_text_size">சேதிகளின் எழுத்துரு அளவு</string>
<string name="pref_other">மற்றவை</string>
<string name="pref_backup">காப்பு நகல்</string>
+1
View File
@@ -182,6 +182,7 @@
<string name="pref_app_access">అనువర్తన ప్రాప్యత</string>
<string name="pref_chats">చాట్లు</string>
<string name="pref_in_chat_sounds">యాప్-లోపల నోటిఫికేషన్లు</string>
<!-- deprecated -->
<string name="pref_message_text_size">సందేశం ఫాంట్ పరిమాణం</string>
<string name="pref_other">ఇతర</string>
<string name="pref_backup">బ్యాకప్</string>
+4 -1
View File
@@ -702,6 +702,8 @@
<string name="pref_screen_security_explain">Son listesinde ve uygulamanın içinde ekran görüntülerinin engellenmesini iste</string>
<string name="pref_screen_security_please_restart_hint">Ekran güvenliği ayarını uygulamak için lütfen uygulamayı yeniden başlatın.</string>
<string name="pref_notifications">Bildirimler</string>
<string name="pref_mention_notifications">Anmalar</string>
<string name="pref_mention_notifications_explain">Sessize alınan öbeklerde, yanıtlar ya da tepkiler gibi size yönlendirilen iletileri bildirin</string>
<string name="pref_notifications_show">Göster</string>
<string name="pref_notifications_priority">Öncelik</string>
<string name="pref_notifications_explain">Yeni iletiler için sistem bildirimlerini etkinleştir</string>
@@ -736,6 +738,7 @@
<string name="pref_app_access">Uygulama Erişimi</string>
<string name="pref_chats">Sohbetler</string>
<string name="pref_in_chat_sounds">Sohbet İçi Sesler</string>
<!-- deprecated -->
<string name="pref_message_text_size">İleti Yazı Tipi Boyutu</string>
<string name="pref_view_log">Günlüğü Görüntüle</string>
<string name="pref_saved_log">Günlüğü \"İndirilenler\" klasörüne kaydet</string>
@@ -1180,7 +1183,7 @@
<string name="perm_enable_bg_already_done">Delta Chat\'in arka planda iletileri almasına zaten izin verdiniz.\n\nİletiler arka planda hâlâ gelmiyorsa, lütfen sistem ayarlarınızı da denetleyin.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">Yeni Katılım 🐣 ve Daha Fazlası:\n\n⚡️ Hızlı güvenli Chatmail sunucularına kayıt olun (https://delta.chat/chatmail) ya da klasik e-posta sunucularını kullanın\n\n👉 Herhangi bir Chatmail sunucusu için ANINDA İLETME bildirimleri\n\n👤 \"Kişileri iliştir\" üzerinden arkadaşlarınıza güvenlice bağlanın\n\n🥰 Herhangi bir emojiyle tepki verin\n\n📌 Sohbetleri doğrudan aramadan sabitleyin … ve DAHA FAZLASI %1$s</string>
<string name="update_1_50_android">Ne yeni?\n\n❤️‍🔥 Daha fazla emojiyle yeni emoji seçicisi\n\n🎮 Geliştirilen sohbet içi uygulamalar: Bildirimler alın ve destekleyen uygulamaları bağlamda açın, yani eklenen bir takvim girdisini doğrudan açın\n\n👍 İletilerinize verilen tepkiler hakkında bildirimler alın\n\n... 🛠️ DÜZELTMELER ve HATTA DAHA FAZLASI için %1$s</string>
<string name="update_1_46_ios">Yeni Katılım 🐣 ve Daha Fazlası:\n\n⚡️ Güvenli hızlı Chatmail sunucularına kaydolun (https://delta.chat/chatmail) ya da klasik e-posta sunucularını kullanın\n\n👉 Herhangi bir Chatmail sunucusu için ANLIK bildirimler\n\n👤 \"İliştirilen kişileri\" alın ve arkadaşlarınıza bağlanın\n\n🥰 Daha hızlı tepki seçimi … ve DAHA FAZLASI için %1$s</string>
<string name="update_switch_profile_placement">️ \"Profili Değiştir\" seçeneği taşındı: Yeni profil eklemek ya da profilleri değiştirmek için ana ekranın üst köşesindeki profil görselinize dokunun 💡</string>
</resources>
+2 -1
View File
@@ -768,6 +768,7 @@
<string name="pref_app_access">Доступ додатку</string>
<string name="pref_chats">Чати</string>
<string name="pref_in_chat_sounds">Звуки в чаті</string>
<!-- deprecated -->
<string name="pref_message_text_size">Розмір шрифту повідомлення</string>
<string name="pref_view_log">Переглянути журнал</string>
<string name="pref_saved_log">Лог збережено у папку \"Завантаження\"</string>
@@ -1212,7 +1213,7 @@
<string name="perm_enable_bg_already_done">Ви вже дозволили Delta Chat отримувати повідомлення у фоновому режимі.\n\nЯкщо повідомлення досі не приходять у фоновому режимі, перевірте налаштування системи.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">Новий онбордінг 🐣 та багато іншого:\n\n⚡️ Підпишіться на безпечні сервери швидкої пошти (https://delta.chat/chatmail) або використовуйте класичні сервери електронної пошти\n\n👉 PUSH-сповіщення для будь-якого сервера чату\n\n👤 Безпечно підключайте друзів через \"Прикріпити контакти\"\n\n🥰 Реагуйте будь-якими емодзі\n\n📌 Прикріплюйте чати прямо з пошуку ... та багато іншого на %1$s</string>
<string name="update_1_50_android">Що нового? \n\n❤️‍🔥 Новий вибірник емодзі з більшою кількістю смайликів \n\n🎮 Покращені програми в чаті: отримуйте сповіщення та відкривайте додатки безпосередньо в контексті, наприклад, доданий запис у календарі \n\n👍 Отримуйте сповіщення про реакції на ваші повідомлення \n\n... 🛠️ ВИПРАВЛЕННЯ та ЩЕ БІЛЬШЕ на %1$s</string>
<string name="update_1_46_ios">Новий онбордінг 🐣 та багато іншого:\n\n⚡️ Підпишіться на безпечні швидкі chatmail-сервери (https://delta.chat/chatmail) або використовуйте класичні сервери електронної пошти\n\n👉 PUSH-повідомлення для будь-якого сервера чату\n\n👤 Отримуйте \"Прикріплені контакти\" та з\'єднуйтеся з друзями\n\n🥰 Швидший вибір реакції ... та багато іншого на %1$s</string>
<string name="update_switch_profile_placement">ℹ️ Опцію \"Переключити профіль\" переміщено: Торкніться зображення свого профілю у верхньому кутку головного екрану, щоб додати або переключити профіль 💡.</string>
</resources>
+1
View File
@@ -640,6 +640,7 @@
<string name="pref_app_access">Quyền truy cập ứng dụng</string>
<string name="pref_chats">Trò chuyện</string>
<string name="pref_in_chat_sounds">Âm thanh trong cuộc trò chuyện</string>
<!-- deprecated -->
<string name="pref_message_text_size">Kích thước phông chữ tin nhắn</string>
<string name="pref_view_log">Xem nhật ký</string>
<string name="pref_saved_log">Đã lưu nhật ký vào thư mục \"Tải xuống\"</string>
+4 -1
View File
@@ -686,6 +686,8 @@
<string name="pref_screen_security_explain">请求系统在最近任务列表中和本应用内阻止截屏</string>
<string name="pref_screen_security_please_restart_hint">要应用屏幕安全设置,请重新启动本应用。</string>
<string name="pref_notifications">通知</string>
<string name="pref_mention_notifications">提及</string>
<string name="pref_mention_notifications_explain">在静音群中,通知直接与你相关的消息,比如回复或回应</string>
<string name="pref_notifications_show">显示</string>
<string name="pref_notifications_priority">优先级</string>
<string name="pref_notifications_explain">为新消息启用系统通知</string>
@@ -720,6 +722,7 @@
<string name="pref_app_access">应用程序访问</string>
<string name="pref_chats">聊天</string>
<string name="pref_in_chat_sounds">聊天音</string>
<!-- deprecated -->
<string name="pref_message_text_size">消息字体大小</string>
<string name="pref_view_log">查看日志</string>
<string name="pref_saved_log">已将日志保存至“下载”文件夹</string>
@@ -1164,7 +1167,7 @@
<string name="perm_enable_bg_already_done">您已允许 Delta Chat 在后台接收消息。\n\n若 Delta Chat 在后台时消息仍未到达,请检查系统设置。</string>
<!-- device messages for updates -->
<string name="update_1_46_android">新用户引导流程 🐣 以及更多信息:\n\n⚡️ 注册安全的快速聊天邮件服务器(https://delta.chat/chatmail)或使用传统的电子邮件服务器\n\n👉 为任何聊天邮件服务器推送通知\n\n👤 通过“附加联系人”安全地连接您的朋友\n\n🥰 使用任何表情符号进行回应\n\n📌 直接从搜索中固定聊天…以及更多信息,请访问 %1$s</string>
<string name="update_1_50_android">有什么新功能?\n\n❤️‍🔥 新的表情符号选择器,包含更多表情符号\n\n🎮 增强的聊天应用:获取通知并在上下文中打开支持应用,即直接打开添加的日历条目\n\n👍 收到有关对您的消息的回应的通知\n\n…🛠️ %1$s 上的修复和更多内容</string>
<string name="update_1_46_ios">新用户引导流程 🐣 以及更多信息:\n\n⚡️ 注册安全的快速聊天邮件服务器(https://delta.chat/chatmail)或使用传统的电子邮件服务器\n\n👉 为任何聊天邮件服务器推送通知\n\n👤 接收“附加联系人”安全地连接您的朋友\n\n🥰 更快选择消息回应 …更多信息,请访问 %1$s</string>
<string name="update_switch_profile_placement">ℹ️ “切换账号”选项已移动:点击主屏幕上角的个人资料图片以添加或切换账号 💡</string>
</resources>
+1 -2
View File
@@ -720,6 +720,7 @@
<string name="pref_app_access">App 存取</string>
<string name="pref_chats">對話</string>
<string name="pref_in_chat_sounds">對話內的音效</string>
<!-- deprecated -->
<string name="pref_message_text_size">訊息的字型大小</string>
<string name="pref_view_log">觀看系統紀錄</string>
<string name="pref_saved_log">已將日誌保存到 「下載」 資料夾</string>
@@ -1163,8 +1164,6 @@
<string name="perm_enable_bg_reminder_title">點擊此處可在 Delta Chat 處於後台時接收訊息。</string>
<string name="perm_enable_bg_already_done">您已經允許 Delta Chat 在後台接收訊息。\n\n如果消息仍未在後台到達,請同時檢查您的系統設定。</string>
<!-- device messages for updates -->
<string name="update_1_46_android">新用戶引導流程 🐣 以及更多資訊:\n\n⚡️ 註冊安全的快速聊天郵件伺服器( https://delta.chat/chatmail )或使用傳統的電子郵件伺服器\n\n👉 為任何聊天郵件伺服器推送通知\n\n👤 通過「附加聯絡人」安全地連接您的朋友\n\n🥰 使用任何表情符號進行回覆\n\n📌 直接從搜索中選釘聊天... 以及更多資訊,請訪問 %1$s</string>
<string name="update_1_46_ios">新用戶引導流程 🐣 以及更多資訊:\n\n⚡️ 註冊安全的快速聊天郵件伺服器( https://delta.chat/chatmail )或使用傳統的電子郵件伺服器\n\n👉 為任何聊天郵件伺服器推送通知\n\n👤 接收「附加聯絡人」安全地連接您的朋友\n\n🥰 更快選擇訊息回覆 ... 更多資訊,請訪問 %1$s</string>
<string name="update_switch_profile_placement">ℹ️「切換賬戶」選項已移動:點擊主螢幕右上角的賬戶大頭貼以添加或切換賬戶 💡</string>
</resources>
+1
View File
@@ -13,6 +13,7 @@
<color name="contact_icon">#608496</color>
<color name="gallery_icon">#a47ad9</color>
<color name="location_icon">#66BB6A</color>
<color name="apps_icon">#77bdc4</color>
<color name="core_white">#ffffff</color>
<color name="core_light_02">#F9FAFA</color>
+6 -5
View File
@@ -6,7 +6,7 @@
<string name="community_set_name_explain">Set a name that other will recognize.</string>
<string name="could_not_open_file">Could not open file</string>
<!-- common strings without special context -->
<string name="app_name">Delta Chat</string>
<string name="app_name">ArcaneChat</string>
<string name="ok">OK</string>
<string name="cancel">Cancel</string>
<!-- deprecated, the word "or" to separate blocks in the user interface that are mutually exclusive -->
@@ -190,6 +190,8 @@
<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">App Picker URL</string>
<string name="webxdc_store_url_explain">If set, the URL will be used as the App Picker instead of the default one</string>
<string name="unknown">Unknown</string>
<string name="green">Green</string>
@@ -450,7 +452,6 @@
<string name="mailing_list_profile_info">Changes to mailing list name and image apply on this device only.</string>
<!-- extra services -->
<string name="webxdc_apps_store">🎮 Mini-Apps Store</string>
<string name="public_bots">🤖 Public Bots</string>
<!-- webxdc -->
@@ -720,8 +721,8 @@
<string name="pref_screen_security_explain">Request to block screenshots in the recents list and inside the app</string>
<string name="pref_screen_security_please_restart_hint">To apply the screen security setting please restart the app.</string>
<string name="pref_notifications">Notifications</string>
<string name="pref_mention_notifications">Notify mentions</string>
<string name="pref_mention_notifications_explain">Notify messages in muted chats if they are directed to you, like replies or reactions to your messages</string>
<string name="pref_mention_notifications">Mentions</string>
<string name="pref_mention_notifications_explain">In muted groups, notify messages directed to you, like replies or reactions</string>
<string name="pref_notifications_show">Show</string>
<string name="pref_notifications_priority">Priority</string>
<string name="pref_notifications_explain">Enable system notifications for new messages</string>
@@ -1204,7 +1205,7 @@
<string name="perm_enable_bg_already_done">You already allowed Delta Chat to receive messages in the background.\n\nIf messages still do not arrive in background, please also check your system settings.</string>
<!-- device messages for updates -->
<string name="update_1_46_android">New Onboarding 🐣 and More:\n\n⚡️ Sign up to secure fast chatmail servers (https://delta.chat/chatmail) or use classic e-mail servers\n\n👉 PUSH notifications for any chatmail server\n\n👤 Connect your friends securely via \"Attach contacts\"\n\n🥰 React with any emoji\n\n📌 Pin chats directly from search … and MORE at %1$s</string>
<string name="update_1_50_android">What\'s new?\n\n❤️‍🔥 New emojis picker with more emoji\n\n🎮 Enhanced in-chat apps: Get notifications and open supporting apps in context, i.e. open an added calendar entry directly\n\n👍 Get notified about reactions to your messages\n\n... 🛠️ FIXES and EVEN MORE at %1$s</string>
<string name="update_1_46_ios">New Onboarding 🐣 and More:\n\n⚡️ Sign up to secure fast chatmail servers (https://delta.chat/chatmail) or use classic e-mail servers\n\n👉 PUSH notifications for any chatmail server\n\n👤 Receive \"Attached contacts\" and connect to your friends\n\n🥰 Faster reaction selection … and MORE at %1$s</string>
<string name="update_switch_profile_placement">️ \"Switch Profile\" option moved: Tap your profile image in the upper corner of the main screen to add or switch profiles 💡</string>
</resources>
+3 -5
View File
@@ -26,11 +26,9 @@
android:title="@string/videochat_instance"
android:summary="@string/none"/>
<org.thoughtcrime.securesms.components.SwitchPreferenceCompat
android:defaultValue="true"
android:key="pref_webxdc_realtime_enabled"
android:summary="@string/enable_realtime_explain"
android:title="@string/enable_realtime"/>
<Preference android:key="pref_webxdc_store_url"
android:title="@string/webxdc_store_url"
android:summary="@string/none"/>
<org.thoughtcrime.securesms.components.SwitchPreferenceCompat
android:defaultValue="false"