Compare commits

...

275 Commits

Author SHA1 Message Date
adbenitez 314ecf1639 add device message 2025-03-15 23:09:28 +01:00
adbenitez df6ac480c6 Merge remote-tracking branch 'upstream/main' 2025-03-15 22:05:36 +01:00
adb 8974a62a0c Merge pull request #3684 from deltachat/prep-1.56.0
prepare 1.56.0
2025-03-15 19:12:26 +00:00
adbenitez d2c8e2e63a Merge remote-tracking branch 'upstream/main' 2025-03-15 19:08:27 +01:00
adbenitez 11600184be update version number 2025-03-15 18:52:59 +01:00
adb ee78397614 Merge pull request #3594 from deltachat/adb/issue-3591
hide some option in Encryption category
2025-03-15 17:50:49 +00:00
adb b33311b9fb Merge branch 'main' into adb/issue-3591 2025-03-15 17:50:30 +00:00
adb b90f6e296a Merge pull request #3683 from deltachat/update-core-and-stuff-15/3/25
Update core to 1.157.2
2025-03-15 17:49:45 +00:00
adbenitez 5789390451 update changelog 2025-03-15 18:48:34 +01:00
adbenitez 1a84cd05a5 update translations 2025-03-15 18:44:49 +01:00
adbenitez 3578a9bef1 update deltachat-core-rust to 'chore(release): prepare for 1.157.2' of 'v1.157.2' 2025-03-15 18:24:35 +01:00
adbenitez 52280bf744 reduce padding of "or" separator in registration screen 2025-03-15 18:18:07 +01:00
adbenitez 26645da56d Merge remote-tracking branch 'upstream/main' 2025-03-15 17:44:58 +01:00
adbenitez 828ff3d8ca add scroll to registration screen for small screens 2025-03-15 17:25:12 +01:00
adb 7954e94d45 Merge pull request #3680 from deltachat/adb/paste-as-plain-text
force "paste as plain text" in composer
2025-03-15 15:24:42 +00:00
adb c1e47f4a9c Merge pull request #3681 from deltachat/adb/add-symbols-instructions-to-readme
add instructions about decoding symbols in core crash
2025-03-15 15:23:29 +00:00
adbenitez d3193221f6 add instructions about decoding symbols in core crash 2025-03-14 15:54:30 +01:00
adbenitez e7b4accea0 update changelog 2025-03-14 01:04:58 +01:00
adbenitez 67baedc0dc force "paste as plain text" in composer 2025-03-14 00:20:56 +01:00
adbenitez 74c02932c3 Merge remote-tracking branch 'upstream/main' 2025-03-13 18:24:28 +01:00
adbenitez 2968d033f2 update strings.xml 2025-03-13 17:47:43 +01:00
adbenitez 43d48fa510 update changelog 2025-03-13 17:47:36 +01:00
adb 337f353220 Merge branch 'main' into adb/issue-3591 2025-03-13 16:24:18 +00:00
adbenitez 218295c4f3 remove ASM handling 2025-03-13 17:22:53 +01:00
B. Petersen bf86d4f1b7 update CHANGELOG 2025-03-13 16:56:03 +01:00
B. Petersen d383bcc451 add mute option for 8 hours 2025-03-13 16:56:03 +01:00
adb 2e1a40b606 Merge branch 'main' into adb/issue-3591 2025-03-13 15:53:54 +00:00
B. Petersen 10c538ac8e no 'delete on all devices' for device messages
do not say "Delete on all your devices"
when deleting a message in the "Device Messages" chat.

while this is a minor,
it is one of the first things the user may see,
better be correct there to not give a false first impression of correctness :)
2025-03-12 22:25:49 +01:00
adb 35852604ea Merge pull request #3633 from deltachat/adb/allow-to-edit-and-delete-for-all
allow to edit and delete for all
2025-03-12 19:18:43 +00:00
adbenitez 0c8ecaf8df add changelog entry 2025-03-12 20:06:27 +01:00
adb cbe70a93db Merge branch 'main' into adb/allow-to-edit-and-delete-for-all 2025-03-12 18:50:17 +00:00
adb 7768ef3ff9 Merge pull request #3674 from deltachat/adb/issue-3599
add action menu icon option to toggle message bookmark
2025-03-12 18:49:57 +00:00
adbenitez d337230a4b Merge branch 'adb/issue-3599' of https://github.com/deltachat/deltachat-android into adb/issue-3599 2025-03-12 19:31:13 +01:00
adbenitez de76377f3b change bookmark icons 2025-03-12 19:30:45 +01:00
adb f223b22ff8 Merge branch 'main' into adb/issue-3599 2025-03-12 17:56:08 +00:00
adb 9850e6fff7 Merge pull request #3673 from deltachat/adb/avoid-npe-in-processComposeControls
avoid NPE in processComposeControls
2025-03-12 16:56:22 +00:00
adbenitez 6ab94814ca update changelog 2025-03-12 17:32:25 +01:00
adb e0db504b18 Merge branch 'main' into adb/avoid-npe-in-processComposeControls 2025-03-12 16:25:22 +00:00
adb fe44eec6c8 Merge branch 'main' into adb/issue-3599 2025-03-12 16:23:55 +00:00
B. Petersen 7bc595a889 check for CHANGELOG in PRs changing .java files 2025-03-12 17:22:54 +01:00
adbenitez 5133461eb7 set title 2025-03-12 17:12:47 +01:00
adbenitez b4b12862fd add action menu icon option to toggle message bookmark 2025-03-12 17:06:18 +01:00
adbenitez 1340166a91 don't allow to delete info-messages for all 2025-03-12 16:22:45 +01:00
adbenitez 1663502d35 avoid NPE in processComposeControls 2025-03-12 16:16:34 +01:00
adbenitez 9a67f5b32a remove e2ee_enabled and import/export keys from advanced settings 2025-03-12 16:13:04 +01:00
adbenitez 773913409f hide the Encryption category completed for chatmail accounts 2025-03-12 14:47:40 +00:00
link2xt e6988e3f61 Format flake.nix 2025-03-12 02:43:37 +00:00
link2xt 0047259457 Update NDK in flake.nix from 27.0.11902837 to 27.2.12479018 2025-03-12 02:43:37 +00:00
adbenitez 3e9c977b3f Merge remote-tracking branch 'upstream/main' 2025-03-11 22:16:52 +01:00
adb 3a49e30d93 Merge pull request #3671 from deltachat/adb/issue-3670
check if activity is finishing before creating "one moment" dialog
2025-03-11 21:12:02 +00:00
adbenitez 11addb6522 check if activity is finishing before creating "one moment" dialog 2025-03-11 20:40:30 +01:00
adbenitez 6353bb94f4 improve "force encryption" option and warn when disabling 2025-03-11 18:23:12 +01:00
adb 5df2ba4325 Merge pull request #3667 from deltachat/adb/issue-3662
avoid ANR in ConversationActivity.processComposeControls
2025-03-10 23:20:37 +00:00
adbenitez 2f79310db6 update strings 2025-03-11 00:12:29 +01:00
adbenitez 129278443d Merge remote-tracking branch 'upstream/main' 2025-03-10 23:45:08 +01:00
adbenitez 0e27692c32 rename changelog 2025-03-10 23:39:35 +01:00
adbenitez 92be6947db update changelog 2025-03-10 23:39:03 +01:00
adb 884ba32ce9 Merge pull request #3669 from deltachat/prep-1.54.4
prepare 1.54.4
2025-03-10 22:22:14 +00:00
adbenitez fe2ac243c7 update changelog and increase version number 2025-03-10 22:20:26 +00:00
adb 4b978c0124 Merge pull request #3656 from deltachat/adb/use-chat-deleted-event
remove notifications from chat that was deleted from other device
2025-03-10 22:20:03 +00:00
adb 8bf799ec2a Merge pull request #3668 from deltachat/update-core-and-stuff-10/3/25
Update core to 1.156.3
2025-03-10 22:17:33 +00:00
adbenitez f92225528c update translations 2025-03-10 22:45:02 +01:00
adbenitez 796b723be7 update core submodule URL 2025-03-10 22:39:13 +01:00
adbenitez 544ab41aa4 update deltachat-core-rust to 'chore(release): prepare for 1.156.3' of 'v1.156.3' 2025-03-10 22:37:13 +01:00
adbenitez cca9dfb04a avoid ANR in ConversationActivity.processComposeControls 2025-03-10 22:17:47 +01:00
adb faa94acbcb Merge pull request #3666 from deltachat/adb/issue-3660
avoid ANR in ProfileSettingsFragment.onActivityResult
2025-03-10 19:46:00 +00:00
adbenitez e7517c23ad avoid ANR in ProfileSettingsFragment.onActivityResult 2025-03-10 18:20:28 +01:00
adb 370afbf2ce Merge pull request #3665 from deltachat/adb/issue-3664
call rpc.start() before it is used
2025-03-10 17:07:00 +00:00
adbenitez bcee64317d call rpc.start() before it is used 2025-03-10 17:30:59 +01:00
adbenitez 6fe4d57b48 remove IzzyOnDroid 2025-03-09 00:55:45 +01:00
B. Petersen 906db9155a bring back 'add attachment later', which was removed at #3601 2025-03-08 20:41:11 +01:00
l 9b7b35acb1 Merge pull request #3655 from deltachat/weblate
Translations update from Hosted Weblate
2025-03-07 22:56:43 +00:00
adbenitez 5d25ed7715 remove notifications from chat that was deleted from other device 2025-03-07 23:22:34 +01:00
Andrea Enzo Lattmann 5691ab9e84 Translated using Weblate (Italian)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/it/
2025-03-07 23:13:19 +01:00
adb 64aa0fb49c Merge pull request #3652 from deltachat/adb/issue-3651
avoid IllegalArgumentException in BaseConversationListFragment.handleAddToHomeScreen
2025-03-07 19:01:43 +00:00
l d3fe672ec0 Merge https://hosted.weblate.org/git/deltachat/android-metadata/ 2025-03-07 02:53:08 +00:00
link2xt 4e199c0080 Merge https://hosted.weblate.org/git/deltachat/android-metadata/ 2025-03-07 02:50:58 +00:00
adbenitez 8fd8927293 avoid IllegalArgumentException in BaseConversationListFragment.handleAddToHomeScreen 2025-03-06 20:12:55 +00:00
Hosted Weblate 320f0ba27d Merge remote-tracking branch 'origin/main' 2025-03-06 19:23:44 +01:00
l c7d903f64a Merge pull request #3649 from deltachat/link2xt/merge-weblate
Manually merge weblate
2025-03-06 18:23:39 +00:00
link2xt f394b22e45 Merge remote-tracking branch 'weblate/main'
Merging from https://hosted.weblate.org/git/deltachat/android-metadata/
into main.

Weblate stopped making PRs because there were conflicts.
2025-03-06 18:15:44 +00:00
adbenitez e7ced91670 Merge remote-tracking branch 'upstream/main' 2025-03-06 01:38:42 +01:00
adbenitez 35836ad18f update translations 2025-03-05 21:28:12 +01:00
Hosted Weblate 2e99f6ee93 Merge remote-tracking branch 'origin/main' 2025-03-05 20:58:49 +01:00
B. Petersen 5c551cb2a8 go for 'Profile Label' 2025-03-05 20:58:42 +01:00
B. Petersen 6490a641da reword 'Private Tag' to 'Profile Description' 2025-03-05 20:58:42 +01:00
adbenitez 06164d240d add back "reply" option to menu 2025-03-05 20:19:11 +01:00
Максим Горпиніч b729e93b8a Translated using Weblate (Ukrainian)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/uk/
2025-03-04 22:37:41 +01:00
Hosted Weblate d7345f75e2 Merge remote-tracking branch 'origin/main' 2025-03-03 21:10:05 +00:00
adbenitez 695e1e06dd update f-droid description 2025-03-03 22:09:58 +01:00
adbenitez ccedf31b96 update core 2025-03-03 17:16:15 +01:00
adbenitez 31f89cec02 Merge remote-tracking branch 'upstream/main' 2025-03-03 15:49:30 +01:00
Hosted Weblate 42561266ba Merge remote-tracking branch 'origin/main' 2025-03-03 15:31:12 +01:00
adb 17a182625d Merge pull request #3644 from deltachat/prep-1.54.3
prepare 1.54.3
2025-03-03 15:31:06 +01:00
adbenitez 625d0ed66c update changelog and version number 2025-03-03 13:58:33 +01:00
Hosted Weblate f7f1f29531 Merge remote-tracking branch 'origin/main' 2025-03-03 13:57:24 +01:00
adb 134fbc7188 Merge pull request #3643 from deltachat/update-core-and-stuff-3/3/25
Update core to 1.156.2
2025-03-03 13:57:14 +01:00
adbenitez 5d26387aa3 update translations 2025-03-03 13:36:33 +01:00
adbenitez 4a3070bb54 update deltachat-core-rust to 'chore(release): prepare for 1.156.2' of 'v1.156.2' 2025-03-03 13:35:14 +01:00
Hosted Weblate 8377f23c58 Merge remote-tracking branch 'origin/main' 2025-03-02 23:03:31 +01:00
B. Petersen ec4c96dd92 clarify chat deletion impact 2025-03-02 23:03:24 +01:00
Hosted Weblate 7a44182c3f Merge remote-tracking branch 'origin/main' 2025-02-28 20:25:07 +01:00
Hosted Weblate 5e88059283 Merge remote-tracking branch 'origin/main' 2025-02-28 16:43:31 +01:00
Hosted Weblate 96e635f0bd Merge remote-tracking branch 'origin/main' 2025-02-28 14:37:01 +00:00
Hosted Weblate 8aa7dfabe6 Merge remote-tracking branch 'origin/main' 2025-02-28 14:00:55 +01:00
Hosted Weblate cd344daf5a Merge remote-tracking branch 'origin/main' 2025-02-27 22:29:28 +01:00
Hosted Weblate 4658adc2cd Merge remote-tracking branch 'origin/main' 2025-02-27 22:24:57 +01:00
Hosted Weblate 62ad0e942f Merge remote-tracking branch 'origin/main' 2025-02-27 19:31:25 +00:00
Hosted Weblate 7e0fc59687 Merge remote-tracking branch 'origin/main' 2025-02-27 17:54:48 +00:00
Hosted Weblate 4ec02a59de Merge remote-tracking branch 'origin/main' 2025-02-27 17:38:52 +00:00
Hosted Weblate bcad4a7302 Merge remote-tracking branch 'origin/main' 2025-02-27 18:30:11 +01:00
Hosted Weblate 55eab9dd0b Merge remote-tracking branch 'origin/main' 2025-02-27 18:26:49 +01:00
Hosted Weblate 6f6cd80516 Merge remote-tracking branch 'origin/main' 2025-02-27 18:25:30 +01:00
Hosted Weblate c88a1b53b0 Merge remote-tracking branch 'origin/main' 2025-02-27 16:25:35 +00:00
Hosted Weblate 669d8f4cba Merge remote-tracking branch 'origin/main' 2025-02-27 00:04:13 +01:00
Hosted Weblate c083195acf Merge remote-tracking branch 'origin/main' 2025-02-27 00:03:02 +01:00
Hosted Weblate 7c6d47bfae Merge remote-tracking branch 'origin/main' 2025-02-26 23:14:09 +01:00
Hosted Weblate ef4f79b4a3 Merge remote-tracking branch 'origin/main' 2025-02-26 23:13:22 +01:00
Hosted Weblate 491bbfade0 Merge remote-tracking branch 'origin/main' 2025-02-26 18:55:00 +00:00
Hosted Weblate dce7d56fb2 Merge remote-tracking branch 'origin/main' 2025-02-26 19:37:48 +01:00
Hosted Weblate 1787d8665c Merge remote-tracking branch 'origin/main' 2025-02-26 18:37:27 +00:00
Hosted Weblate 2134f97956 Merge remote-tracking branch 'origin/main' 2025-02-26 16:57:08 +01:00
Hosted Weblate bf138aa2e7 Merge remote-tracking branch 'origin/main' 2025-02-26 16:49:08 +01:00
Hosted Weblate cbd4e2b520 Merge remote-tracking branch 'origin/main' 2025-02-26 12:00:18 +00:00
Hosted Weblate 713623c11d Merge remote-tracking branch 'origin/main' 2025-02-25 23:48:31 +01:00
Hosted Weblate 66339d77bf Merge remote-tracking branch 'origin/main' 2025-02-25 22:48:14 +00:00
Hosted Weblate 8b5b2d2f95 Merge remote-tracking branch 'origin/main' 2025-02-25 21:01:43 +01:00
Hosted Weblate 19c158d1c4 Merge remote-tracking branch 'origin/main' 2025-02-25 20:54:49 +01:00
Hosted Weblate be6f30da24 Merge remote-tracking branch 'origin/main' 2025-02-25 17:22:15 +00:00
Hosted Weblate c38c5a5d36 Merge remote-tracking branch 'origin/main' 2025-02-25 16:55:01 +00:00
Hosted Weblate 9d9630041e Merge remote-tracking branch 'origin/main' 2025-02-25 17:40:14 +01:00
Hosted Weblate ff0e004e20 Merge remote-tracking branch 'origin/main' 2025-02-22 20:07:55 +01:00
Hosted Weblate a8f17d618b Merge remote-tracking branch 'origin/main' 2025-02-22 20:00:56 +01:00
Hosted Weblate ca8767e0b0 Merge remote-tracking branch 'origin/main' 2025-02-20 23:47:10 +01:00
Hosted Weblate 04d8437b89 Merge remote-tracking branch 'origin/main' 2025-02-20 23:28:49 +01:00
XblateX f08d5a64b0 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/uk/
2025-02-20 17:59:36 +01:00
Hosted Weblate d467285036 Merge remote-tracking branch 'origin/main' 2025-02-20 14:17:01 +00:00
Hosted Weblate 205a7fd10e Merge remote-tracking branch 'origin/main' 2025-02-19 16:50:19 +00:00
Hosted Weblate ddd4cacd1d Merge remote-tracking branch 'origin/main' 2025-02-17 05:30:42 +01:00
Hosted Weblate 4ca4d81345 Merge remote-tracking branch 'origin/main' 2025-02-12 20:32:50 +01:00
Hosted Weblate ba34971d2b Merge remote-tracking branch 'origin/main' 2025-02-11 13:08:53 +00:00
Hosted Weblate deed7a569c Merge remote-tracking branch 'origin/main' 2025-02-11 10:31:37 +00:00
Hosted Weblate 24d1ca9015 Merge remote-tracking branch 'origin/main' 2025-02-11 11:31:01 +01:00
Hosted Weblate e6325578ca Merge remote-tracking branch 'origin/main' 2025-02-08 20:25:30 +01:00
Hosted Weblate 669a1a769d Merge remote-tracking branch 'origin/main' 2025-02-07 18:43:47 +01:00
Hosted Weblate ab7b2f4b1b Merge remote-tracking branch 'origin/main' 2025-02-07 15:51:32 +01:00
Hosted Weblate 07b55b739e Merge remote-tracking branch 'origin/main' 2025-02-06 12:46:26 +00:00
Hosted Weblate 084707eb67 Merge remote-tracking branch 'origin/main' 2025-02-05 15:55:23 +01:00
Hosted Weblate 00d411dd5a Merge remote-tracking branch 'origin/main' 2025-02-05 12:36:19 +01:00
Hosted Weblate 1816a50dee Merge remote-tracking branch 'origin/main' 2025-02-03 23:41:19 +01:00
Hosted Weblate 6c6c04ba53 Merge remote-tracking branch 'origin/main' 2025-02-03 10:58:11 +00:00
Hosted Weblate 145432a57d Merge remote-tracking branch 'origin/main' 2025-02-03 11:52:01 +01:00
Hosted Weblate 20acd38ab4 Merge remote-tracking branch 'origin/main' 2025-02-03 11:45:23 +01:00
Hosted Weblate bf7095d0ee Merge remote-tracking branch 'origin/main' 2025-02-03 00:49:08 +01:00
Hosted Weblate a6b168f4eb Merge remote-tracking branch 'origin/main' 2025-02-01 00:24:51 +01:00
Hosted Weblate 883536a3a5 Merge remote-tracking branch 'origin/main' 2025-01-31 12:38:01 +01:00
Hosted Weblate 3013af2a7a Merge remote-tracking branch 'origin/main' 2025-01-31 11:26:16 +00:00
Hosted Weblate 7b52bb6c85 Merge remote-tracking branch 'origin/main' 2025-01-29 13:47:12 +00:00
Hosted Weblate 1439bc0a86 Merge remote-tracking branch 'origin/main' 2025-01-28 17:24:30 +01:00
Hosted Weblate 9a5415eb66 Merge remote-tracking branch 'origin/main' 2025-01-28 15:31:22 +00:00
Hosted Weblate 5da3748a6a Merge remote-tracking branch 'origin/main' 2025-01-27 17:40:51 +00:00
Hosted Weblate 2308feea8c Merge remote-tracking branch 'origin/main' 2025-01-27 18:13:08 +01:00
Hosted Weblate a3b0ee1ef9 Merge remote-tracking branch 'origin/main' 2025-01-25 13:48:46 +00:00
Hosted Weblate 4fa5f1f5c6 Merge remote-tracking branch 'origin/main' 2025-01-23 23:37:05 +01:00
Hosted Weblate f4701b92e2 Merge remote-tracking branch 'origin/main' 2025-01-23 19:28:06 +01:00
Hosted Weblate 6649165b56 Merge remote-tracking branch 'origin/main' 2025-01-23 13:23:08 +01:00
Hosted Weblate 1c9b5977a8 Merge remote-tracking branch 'origin/main' 2025-01-23 00:51:15 +01:00
Hosted Weblate 49471999b9 Merge remote-tracking branch 'origin/main' 2025-01-22 13:40:13 +01:00
Hosted Weblate 86a8fbf463 Merge remote-tracking branch 'origin/main' 2025-01-21 20:09:55 +01:00
Hosted Weblate 238ec5b299 Merge remote-tracking branch 'origin/main' 2025-01-21 19:01:25 +01:00
Hosted Weblate 4c810c2b50 Merge remote-tracking branch 'origin/main' 2025-01-21 18:51:22 +01:00
Hosted Weblate f4d5547da7 Merge remote-tracking branch 'origin/main' 2025-01-21 16:47:35 +00:00
Hosted Weblate 52850c25b0 Merge remote-tracking branch 'origin/main' 2025-01-20 15:15:02 +01:00
Hosted Weblate 5117e103bb Merge remote-tracking branch 'origin/main' 2025-01-17 16:40:42 +00:00
Hosted Weblate 056f9bd4fb Merge remote-tracking branch 'origin/main' 2025-01-17 09:39:28 +00:00
Hosted Weblate 877989b5c1 Merge remote-tracking branch 'origin/main' 2025-01-16 20:42:46 +01:00
Hosted Weblate eef8609a66 Merge remote-tracking branch 'origin/main' 2025-01-16 14:55:13 +01:00
Andrea Enzo Lattmann b43685bcdf Translated using Weblate (Italian)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/it/
2025-01-16 06:58:09 +01:00
Hosted Weblate 794062b9ed Merge remote-tracking branch 'origin/main' 2025-01-15 21:02:08 +01:00
Hosted Weblate 876721fae5 Merge remote-tracking branch 'origin/main' 2025-01-15 16:18:50 +00:00
Hosted Weblate 0fdac57c68 Merge remote-tracking branch 'origin/main' 2025-01-15 16:40:55 +01:00
Hosted Weblate b3375f4f19 Merge remote-tracking branch 'origin/main' 2025-01-14 11:49:13 +01:00
Hosted Weblate b607ca21ff Merge remote-tracking branch 'origin/main' 2025-01-10 18:37:43 +00:00
Hosted Weblate d6efa3c7e5 Merge remote-tracking branch 'origin/main' 2025-01-10 18:45:16 +01:00
Hosted Weblate e461e2f7f1 Merge remote-tracking branch 'origin/main' 2025-01-10 17:26:19 +01:00
Hosted Weblate 684f8834fa Merge remote-tracking branch 'origin/main' 2025-01-10 15:06:19 +00:00
Hosted Weblate b440a31820 Merge remote-tracking branch 'origin/main' 2025-01-09 19:03:24 +01:00
Hosted Weblate 568a3f383f Merge remote-tracking branch 'origin/main' 2025-01-09 15:08:25 +00:00
Hosted Weblate 6c212a5d3d Merge remote-tracking branch 'origin/main' 2025-01-09 15:26:46 +01:00
Hosted Weblate b6e43a6994 Merge remote-tracking branch 'origin/main' 2025-01-06 14:40:59 +00:00
Hosted Weblate d1f85e6dc4 Merge remote-tracking branch 'origin/main' 2025-01-06 14:58:18 +01:00
Hosted Weblate 74ef8dc1c6 Merge remote-tracking branch 'origin/main' 2025-01-04 18:13:50 +00:00
Hosted Weblate 1da2d35af4 Merge remote-tracking branch 'origin/main' 2025-01-04 16:02:53 +01:00
Hosted Weblate bb3f4a2e06 Merge remote-tracking branch 'origin/main' 2025-01-03 19:58:58 +01:00
Hosted Weblate 8e4c5d6b63 Merge remote-tracking branch 'origin/main' 2025-01-03 16:48:55 +01:00
Hosted Weblate 1b46edaddf Merge remote-tracking branch 'origin/main' 2025-01-03 14:04:14 +00:00
தமிழ்நேரம் aa0c72356f Translated using Weblate (Tamil)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/ta/
2024-12-21 09:00:22 +01:00
Hosted Weblate ee8fd429f4 Merge remote-tracking branch 'origin/main' 2024-12-20 11:41:04 +00:00
Hosted Weblate bc022f5196 Merge remote-tracking branch 'origin/main' 2024-12-19 13:30:30 +01:00
Hosted Weblate d4dcdcf3bd Merge remote-tracking branch 'origin/main' 2024-12-18 17:31:48 +00:00
Hosted Weblate 74b2369ca9 Merge remote-tracking branch 'origin/main' 2024-12-18 17:19:37 +01:00
Hosted Weblate 9eafdbd817 Merge remote-tracking branch 'origin/main' 2024-12-18 15:41:48 +01:00
Hosted Weblate 0a21d1d1b4 Merge remote-tracking branch 'origin/main' 2024-12-18 13:19:55 +01:00
Hosted Weblate b0cb6c73ba Merge remote-tracking branch 'origin/main' 2024-12-17 17:43:26 +01:00
Максим Горпиніч b6367416e5 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/uk/
2024-12-17 17:21:37 +01:00
Hosted Weblate 0b582dd287 Merge remote-tracking branch 'origin/main' 2024-12-17 17:07:06 +01:00
Hosted Weblate d5cf919bcb Merge remote-tracking branch 'origin/main' 2024-12-17 16:32:48 +01:00
Hosted Weblate 490f1efe36 Merge remote-tracking branch 'origin/main' 2024-12-17 14:47:49 +01:00
Hosted Weblate c125d4fa24 Merge remote-tracking branch 'origin/main' 2024-12-13 20:12:12 +01:00
Hosted Weblate 389098699a Merge remote-tracking branch 'origin/main' 2024-12-13 13:12:47 +00:00
Hosted Weblate df696e5fab Merge remote-tracking branch 'origin/main' 2024-12-13 14:00:16 +01:00
Hosted Weblate e8801d1b64 Merge remote-tracking branch 'origin/main' 2024-12-13 12:51:00 +01:00
Hosted Weblate 8bfc44c8ca Merge remote-tracking branch 'origin/main' 2024-12-13 11:33:57 +00:00
김인수 36e963e717 Translated using Weblate (Korean)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/ko/
2024-12-13 05:00:33 +01:00
Eryk Michalak 9e8fcf8ed7 Translated using Weblate (Polish)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/pl/
2024-12-11 23:00:32 +00:00
Hosted Weblate 6412d25420 Merge remote-tracking branch 'origin/main' 2024-12-11 12:53:42 +00:00
Hosted Weblate a470366f03 Merge remote-tracking branch 'origin/main' 2024-12-07 16:59:38 +01:00
Hosted Weblate 1434ce6f57 Merge remote-tracking branch 'origin/main' 2024-12-07 14:19:34 +01:00
Hosted Weblate 654ba5b460 Merge remote-tracking branch 'origin/main' 2024-12-06 15:33:58 +01:00
Hosted Weblate e3835f70f7 Merge remote-tracking branch 'origin/main' 2024-12-06 09:57:59 +00:00
Hosted Weblate bbb803f91c Merge remote-tracking branch 'origin/main' 2024-12-06 07:47:14 +01:00
Hosted Weblate 6a4c73c821 Merge remote-tracking branch 'origin/main' 2024-12-06 06:40:34 +00:00
Hosted Weblate 853ce3c7a3 Merge remote-tracking branch 'origin/main' 2024-12-06 00:19:50 +00:00
Hosted Weblate d2ab4817b1 Merge remote-tracking branch 'origin/main' 2024-12-05 20:40:44 +00:00
Hosted Weblate 9ff1cafd5e Merge remote-tracking branch 'origin/main' 2024-12-05 17:47:38 +01:00
Hosted Weblate bf6b678e2b Merge remote-tracking branch 'origin/main' 2024-12-04 15:54:42 +00:00
Hosted Weblate 6c1f787a38 Merge remote-tracking branch 'origin/main' 2024-12-03 14:08:04 +01:00
Hosted Weblate b059741161 Merge remote-tracking branch 'origin/main' 2024-12-03 13:22:33 +01:00
Hosted Weblate fdd5cc5d4b Merge remote-tracking branch 'origin/main' 2024-12-03 11:02:52 +01:00
Hosted Weblate 77465b5802 Merge remote-tracking branch 'origin/main' 2024-12-02 18:40:35 +01:00
Hosted Weblate d17567029d Merge remote-tracking branch 'origin/main' 2024-12-02 14:41:08 +01:00
Hosted Weblate 4610a64732 Merge remote-tracking branch 'origin/main' 2024-12-02 13:30:44 +01:00
Hosted Weblate 0358e8ffcb Merge remote-tracking branch 'origin/main' 2024-11-27 20:36:50 +01:00
Hosted Weblate 406c263d82 Merge remote-tracking branch 'origin/main' 2024-11-27 20:36:33 +01:00
Hosted Weblate 6ed070e437 Merge remote-tracking branch 'origin/main' 2024-11-27 18:15:46 +00:00
Hosted Weblate 1e4cfa124e Merge remote-tracking branch 'origin/main' 2024-11-27 18:02:12 +01:00
Hosted Weblate c42ba0f599 Merge remote-tracking branch 'origin/main' 2024-11-27 14:37:32 +01:00
Hosted Weblate 8798275170 Merge remote-tracking branch 'origin/main' 2024-11-27 14:36:54 +01:00
Hosted Weblate ac6495ff20 Merge remote-tracking branch 'origin/main' 2024-11-26 15:23:14 +00:00
Hosted Weblate 8ae47e97cf Merge remote-tracking branch 'origin/main' 2024-11-26 11:35:27 +00:00
Hosted Weblate 6a1ff0bace Merge remote-tracking branch 'origin/main' 2024-11-25 20:42:51 +01:00
Hosted Weblate 047cd9a121 Merge remote-tracking branch 'origin/main' 2024-11-25 14:44:35 +01:00
Hosted Weblate 555547b6cc Merge remote-tracking branch 'origin/main' 2024-11-25 00:56:20 +01:00
Hosted Weblate 5fe355fe90 Merge remote-tracking branch 'origin/main' 2024-11-24 20:37:20 +00:00
Hosted Weblate 6af3b0d985 Merge remote-tracking branch 'origin/main' 2024-11-24 21:20:39 +01:00
Hosted Weblate 92d6147644 Merge remote-tracking branch 'origin/main' 2024-11-23 23:34:05 +00:00
Hosted Weblate 72fb9992a1 Merge remote-tracking branch 'origin/main' 2024-11-23 23:05:09 +01:00
Hosted Weblate e8413019ff Merge remote-tracking branch 'origin/main' 2024-11-23 18:22:54 +01:00
Hosted Weblate 289118e671 Merge remote-tracking branch 'origin/main' 2024-11-22 22:07:18 +00:00
Hosted Weblate 286a84b1d4 Merge remote-tracking branch 'origin/main' 2024-11-21 00:31:16 +00:00
Hosted Weblate 8c8c003f2b Merge remote-tracking branch 'origin/main' 2024-11-20 12:59:55 +00:00
Hosted Weblate a06e36993d Merge remote-tracking branch 'origin/main' 2024-11-19 13:24:13 +01:00
Hosted Weblate ce054d93a8 Merge remote-tracking branch 'origin/main' 2024-11-19 10:38:14 +00:00
hsfg6 cabc159cd8 Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/zh_Hant/
2024-11-18 23:00:26 +01:00
Hosted Weblate c78cbbe145 Merge remote-tracking branch 'origin/main' 2024-11-15 22:01:58 +01:00
Hosted Weblate a297c71a90 Merge remote-tracking branch 'origin/main' 2024-11-15 04:27:38 +01:00
Hosted Weblate 247de63362 Merge remote-tracking branch 'origin/main' 2024-11-13 20:08:39 +01:00
Hosted Weblate 20f7c7c616 Merge remote-tracking branch 'origin/main' 2024-11-13 00:16:57 +01:00
Hosted Weblate 6364903a28 Merge remote-tracking branch 'origin/main' 2024-11-12 20:35:03 +01:00
Hosted Weblate 48bb77cfae Merge remote-tracking branch 'origin/main' 2024-11-12 15:29:21 +01:00
Hosted Weblate 53bfe52797 Merge remote-tracking branch 'origin/main' 2024-11-12 09:02:21 +00:00
Hosted Weblate a8bc01e6c1 Merge remote-tracking branch 'origin/main' 2024-11-11 17:23:02 +01:00
Hosted Weblate 3fbccf3408 Merge remote-tracking branch 'origin/main' 2024-11-11 16:11:47 +01:00
Hosted Weblate 86656f1155 Merge remote-tracking branch 'origin/main' 2024-11-11 15:09:03 +00:00
Hosted Weblate 89473b8067 Merge remote-tracking branch 'origin/main' 2024-11-11 15:05:12 +00:00
Hosted Weblate 887f5881f0 Merge remote-tracking branch 'origin/main' 2024-11-09 17:33:23 +01:00
Hosted Weblate aee757e71c Merge remote-tracking branch 'origin/main' 2024-11-08 11:54:31 +00:00
Hosted Weblate 30d5eeeb45 Merge remote-tracking branch 'origin/main' 2024-11-05 15:32:37 +01:00
Hosted Weblate d2c2f2cf07 Merge remote-tracking branch 'origin/main' 2024-11-05 15:28:53 +01:00
bittin1ddc447d824349b2 f83d5a0dbb Translated using Weblate (Swedish)
Currently translated at 66.6% (2 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://hosted.weblate.org/projects/deltachat/android-metadata/sv/
2024-11-03 13:00:36 +01:00
Priit Jõerüüt c30ddf9c77 Translated using Weblate (Estonian)
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://translate.codeberg.org/projects/delta-chat/android-metadata/et/
2024-08-16 08:36:46 +00:00
Outbreak2096 e14b878aef Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (3 of 3 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://translate.codeberg.org/projects/delta-chat/android-metadata/zh_Hans/
2024-08-16 08:36:46 +00:00
NicholasV 9e3ebda12a Translated using Weblate (Portuguese (Brazil))
Currently translated at 16.6% (3 of 18 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://translate.codeberg.org/projects/delta-chat/android-metadata/pt_BR/
2024-08-16 08:36:46 +00:00
gitcookie-1 4bb42b9995 Translated using Weblate (German)
Currently translated at 58.8% (10 of 17 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://translate.codeberg.org/projects/delta-chat/android-metadata/de/
2024-08-16 08:36:46 +00:00
German 59b158fe09 Translated using Weblate (German)
Currently translated at 17.6% (3 of 17 strings)

Translation: Delta Chat/Android metadata
Translate-URL: https://translate.codeberg.org/projects/delta-chat/android-metadata/de/
2024-08-16 08:36:46 +00:00
82 changed files with 1496 additions and 1095 deletions
+22
View File
@@ -0,0 +1,22 @@
version: 2
mergeable:
- when: pull_request.*
name: "Changelog check"
validate:
- do: or
validate:
- do: description
must_include:
regex: '#skip-changelog'
- do: and
validate:
- do: dependent
changed:
file: '**/*.java'
required: ['CHANGELOG.md']
fail:
- do: checks
status: 'action_required'
payload:
title: CHANGELOG.md might need an update
summary: "Please update CHANGELOG.md or add #skip-changelog to the description"
+1 -1
View File
@@ -64,7 +64,7 @@ jobs:
uses: softprops/action-gh-release@v1
with:
token: "${{ secrets.GITHUB_TOKEN }}"
body: '[<img src="store/get-it-on-gplay.png" alt="Get it on Google Play" height="48">](https://play.google.com/store/apps/details?id=com.github.arcanechat) [<img src="store/get-it-on-fdroid.png" alt="Get it on F-Droid" height="48">](https://f-droid.org/packages/chat.delta.lite) [<img src="store/get-it-on-IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="48">](https://apt.izzysoft.de/fdroid/index/apk/chat.delta.lite) [<img src="store/get-it-on-github.png" alt="Get it on GitHub" height="48">](https://github.com/ArcaneChat/android/releases/latest/download/ArcaneChat-gplay.apk)'
body: '[<img src="store/get-it-on-gplay.png" alt="Get it on Google Play" height="48">](https://play.google.com/store/apps/details?id=com.github.arcanechat) [<img src="store/get-it-on-fdroid.png" alt="Get it on F-Droid" height="48">](https://f-droid.org/packages/chat.delta.lite) [<img src="store/get-it-on-github.png" alt="Get it on GitHub" height="48">](https://github.com/ArcaneChat/android/releases/latest/download/ArcaneChat-gplay.apk)'
prerelease: ${{ contains(github.event.ref, '-beta') }}
fail_on_unmatched_files: true
files: build/outputs/apk/foss/release/*.apk
+30 -4
View File
@@ -1,13 +1,39 @@
# ArcaneChat Android Changelog
# Delta Chat Android Changelog
## v1.54.2
2025-02
## v1.56.0
2025-03
* allow to edit messages
* allow to delete messages for everyone
* add mute option "8 hours"
* add menu option to easily save/unsave selected message
* improve deletion confirmation for "Device Messages"
* remove dangerous encryption options
* always paste as plain text in message draft area
* some small bug fixes and updated translations
* update to core 1.157.2
## v1.54.4
2025-03
* allow better avatar (profile picture) quality
* remove notifications from chat that was deleted from other device
* when a chat is deleted, also delete its messages from server
* avoid freezing when opening the app for the first time after install
* avoid crash when adding chat shortcut to home screen
* some small bug fixes and updated translations
* update to core 1.156.3
## v1.54.3
2025-03
* allow to add any chat to the home screen
* update "forward message" icon and organize the messages actions bar
* do not allow non-members to change ephemeral timer settings of groups
* properly display padlock when the message is not sent over the network
* sync message deletion to other devices
* sync chat deletion across devices
* Show sender in "Saved Messages"
* allow scanning multiple QR-invitation codes without needing to wait for completion to scan the next one
* when reactions are seen in one device, remove notification from your other devices
* don't disturb with notification when someone leave a group
@@ -16,7 +42,7 @@
* prepare the app for receiving message deletion requests
* do some small bug fixes
* update translations
* update to core 1.156.1
* update to core 1.156.2
## v1.54.0
2025-02
-1
View File
@@ -4,7 +4,6 @@ A [Delta Chat](https://delta.chat/) client for Android. Learn more at: https://a
[<img src="store/get-it-on-gplay.png" alt="Get it on Google Play" height="48">](https://play.google.com/store/apps/details?id=com.github.arcanechat)
[<img src="store/get-it-on-fdroid.png" alt="Get it on F-Droid" height="48">](https://f-droid.org/packages/chat.delta.lite)
[<img src="store/get-it-on-IzzyOnDroid.png" alt="Get it on IzzyOnDroid" height="48">](https://apt.izzysoft.de/fdroid/index/apk/chat.delta.lite)
[<img src="store/get-it-on-github.png" alt="Get it on GitHub" height="48">](https://github.com/ArcaneChat/android/releases/latest/download/ArcaneChat-gplay.apk)
+1 -1
View File
@@ -25,7 +25,7 @@ the "update-core-and-stuff-DATE" PR can be merged without review
the following steps are done in a PR called `prep-VERSION` (no leading "v"):
3. a) update `CHANGELOG.md`
from <https://github.com/deltachat/deltachat-core-rust/blob/main/CHANGELOG.md>
from <https://github.com/chatmail/core/blob/main/CHANGELOG.md>
and <https://github.com/deltachat/deltachat-android/pulls?q=is%3Apr+is%3Aclosed+sort%3Aupdated-desc>.
do not just copy and avoid technical terms.
the changelog is for the end user and shall show impacts form that angle.
+2 -2
View File
@@ -33,8 +33,8 @@ android {
useLibrary 'org.apache.http.legacy'
defaultConfig {
versionCode 30000713
versionName "1.54.3"
versionCode 30000716
versionName "1.56.0"
applicationId "chat.delta.lite"
multiDexEnabled true
@@ -1,16 +1,16 @@
ArcaneChat is a decentralized and secure messenger app that is compatible with the existing e-mail infrastructure.
ArcaneChat is a decentralized and secure instant messenger that is easy to use for friends and family.
Some features at a glance:
• Anonymous. Instant onboarding without a phone number, e-mail or other private data.
💬 Reliable instant messaging with multi-profile and multi-device support.
• Flexible. Supports multiple chat profiles and is easy to setup on multiple devices.
⚡️ Sign-up easily using secure fast chatmail servers. You dont need a phone number or any private data.
• Extensible. Use mini-apps in chats like shopping lists, calendars or games.
📧 Alternatively, use your existing classic e-mail address to read your inbox as chats.
• Reliable. Works under bad and adverserial network conditions.
🎮 Interactive mini-apps in chats for gaming and collaboration.
• Secure. Audited End-to-End encryption safe against network and server attacks.
🔒 Audited end-to-end encryption safe against network and server attacks.
• Sovereign. Can be run with your own e-mail address or server.
ArcaneChat is a Delta Chat client and was created with a focus on usability, good user experience, and saving data plan. Also the app usually experiments with new features that eventually might get added to the official Delta Chat client.
@@ -24,7 +24,7 @@ ArcaneChat is a Delta Chat client and was created with a focus on usability, goo
<li>It is possible to disable profiles to completely disconnect them saving data/bandwidth</li>
<li>You can easily see the connection status of all your profiles in the profile switcher</li>
<li>A videochat instance is set by default</li>
<li>Location streaming feature enabled by default and extra option to share location for 12 hours</li>
<li>Extra option to share location for 12 hours</li>
<li>Clicking on a message with a POI location, will open the POI on the map</li>
<li>Last-seen status of contacts is shown in your contact list, like in WhatsApp, Telegram, etc.</li>
<li>Videos are played in loop, useful for short GIF videos</li>
+6 -3
View File
@@ -19,15 +19,18 @@
cmdline-tools-latest
platform-tools
platforms-android-34
ndk-27-0-11902837
ndk-27-2-12479018
]);
rust-version = pkgs.lib.removeSuffix "\n"
(builtins.readFile ./scripts/rust-toolchain);
in {
in
{
formatter = pkgs.nixpkgs-fmt;
devShells.default = pkgs.mkShell {
ANDROID_SDK_ROOT = "${android-sdk}/share/android-sdk";
ANDROID_NDK_ROOT =
"${android-sdk}/share/android-sdk/ndk/27.0.11902837";
"${android-sdk}/share/android-sdk/ndk/27.2.12479018";
buildInputs = [
android-sdk
pkgs.openjdk17
+1
View File
@@ -0,0 +1 @@
Schreibe Nachrichten mit E-Mails. Retro, Offen. Privatsphäre im Design.
+12
View File
@@ -0,0 +1,12 @@
Delta Chat é um aplicativo de mensagens que é completamente compatível com a infraestrutura de email já existente.
Assim, com o Delta Chat você tem a facilidade de muitos aplicativos de mensagens com o alcance de email. Além disso, você é independente de outras companhias e sercviços -- já que suas informações e dados não estão relacionadas com o Delta Chat, você não vai nem adicionar novas permissões aqui.
Resumo de alguns recursos:
* Seguro com criptografia de ponta a ponta, com suporte ao novo padrão <a href="https://autocrypt.org">Autocrypt</a>
* Rápido usando Push-IMAP
* Maior base de usuários -- destinatários que não estiverem usando Delta Chat podem ser alcançados também
* Compatívle -- não apenas consigo mesmo
* Interface de usuário elegante e simples
* Sistema distribuído
* Sem spam -- apenas mensages de usuários conhecidos são mostradas por padrão
* Confiável -- pode até ser usado para mensagens comerciais
* Completamente OpenSource e baseado em padrões
@@ -17,6 +17,7 @@ public class DcContext {
public final static int DC_EVENT_MSG_READ = 2015;
public final static int DC_EVENT_CHAT_MODIFIED = 2020;
public final static int DC_EVENT_CHAT_EPHEMERAL_TIMER_MODIFIED = 2021;
public final static int DC_EVENT_CHAT_DELETED = 2023;
public final static int DC_EVENT_CONTACTS_CHANGED = 2030;
public final static int DC_EVENT_LOCATION_CHANGED = 2035;
public final static int DC_EVENT_CONFIGURE_PROGRESS = 2041;
@@ -151,7 +151,6 @@ public class DcMsg {
public native String getWebxdcHref ();
public native boolean isForwarded ();
public native boolean isInfo ();
public native boolean isSetupMessage ();
public native boolean hasHtml ();
public native String getSetupCodeBegin ();
public native String getVideochatUrl ();
@@ -17,6 +17,7 @@ public class Rpc {
private final Map<Integer, SettableFuture<JsonElement>> requestFutures = new ConcurrentHashMap<>();
private final DcJsonrpcInstance dcJsonrpcInstance;
private int requestId = 0;
private boolean started = false;
private final Gson gson = new GsonBuilder().serializeNulls().create();
public Rpc(DcJsonrpcInstance dcJsonrpcInstance) {
@@ -46,6 +47,7 @@ public class Rpc {
}
public void start() {
started = true;
new Thread(() -> {
while (true) {
try {
@@ -57,7 +59,9 @@ public class Rpc {
}, "jsonrpcThread").start();
}
public SettableFuture<JsonElement> call(String method, Object... params) {
public SettableFuture<JsonElement> call(String method, Object... params) throws RpcException {
if (!started) throw new RpcException("RPC not started yet.");
int id;
synchronized (this) {
id = ++requestId;
@@ -110,6 +110,7 @@ public class ApplicationContext extends MultiDexApplication {
dcAccounts = new DcAccounts(new File(getFilesDir(), "accounts").getAbsolutePath());
rpc = new Rpc(dcAccounts.getJsonrpcInstance());
rpc.start();
AccountManager.getInstance().migrateToDcAccounts(this);
int[] allAccounts = dcAccounts.getAll();
for (int accountId : allAccounts) {
@@ -148,8 +149,6 @@ public class ApplicationContext extends MultiDexApplication {
Log.i("DeltaChat", "shutting down event handler");
}, "eventThread").start();
rpc.start();
// migrating global notifications pref. to per-account config, added 10/July/24
final String NOTIFICATION_PREF = "pref_key_enable_notifications";
boolean isMuted = !Prefs.getBooleanPreference(this, NOTIFICATION_PREF, true);
@@ -333,18 +333,22 @@ public abstract class BaseConversationListFragment extends Fragment implements A
intent.putExtra(ShareActivity.EXTRA_CHAT_ID, chat.getId());
Recipient recipient = new Recipient(activity, chat);
Bitmap avatar = DirectShareUtil.getIconForShortcut(activity, recipient);
ShortcutInfoCompat shortcutInfoCompat = new ShortcutInfoCompat.Builder(activity, "chat-" + dcContext.getAccountId() + "-" + chat.getId())
Util.runOnAnyBackgroundThread(() -> {
Bitmap avatar = DirectShareUtil.getIconForShortcut(activity, recipient);
ShortcutInfoCompat shortcutInfoCompat = new ShortcutInfoCompat.Builder(activity, "chat-" + dcContext.getAccountId() + "-" + chat.getId())
.setShortLabel(chat.getName())
.setIcon(IconCompat.createWithAdaptiveBitmap(avatar))
.setIntent(intent)
.build();
if (!ShortcutManagerCompat.requestPinShortcut(activity, shortcutInfoCompat, null)) {
Toast.makeText(activity, "ErrAddToHomescreen: requestPinShortcut() failed", Toast.LENGTH_LONG).show();
} else if (actionMode != null) {
actionMode.finish();
actionMode = null;
}
Util.runOnMain(() -> {
if (!ShortcutManagerCompat.requestPinShortcut(activity, shortcutInfoCompat, null)) {
Toast.makeText(activity, "ErrAddToHomescreen: requestPinShortcut() failed", Toast.LENGTH_LONG).show();
} else if (actionMode != null) {
actionMode.finish();
actionMode = null;
}
});
});
}
private void updateActionModeItems(Menu menu) {
@@ -496,6 +496,13 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
Log.e(TAG, "cannot set up in-chat-search: ", e);
}
if (!dcChat.canSend() || isEditing) {
MenuItem attachItem = menu.findItem(R.id.menu_add_attachment);
if (attachItem!=null) {
attachItem.setVisible(false);
}
}
super.onPrepareOptionsMenu(menu);
return true;
}
@@ -504,7 +511,10 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
public boolean onOptionsItemSelected(MenuItem item) {
super.onOptionsItemSelected(item);
int itemId = item.getItemId();
if (itemId == R.id.menu_leave) {
if (itemId == R.id.menu_add_attachment) {
handleAddAttachment();
return true;
} else if (itemId == R.id.menu_leave) {
handleLeaveGroup();
return true;
} else if (itemId == R.id.menu_archive_chat) {
@@ -1012,9 +1022,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
final SettableFuture<Integer> future = new SettableFuture<>();
DcMsg msg = null;
Optional<QuoteModel> quote = inputPanel.getQuote();
Integer recompress = 0;
boolean editing = isEditing;
// for a quick ui feedback, we clear the related controls immediately on sending messages.
@@ -1024,122 +1032,114 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
inputPanel.clearQuote();
}
if (editing) {
int msgId = quote.get().getQuotedMsg().getId();
Util.runOnAnyBackgroundThread(() -> {
Util.runOnAnyBackgroundThread(() -> {
DcMsg msg = null;
int recompress = 0;
if (editing) {
int msgId = quote.get().getQuotedMsg().getId();
if (action == ACTION_SEND_OUT) {
dcContext.sendEditRequest(msgId, body);
} else {
dcContext.setDraft(chatId, null);
}
});
return future;
}
if(slideDeck!=null) {
if (action==ACTION_SEND_OUT) {
attachmentManager.clear(glideRequests, false);
future.set(chatId);
return;
}
try {
if (slideDeck.getWebxdctDraftId() != 0) {
msg = dcContext.getDraft(chatId);
} else {
List<Attachment> attachments = slideDeck.asAttachments();
for (Attachment attachment : attachments) {
String contentType = attachment.getContentType();
if (MediaUtil.isImageType(contentType) && slideDeck.getDocumentSlide() == null) {
msg = new DcMsg(dcContext,
MediaUtil.isGif(contentType) ? DcMsg.DC_MSG_GIF : DcMsg.DC_MSG_IMAGE);
msg.setDimension(attachment.getWidth(), attachment.getHeight());
} else if (MediaUtil.isAudioType(contentType)) {
msg = new DcMsg(dcContext,
attachment.isVoiceNote() ? DcMsg.DC_MSG_VOICE : DcMsg.DC_MSG_AUDIO);
} else if (MediaUtil.isVideoType(contentType) && slideDeck.getDocumentSlide() == null) {
msg = new DcMsg(dcContext, DcMsg.DC_MSG_VIDEO);
recompress = DcMsg.DC_MSG_VIDEO;
} else {
msg = new DcMsg(dcContext, DcMsg.DC_MSG_FILE);
if(slideDeck!=null) {
if (action==ACTION_SEND_OUT) {
Util.runOnMain(() -> attachmentManager.clear(glideRequests, false));
}
try {
if (slideDeck.getWebxdctDraftId() != 0) {
msg = dcContext.getDraft(chatId);
} else {
List<Attachment> attachments = slideDeck.asAttachments();
for (Attachment attachment : attachments) {
String contentType = attachment.getContentType();
if (MediaUtil.isImageType(contentType) && slideDeck.getDocumentSlide() == null) {
msg = new DcMsg(dcContext,
MediaUtil.isGif(contentType) ? DcMsg.DC_MSG_GIF : DcMsg.DC_MSG_IMAGE);
msg.setDimension(attachment.getWidth(), attachment.getHeight());
} else if (MediaUtil.isAudioType(contentType)) {
msg = new DcMsg(dcContext,
attachment.isVoiceNote() ? DcMsg.DC_MSG_VOICE : DcMsg.DC_MSG_AUDIO);
} else if (MediaUtil.isVideoType(contentType) && slideDeck.getDocumentSlide() == null) {
msg = new DcMsg(dcContext, DcMsg.DC_MSG_VIDEO);
recompress = DcMsg.DC_MSG_VIDEO;
} else {
msg = new DcMsg(dcContext, DcMsg.DC_MSG_FILE);
}
String path = attachment.getRealPath(this);
msg.setFileAndDeduplicate(path, attachment.getFileName(), null);
}
String path = attachment.getRealPath(this);
msg.setFileAndDeduplicate(path, attachment.getFileName(), null);
}
if (msg != null) {
msg.setText(body);
}
}
catch(Exception e) {
e.printStackTrace();
}
}
else if (!body.isEmpty()){
msg = new DcMsg(dcContext, DcMsg.DC_MSG_TEXT);
msg.setText(body);
}
catch(Exception e) {
e.printStackTrace();
if (quote.isPresent()) {
if (msg == null) msg = new DcMsg(dcContext, DcMsg.DC_MSG_TEXT);
msg.setQuote(quote.get().getQuotedMsg());
}
}
else if (!body.isEmpty()){
msg = new DcMsg(dcContext, DcMsg.DC_MSG_TEXT);
msg.setText(body);
}
if (quote.isPresent()) {
if (msg == null) msg = new DcMsg(dcContext, DcMsg.DC_MSG_TEXT);
msg.setQuote(quote.get().getQuotedMsg());
}
if (action==ACTION_SEND_OUT) {
// msg may still be null to clear drafts
new AsyncTask<Object, Void, Void>() {
@Override
protected Void doInBackground(Object... param) {
DcMsg msg = (DcMsg)param[0];
Integer recompress = (Integer)param[1];
if (action==ACTION_SEND_OUT) {
// for WEBXDC, drafts are just sent out as is.
// for preparations and other cases, cleanup draft soon.
if (msg == null || msg.getType() != DcMsg.DC_MSG_WEBXDC) {
dcContext.setDraft(dcChat.getId(), null);
}
// for WEBXDC, drafts are just sent out as is.
// for preparations and other cases, cleanup draft soon.
if (msg == null || msg.getType() != DcMsg.DC_MSG_WEBXDC) {
dcContext.setDraft(dcChat.getId(), null);
}
if(msg!=null)
{
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(() -> {
try {
progressDialog.dismiss();
} catch (final IllegalArgumentException e) {
// The activity is finishing/destroyed, do nothing.
}
});
}
if (doSend) {
if (dcContext.sendMsg(dcChat.getId(), msg) == 0) {
Util.runOnMain(()-> Toast.makeText(ConversationActivity.this, dcContext.getLastError(), Toast.LENGTH_LONG).show());
return null;
if(msg!=null) {
boolean doSend = true;
if (recompress==DcMsg.DC_MSG_VIDEO) {
Util.runOnMain(() -> {
if (isFinishing()) return;
progressDialog = ProgressDialog.show(
ConversationActivity.this,
"",
getString(R.string.one_moment),
true,
false
);
});
doSend = VideoRecoder.prepareVideo(ConversationActivity.this, dcChat.getId(), msg);
Util.runOnMain(() -> {
try {
if (progressDialog != null) progressDialog.dismiss();
} catch (final IllegalArgumentException e) {
// The activity is finishing/destroyed, do nothing.
}
}
Util.runOnMain(()-> sendComplete(dcChat.getId()));
});
}
}
else {
dcContext.setDraft(dcChat.getId(), msg);
}
return null;
}
@Override
protected void onPostExecute(Void result) {
future.set(chatId);
if (doSend) {
if (dcContext.sendMsg(dcChat.getId(), msg) == 0) {
Util.runOnMain(()-> Toast.makeText(ConversationActivity.this, dcContext.getLastError(), Toast.LENGTH_LONG).show());
future.set(chatId);
return;
}
}
Util.runOnMain(() -> sendComplete(dcChat.getId()));
}
} else {
dcContext.setDraft(dcChat.getId(), msg);
}
}.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, msg, recompress);
future.set(chatId);
});
return future;
}
@@ -1359,8 +1359,12 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity
Toast.LENGTH_SHORT).show();
}
else {
processComposeControls(ACTION_SEND_OUT);
DcHelper.getNotificationCenter(ConversationActivity.this).maybePlaySendSound(dcChat);
processComposeControls(ACTION_SEND_OUT).addListener(new AssertedSuccessListener<Integer>() {
@Override
public void onSuccess(Integer chatId) {
DcHelper.getNotificationCenter(ConversationActivity.this).maybePlaySendSound(dcChat);
}
});
}
}
@@ -294,7 +294,7 @@ public class ConversationAdapter <V extends View & BindableConversationItem>
else if (type==DcMsg.DC_MSG_AUDIO || type==DcMsg.DC_MSG_VOICE) {
return dcMsg.isOutgoing()? MESSAGE_TYPE_AUDIO_OUTGOING : MESSAGE_TYPE_AUDIO_INCOMING;
}
else if (type==DcMsg.DC_MSG_FILE && !dcMsg.isSetupMessage()) {
else if (type==DcMsg.DC_MSG_FILE) {
return dcMsg.isOutgoing()? MESSAGE_TYPE_DOCUMENT_OUTGOING : MESSAGE_TYPE_DOCUMENT_INCOMING;
}
else if (type==DcMsg.DC_MSG_IMAGE || type==DcMsg.DC_MSG_GIF || type==DcMsg.DC_MSG_VIDEO) {
@@ -25,9 +25,7 @@ import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
@@ -38,12 +36,10 @@ import android.view.ViewGroup;
import android.view.Window;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.view.ActionMode;
import androidx.recyclerview.widget.LinearLayoutManager;
@@ -321,25 +317,36 @@ public class ConversationFragment extends MessageSelectorFragment
return;
}
menu.findItem(R.id.menu_toggle_save).setVisible(false);
if (messageRecords.size() > 1) {
menu.findItem(R.id.menu_context_details).setVisible(false);
menu.findItem(R.id.menu_context_share).setVisible(false);
//menu.findItem(R.id.menu_context_reply).setVisible(false);
menu.findItem(R.id.menu_context_reply).setVisible(false);
menu.findItem(R.id.menu_context_edit).setVisible(false);
menu.findItem(R.id.menu_context_reply_privately).setVisible(false);
menu.findItem(R.id.menu_add_to_home_screen).setVisible(false);
//menu.findItem(R.id.menu_toggle_save).setVisible(false);
} else {
DcMsg messageRecord = messageRecords.iterator().next();
DcChat chat = getListAdapter().getChat();
menu.findItem(R.id.menu_context_details).setVisible(true);
menu.findItem(R.id.menu_context_share).setVisible(messageRecord.hasFile());
boolean canReply = canReplyToMsg(messageRecord);
//menu.findItem(R.id.menu_context_reply).setVisible(chat.canSend() && canReply);
menu.findItem(R.id.menu_context_reply).setVisible(chat.canSend() && canReply);
boolean canEdit = canEditMsg(messageRecord);
menu.findItem(R.id.menu_context_edit).setVisible(chat.canSend() && canEdit);
boolean showReplyPrivately = !dcContext.isCommunity() && chat.isMultiUser() && !messageRecord.isOutgoing() && canReply;
menu.findItem(R.id.menu_context_reply_privately).setVisible(showReplyPrivately);
menu.findItem(R.id.menu_add_to_home_screen).setVisible(messageRecord.getType() == DcMsg.DC_MSG_WEBXDC);
/*
boolean saved = messageRecord.getSavedMsgId() != 0;
MenuItem toggleSave = menu.findItem(R.id.menu_toggle_save);
toggleSave.setVisible(messageRecord.canSave() && !chat.isSelfTalk());
toggleSave.setIcon(saved? R.drawable.baseline_bookmark_remove_24 : R.drawable.baseline_bookmark_border_24);
toggleSave.setTitle(saved? R.string.unsave : R.string.save);
*/
}
// if one of the selected items cannot be saved, disable saving.
@@ -511,6 +518,15 @@ public class ConversationFragment extends MessageSelectorFragment
}
}
private void handleToggleSave(final Set<DcMsg> messageRecords) {
DcMsg msg = getSelectedMessageRecord(messageRecords);
if (msg.getSavedMsgId() != 0) {
dcContext.deleteMsgs(new int[]{msg.getSavedMsgId()});
} else {
dcContext.saveMsgs(new int[]{msg.getId()});
}
}
private void reloadList() {
reloadList(false);
}
@@ -725,80 +741,6 @@ public class ConversationFragment extends MessageSelectorFragment
Util.runOnAnyBackgroundThread(() -> dcContext.markseenMsgs(ids));
}
void querySetupCode(final DcMsg dcMsg, String[] preload)
{
if( !dcMsg.isSetupMessage()) {
return;
}
View gl = View.inflate(getActivity(), R.layout.setup_code_grid, null);
final EditText[] editTexts = {
gl.findViewById(R.id.setupCode0), gl.findViewById(R.id.setupCode1), gl.findViewById(R.id.setupCode2),
gl.findViewById(R.id.setupCode3), gl.findViewById(R.id.setupCode4), gl.findViewById(R.id.setupCode5),
gl.findViewById(R.id.setupCode6), gl.findViewById(R.id.setupCode7), gl.findViewById(R.id.setupCode8)
};
AlertDialog.Builder builder1 = new AlertDialog.Builder(getActivity());
builder1.setView(gl);
editTexts[0].setText(dcMsg.getSetupCodeBegin());
editTexts[0].setSelection(editTexts[0].getText().length());
for( int i = 0; i < 9; i++ ) {
if( preload != null && i < preload.length ) {
editTexts[i].setText(preload[i]);
editTexts[i].setSelection(editTexts[i].getText().length());
}
editTexts[i].addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if( s.length()==4 ) {
for ( int i = 0; i < 8; i++ ) {
if( editTexts[i].hasFocus() && editTexts[i+1].getText().length()<4 ) {
editTexts[i+1].requestFocus();
break;
}
}
}
}
@Override
public void afterTextChanged(Editable s) {
}
});
}
builder1.setTitle(getActivity().getString(R.string.autocrypt_continue_transfer_title));
builder1.setMessage(getActivity().getString(R.string.autocrypt_continue_transfer_please_enter_code));
builder1.setNegativeButton(android.R.string.cancel, null);
builder1.setCancelable(false); // prevent the dialog from being dismissed accidentally (when the dialog is closed, the setup code is gone forever and the user has to create a new setup message)
builder1.setPositiveButton(android.R.string.ok, (dialog, which) -> {
String setup_code = "";
final String[] preload1 = new String[9];
for ( int i = 0; i < 9; i++ ) {
preload1[i] = editTexts[i].getText().toString();
setup_code += preload1[i];
}
boolean success = dcContext.continueKeyTransfer(dcMsg.getId(), setup_code);
AlertDialog.Builder builder2 = new AlertDialog.Builder(getActivity());
builder2.setTitle(getActivity().getString(R.string.autocrypt_continue_transfer_title));
builder2.setMessage(getActivity().getString(success? R.string.autocrypt_continue_transfer_succeeded : R.string.autocrypt_bad_setup_code));
if( success ) {
builder2.setPositiveButton(android.R.string.ok, null);
}
else {
builder2.setNegativeButton(android.R.string.cancel, null);
builder2.setPositiveButton(R.string.autocrypt_continue_transfer_retry, (dialog1, which1) -> querySetupCode(dcMsg, preload1));
}
builder2.show();
});
builder1.show();
}
private class ConversationFragmentItemClickListener implements ItemClickListener {
@Override
@@ -818,9 +760,6 @@ public class ConversationFragment extends MessageSelectorFragment
actionMode.setTitleOptionalHint(false); // the title represents important information, also indicating implicitly, more items can be selected
}
}
else if(messageRecord.isSetupMessage()) {
querySetupCode(messageRecord,null);
}
else if (messageRecord.getType()==DcMsg.DC_MSG_VIDEOCHAT_INVITATION) {
new VideochatUtil().join(getActivity(), messageRecord.getId());
}
@@ -995,10 +934,10 @@ public class ConversationFragment extends MessageSelectorFragment
} else if (itemId == R.id.menu_context_save_attachment) {
handleSaveAttachment(getListAdapter().getSelectedItems());
return true;
// } else if (itemId == R.id.menu_context_reply) {
// handleReplyMessage(getSelectedMessageRecord(getListAdapter().getSelectedItems()));
// actionMode.finish();
// return true;
} else if (itemId == R.id.menu_context_reply) {
handleReplyMessage(getSelectedMessageRecord(getListAdapter().getSelectedItems()));
actionMode.finish();
return true;
} else if (itemId == R.id.menu_context_edit) {
handleEditMessage(getSelectedMessageRecord(getListAdapter().getSelectedItems()));
actionMode.finish();
@@ -1009,9 +948,12 @@ public class ConversationFragment extends MessageSelectorFragment
} else if (itemId == R.id.menu_resend) {
handleResendMessage(getListAdapter().getSelectedItems());
return true;
} else if (itemId == R.id.menu_toggle_save) {
handleToggleSave(getListAdapter().getSelectedItems());
actionMode.finish();
return true;
}
return false;
return false;
}
}
@@ -391,7 +391,7 @@ public class ConversationItem extends BaseConversationItem
}
private boolean hasDocument(DcMsg dcMsg) {
return dcMsg.getType()==DcMsg.DC_MSG_FILE && !dcMsg.isSetupMessage();
return dcMsg.getType()==DcMsg.DC_MSG_FILE;
}
private void setBodyText(DcMsg messageRecord) {
@@ -400,11 +400,7 @@ public class ConversationItem extends BaseConversationItem
String text = messageRecord.getText();
if (messageRecord.isSetupMessage()) {
bodyText.setText(context.getString(R.string.autocrypt_asm_click_body));
bodyText.setVisibility(View.VISIBLE);
}
else if (text.isEmpty()) {
if (text.isEmpty()) {
bodyText.setVisibility(View.GONE);
}
else {
@@ -112,7 +112,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_50_0_android";
final String deviceMsgLabel = "update_1_56_0_android";
if (!dcContext.wasDeviceMsgEverAdded(deviceMsgLabel)) {
DcMsg msg = null;
if (!getIntent().getBooleanExtra(FROM_WELCOME, false)) {
@@ -123,7 +123,8 @@ public class ConversationListActivity extends PassphraseRequiredActionBarActivit
// Util.copy(inputStream, new FileOutputStream(outputFile));
// msg.setFile(outputFile, "image/jpeg");
msg.setText(getString(R.string.update_1_50_android, "https://lemmy.ml/c/ArcaneChat"));
// full changelog link: "https://lemmy.ml/c/ArcaneChat"
msg.setText(getString(R.string.update_1_56_android, "https://arcanechat.me/#contribute"));
}
dcContext.addDeviceMsg(deviceMsgLabel, msg);
@@ -80,6 +80,7 @@ public class ConversationListFragment extends BaseConversationListFragment
DcEventCenter eventCenter = DcHelper.getEventCenter(requireActivity());
eventCenter.addMultiAccountObserver(DcContext.DC_EVENT_INCOMING_MSG, this);
eventCenter.addMultiAccountObserver(DcContext.DC_EVENT_MSGS_NOTICED, this);
eventCenter.addMultiAccountObserver(DcContext.DC_EVENT_CHAT_DELETED, this);
eventCenter.addObserver(DcContext.DC_EVENT_CHAT_MODIFIED, this);
eventCenter.addObserver(DcContext.DC_EVENT_CONTACTS_CHANGED, this);
eventCenter.addObserver(DcContext.DC_EVENT_MSGS_CHANGED, this);
@@ -321,7 +322,10 @@ public class ConversationListFragment extends BaseConversationListFragment
@Override
public void handleEvent(@NonNull DcEvent event) {
if (event.getAccountId() != DcHelper.getContext(requireActivity()).getAccountId()) {
final int accId = event.getAccountId();
if (event.getId() == DcContext.DC_EVENT_CHAT_DELETED) {
DcHelper.getNotificationCenter(requireActivity()).removeNotifications(accId, event.getData1Int());
} else if (accId != DcHelper.getContext(requireActivity()).getAccountId()) {
Activity activity = getActivity();
if (activity instanceof ConversationListActivity) {
((ConversationListActivity) activity).refreshUnreadIndicator();
@@ -344,7 +344,9 @@ public class MediaPreviewActivity extends PassphraseRequiredActionBarActivity
DcMsg dcMsg = dcContext.getMsg(mediaItem.msgId);
DcChat dcChat = dcContext.getChat(dcMsg.getChatId());
String text = getResources().getQuantityString(R.plurals.ask_delete_messages, 1, 1);
String text = getResources().getQuantityString(
dcChat.isDeviceTalk() ? R.plurals.ask_delete_messages_simple : R.plurals.ask_delete_messages,
1, 1);
int positiveBtnLabel = dcChat.isSelfTalk() ? R.string.delete : R.string.delete_for_me;
final int[] messageIds = new int[]{mediaItem.msgId};
@@ -66,7 +66,7 @@ public abstract class MessageSelectorFragment
if (dcChat.canSend() && !dcChat.isSelfTalk()) {
for(int msgId : messageIds) {
DcMsg msg = dcContext.getMsg(msgId);
if (!msg.isOutgoing()) {
if (!msg.isOutgoing() || msg.isInfo()) {
canDeleteForAll = false;
break;
}
@@ -75,7 +75,9 @@ public abstract class MessageSelectorFragment
canDeleteForAll = false;
}
String text = requireActivity().getResources().getQuantityString(R.plurals.ask_delete_messages, messageIds.length, messageIds.length);
String text = getActivity().getResources().getQuantityString(
dcChat.isDeviceTalk() ? R.plurals.ask_delete_messages_simple : R.plurals.ask_delete_messages,
messageIds.length, messageIds.length);
int positiveBtnLabel = dcChat.isSelfTalk() ? R.string.delete : R.string.delete_for_me;
AlertDialog.Builder builder = new AlertDialog.Builder(requireActivity())
@@ -19,7 +19,7 @@ public class MuteDialog {
// See https://c.delta.chat/classdc__context__t.html#a6460395925d49d2053bc95224bf5ce37.
switch (which) {
case 0: muteUntil = TimeUnit.HOURS.toSeconds(1); break;
case 1: muteUntil = TimeUnit.HOURS.toSeconds(2); break;
case 1: muteUntil = TimeUnit.HOURS.toSeconds(8); break;
case 2: muteUntil = TimeUnit.DAYS.toSeconds(1); break;
case 3: muteUntil = TimeUnit.DAYS.toSeconds(7); break;
case 4: muteUntil = -1; break; // mute forever
@@ -319,12 +319,15 @@ public class ProfileSettingsFragment extends Fragment
super.onActivityResult(requestCode, resultCode, data);
if (requestCode==REQUEST_CODE_PICK_CONTACT && resultCode==Activity.RESULT_OK && data!=null) {
List<String> selected = data.getStringArrayListExtra("contacts");
for (String addr : selected) {
if (addr!=null) {
int toAddId = dcContext.createContact(null, addr);
dcContext.addContactToChat(chatId, toAddId);
if(selected == null) return;
Util.runOnAnyBackgroundThread(() -> {
for (String addr : selected) {
if (addr!=null) {
int toAddId = dcContext.createContact(null, addr);
dcContext.addContactToChat(chatId, toAddId);
}
}
}
});
}
}
}
@@ -1,13 +1,16 @@
package org.thoughtcrime.securesms.components;
import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.res.Configuration;
import android.os.Build;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import androidx.appcompat.widget.AppCompatEditText;
import androidx.core.view.ContentInfoCompat;
import androidx.core.view.ViewCompat;
import androidx.core.view.inputmethod.EditorInfoCompat;
import androidx.core.view.inputmethod.InputConnectionCompat;
import androidx.core.view.inputmethod.InputContentInfoCompat;
@@ -50,6 +53,28 @@ public class ComposeText extends AppCompatEditText {
initialize();
}
@Override
public boolean onTextContextMenuItem(int id) {
if (id == android.R.id.paste) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
id = android.R.id.pasteAsPlainText;
} else if (ViewCompat.getOnReceiveContentMimeTypes(this) != null) {
// older device, manually paste as plain text
ClipboardManager cm = (ClipboardManager) getContext().getSystemService(
Context.CLIPBOARD_SERVICE);
ClipData clip = (cm == null) ? null : cm.getPrimaryClip();
if (clip != null && clip.getItemCount() > 0) {
ContentInfoCompat payload = new ContentInfoCompat.Builder(clip, ContentInfoCompat.SOURCE_CLIPBOARD)
.setFlags(ContentInfoCompat.FLAG_CONVERT_TO_PLAIN_TEXT)
.build();
ViewCompat.performReceiveContent(this, payload);
}
return true;
}
}
return super.onTextContextMenuItem(id);
}
public String getTextTrimmed(){
return getText().toString().trim();
}
@@ -65,7 +65,6 @@ public class DcHelper {
public static final String CONFIG_DISPLAY_NAME = "displayname";
public static final String CONFIG_SELF_STATUS = "selfstatus";
public static final String CONFIG_SELF_AVATAR = "selfavatar";
public static final String CONFIG_E2EE_ENABLED = "e2ee_enabled";
public static final String CONFIG_FORCE_ENCRYPTION = "ui.force_encryption";
public static final String CONFIG_SENTBOX_WATCH = "sentbox_watch";
public static final String CONFIG_MVBOX_MOVE = "mvbox_move";
@@ -10,13 +10,11 @@ import static org.thoughtcrime.securesms.connect.DcHelper.CONFIG_SHOW_EMAILS;
import static org.thoughtcrime.securesms.connect.DcHelper.CONFIG_WEBXDC_REALTIME_ENABLED;
import static org.thoughtcrime.securesms.connect.DcHelper.getRpc;
import android.Manifest;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
@@ -30,7 +28,6 @@ import androidx.preference.CheckBoxPreference;
import androidx.preference.ListPreference;
import androidx.preference.Preference;
import com.b44t.messenger.DcContext;
import com.b44t.messenger.rpc.RpcException;
import org.thoughtcrime.securesms.ApplicationPreferencesActivity;
@@ -40,12 +37,9 @@ import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.RegistrationActivity;
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.proxy.ProxySettingsActivity;
import org.thoughtcrime.securesms.util.Prefs;
import org.thoughtcrime.securesms.util.ScreenLockUtil;
import org.thoughtcrime.securesms.util.StorageUtil;
import org.thoughtcrime.securesms.util.StreamUtil;
import org.thoughtcrime.securesms.util.Util;
@@ -61,10 +55,9 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
implements DcEventCenter.DcEventDelegate
{
private static final String TAG = AdvancedPreferenceFragment.class.getSimpleName();
public static final int PICK_SELF_KEYS = 29923;
private ListPreference showEmails;
CheckBoxPreference preferE2eeCheckbox;
CheckBoxPreference forceE2eeCheckbox;
CheckBoxPreference bccSelfCheckbox;
CheckBoxPreference mvboxMoveCheckbox;
CheckBoxPreference onlyFetchMvboxCheckbox;
@@ -88,9 +81,9 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
sendAsm.setOnPreferenceClickListener(new SendAsmListener());
}
preferE2eeCheckbox = (CheckBoxPreference) this.findPreference("pref_prefer_e2ee");
if (preferE2eeCheckbox != null) {
preferE2eeCheckbox.setOnPreferenceChangeListener(new PreferE2eeListener());
forceE2eeCheckbox = (CheckBoxPreference) this.findPreference("pref_prefer_e2ee");
if (forceE2eeCheckbox != null) {
forceE2eeCheckbox.setOnPreferenceChangeListener(new PreferE2eeListener());
}
bccSelfCheckbox = (CheckBoxPreference) this.findPreference("pref_bcc_self");
@@ -141,11 +134,6 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
});
}
Preference manageKeys = this.findPreference("pref_manage_keys");
if (manageKeys != null) {
manageKeys.setOnPreferenceClickListener(new ManageKeysListener());
}
Preference submitDebugLog = this.findPreference("pref_view_log");
if (submitDebugLog != null) {
submitDebugLog.setOnPreferenceClickListener(new ViewLogListener());
@@ -209,8 +197,7 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
}
if (dcContext.isChatmail()) {
this.findPreference("pref_manage_keys").setVisible(false);
this.findPreference("pref_send_autocrypt_setup_message").setVisible(false);
sendAsm.setVisible(false);
bccSelfCheckbox.setVisible(false);
mvboxMoveCheckbox.setVisible(false);
onlyFetchMvboxCheckbox.setVisible(false);
@@ -231,7 +218,7 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
showEmails.setValue(value);
updateListSummary(showEmails, value);
preferE2eeCheckbox.setChecked(0!=dcContext.getConfigInt(CONFIG_FORCE_ENCRYPTION, 1));
forceE2eeCheckbox.setChecked(0!=dcContext.getConfigInt(CONFIG_FORCE_ENCRYPTION, 1));
bccSelfCheckbox.setChecked(0!=dcContext.getConfigInt(CONFIG_BCC_SELF));
mvboxMoveCheckbox.setChecked(0!=dcContext.getConfigInt(CONFIG_MVBOX_MOVE));
onlyFetchMvboxCheckbox.setChecked(0!=dcContext.getConfigInt(CONFIG_ONLY_FETCH_MVBOX));
@@ -241,24 +228,7 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode != RESULT_OK) return;
if (requestCode == REQUEST_CODE_CONFIRM_CREDENTIALS_KEYS) {
manageKeys();
} else if (requestCode == PICK_SELF_KEYS) {
Uri uri = (data != null ? data.getData() : null);
if (uri == null) {
Log.e(TAG, " Can't import null URI");
return;
}
try {
String name = AttachmentManager.getFileName(getContext(), uri);
if (name == null || name.isEmpty()) name = "FILE";
File file = copyToCacheDir(uri);
showImportKeysDialog(file.getAbsolutePath(), name);
} catch (IOException e) {
Log.e(TAG, "Error calling copyToCacheDir()", e);
}
} else if (requestCode == REQUEST_CODE_CONFIRM_CREDENTIALS_ACCOUNT) {
if (resultCode == RESULT_OK && requestCode == REQUEST_CODE_CONFIRM_CREDENTIALS_ACCOUNT) {
openRegistrationActivity();
}
}
@@ -401,72 +371,21 @@ public class AdvancedPreferenceFragment extends ListSummaryPreferenceFragment
private class PreferE2eeListener implements Preference.OnPreferenceChangeListener {
@Override
public boolean onPreferenceChange(@NonNull final Preference preference, Object newValue) {
boolean enabled = (Boolean) newValue;
dcContext.setConfigInt(CONFIG_FORCE_ENCRYPTION, enabled? 1 : 0);
return true;
}
}
/***********************************************************************************************
* Key Import/Export
**********************************************************************************************/
protected void showImportKeysDialog(String imexPath, String pathAsDisplayedToUser) {
new AlertDialog.Builder(requireActivity())
.setTitle(R.string.pref_managekeys_import_secret_keys)
.setMessage(requireActivity().getString(R.string.pref_managekeys_import_explain, pathAsDisplayedToUser))
.setNegativeButton(android.R.string.cancel, null)
.setPositiveButton(android.R.string.ok, (dialogInterface2, i2) -> startImexOne(DcContext.DC_IMEX_IMPORT_SELF_KEYS, imexPath, pathAsDisplayedToUser))
.show();
}
private class ManageKeysListener implements Preference.OnPreferenceClickListener {
@Override
public boolean onPreferenceClick(@NonNull Preference preference) {
boolean result = ScreenLockUtil.applyScreenLock(requireActivity(), getString(R.string.pref_manage_keys), getString(R.string.enter_system_secret_to_continue), REQUEST_CODE_CONFIRM_CREDENTIALS_KEYS);
if (!result) {
manageKeys();
final boolean enabled = (Boolean) newValue;
if (enabled) {
dcContext.setConfigInt(CONFIG_FORCE_ENCRYPTION, 1);
return true;
} else {
new AlertDialog.Builder(requireContext())
.setMessage(R.string.disable_force_e2ee_warning)
.setPositiveButton(R.string.ok, (dialogInterface, i) -> {
dcContext.setConfigInt(CONFIG_FORCE_ENCRYPTION, 0);
((CheckBoxPreference)preference).setChecked(false);
})
.setNegativeButton(R.string.cancel, null)
.show();
return false;
}
return true;
}
}
private void manageKeys() {
Activity activity = requireActivity();
Permissions.with(activity)
.request(Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE)
.alwaysGrantOnSdk30()
.ifNecessary()
.withPermanentDenialDialog(getString(R.string.perm_explain_access_to_storage_denied))
.onAllGranted(() -> {
new AlertDialog.Builder(activity)
.setTitle(R.string.pref_managekeys_menu_title)
.setItems(new CharSequence[]{
activity.getString(R.string.pref_managekeys_export_secret_keys),
activity.getString(R.string.pref_managekeys_import_secret_keys)
},
(dialogInterface, i) -> {
if (i==0) {
new AlertDialog.Builder(activity)
.setTitle(R.string.pref_managekeys_export_secret_keys)
.setMessage(activity.getString(R.string.pref_managekeys_export_explain, DcHelper.getImexDir().getAbsolutePath()))
.setNegativeButton(android.R.string.cancel, null)
.setPositiveButton(android.R.string.ok, (dialogInterface2, i2) -> startImexOne(DcContext.DC_IMEX_EXPORT_SELF_KEYS))
.show();
}
else {
if (Build.VERSION.SDK_INT >= 30) {
AttachmentManager.selectMediaType(activity, "*/*", null, PICK_SELF_KEYS, StorageUtil.getDownloadUri());
} else {
String path = DcHelper.getImexDir().getAbsolutePath();
showImportKeysDialog(path, path);
}
}
}
)
.setNegativeButton(R.string.cancel, null)
.setNeutralButton(R.string.learn_more, (d, w) -> DcHelper.openHelp(activity, "#importkey"))
.show();
})
.execute();
}
}
@@ -0,0 +1,5 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android" android:height="24dp" android:tint="#FFFFFF" android:viewportHeight="24" android:viewportWidth="24" android:width="24dp">
<path android:fillColor="@android:color/white" android:pathData="M17,3L7,3c-1.1,0 -1.99,0.9 -1.99,2L5,21l7,-3 7,3L19,5c0,-1.1 -0.9,-2 -2,-2zM17,18l-5,-2.18L7,18L7,5h10v13z"/>
</vector>
@@ -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="M21,7h-6V5h6V7zM19,10.9c-0.32,0.07 -0.66,0.1 -1,0.1c-2.76,0 -5,-2.24 -5,-5c0,-1.13 0.37,-2.16 1,-3L7,3C5.9,3 5,3.9 5,5v16l7,-3l7,3V10.9z"/>
</vector>
@@ -1,15 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:layout_width="match_parent"
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
android:fillViewport="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="16dp"
android:layout_marginRight="16dp"
android:layout_marginBottom="16dp"
android:layout_marginTop="20dp"
android:layout_height="wrap_content"
android:paddingStart="16dp"
android:paddingEnd="16dp"
android:paddingBottom="16dp"
android:paddingTop="20dp"
android:orientation="vertical">
<LinearLayout android:layout_width="match_parent"
@@ -71,8 +73,8 @@
android:id="@+id/or_divider"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="30dp"
android:paddingBottom="30dp"
android:paddingTop="25dp"
android:paddingBottom="25dp"
android:gravity="center"
android:orientation="horizontal">
@@ -133,4 +135,4 @@
</LinearLayout>
</FrameLayout>
</ScrollView>
+3
View File
@@ -41,6 +41,9 @@
<item android:title="@string/menu_more_options">
<menu>
<item android:title="@string/menu_add_attachment"
android:id="@+id/menu_add_attachment" />
<item android:id="@+id/menu_leave"
android:visible="false"
android:title="@string/menu_leave_group"/>
+8 -3
View File
@@ -1,5 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:title="@string/save"
android:id="@+id/menu_toggle_save"
android:icon="@drawable/baseline_bookmark_border_24"
app:showAsAction="ifRoom" />
<item android:title="@string/edit_message"
android:id="@+id/menu_context_edit"
android:icon="@drawable/ic_create_white_24dp"
@@ -39,9 +44,9 @@
android:id="@+id/menu_context_details"
app:showAsAction="never" />
<!-- <item android:title="@string/notify_reply_button" -->
<!-- android:id="@+id/menu_context_reply" -->
<!-- app:showAsAction="never" /> -->
<item android:title="@string/notify_reply_button"
android:id="@+id/menu_context_reply"
app:showAsAction="never" />
<item android:title="@string/reply_privately"
android:id="@+id/menu_context_reply_privately"
+1
View File
@@ -118,6 +118,7 @@
<string name="menu_zoom_in">تقريب</string>
<string name="menu_zoom_out">تصغير</string>
<string name="mute_for_one_hour">أكتم لمدة ساعة</string>
<!-- deprecated -->
<string name="mute_for_two_hours">أكتم لمدة ساعتين</string>
<string name="mute_for_one_day">أكتم لمدة يوم</string>
<string name="mute_for_seven_days">أكتم لمدة أسبوع</string>
+1 -4
View File
@@ -159,6 +159,7 @@
<string name="title_share_location">Qrup üzvlərinə yerləşdiyin yerini göndər</string>
<string name="edit_contact">Kontakta dəyişiklik</string>
<string name="mute_for_one_hour">1 saatlıq söndür</string>
<!-- deprecated -->
<string name="mute_for_two_hours">2 saatlıq söndür</string>
<string name="mute_for_one_day">1 günlük söndür</string>
<string name="mute_for_seven_days">7 günlük söndür</string>
@@ -172,10 +173,6 @@
<!-- get confirmations -->
<string name="ask_leave_group">Bu qrupu tərk etmək istədiyinizə əminsiniz?</string>
<plurals name="ask_delete_chat">
<item quantity="one">%d çat silmək? Artıq chat siyahısında göstərilməyəcək, mesajlar serverdə qalacaq.</item>
<item quantity="other">%d çat silmək? Artıq chat siyahısında göstərilməyəcək, mesajlar serverdə qalacaq.</item>
</plurals>
<string name="ask_forward">Mesajları yönləndirin %1$sə-?</string>
<string name="ask_export_attachment">Faylı ixrac etmək? Faylların ixracı cihazınızdakı hər hansı digər tətbiqlərə daxil olmağa imkan verəcəkdir. \n\n Razısan?</string>
<string name="ask_block_contact">Bu kontaktı bloklamaq? Bu kontaktdan artıq mesaj qəbul etməyəcəksiniz.</string>
+2 -6
View File
@@ -294,6 +294,7 @@
<string name="donate">Дарение</string>
<string name="mute_for_one_hour">Спиране на звука за 1 час</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Спиране на звука за 2 часа</string>
<string name="mute_for_one_day">Спиране на звука за 1 ден</string>
<string name="mute_for_seven_days">Спиране на звука за 7 дни</string>
@@ -329,12 +330,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Сигурни ли сте, че искате да напуснете тази група?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Да бъде ли изтрит %d чат? Той повече няма да се показва в списъка с чатове, неговите съобщения ще останат на сървъра.</item>
<item quantity="other">Да бъдат ли изтрити%d чата? Те повече няма да се показват в списъка с чатове; техните съобщения ще останат на сървъра.</item>
</plurals>
<string name="ask_delete_named_chat">Сигурни ли сте, че искате да изтриете %1$s?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Да бъде ли изтрито %d съобщение?</item>
<item quantity="other">Да бъдат ли изтрити %d съобщения?</item>
+2 -1
View File
@@ -228,6 +228,7 @@
<string name="pin">دیسنیڌن</string>
<string name="source_code">کود بونچک</string>
<string name="mute_for_one_hour">بؽ دونگ کردن سی 1 ساعت</string>
<!-- deprecated -->
<string name="mute_for_two_hours">بؽ دونگ کردن سی 2 ساعت</string>
<string name="mute_for_one_day">بؽ دونگ کردن سی 1 رۊ</string>
<string name="mute_for_seven_days">بؽ دونگ کردن سی 7 رۊ</string>
@@ -243,7 +244,7 @@
<string name="videochat">گوفت ۉ لوفت ویدیویی</string>
<string name="videochat_invitation">موکش و گوفت ۉ لوفت ویدیویی</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">êxuy %d payom pāk bu?</item>
<item quantity="other">اخۊی %d پیوم پاک بۊ؟</item>
+14 -6
View File
@@ -28,6 +28,8 @@
<string name="join">Uneix-te</string>
<string name="rejoin">Torna a unir-te</string>
<string name="delete">Esborra</string>
<string name="delete_for_me">Esborra per a Mi</string>
<string name="delete_for_everyone">Esborra per a Tothom</string>
<string name="info">Info</string>
<string name="update">Actualitza</string>
<string name="emoji">Emojis</string>
@@ -305,6 +307,7 @@
<string name="menu_learn_spelling">Aprèn l\'ortografia</string>
<string name="menu_chat_audit_log">Registre de l\'auditoria de xat</string>
<string name="jump_to_message">Ves al missatge</string>
<string name="jump_to_original_message">Vés al Missatge Original</string>
<string name="copy_json">Copia el JSON</string>
<string name="replace_draft">Substitueix l\'esborrany</string>
<string name="title_share_location">Comparteix la ubicació amb tots els membres del grup</string>
@@ -329,6 +332,7 @@
<string name="donate">Feu un donatiu</string>
<string name="mute_for_one_hour">Silencia 1 hora</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Silencia 2 hores</string>
<string name="mute_for_one_day">Silencia 1 dia</string>
<string name="mute_for_seven_days">Silencia 7 dies</string>
@@ -365,11 +369,16 @@
<!-- get confirmations -->
<string name="ask_leave_group">Segur que voleu deixar aquest grup?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Esborra %d xat? Ja no es mostrarà al llistat de xats, i els seus missatges no romandran al servidor.</item>
<item quantity="other">Voleu esborrar %d xats? Ja no es mostraran al llistat de xats però els missatges es conservaran al servidor.</item>
<item quantity="one">¿Esborrar %d xat de tots els teus dispositius?</item>
<item quantity="other">¿Esborrar %d xats de tots els teus dispositius?</item>
</plurals>
<string name="ask_delete_named_chat">Voleu esborrar el xat «%1$s»? Ja no es mostrarà més en el llistat de xats i els missatges romandran al servidor.</string>
<!-- deprecated, use ask_delete_messages -->
<string name="ask_delete_named_chat">¿Esborrar xat \"%1$s\" de tots els teus dispositius?</string>
<string name="ask_delete_message">¿Esborra aquest missatge de tots els teus dispositius?</string>
<plurals name="ask_delete_messages">
<item quantity="one">¿Esborra %d missatge de tots els teus dispositius?</item>
<item quantity="other">¿Esborra %d missatges de tots els teus dispositius?</item>
</plurals>
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Vols esborrar %d missatge?</item>
<item quantity="other">Voleu esborrar %d missatges?</item>
@@ -546,6 +555,7 @@
<string name="multidevice_receiver_title">Afegeix com a segon dispositiu</string>
<string name="multidevice_open_settings_on_other_device">En el primer dispositiu, aneu a «Configuració / Afegeix un segon dispositiu» i escanegeu el codi que es mostra allà.</string>
<string name="multidevice_receiver_scanning_ask">Voleu copiar el perfil de l\'altre dispositiu en aquest?</string>
<string name="multidevice_receiver_needs_update">El perfil que vols importar prové d\'una versió més recent de Delta Chat.\n\nPer continuar configurant el segon dispositiu, actualitza aquest dispositiu a l\'última versió de Delta Chat.</string>
<string name="multidevice_abort">Voleu cancel·lar la configuració d\'un segon dispositiu?</string>
<string name="multidevice_abort_will_invalidate_copied_qr">Això invalidarà el codi QR copiat al porta-retalls.</string>
<string name="multidevice_experimental_hint">(experimental, es requereix la versió 1.36)</string>
@@ -659,9 +669,7 @@
<string name="accept_invalid_certificates">Accepta certificats no vàlids</string>
<string name="switch_account">Canvia el perfil</string>
<string name="add_account">Afegeix un compte</string>
<string name="profile_tag">Etiqueta privada</string>
<string name="profile_tag_hint">p.ex. treball, família</string>
<string name="profile_tag_explain">Etiqueteu allò que és visible només per a vós. Això us ajuda a diferenciar els vostres perfils.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Desplaçat a l\'inici</string>
<string name="delete_account">Esborra el perfil</string>
+1 -5
View File
@@ -205,6 +205,7 @@
<string name="ConversationFragment_quoted_message_not_found">پەیامە ڕەسەنەکە نەدۆزرایەوە</string>
<string name="reply_privately">وەڵامدانەوەی نهێنی</string>
<string name="mute_for_one_hour">بێدەنگ کردن بۆ ماوەی 1 کاتژمێر</string>
<!-- deprecated -->
<string name="mute_for_two_hours">بێدەنگ کردن بۆ ماوەی 2 کاتژمێر</string>
<string name="mute_for_one_day">بێدەنگ کردن بۆ ماوەی 1 ڕۆژ</string>
<string name="mute_for_seven_days">بێدەنگ کردن بۆ ماوەی 7 ڕۆژ</string>
@@ -237,11 +238,6 @@
<!-- get confirmations -->
<string name="ask_leave_group">دڵنیای دەتەوێت ئەم کۆڕە بەجێ بێڵیت؟</string>
<plurals name="ask_delete_chat">
<item quantity="one">%d وتووێژ دەسڕیتەوە؟ ئیدی لە نیو لیستەی وتووێژەکاندا دیار نامێنن، بەڵام پەیامەکانیان لەسەر سێرڤەر دەمێنێتەوە.</item>
<item quantity="other">%d وتووێژ دەسڕیتەوە؟ ئیدی لە نێو لیستەی وتووێژەکاندا دیار نامێنن، بەڵام پەیامەکانیان لەسەر سێرڤەر دەمێنێتەوە.</item>
</plurals>
<string name="ask_delete_named_chat">دڵنیای دەتەوێت \"%1$s\" بسڕیتەوە؟</string>
<string name="ask_forward">ئەو پەیامانە دەنێریت بۆ %1$s؟</string>
<string name="ask_forward_multiple">ئەو پەیامانە دەنێریت بۆ نێو %1$dوتووێژ؟</string>
<string name="ask_export_attachment">پێوەلکاوەکە هەناردە دەکەیت؟ هەناردەکردنی پێوەلکاوەکان وادەکات نەرمامێرەکانی دیکەی سەر مۆبایلەکەت بتوانن دەستیان بەو بەڵگە هەناردەکراوە بگات.\n\n بەردەوام دەبیت؟</string>
File diff suppressed because it is too large Load Diff
+2 -6
View File
@@ -224,6 +224,7 @@
<string name="ConversationFragment_quoted_message_not_found">Oprindelig besked ikke fundet</string>
<string name="reply_privately">Svar privat</string>
<string name="mute_for_one_hour">Dæmp i 1 time</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Dæmp i 2 timer</string>
<string name="mute_for_one_day">Dæmp i 1 dag</string>
<string name="mute_for_seven_days">Dæmp i 7 dage</string>
@@ -256,12 +257,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Forlad denne gruppe?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Slette %d samtale? Den vil ikke længere blive vist i samtale listen, dens beskeder vil forblive på serveren.</item>
<item quantity="other">Slet %d samtaler? De vil ikke længere blive vist i samtale listen, deres beskeder vil forblive på serveren.</item>
</plurals>
<string name="ask_delete_named_chat">Er du sikker på at du vil slette \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Slet %d besked?</item>
<item quantity="other">Slet %d beskeder?</item>
+9 -6
View File
@@ -332,7 +332,9 @@
<string name="donate">Spenden</string>
<string name="mute_for_one_hour">Stumm für 1 Stunde</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Stumm für 2 Stunden</string>
<string name="mute_for_eight_hours">Stumm für 8 Stunden</string>
<string name="mute_for_one_day">Stumm für 1 Tag</string>
<string name="mute_for_seven_days">Stumm für 7 Tage</string>
<string name="mute_forever">Stumm für immer</string>
@@ -369,16 +371,16 @@
<!-- get confirmations -->
<string name="ask_leave_group">Diese Gruppe verlassen?</string>
<plurals name="ask_delete_chat">
<item quantity="one">%d Chat löschen? Gelöschte Chats werden nicht länger in der Chat-Liste angezeigt, die Nachrichten verbleiben auf dem Server.</item>
<item quantity="other">%d Chats löschen?</item>
<item quantity="one">%d Chat von allen Geräten löschen?</item>
<item quantity="other">%d Chats von allen Geräten löschen?</item>
</plurals>
<string name="ask_delete_named_chat">Chat \"%1$s\" löschen?</string>
<string name="ask_delete_named_chat">Chat \"%1$s\" von allen Geräten löschen?</string>
<string name="ask_delete_message">Diese Nachricht von allen Geräten löschen?</string>
<plurals name="ask_delete_messages">
<item quantity="one">%d Nachricht von allen Geräten löschen?</item>
<item quantity="other">%d Nachrichten von allen Geräten löschen?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">%d Nachricht löschen?</item>
<item quantity="other">%d Nachrichten löschen?</item>
@@ -669,9 +671,10 @@
<string name="accept_invalid_certificates">Ungültige Zertifikate akzeptieren</string>
<string name="switch_account">Profil wechseln</string>
<string name="add_account">Profil hinzufügen</string>
<string name="profile_tag">Private Bezeichnung</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Profilbeschreibung</string>
<string name="profile_tag_hint">z.B. Familie, Arbeit, Freunde</string>
<string name="profile_tag_explain">Die Bezeichnung ist nur für Sie sichtbar um zwischen Profilen zu unterscheiden.</string>
<string name="profile_tag_explain">Die Beschreibung ist nur für Sie sichtbar um zwischen Profilen zu unterscheiden.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Nach oben</string>
<string name="delete_account">Profil löschen</string>
+2 -6
View File
@@ -264,6 +264,7 @@
<!-- Menu item beside an app/chat that adds an icon to the system's home screen. If the user taps that icon, the app/chat is opened directly. -->
<string name="add_to_home_screen">Προσθήκη στην κεντρική οθόνη</string>
<string name="mute_for_one_hour">Σίγαση για 1 ώρα</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Σίγαση για 2 ώρες</string>
<string name="mute_for_one_day">Σίγαση για 1 ημέρα</string>
<string name="mute_for_seven_days">Σίγαση για 7 ημέρες</string>
@@ -299,12 +300,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Είστε σίγουρος/-η ότι θέλετε να βγείτε από αυτή την ομάδα;</string>
<plurals name="ask_delete_chat">
<item quantity="one">Διαγραφή %d συνομιλίας; Δεν θα εμφανίζετε πλέον στη λίστα συνομιλιών, αλλά τα μηνύματά της θα παραμείνουν στον διακομιστή.</item>
<item quantity="other">Διαγραφή %d συνομιλιών; Δεν θα εμφανίζονται πλέον στη λίστα συνομιλιών, αλλά τα μηνύματά τους θα παραμείνουν στον διακομιστή.</item>
</plurals>
<string name="ask_delete_named_chat">Είστε σίγουρος ότι θέλετε να διαγράψετε \"%1$s\";</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Διαγραφή %d μηνύματος;</item>
<item quantity="other">Διαγραφή %d μηνυμάτων;</item>
+1 -5
View File
@@ -267,6 +267,7 @@
<!-- Opposite of "Pin chat", removing the sticky-state from a chat. -->
<string name="unpin">Depingli</string>
<string name="mute_for_one_hour">Silentigi por 1 horo</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Silentigi por 2 horoj</string>
<string name="mute_for_one_day">Silentigi por 1 tago</string>
<string name="mute_for_seven_days">Silentigi por 7 tagoj</string>
@@ -282,11 +283,6 @@
<!-- get confirmations -->
<string name="ask_leave_group">Ĉu vi estas certa, ke vi volas forlasi tiun ĉi grupon?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Ĉu forigi %d babilon? Ĝi ne plu troveblos en la babilaro, tamen ĝiaj mesaĝoj plurestos en la servilo.</item>
<item quantity="other">Ĉu forigi %d babilojn? Ili ne plu troveblos en la babilaro, tamen iliaj mesaĝoj plurestos en la servilo.</item>
</plurals>
<string name="ask_delete_named_chat">Ĉu vi certas, ke vi deziras forigi \"%1$s\"?</string>
<string name="ask_forward">Plusendi mesaĝojn al %1$s?</string>
<!-- deprecated -->
<string name="cannot_delete_contacts_in_use">Ne eblas forigi kontaktojn kun aktualaj babiloj.</string>
+40 -18
View File
@@ -1,14 +1,26 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">
<!-- custom strings -->
<string name="community">Comunidad</string>
<string name="description">Descripción</string>
<string name="ask_join_community">¿Quieres unirte a la comunidad \"%1$s\"?</string>
<string name="community_set_name_explain">Establece un nombre que otros puedan reconocer.</string>
<string name="or_separator">o</string>
<string name="online">en línea</string>
<string name="pink">Rosa</string>
<string name="gray">Gris</string>
<string name="share_location_for_12_hours">Por 12 horas</string>
<string name="super_group">Súper Grupo</string>
<string name="channel">Canal</string>
<string name="public_bots">🤖 Bots Públicos</string>
<string name="force_e2ee">Forzar el cifrado de extremo a extremo</string>
<string name="disable_force_e2ee_warning">⚠️ Si desactivas esta opción, no estarás protegido contra el envío accidental de mensajes no cifrados. Desactiva esta opción únicamente si quieres enviar correos electrónicos no cifrados con tu cuenta de correo electrónico clásica.</string>
<!-- End of custom strings -->
<!-- common strings without special context -->
<string name="app_name">Delta Chat</string>
<string name="ok">OK</string>
<string name="cancel">Cancelar</string>
<string name="or_separator">o</string>
<string name="clear_search">Borrar búsqueda</string>
<!-- a noun, used on a button, short for "show link" -->
<string name="link">Enlace</string>
@@ -33,6 +45,8 @@
<string name="join">Unirse</string>
<string name="rejoin">Volver a unirse</string>
<string name="delete">Eliminar</string>
<string name="delete_for_me">Eliminar solo para mí</string>
<string name="delete_for_everyone">Eliminar para todos</string>
<string name="info">Información</string>
<string name="update">Actualización</string>
<string name="emoji">Emoji</string>
@@ -46,6 +60,8 @@
<string name="later">Luego</string>
<!-- "Resend" means "Sending the selected message(s) again to the same chat". The string is used in a menu and should be as short as possible. Resending may be needed after failures or to repost old messages to new members. -->
<string name="resend">Volver a enviar</string>
<string name="edited">Editado</string>
<string name="edit_message">Editar mensaje</string>
<!-- Verb "to archive", as in "put a chat in the archive", not a noun "The Archive". -->
<string name="archive">Archivar</string>
<!-- Verb "to unarchive", as in "remove a chat from the archive", opposite of the previous string -->
@@ -112,7 +128,6 @@
<!-- Refers to the time a contact was last seen. Shown below contact name in the profile. The placeholder will be replaced by a relative point in time as "3 minutes ago" (see https://momentjs.com for more examples and languages)-->
<string name="last_seen_relative">últ. vez: %1$s</string>
<string name="last_seen_unknown">últ. vez: Desconocido</string>
<string name="online">en línea</string>
<!-- Shown beside messages that are "N minutes old". Prefer short strings, or well-known abbreviations. -->
<plurals name="n_minutes">
<item quantity="one">%d min</item>
@@ -219,8 +234,6 @@
<string name="purple">Púrpura</string>
<string name="magenta">Magenta</string>
<string name="white">Blanco</string>
<string name="pink">Rosa</string>
<string name="gray">Gris</string>
<string name="zoom">Zoom</string>
<string name="extra_small">Muy pequeño</string>
@@ -238,6 +251,8 @@
<string name="new_classic_contact_explain">Los contactos añadidos manualmente se pueden utilizar para enviar mensajes a contactos que usan clientes de correo electrónico clásico y no se garantiza que estén cifrados de extremo a extremo.</string>
<string name="menu_new_chat">Nuevo chat</string>
<string name="menu_new_group">Nuevo grupo</string>
<!-- "Chat" is a verb here, "Message to" would also fit. the string might be used in the "New Chat" screen above the contact list -->
<string name="chat_with">Chatear con...</string>
<string name="clone_chat">Clonar chat</string>
<!-- consider keeping the term "broadcast" as in WhatsApp or Telegram -->
<string name="broadcast_list">Difusión</string>
@@ -318,6 +333,7 @@
<string name="menu_learn_spelling">Aprender ortografía</string>
<string name="menu_chat_audit_log">Registro de auditoría de chat</string>
<string name="jump_to_message">Saltar al mensaje</string>
<string name="jump_to_original_message">Saltar al mensaje original</string>
<string name="copy_json">Copiar JSON</string>
<string name="replace_draft">Reemplazar borrador</string>
<string name="title_share_location">Compartir ubicación con todos los miembros del grupo</string>
@@ -342,6 +358,7 @@
<string name="donate">Donar</string>
<string name="mute_for_one_hour">Silenciar por 1 hora</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Silenciar por 2 horas</string>
<string name="mute_for_one_day">Silenciar por 1 día</string>
<string name="mute_for_seven_days">Silenciar por 7 días</string>
@@ -352,7 +369,6 @@
<string name="share_location_for_one_hour">Por 1 hora</string>
<string name="share_location_for_two_hours">Por 2 horas</string>
<string name="share_location_for_six_hours">Por 6 horas</string>
<string name="share_location_for_12_hours">Por 12 horas</string>
<plurals name="ask_send_following_n_files_to">
<item quantity="one">¿Enviar el archivo a %s?</item>
@@ -380,12 +396,18 @@
<!-- get confirmations -->
<string name="ask_leave_group">¿Seguro que deseas abandonar este grupo? </string>
<plurals name="ask_delete_chat">
<item quantity="one">¿Eliminar %d chat? No volverá a ser mostrado en la lista de chats, pero sus mensajes permanecerán en el servidor.</item>
<item quantity="many">¿Eliminar %d chats? No volverán a ser mostrados en la lista de chats, pero sus mensajes permanecerán en el servidor.</item>
<item quantity="other">¿Eliminar %d chats? No volverán a ser mostrados en la lista de chats, pero sus mensajes permanecerán en el servidor.</item>
<item quantity="one">¿Eliminar %d chat de todos tus dispositivos?</item>
<item quantity="many">¿Eliminar %d chats de todos tus dispositivos?</item>
<item quantity="other">¿Eliminar %d chats de todos tus dispositivos?</item>
</plurals>
<string name="ask_delete_named_chat">¿Estás seguro de que deseas eliminar \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<string name="ask_delete_named_chat">¿Eliminar chat \"%1$s\" de todos tus dispositivos?</string>
<string name="ask_delete_message">¿Eliminar este mensaje de todos tus dispositivos?</string>
<plurals name="ask_delete_messages">
<item quantity="one">¿Eliminar %d mensaje de todos tus dispositivos?</item>
<item quantity="many">¿Eliminar %d mensajes de todos tus dispositivos?</item>
<item quantity="other">¿Eliminar %d mensajes de todos tus dispositivos?</item>
</plurals>
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">¿Eliminar %d mensaje?</item>
<item quantity="many">¿Eliminar %d mensajes?</item>
@@ -468,13 +490,8 @@
<!-- mailing lists -->
<string name="mailing_list">Lista de correo</string>
<string name="super_group">Súper Grupo</string>
<string name="channel">Canal</string>
<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="public_bots">🤖 Bots Públicos</string>
<!-- webxdc -->
<!-- "Start..." button for an app -->
<string name="start_app">Iniciar…</string>
@@ -525,12 +542,12 @@
<string name="group_create_button">Crear grupo</string>
<string name="group_please_enter_group_name">Por favor introduzca un nombre para el grupo.</string>
<string name="group_add_members">Añadir miembros</string>
<string name="group_add_member">Añadir miembro</string>
<string name="group_remove_member">Eliminar miembro</string>
<string name="group_self_not_in_group">Debes ser un miembro del grupo para realizar esta acción.</string>
<string name="profile_encryption">Cifrado</string>
<string name="profile_shared_chats">Chats compartidos</string>
<string name="related_chats">Chats similares</string>
<!-- Separator between the list of actual members and past members -->
<string name="past_members">Miembros anteriores</string>
<string name="tab_contact">Contacto</string>
<string name="tab_group">Grupo</string>
<string name="tab_gallery">Galería</string>
@@ -544,6 +561,7 @@
<string name="tab_audio_empty_hint">Los archivos de audio y los mensajes de voz compartidos en este chat se mostrarán aquí.</string>
<string name="tab_webxdc_empty_hint">Apps compartidas en este chat se mostrarán aquí</string>
<string name="tab_all_media_empty_hint">La multimedia compartida en cualquier chat aparecerá aquí</string>
<string name="all_files_empty_hint">Documentos y otros archivos compartidos en cualquier chat se mostrarán aquí.</string>
<string name="all_apps_empty_hint">Aplicaciones privadas recibidas o enviadas en cualquier chat aparecerán aquí.</string>
<string name="media_preview">Vista previa de multimedia</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
@@ -570,6 +588,7 @@
<string name="multidevice_receiver_title">Añadir desde otro dispositivo</string>
<string name="multidevice_open_settings_on_other_device">En el primer dispositivo, ve a \"Ajustes / Añadir otro dispositivo\" y escanea el código mostrado allí</string>
<string name="multidevice_receiver_scanning_ask">¿Copiar la cuenta del otro dispositivo a este dispositivo?</string>
<string name="multidevice_receiver_needs_update">El perfil que quieres importar es de una versión de Delta Chat más reciente.\n\nPara continuar configurando el segundo dispositivo, actualice este dispositivo a la última versión de Delta Chat.</string>
<string name="multidevice_abort">¿Cancelar la configuración del nuevo dispositivo?</string>
<string name="multidevice_abort_will_invalidate_copied_qr">Esto invalidará el código QR copiado al portapapeles </string>
<string name="multidevice_experimental_hint">(experimental, requiere versión 1.36)</string>
@@ -683,7 +702,8 @@
<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>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Etiqueta de perfil</string>
<string name="profile_tag_hint">ej. Trabajo, Familia</string>
<string name="profile_tag_explain">Etiqueta que es visible sólo para ti; útil para diferenciar tus perfiles.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
@@ -1212,6 +1232,8 @@
<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_56_android">🔮 ¿Qué hay de nuevo?\n\n★ añadida opción para silenciar chats durante 8 horas\n\n★ solucionado problema con el candado que no aparecía en algunos los mensajes\n\n★ pegar siempre como texto sin formato en el área de borradores de mensajes\n\n★ permitir desplazarse en la pantalla de registro en pantallas pequeñas\n\n★ eliminadas opciones de cifrado peligrosas de la configuración avanzada\n\n\n💜 Muestra tu amor y apoyo al desarrollo de Delta Chat: %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_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 -4
View File
@@ -177,6 +177,7 @@
<!-- Opposite of "Pin chat", removing the sticky-state from a chat. -->
<string name="unpin">Desfinkatu</string>
<string name="mute_for_one_hour">Mututu ordubete</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Mututu 2 ordu</string>
<string name="mute_for_one_day">Mututu egun bat</string>
<string name="mute_for_seven_days">Mututu 7 egun</string>
@@ -192,10 +193,6 @@
<!-- get confirmations -->
<string name="ask_leave_group">Ziur talde honetatik atera nahi duzula?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Ezabatu txat %d? Ez da gehiago agertuko txaten zerrendan, mezuak zerbitzarian mantenduko dira.</item>
<item quantity="other">Ezabatu %d txat? Ez dira gehiago agertuko txaten zerrendan, mezuak zerbitzarian mantenduko dira.</item>
</plurals>
<string name="ask_forward">Birbidali mezuak %1$s erabiltzaileari?</string>
<string name="ask_export_attachment">Esportatu eranskina? Eranskinak esportatzeak zure beste gailuko beste aplikazioek atzitzea ahalbidetuko du.\n\nJarraitu?</string>
<string name="ask_block_contact">Blokeatu kontaktu hau? Ez dituzu kontaktu honen mezu gehiago jasoko.</string>
+2 -8
View File
@@ -316,6 +316,7 @@
<string name="donate">حمایت مالی</string>
<string name="mute_for_one_hour">ساکت کردن به مدت۱ ساعت</string>
<!-- deprecated -->
<string name="mute_for_two_hours">ساکت کردن به مدت ۲ ساعت</string>
<string name="mute_for_one_day">ساکت کردن به مدت ۱ روز</string>
<string name="mute_for_seven_days">ساکت کردن به مدت۷ روز</string>
@@ -354,12 +355,7 @@ https://meet.jit.si/$ROOM
<!-- get confirmations -->
<string name="ask_leave_group">مطمئن هستید می‌خواهید این گروه را ترک کنید؟</string>
<plurals name="ask_delete_chat">
<item quantity="one">پاک کردن %d گپ؟ دیگر در لیست گپ‌ها نشان داده نخواهد شد ولی پیام‌ها در سرور باقی می‌مانند. </item>
<item quantity="other">پاک کردن %d گپ؟ دیگر در فهرست گپ‌ها نشان داده نخواهند شد؛ ولی پیام‌ها در کارساز باقی می‌مانند. </item>
</plurals>
<string name="ask_delete_named_chat">اطمینان دارید می‌خواهید «%1$s» را پاک کنید؟</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">می‌خواهید %dپیام پاک شود؟</item>
<item quantity="other">می‌خواهید %d پیام پاک شود؟</item>
@@ -647,9 +643,7 @@ 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>
+2 -6
View File
@@ -294,6 +294,7 @@
<string name="donate">Lahjoita</string>
<string name="mute_for_one_hour">Mykistä 1 tunniksi</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Mykistä 2 tunniksi</string>
<string name="mute_for_one_day">Mykistä 1 päiväksi</string>
<string name="mute_for_seven_days">Mykistä 7 päiväksi</string>
@@ -329,12 +330,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Haluatko varmasti poistua tästä ryhmästä?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Poista %d keskustelu? Se ei enää näy keskustelulistauksessa, mutta sen viestit jäävät palvelimelle.</item>
<item quantity="other">Poista %d keskustelua? Ne eivät enää näy keskustelulistauksessa, mutta niiden viestit jäävät palvelimelle.</item>
</plurals>
<string name="ask_delete_named_chat">Haluatko varmasti poistaa \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Poista %d viesti?</item>
<item quantity="other">Poista %d viestiä?</item>
+3 -10
View File
@@ -337,6 +337,7 @@
<string name="donate">Faire un don</string>
<string name="mute_for_one_hour">Désactiver pour 1 heure</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Désactiver pour 2 heures</string>
<string name="mute_for_one_day">Désactiver pour 1 jour</string>
<string name="mute_for_seven_days">Désactiver pour 7 jours</string>
@@ -374,18 +375,12 @@
<!-- get confirmations -->
<string name="ask_leave_group">Voulez-vous vraiment quitter ce groupe ?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Supprimer %d discussion ? Elle n\'apparaîtra plus dans la liste des discussions, mais les messages échangés resteront sur le serveur.</item>
<item quantity="many">Supprimer %d discussions ? Elles n\'apparaîtront plus dans la liste des discussions, mais les messages qu\'elles contiennent resteront sur le serveur.</item>
<item quantity="other">Supprimer %d discussions ? Elles n\'apparaîtront plus dans la liste des discussions, mais les messages qu\'elles contiennent resteront sur le serveur.</item>
</plurals>
<string name="ask_delete_named_chat">Voulez-vous vraiment supprimer « %1$s » ?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Effacer %d message ici et sur le serveur ?</item>
<item quantity="many">Effacer %d messages ici et sur le serveur ?</item>
<item quantity="other">Effacer %d messages ici et sur le serveur  ?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Supprimer %d message ?</item>
<item quantity="many">Supprimer %d messages ?</item>
@@ -611,7 +606,7 @@
<!-- Instant onboarding title (there is not more to do than to set name and avatar) -->
<string name="instant_onboarding_title">Votre compte</string>
<!-- The placeholder will be replaced by the default onboarding server -->
<string name="instant_onboarding_agree_default2">Politique de confidentialité pour %1$s</string>
<string name="instant_onboarding_agree_default2">Conditions générales et politique de confidentialité pour %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">À propos des profils sur %1$s</string>
<!-- Confirmation button on the instant onboarding screen -->
@@ -678,9 +673,7 @@
<string name="accept_invalid_certificates">Accepter les certificats non valides</string>
<string name="switch_account">Changer de compte</string>
<string name="add_account">Ajouter un compte</string>
<string name="profile_tag">Tag privé</string>
<string name="profile_tag_hint">Travail ou famille par exemple</string>
<string name="profile_tag_explain">Tag seulement visible par vous pour vous aider à différencier les profils.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Remonter l\'élément</string>
<string name="delete_account">Supprimer le compte</string>
+2 -6
View File
@@ -270,6 +270,7 @@
<!-- Menu item beside an app/chat that adds an icon to the system's home screen. If the user taps that icon, the app/chat is opened directly. -->
<string name="add_to_home_screen">Engadir á pantalla de Inicio</string>
<string name="mute_for_one_hour">Acalar durante 1 h.</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Acalar durante 2 h.</string>
<string name="mute_for_one_day">Acalar durante 1 día</string>
<string name="mute_for_seven_days">Acalar durante 7 días</string>
@@ -305,12 +306,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Seguro que desexa abandonar o grupo?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Eliminar %d conversa? Non se mostrará na lista de conversas, as súas mensaxes permanecerán no servidor.</item>
<item quantity="other">Eliminar %d conversas? Non se mostrarán máis na listas de conversas, as mensaxes permanecerán no servidor.</item>
</plurals>
<string name="ask_delete_named_chat">Tes a certeza de querer eliminar \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Borrar %d mensaxe?</item>
<item quantity="other">Borrar %d mensaxes?</item>
+1
View File
@@ -133,6 +133,7 @@
<string name="menu_settings">Postavke</string>
<string name="menu_advanced">Napredno</string>
<string name="mute_for_one_hour">Utišaj na 1 sat</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Utišaj na 2 sata</string>
<string name="mute_for_one_day">Utišaj na 1 dan</string>
<string name="mute_for_seven_days">Utišaj na 7 dana</string>
+27 -16
View File
@@ -28,7 +28,9 @@
<string name="join">Csatlakozás</string>
<string name="rejoin">Újracsatlakozás</string>
<string name="delete">Törlés</string>
<string name="info">Infó</string>
<string name="delete_for_me">Törlés számomra</string>
<string name="delete_for_everyone">Törlés mindenki számára</string>
<string name="info">Információk</string>
<string name="update">Frissítés</string>
<string name="emoji">Emodzsi</string>
<string name="attachment">Csatolmány</string>
@@ -60,9 +62,9 @@
<string name="show_full_message">Teljes üzenet megjelenítése…</string>
<!-- Stay short here, say ~16 characters. The source string could also be "All Read", maybe that hint can make translations easier :) -->
<string name="mark_all_as_read">Összes megjelölése olvasottként</string>
<string name="mark_as_read">Olvasottnak jelölés</string>
<string name="mark_as_read">Megjelölés olvasottként</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">Olvasottnak jelölés</string>
<string name="mark_as_read_short">Megjelölés olvasottként</string>
<!-- Placeholder text when something is loading -->
<string name="loading">Betöltés…</string>
<string name="hide">Elrejtés</string>
@@ -186,8 +188,8 @@
<string name="webxdc_app">Alkalmazás</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">Alkalmazások</string>
<string name="webxdc_store_url">Alkalmazás-választó-webcím</string>
<string name="webxdc_store_url_explain">Ha be van állítva, akkor a webcím lesz használva mint alkalmazás-választó az alapértelmezett helyett</string>
<string name="webxdc_store_url">Alkalmazásválasztó webcíme</string>
<string name="webxdc_store_url_explain">Ha be van állítva, akkor a webcím lesz használva mint alkalmazásválasztó az alapértelmezett helyett</string>
<string name="home">Főoldal</string>
<string name="games">Játékok</string>
<string name="tools">Eszközök</string>
@@ -305,12 +307,13 @@
<string name="menu_learn_spelling">Helyesírás tanulása</string>
<string name="menu_chat_audit_log">Csevegésellenőrzési-naplófájl</string>
<string name="jump_to_message">Ugrás az üzenetre</string>
<string name="jump_to_original_message">Ugrás az eredeti üzenetre</string>
<string name="copy_json">JSON másolása</string>
<string name="replace_draft">Piszkozat cseréje</string>
<string name="title_share_location">Helyszín megosztása a csoport összes tagjával</string>
<string name="device_talk">Eszközüzenetek</string>
<string name="device_talk_subtitle">Helyileg előállított üzenetek</string>
<string name="device_talk_explain">Az üzenetek ebben a csevegésben az Ön készülékén kerülnek előállításra, hogy tájoékoztassák Önt az alkalmazás frissítéseiről és a használat közben felmerülő problémákról.</string>
<string name="device_talk_subtitle">Helyben előállított üzenetek</string>
<string name="device_talk_explain">Az üzenetek ebben a csevegésben az Ön készülékén kerülnek előállításra, hogy tájékoztassák Önt az alkalmazás frissítéseiről és a használat közben felmerülő problémákról.</string>
<string name="device_talk_welcome_message2">Lépjen kapcsolatba a partnereivel!\n\n🙌 Koppintson a „QR-kódra” mind a két eszköz főképernyőjén. Válassza a „QR-kód beolvasása” lehetőséget az egyik eszközön, és irányítsa a másik eszközre\n\n🌍 Ha nem ugyanabban a szobában tartózkodnak a partnerével, akkor olvassa be a QR-kódját egy videohíváson keresztül, vagy ossza meg a meghívó-hivatkozást a „QR-kód bolvasása”-ból.\n\nMajd: Élvezze az üzenetküldés-élményt a valaha létezett legnagyobb decentralizált hálózaton keresztül, ami az e-mail és - más népszerű alkalmazásokkal ellentétben - központi kiszolgáló vagy nyomon követés nélkül, illetve anélkül, hogy önt, partnereit, kollégáit vagy családját nagy szervezeteknek adná el.</string>
<string name="edit_contact">Névjegy szerkesztése</string>
<!-- Verb "to pin", making something sticky, not a noun or abbreviation for "pin number". -->
@@ -329,6 +332,7 @@
<string name="donate">Adományozás</string>
<string name="mute_for_one_hour">Némítás 1 órára</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Némítás 2 órára</string>
<string name="mute_for_one_day">Némítás 1 napra</string>
<string name="mute_for_seven_days">Némítás 7 napra</string>
@@ -365,11 +369,16 @@
<!-- get confirmations -->
<string name="ask_leave_group">Biztosan ki akar lépni a csoportból?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Biztosan töröl %d csevegést? Többé nem jelenik meg a csevegőlistában; az üzenetek viszont a szerveren maradnak.</item>
<item quantity="other">Biztosan töröl %d csevegést? Többé nem jelennek meg a csevegőlistában; az üzeneteik viszont a kiszolgálón maradnak.</item>
<item quantity="one">Töröl %d csevegést az összes eszközén?</item>
<item quantity="other">Töröl %d csevegést az összes eszközén?</item>
</plurals>
<string name="ask_delete_named_chat">Biztosan törli a következőt: „%1$s”? Többé nem fog megjelenni a csevegőlistában; üzenetei a kiszolgálón maradnak.</string>
<!-- deprecated, use ask_delete_messages -->
<string name="ask_delete_named_chat">Törli a(z) „%1$s” nevű csevegést az összes eszközén?</string>
<string name="ask_delete_message">Törli ezt az üzenetet az összes eszközén?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Töröl %d üzenetet az összes eszközén?</item>
<item quantity="other">Töröl %d üzenetet az összes eszközén?</item>
</plurals>
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">%d üzenet törlése?</item>
<item quantity="other">%d üzenet törlése?</item>
@@ -505,7 +514,7 @@
<string name="profile_shared_chats">Megosztott csevegések</string>
<string name="related_chats">Kapcsolódó csevegések</string>
<!-- Separator between the list of actual members and past members -->
<string name="past_members">Volt tagok</string>
<string name="past_members">Már nem tagok</string>
<string name="tab_contact">Névjegy</string>
<string name="tab_group">Csoport</string>
<string name="tab_gallery">Galéria</string>
@@ -546,6 +555,7 @@
<string name="multidevice_receiver_title">Hozzáadás második eszközként</string>
<string name="multidevice_open_settings_on_other_device">Az első eszközön lépjen a „Beállítások / Második eszköz hozzáadása” menüpontra, és olvassa be az ott megjelenő QR-kódot.</string>
<string name="multidevice_receiver_scanning_ask">Átmásolja a profilt a másik eszközről erre az eszközre?</string>
<string name="multidevice_receiver_needs_update">Az importálni kívánt profil egy újabb Delta Chat verzióból származik.\n\nA második eszköz beállításának folytatásához frissítse ezt az eszközt a Delta Chat legújabb verziójára.</string>
<string name="multidevice_abort">A második eszköz beállításának megszakítása?</string>
<string name="multidevice_abort_will_invalidate_copied_qr">Ez érvényteleníti a vágólapra másolt QR-kódot.</string>
<string name="multidevice_experimental_hint">(kísérleti, 1.36-os verzió szükséges)</string>
@@ -659,11 +669,12 @@
<string name="accept_invalid_certificates">Érvénytelen tanúsítványok elfogadása</string>
<string name="switch_account">Profilváltás</string>
<string name="add_account">Profil hozzáadása</string>
<string name="profile_tag">Privát címke</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Profil címke</string>
<string name="profile_tag_hint">Például: „Munka”, „Család”</string>
<string name="profile_tag_explain">A címke csak az Ön számára jelenik meg; segít megkülönböztetni a profiljait.</string>
<string name="profile_tag_explain">Állítson be egy olyan címkét, amely csak az Ön számára látható; segít megkülönböztetni a profiljait.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Felülre helyezés</string>
<string name="move_to_top">Feljebb mozgatás</string>
<string name="delete_account">Profil törlése</string>
<string name="delete_account_ask">Biztosan törölni szeretné a profiladatait?</string>
<string name="delete_account_explain_with_name">A(z) „%s” nevű profilhoz tartozó mindet adat ezen az eszközön törölve lesz, beleértve a végpontok közötti titkosítás beállításait, a névjegyeket, a csevegéseket, az üzeneteket és a médiát. Ez a művelet nem vonható vissza. </string>
@@ -877,7 +888,7 @@
<!-- system messages -->
<string name="systemmsg_cannot_decrypt">Ez az üzenet nem dekódolható.\n\n• Már az is segíthet, ha egyszerűen válaszol erre az üzenetre, és megkéri a feladóját, hogy küldje el újra az üzenetet.\n\n• Ha most telepítette újra a Delta Chatet, akkor a legjobb, ha most újraindítja a Delta Chatet, és kiválasztja a „Második eszközként való hozzáadás” lehetőséget, vagy importál egy biztonsági mentést.</string>
<string name="systemmsg_unknown_sender_for_chat">Az üzenet küldője ismeretlen ebben a csevegésben. További részletekért nézze meg az \'Infót\'.</string>
<string name="systemmsg_unknown_sender_for_chat">Az üzenet feladója ismeretlen ebben a csevegésben. További részletekért tekintse meg az Információkat”.</string>
<string name="systemmsg_subject_for_new_contact">Üzenet tőle: %1$s</string>
<string name="systemmsg_failed_sending_to">Nem sikerült elküldeni az üzenetet „%1$s” számára.</string>
<!-- %1$s will be replaced by the old group name, %2$s will be replaced by the new group name -->
+2 -5
View File
@@ -257,6 +257,7 @@
<string name="ConversationFragment_quoted_message_not_found">Pesan orisinil tidak ditemukan</string>
<string name="reply_privately">Balas secara privat</string>
<string name="mute_for_one_hour">Diamkan untuk 1 jam</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Diamkan untuk 2 jam</string>
<string name="mute_for_one_day">Diamkan untuk 1 hari</string>
<string name="mute_for_seven_days">Diamkan untuk 7 hari</string>
@@ -287,11 +288,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Apakah anda yakin untuk keluar dari grup ini?</string>
<plurals name="ask_delete_chat">
<item quantity="other">Hapus %d obrolan? Obrolan ini akan menghilang dari daftar tetapi pesan-pesannya akan tetap tersimpan di server.</item>
</plurals>
<string name="ask_delete_named_chat">Apakah anda yakin ingin menghapus \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="other">Menghapus pesan %d?</item>
</plurals>
+13 -8
View File
@@ -316,6 +316,7 @@
<string name="menu_learn_spelling">Impara l\'Ortografia</string>
<string name="menu_chat_audit_log">Registro Controllo Chat</string>
<string name="jump_to_message">Vai al Messaggio</string>
<string name="jump_to_original_message">Vai al Messaggio Originale</string>
<string name="copy_json">Copia JSON</string>
<string name="replace_draft">Sostituisci Bozza</string>
<string name="title_share_location">Condividi posizione con tutti i membri del guppo</string>
@@ -340,6 +341,7 @@
<string name="donate">Dona</string>
<string name="mute_for_one_hour">Silenzia per 1 ora</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Silenzia per 2 ore</string>
<string name="mute_for_one_day">Silenzia per 1 giorno</string>
<string name="mute_for_seven_days">Silenzia per 7 giorni</string>
@@ -378,17 +380,18 @@
<!-- get confirmations -->
<string name="ask_leave_group">Sei sicuro di voler abbandonare questo gruppo?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Eliminare %d chat? Essa non verrà più mostrata nella lista delle chat; i suoi messaggi rimarranno sul server.</item>
<item quantity="many">Eliminare %d chats? Esse non verranno più mostrate nella lista delle chat; i loro messaggi rimarranno sul server.</item>
<item quantity="other">Eliminare %d chats?</item>
<item quantity="one">Eliminare %d chat su tutti i tuoi dispositivi?</item>
<item quantity="many">Eliminare %d chats su tutti i tuoi dispositivi?</item>
<item quantity="other">Eliminare %d chats su tutti i tuoi dispositivi?</item>
</plurals>
<string name="ask_delete_named_chat">Elimina chat \"%1$s\"?</string>
<string name="ask_delete_named_chat">Eliminare la chat \"%1$s\" su tutti i tuoi dispositivi?</string>
<string name="ask_delete_message">Vuoi eliminare questo messaggio da tutti i tuoi dispositivi?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Cancella %d messaggio su tutti i tuoi dispositivi?</item>
<item quantity="many">Cancella %d messaggi su tutti i tuoi dispositivi?</item>
<item quantity="other">Cancella %d messaggi su tutti i tuoi dispositivi?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Eliminare %d messaggio?</item>
<item quantity="many">Eliminare %d messaggi?</item>
@@ -569,6 +572,7 @@
<string name="multidevice_receiver_title">Aggiungi come Secondo Dispositivo</string>
<string name="multidevice_open_settings_on_other_device">Sul primo dispositivo, andare su \"Impostazioni/Aggiungi Secondo Dispositivo\" e scansionare il codice mostrato qui</string>
<string name="multidevice_receiver_scanning_ask">Copiare il profilo dall\'altro dispositivo su questo dispositivo?</string>
<string name="multidevice_receiver_needs_update">Il profilo che vuoi importare proviene da una versione più recente di Delta Chat.\n\nPer continuare a configurare il secondo dispositivo, aggiorna questo dispositivo all\'ultima versione di Delta Chat.</string>
<string name="multidevice_abort">Interrompere l\'impostazione del secondo dispositivo?</string>
<string name="multidevice_abort_will_invalidate_copied_qr">Questo invaliderà il codice QR copiato negli appunti.</string>
<string name="multidevice_experimental_hint">(sperimentale, è richiesta la versione 1.36)</string>
@@ -614,7 +618,7 @@
<!-- Instant onboarding title (there is not more to do than to set name and avatar) -->
<string name="instant_onboarding_title">Il Tuo Profilo</string>
<!-- The placeholder will be replaced by the default onboarding server -->
<string name="instant_onboarding_agree_default2">Informativa sulla Riservatezza per %1$s</string>
<string name="instant_onboarding_agree_default2">Termini &amp; Informativa sulla Riservatezza per %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">Informazioni profili su %1$s</string>
<!-- Confirmation button on the instant onboarding screen -->
@@ -682,9 +686,10 @@
<string name="accept_invalid_certificates">Accetta certificati non validi</string>
<string name="switch_account">Cambia Profilo</string>
<string name="add_account">Aggiungi Profilo</string>
<string name="profile_tag">Etichetta Privata</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Etichetta Profilo</string>
<string name="profile_tag_hint">es. Lavoro, Famiglia</string>
<string name="profile_tag_explain">Etichetta che è visibile solo a te; ti aiuta a distinguere i tuoi profili.</string>
<string name="profile_tag_explain">Imposta un\'etichetta visibile solo a te, utile per distinguere i tuoi profili.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Sposta in Alto</string>
<string name="delete_account">Elimina Profilo</string>
+1 -4
View File
@@ -221,6 +221,7 @@
<string name="ConversationFragment_quoted_message_not_found">メッセージが見つかりません</string>
<string name="reply_privately">個別に返信する</string>
<string name="mute_for_one_hour">1時間停止する</string>
<!-- deprecated -->
<string name="mute_for_two_hours">2時間停止する</string>
<string name="mute_for_one_day">24時間停止する</string>
<string name="mute_for_seven_days">7日間停止する</string>
@@ -252,10 +253,6 @@
<!-- get confirmations -->
<string name="ask_leave_group">本当に退室しますか</string>
<plurals name="ask_delete_chat">
<item quantity="other">%d個のチャットを削除しますか?チャットリストには表示されなくなりますが、メッセージはサーバーに残ります。</item>
</plurals>
<string name="ask_delete_named_chat">%1$sを削除してよろしいですか?</string>
<string name="ask_forward">%1$sにメッセージを転送しますか?</string>
<string name="ask_forward_multiple">%1$dチャットにメッセージを転送しますか?</string>
<string name="ask_export_attachment">添付ファイルをエクスポートしますか?添付ファイルをエクスポートすると、他のアプリからもアクセスできるようになります。\n\nよろしいですか?</string>
+2 -5
View File
@@ -238,6 +238,7 @@
<string name="ConversationFragment_quoted_message_not_found">រកមិនឃើញសារដើម</string>
<string name="reply_privately">ឆ្លើយតបដោយឯកជន</string>
<string name="mute_for_one_hour">ធ្វើឲ្យមិនឃើញមិនលឺរយៈពេល១ម៉ោង</string>
<!-- deprecated -->
<string name="mute_for_two_hours">ធ្វើឲ្យមិនឃើញមិនលឺរយៈពេល២ម៉ោង</string>
<string name="mute_for_one_day">ធ្វើឲ្យមិនឃើញមិនលឺរយៈពេល១ថ្ងៃ</string>
<string name="mute_for_seven_days">ធ្វើឲ្យមិនឃើញមិនលឺរយៈពេល៧ថ្ងៃ</string>
@@ -269,11 +270,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">តើអ្នកប្រាកដហើយថាចង់ចាកចេញពីក្រុមនេះ?</string>
<plurals name="ask_delete_chat">
<item quantity="other">លុបសារសន្ទនាទាំង %d នេះ? ពួកគេនឹងមិនត្រូវបានបង្ហាញនៅក្នុងបញ្ជីសន្ទនាទៀតទេ។ សាររបស់ពួកគេនឹងនៅមានលើម៉ាសុីនមេ</item>
</plurals>
<string name="ask_delete_named_chat">តើអ្នកប្រាកដហើយថាចង់លុប \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="other">លុបសារ %d</item>
</plurals>
+2 -5
View File
@@ -256,6 +256,7 @@
<!-- Menu item beside an app/chat that adds an icon to the system's home screen. If the user taps that icon, the app/chat is opened directly. -->
<string name="add_to_home_screen">홈 스크린에 추가</string>
<string name="mute_for_one_hour">1시간 동안 알림 끄기</string>
<!-- deprecated -->
<string name="mute_for_two_hours">2시간 동안 알림 끄기</string>
<string name="mute_for_one_day">1일 동안 알림 끄기</string>
<string name="mute_for_seven_days">7일 동안 알림 끄기</string>
@@ -289,11 +290,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">이 그룹에서 나가시겠습니까?</string>
<plurals name="ask_delete_chat">
<item quantity="other">채팅 %d을/를 삭제하시겠습니까? 대화 상대의 메시지는 더 이상 대화 목록에 표시되지 않고 서버에 남아 있습니다.</item>
</plurals>
<string name="ask_delete_named_chat">메시지 \"%1$s\"을 지우려는 것이 확실한가요?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="other">%d개의 메시지를 삭제하시겠습니까?</item>
</plurals>
+2 -9
View File
@@ -279,6 +279,7 @@
<string name="donate">Paaukoti</string>
<string name="mute_for_one_hour">Išjungti 1 valandai</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Išjungti 2 valandoms</string>
<string name="mute_for_one_day">Išjungti 1 dienai</string>
<string name="mute_for_seven_days">Išjungti 7 dienoms</string>
@@ -308,14 +309,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Ar tikrai norite išeiti iš šios grupės?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Ištrinti %d pokalbį? Jis daugiau nebebus rodomas pokalbių sąraše, jo žinutės liks serveryje.</item>
<item quantity="few">Ištrinti %d pokalbius? Jie daugiau nebebus rodomi pokalbių sąraše, jų žinutės liks serveryje.</item>
<item quantity="many">Ištrinti %d pokalbių? Jie daugiau nebebus rodomi pokalbių sąraše, jų žinutės liks serveryje.</item>
<item quantity="other">Ištrinti %d pokalbį? Jis daugiau nebebus rodomas pokalbių sąraše, jo žinutės liks serveryje.</item>
</plurals>
<string name="ask_delete_named_chat">Ar tikrai norite ištrinti „%1$s“?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Ištrinti %d žinutę?</item>
<item quantity="few">Ištrinti %d žinutes?</item>
@@ -512,7 +506,6 @@
<string name="accept_invalid_certificates">Priimti negaliojančius liudijimus</string>
<string name="switch_account">Perjungti paskyrą</string>
<string name="add_account">Pridėti paskyrą</string>
<string name="profile_tag">Privati žymė</string>
<string name="delete_account">Ištrinti paskyrą</string>
<string name="delete_account_ask">Ar tikrai norite ištrinti savo paskyros duomenis?</string>
<string name="delete_account_explain_with_name">Visi „%s“ paskyros duomenys šiame įrenginyje bus ištrinti, įskaitant jūsų ištisinio šifravimo sąranką, adresatus, pokalbius, žinutes ir mediją. Šį veiksmą nebeįmanoma bus atšaukti.</string>
+1 -4
View File
@@ -183,6 +183,7 @@
<!-- Opposite of "Pin chat", removing the sticky-state from a chat. -->
<string name="unpin">Løsn</string>
<string name="mute_for_one_hour">Demp i 1 time</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Demp i 2 timer</string>
<string name="mute_for_one_day">Demp i 1 dag</string>
<string name="mute_for_seven_days">Demp i 7 dager</string>
@@ -211,10 +212,6 @@
<!-- get confirmations -->
<string name="ask_leave_group">Er du sikker på at du vil forlate denne gruppen?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Slett %d chat? Den vil ikke lenger vises</item>
<item quantity="other">Slett %d chatter? De vil ikke lenger vises i chattelisten, meldingene vil fortsatt være lagret tjeneren.</item>
</plurals>
<string name="ask_forward">Videresend meldinger til %1$s?</string>
<string name="ask_forward_multiple">Videresend meldinger til %1$d chatter?</string>
<string name="ask_export_attachment">Eksporter vedlegg? Eksport av vedlegg vil gi andre apper på din enhet tilgang til dem\n\nFortsett?</string>
+11 -7
View File
@@ -307,6 +307,7 @@
<string name="menu_learn_spelling">Spelling leren</string>
<string name="menu_chat_audit_log">Gesprekslogboek</string>
<string name="jump_to_message">Ga naar bericht</string>
<string name="jump_to_original_message">Ga naar oorspronkelijk bericht</string>
<string name="copy_json">Json-gegevens kopiëren</string>
<string name="replace_draft">Concept vervangen</string>
<string name="title_share_location">Locatie delen met alle groepsleden</string>
@@ -331,7 +332,9 @@
<string name="donate">Doneren</string>
<string name="mute_for_one_hour">1 uur lang uitschakelen</string>
<!-- deprecated -->
<string name="mute_for_two_hours">2 uur lang uitschakelen</string>
<string name="mute_for_eight_hours">8 uur lang uitschakelen</string>
<string name="mute_for_one_day">1 dag lang uitschakelen</string>
<string name="mute_for_seven_days">7 dagen lang uitschakelen</string>
<string name="mute_forever">Permanent uitschakelen</string>
@@ -367,16 +370,16 @@
<!-- get confirmations -->
<string name="ask_leave_group">Weet je zeker dat je deze groep wilt verlaten?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Wil je %d gesprek verwijderen?</item>
<item quantity="other">Wil je %d gesprekken verwijderen?</item>
<item quantity="one">Wil je %d gesprek verwijderen van al je apparaten?</item>
<item quantity="other">Wil je %d gesprekken verwijderen van al je apparaten?</item>
</plurals>
<string name="ask_delete_named_chat">Weet je zeker dat je %1$s wilt verwijderen?</string>
<string name="ask_delete_named_chat">Wil je %1$s verwijderen van al je apparaten?</string>
<string name="ask_delete_message">Wil je dit bericht verwijderen van al je apparaten?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Wil je %d bericht verwijderen van al je apparaten?</item>
<item quantity="other">Wil je alle %d berichten verwijderen van al je apparaten?</item>
<item quantity="other">Wil je %d berichten verwijderen van al je apparaten?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Wil je %d bericht verwijderen?</item>
<item quantity="other">Wil je %d berichten verwijderen?</item>
@@ -667,9 +670,10 @@
<string name="accept_invalid_certificates">Ongeldige certificaten accepteren</string>
<string name="switch_account">Ander account kiezen</string>
<string name="add_account">Account toevoegen</string>
<string name="profile_tag">Privélabel</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Profielbeschrijving</string>
<string name="profile_tag_hint">bijv. werk, familie</string>
<string name="profile_tag_explain">Een label dat alleen jij kan zien, om profielen van elkaar te onderscheiden.</string>
<string name="profile_tag_explain">Een beschrijving die alleen jij kan zien, om profielen van elkaar te onderscheiden.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Bovenaan tonen</string>
<string name="delete_account">Account verwijderen</string>
+13 -8
View File
@@ -325,6 +325,7 @@
<string name="menu_learn_spelling">Naucz się pisowni</string>
<string name="menu_chat_audit_log">Dziennik audytu czatu</string>
<string name="jump_to_message">Przejdź do wiadomości</string>
<string name="jump_to_original_message">Przejdź do oryginalnej wiadomości</string>
<string name="copy_json">Kopiuj JSON</string>
<string name="replace_draft">Zastąp szkic</string>
<string name="title_share_location">Udostępnij lokalizację dla wszystki czlonków grup</string>
@@ -349,6 +350,7 @@
<string name="donate">Wspomóż</string>
<string name="mute_for_one_hour">Wyłącz na 1 godzinę</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Wyłącz na 2 godziny</string>
<string name="mute_for_one_day">Wyłącz na 1 dzień</string>
<string name="mute_for_seven_days">Wyłącz na 7 dni</string>
@@ -387,19 +389,20 @@
<!-- get confirmations -->
<string name="ask_leave_group">Czy na pewno chcesz opuścić tę grupę?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Usunąć %d czat? Nie będzie już wyświetlany na liście czatów, wiadomość pozostanie na serwerze.</item>
<item quantity="few">Usunąć %d czatów? Nie będą już wyświetlane na liście czatów, ich wiadomości pozostaną na serwerze.</item>
<item quantity="many">Usunąć %d czaty? Nie będą już wyświetlane na liście czatów, ich wiadomości pozostaną na serwerze.</item>
<item quantity="other">Usunąć %d czatów? Nie będą już wyświetlane na liście czatów, ich wiadomości pozostaną na serwerze.</item>
<item quantity="one">Usunąć %d czat ze wszystkich urządzeń?</item>
<item quantity="few">Usunąć %d czaty ze wszystkich urządzeń?</item>
<item quantity="many">Usunąć %d czatów ze wszystkich urządzeń?</item>
<item quantity="other">Usunąć %d czatu ze wszystkich urządzeń?</item>
</plurals>
<string name="ask_delete_named_chat">Usunąć czat „%1$s”? Nie będzie on już wyświetlany na liście czatów. Jego wiadomości pozostaną na serwerze.</string>
<string name="ask_delete_named_chat">Usunąć czat „%1$s” ze wszystkich urządzeń?</string>
<string name="ask_delete_message">Usunąć tę wiadomość ze wszystkich urządzeń?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Usunąć %d wiadomość ze wszystkich urządzeń?</item>
<item quantity="few">Usunąć %d wiadomości ze wszystkich urządzeń?</item>
<item quantity="many">Usunąć %d wiadomości ze wszystkich urządzeń?</item>
<item quantity="other">Usunąć %d wiadomości ze wszystkich urządzeń?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Usunąć %d wiadomość?</item>
<item quantity="few">Usunąć %d wiadomości?</item>
@@ -584,6 +587,7 @@
<string name="multidevice_receiver_title">Dodaj jako kolejne urządzenie</string>
<string name="multidevice_open_settings_on_other_device">Na pierwszym urządzeniu przejdź do „Ustawienia » Dodaj kolejne urządzenie” i zeskanuj wyświetlony tam kod</string>
<string name="multidevice_receiver_scanning_ask">Skopiować konto z innego urządzenia na to urządzenie?</string>
<string name="multidevice_receiver_needs_update">Profil, który chcesz zaimportować, pochodzi z nowszej wersji aplikacji Delta Chat.\n\nAby kontynuować konfigurowanie drugiego urządzenia, zaktualizuj to urządzenie do najnowszej wersji aplikacji Delta Chat.</string>
<string name="multidevice_abort">Przerwać konfigurowanie kolejnego urządzenia?</string>
<string name="multidevice_abort_will_invalidate_copied_qr">Spowoduje to unieważnienie kodu QR skopiowanego do schowka.</string>
<string name="multidevice_experimental_hint">(eksperymentalna, wymagana wersja 1.36)</string>
@@ -697,9 +701,10 @@
<string name="accept_invalid_certificates">Zaakceptuj nieprawidłowe certyfikaty</string>
<string name="switch_account">Przełącz konto</string>
<string name="add_account">Dodaj konto</string>
<string name="profile_tag">Prywatna etykieta</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Etykieta profilu</string>
<string name="profile_tag_hint">np. Praca, Rodzina</string>
<string name="profile_tag_explain">Etykieta jest widoczna tylko dla ciebie; pomaga odróżnić twoje profile.</string>
<string name="profile_tag_explain">Ustaw etykietę widoczną tylko dla ciebie; pomoże ci to odróżnić twoje profile.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Przenieś na górę</string>
<string name="delete_account">Usuń konto</string>
+2 -7
View File
@@ -290,6 +290,7 @@
<!-- Menu item beside an app/chat that adds an icon to the system's home screen. If the user taps that icon, the app/chat is opened directly. -->
<string name="add_to_home_screen">Adicionar à Tela Inicial</string>
<string name="mute_for_one_hour">Silenciar por 1 hora</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Silenciar por 2 horas</string>
<string name="mute_for_one_day">Silenciar por 1 dia</string>
<string name="mute_for_seven_days">Silenciar por 7 dias</string>
@@ -326,13 +327,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Quer mesmo sair do grupo?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Delete %d chat? It will no longer be shown in the chat list, its messages will remain on the server.</item>
<item quantity="many">Apagar %d conversas? Elas não mais serão exibidas na lista, mas ficarão no servidor.</item>
<item quantity="other">Apagar %d conversas? Elas não mais serão exibidas na lista, mas ficarão no servidor.</item>
</plurals>
<string name="ask_delete_named_chat">Você tem certeza que quer apagar \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Apagar %d mensagem?</item>
<item quantity="many">Apagar %d mensagens?</item>
+3 -5
View File
@@ -132,6 +132,7 @@
<string name="menu_advanced">Avançado</string>
<string name="menu_view_profile">Ver perfil</string>
<string name="mute_for_one_hour">Calado por 1 hora</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Calado por 2 horas</string>
<string name="mute_for_one_day">Calado por 1 dia</string>
<string name="mute_for_seven_days">Calado por 7 dias</string>
@@ -143,11 +144,6 @@
<!-- get confirmations -->
<string name="ask_leave_group">Tem certeza que deseja deixar este grupo?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Apagar %d conversas? Elas não serão mais mostrados na lista, mas permanecerão no servidor.</item>
<item quantity="many">Apagar %d conversas? Elas não serão mais mostrados na lista, mas permanecerão no servidor.</item>
<item quantity="other">Apagar %d conversas? Elas não serão mais mostrados na lista, mas permanecerão no servidor.</item>
</plurals>
<string name="ask_forward">Reencaminhar mensages para %1$s?</string>
<string name="ask_export_attachment">Exportar anexo? A exportação de anexos permitirá o seu acesso a qualquer outra aplicação no seu dispositivo.\n\nContinuar?</string>
<string name="ask_block_contact">Bloquear este contacto? Não receberá mais mensagens deste contacto.</string>
@@ -407,4 +403,6 @@
<string name="menu.view.developer.open.current.log.file">Abrir o aqrquio do log actual</string>
<!-- disabling "Reliable service" will hide a the maybe annoying permanent-notification with the drawback that new-message-notifications get potentially unreliable -->
<string name="perm_enable_bg_reminder_title">Toque aqui para receber mensagens mesmo que o Delta Chat esteja em segundo plano.</string>
<string name="instant_onboarding_agree_default2">Termos e Política de privacidade para %1$s</string>
</resources>
+2 -7
View File
@@ -280,6 +280,7 @@
<!-- Menu item beside an app/chat that adds an icon to the system's home screen. If the user taps that icon, the app/chat is opened directly. -->
<string name="add_to_home_screen">Adăugați la ecranul principal</string>
<string name="mute_for_one_hour">Silențios timp de 1 oră</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Silențios timp de 2 ore</string>
<string name="mute_for_one_day">Silențios pentru 1 zi</string>
<string name="mute_for_seven_days">Silențios timp de 7 zile</string>
@@ -316,13 +317,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Ești sigur că vrei să părăsești acest grup?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Ștergeți %d chat-ul? Acestea nu vor mai fi afișate în lista de chat; mesajele lor vor rămâne pe server.</item>
<item quantity="few">Ștergeți %d chat-uri? Acestea nu vor mai fi afișate în lista de chat; mesajele lor vor rămâne pe server.</item>
<item quantity="other">Ștergeți %d de chat-urilAcestea nu vor mai fi afișate în lista de chat; mesajele lor vor rămâne pe server.</item>
</plurals>
<string name="ask_delete_named_chat">Sunteți sigur că vreți să ștergeți \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Ștergeți %d mesaj?</item>
<item quantity="few">Ștergeți %d mesaje?</item>
+12 -8
View File
@@ -325,6 +325,7 @@
<string name="menu_learn_spelling">Запоминать правописание</string>
<string name="menu_chat_audit_log">Журнал аудита чата</string>
<string name="jump_to_message">Перейти к сообщению</string>
<string name="jump_to_original_message">Перейти к исходному сообщению</string>
<string name="copy_json">Копировать JSON</string>
<string name="replace_draft">Заменить черновик</string>
<string name="title_share_location">Делиться местоположением со всеми участниками группы</string>
@@ -349,7 +350,9 @@
<string name="donate">Пожертвовать</string>
<string name="mute_for_one_hour">На 1 час</string>
<!-- deprecated -->
<string name="mute_for_two_hours">На 2 часа</string>
<string name="mute_for_eight_hours">На 8 часов</string>
<string name="mute_for_one_day">На 1 день</string>
<string name="mute_for_seven_days">На 7 дней</string>
<string name="mute_forever">Постоянно</string>
@@ -387,12 +390,12 @@
<!-- get confirmations -->
<string name="ask_leave_group">Вы уверены, что хотите покинуть эту группу?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Удалить %d чат?</item>
<item quantity="few">Удалить %d чата?</item>
<item quantity="many">Удалить %d чатов?</item>
<item quantity="other">Удалить %d чатов?</item>
<item quantity="one">Удалить %d чат на всех ваших устройствах?</item>
<item quantity="few">Удалить %d чата на всех ваших устройствах?</item>
<item quantity="many">Удалить %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>
@@ -400,7 +403,7 @@
<item quantity="many">Удалить %d сообщений на всех ваших устройствах?</item>
<item quantity="other">Удалить %d сообщений на всех ваших устройствах?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Удалить %d сообщение?</item>
<item quantity="few">Удалить %d сообщения?</item>
@@ -699,9 +702,10 @@
<string name="accept_invalid_certificates">Принимать недействительные сертификаты</string>
<string name="switch_account">Сменить профиль</string>
<string name="add_account">Добавить профиль</string>
<string name="profile_tag">Личный тег</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Метка профиля</string>
<string name="profile_tag_hint">Например: Работа, Семья</string>
<string name="profile_tag_explain">Тег, видимый только вам, помогает различать ваши профили.</string>
<string name="profile_tag_explain">Установите метку, видимую только вам, которая поможет различать ваши профили.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Переместить вверх</string>
<string name="delete_account">Удалить профиль</string>
+1 -5
View File
@@ -191,6 +191,7 @@
<!-- Opposite of "Pin chat", removing the sticky-state from a chat. -->
<string name="unpin">Isbloca</string>
<string name="mute_for_one_hour">A sa muda pro 1 ora</string>
<!-- deprecated -->
<string name="mute_for_two_hours">A sa muda pro 2 oras</string>
<string name="mute_for_one_day">A sa muda pro 1 die</string>
<string name="mute_for_seven_days">A sa muda pro 7 dies</string>
@@ -219,11 +220,6 @@
<!-- get confirmations -->
<string name="ask_leave_group">Ses seguru de chèrrere lassare custu grupu?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Cheres iscantzellare %d tzarrada? No at a èssere prus ammustrada in sa lista de sas tzarradas, ma sos messàgios ant a abarrare in su servidore.</item>
<item quantity="other">Cheres iscantzellare %d tzarradas? No ant a èssere prus ammustradas in sa lista de sas tzarradas, ma sos messàgios ant a abarrare in su servidore.</item>
</plurals>
<string name="ask_delete_named_chat">Ses seguru de chèrrere iscantzellare \"%1$s\"?</string>
<string name="ask_forward">Inoltrare su messàgiu a %1$s?</string>
<string name="ask_forward_multiple">Inoltrare messàgios a %1$d tzarradas?</string>
<string name="ask_export_attachment">Esportare sos allegados? S\'esportatzione de sos allegados at a permìtere a cale si siat àtera aplicatzione in su dispositivu tuo de b\'atzèdere.\n\nSighire?</string>
+2 -8
View File
@@ -280,6 +280,7 @@
<!-- Menu item beside an app/chat that adds an icon to the system's home screen. If the user taps that icon, the app/chat is opened directly. -->
<string name="add_to_home_screen">Pridať na domovskú obrazovku</string>
<string name="mute_for_one_hour">Stíšiť na 1 hodinu</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Stíšiť na 2 hodiny</string>
<string name="mute_for_one_day">Stíšiť na 1 deň</string>
<string name="mute_for_seven_days">Stíšiť na 7 dní</string>
@@ -317,14 +318,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Naozaj chcete opustiť túto skupinu?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Odstrániť %d chat? Už sa nebude zobrazovať v zozname chatu, jeho správy zostanú na serveri.</item>
<item quantity="few">Odstrániť %d chaty? Už sa nebudú zobrazovať v zozname chatu, ich správy zostanú na serveri.</item>
<item quantity="many">Odstrániť %d chaty? Už sa nebudú zobrazovať v zozname chatu, ich správy zostanú na serveri.</item>
<item quantity="other">Odstrániť %d konverzácií? Už sa nebudú zobrazovať v zozname konverzácií, ich správy zostanú na serveri.</item>
</plurals>
<string name="ask_delete_named_chat">Naozaj chcete položku odstrániť \"%1$s\" ?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Odstrániť %d správu?</item>
<item quantity="few">Odstrániť %d správy?</item>
+11 -6
View File
@@ -303,6 +303,7 @@
<string name="menu_learn_spelling">Mëso Drejtshkrim</string>
<string name="menu_chat_audit_log">Regjistër Auditimi Fjalosjeje</string>
<string name="jump_to_message">Hidhu te Mesazh</string>
<string name="jump_to_original_message">Hidhu te Mesazhi Origjinal</string>
<string name="copy_json">Kopjo JSON</string>
<string name="replace_draft">Zëvendëso Skicë</string>
<string name="title_share_location">Tregojua vendndodhjen krejt anëtarëve të grupit</string>
@@ -327,7 +328,9 @@
<string name="donate">Dhuroni</string>
<string name="mute_for_one_hour">Heshtoji për 1 orë</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Heshtoji për 2 orë</string>
<string name="mute_for_eight_hours">Heshtoje për 8 orë</string>
<string name="mute_for_one_day">Heshtoji për 1 ditë</string>
<string name="mute_for_seven_days">Heshtoji për 7 ditë</string>
<string name="mute_forever">Heshtoje përgjithmonë</string>
@@ -363,15 +366,16 @@
<!-- get confirmations -->
<string name="ask_leave_group">Jeni i sigurt se doni ta braktisni këtë grup?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Të fshihet %d fjalosje? Sdo të duket më te lista e bisedave; mesazhet e saj do të mbeten te shërbyesi.</item>
<item quantity="other">Të fshihen %d fjalosje? S\do të duken më te lista e fjalosjeve; mesazhet e tyre do të mbeten te shërbyesi.</item>
<item quantity="one">Të fshihet %d fjalosje në krejt pajisjet tuaja?</item>
<item quantity="other">Të fshihen %d fjalosje në krejt pajisjet tuaja?</item>
</plurals>
<string name="ask_delete_named_chat">Jeni i sigurt se doni të fshihet “%1$s”?</string>
<string name="ask_delete_named_chat">Të fshihet fjalosja “%1$s” në krejt pajisjet tuaja?</string>
<string name="ask_delete_message">Të fshihet ky mesazh në krejt pajisjet tuaja?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Të fshihet %d mesazh në krejt pajisjet tuaja?</item>
<item quantity="other">Të fshihen %d mesazhe në krejt pajisjet tuaja?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Të fshihet %d mesazh?</item>
<item quantity="other">Të fshihen %d mesazhe?</item>
@@ -661,9 +665,10 @@
<string name="accept_invalid_certificates">Prano dëshmi të pavlefshme</string>
<string name="switch_account">Ndërroni Llogari</string>
<string name="add_account">Shtoni Llogari</string>
<string name="profile_tag">Etiketë Private</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Etiketë Profili</string>
<string name="profile_tag_hint">p.sh., Pune, Familjeje</string>
<string name="profile_tag_explain">Ajo etiketë është e dukshme vetëm për ju; për tju ndihmuar ju të bëni dallimin mes profileve tuaja.</string>
<string name="profile_tag_explain">Caktoni një etiketë është e dukshme vetëm për ju, për të ndihmuar veten të bëni dallimin mes profileve tuaja.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Shpjere Në Krye</string>
<string name="delete_account">Fshije Llogarinë</string>
+2 -7
View File
@@ -283,6 +283,7 @@
<!-- Menu item beside an app/chat that adds an icon to the system's home screen. If the user taps that icon, the app/chat is opened directly. -->
<string name="add_to_home_screen">Додај на главни екран</string>
<string name="mute_for_one_hour">Утишај на 1 сат</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Утишај на 2 сата</string>
<string name="mute_for_one_day">Утишај на 1 дан</string>
<string name="mute_for_seven_days">Утишај на 7 дана</string>
@@ -319,13 +320,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Да ли заиста желите да напустите ову групу?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Избриши %d ћаскање? Више неће бити приказано на листи ћаскања; али поруке ће остати на серверу.</item>
<item quantity="few">Избриши %d ћаскањa? Они више неће бити приказани на листи ћаскања; али поруке ће остати на серверу.</item>
<item quantity="other">Избриши %d ћаскањa? Они више неће бити приказани на листи ћаскања; али поруке ће остати на серверу.</item>
</plurals>
<string name="ask_delete_named_chat">Јесте ли сигурни да желите да избришете „%1$s“?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Да ли желите да избришите %d поруку?</item>
<item quantity="few">Да ли желите да избришите %d поруке?</item>
+2 -6
View File
@@ -300,6 +300,7 @@
<string name="donate">Donera</string>
<string name="mute_for_one_hour">Tysta 1 timma</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Tysta 2 timmar</string>
<string name="mute_for_one_day">Tysta 1 dag</string>
<string name="mute_for_seven_days">Tysta 7 dagar</string>
@@ -335,12 +336,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Är du säker på att du vill lämna den här gruppen?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Radera %d chatt? Det kommer inte längre synas i chattlistan, meddelanden kommer att finnas kvar på servern.</item>
<item quantity="other">Radera %d chattar? De kommer inte att visas i chattlistan, deras meddelanden kommer finnas kvar på servern.</item>
</plurals>
<string name="ask_delete_named_chat">Är du säker på att du vill ta bort \"%1$s\"?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Vill du ta bort %d meddelande?</item>
<item quantity="other">Vill du ta bort %d meddelanden?</item>
+1
View File
@@ -133,6 +133,7 @@
<string name="menu_advanced">மேம்பட்ட அமைப்புகள்</string>
<string name="menu_view_profile">சுயவிவரத்தை காண்பி</string>
<string name="mute_for_one_hour">1 மணி இதற்காக ஊமையாக்கு</string>
<!-- deprecated -->
<string name="mute_for_two_hours">2 மணிகள் இதற்காக ஊமையாக்கு</string>
<string name="mute_for_one_day">1 நாள் இதற்காக ஊமையாக்கு</string>
<string name="mute_for_seven_days">7 நாட்கள் இதற்காக ஊமையாக்கு</string>
+1
View File
@@ -117,6 +117,7 @@
<string name="menu_zoom_in">పెద్దదిగా చూపు</string>
<string name="menu_zoom_out">పెద్దది చెయ్యి</string>
<string name="mute_for_one_hour">1 గంట నిశబ్దంగా ఉంచు</string>
<!-- deprecated -->
<string name="mute_for_two_hours">2 గంటలు నిశబ్దంగా ఉంచు</string>
<string name="mute_for_one_day">1 రోజు నిశబ్దంగా ఉంచు</string>
<string name="mute_for_seven_days">7 రోజులు నిశబ్దంగా ఉంచు</string>
+9 -6
View File
@@ -307,6 +307,7 @@
<string name="menu_learn_spelling">Yazımı Öğrenin</string>
<string name="menu_chat_audit_log">Sohbet Denetim Günlüğü</string>
<string name="jump_to_message">İletiye Atla</string>
<string name="jump_to_original_message">Özgün İletiye Atla</string>
<string name="copy_json">JSON kopyala</string>
<string name="replace_draft">Taslağı Değiştir</string>
<string name="title_share_location">Tüm öbek üyeleriyle konum paylaş</string>
@@ -331,6 +332,7 @@
<string name="donate">Bağış</string>
<string name="mute_for_one_hour">1 saatliğine sessize al</string>
<!-- deprecated -->
<string name="mute_for_two_hours">2 saatliğine sessize al</string>
<string name="mute_for_one_day">1 günlüğüne sessize al</string>
<string name="mute_for_seven_days">7 günlüğüne sessize al</string>
@@ -367,16 +369,16 @@
<!-- get confirmations -->
<string name="ask_leave_group">Bu öbekten ayrılmak istediğinizden emin misiniz?</string>
<plurals name="ask_delete_chat">
<item quantity="one">%d sohbet silinsin mi?</item>
<item quantity="other">%d sohbet silinsin mi?</item>
<item quantity="one">Tüm aygıtlarınızdaki %d sohbet silinsin mi?</item>
<item quantity="other">Tüm aygıtlarınızdaki %d sohbet silinsin mi?</item>
</plurals>
<string name="ask_delete_named_chat">“%1$s” sohbeti silinsin mi?</string>
<string name="ask_delete_named_chat">Tüm aygıtlarınızdaki “%1$s” sohbeti silinsin mi?</string>
<string name="ask_delete_message">Tüm aygıtlarınızdaki bu ileti silinsin mi?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Tüm aygıtlarınızdaki %d ileti silinsin mi?</item>
<item quantity="other">Tüm aygıtlarınızdaki %d ileti silinsin mi?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">%d ileti silinsin mi?</item>
<item quantity="other">%d ileti silinsin mi?</item>
@@ -667,9 +669,10 @@
<string name="accept_invalid_certificates">Geçersiz sertifikaları kabul et</string>
<string name="switch_account">Profili Değiştir</string>
<string name="add_account">Profil Ekle</string>
<string name="profile_tag">Özel Etiket</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Profil Etiketi</string>
<string name="profile_tag_hint">ör. İş, Aile</string>
<string name="profile_tag_explain">Yalnızca sizin için görünür etiket; profilleriniz arasında farklılığa yardımcı olur.</string>
<string name="profile_tag_explain">Yalnızca sizin için görünebilir bir etiket ayarlayın; profilleriniz arasındaki farkı anlamanıza yardımcı olur.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">En Üste Taşı</string>
<string name="delete_account">Profili Sil</string>
+2 -10
View File
@@ -347,6 +347,7 @@
<string name="donate">Пожертвувати</string>
<string name="mute_for_one_hour">Відключити сповіщення на 1 годину</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Відключити сповіщення на 2 години</string>
<string name="mute_for_one_day">Відключити сповіщення на 1 день</string>
<string name="mute_for_seven_days">Відключити сповіщення на 7 днів</string>
@@ -384,14 +385,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Ви впевнені, що хочете залишити цю групу?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Видалити %d чат? Він більше не буде відображатися у списку чатів, його повідомлення залишаться на сервері.</item>
<item quantity="few">Видалити %d чати? Вони більше не будуть відображатися у списку чатів, їх повідомлення залишаться на сервері.</item>
<item quantity="many">Видалити %d чатів? Вони більше не будуть відображатися у списку чатів, їх повідомлення залишаться на сервері.</item>
<item quantity="other">Видалити %d чатів? Вони більше не будуть відображатися у списку чатів, їх повідомлення залишаться на сервері.</item>
</plurals>
<string name="ask_delete_named_chat">Видалити чат \"%1$s\"? Він більше не буде відображатися у списку чату, але його повідомлення залишаться на сервері.</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Видалити %d повідомлення?</item>
<item quantity="few">Видалити %d повідомлення?</item>
@@ -689,9 +683,7 @@
<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>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Перемістити на початок</string>
<string name="delete_account">Видалити обліковий запис</string>
+2 -5
View File
@@ -283,6 +283,7 @@
<string name="donate">Quyên tặng</string>
<string name="mute_for_one_hour">Tắt tiếng trong 1 giờ</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Tắt tiếng trong 2 giờ</string>
<string name="mute_for_one_day">Tắt tiếng trong 1 ngày</string>
<string name="mute_for_seven_days">Tắt tiếng trong 7 ngày</string>
@@ -317,11 +318,7 @@
<!-- get confirmations -->
<string name="ask_leave_group">Bạn có chắc chắn muốn rời khỏi nhóm này không?</string>
<plurals name="ask_delete_chat">
<item quantity="other">Xóa cuộc trò chuyện %d? Nó sẽ không còn được hiển thị trong danh sách trò chuyện nữa; tin nhắn của nó sẽ vẫn còn trên máy chủ.</item>
</plurals>
<string name="ask_delete_named_chat">Bạn có chắc chắn muốn xóa \"%1$s\" không?</string>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="other">Xóa %d tin nhắn?</item>
</plurals>
+30 -26
View File
@@ -46,9 +46,9 @@
<string name="edited">已编辑</string>
<string name="edit_message">编辑消息</string>
<!-- Verb "to archive", as in "put a chat in the archive", not a noun "The Archive". -->
<string name="archive"></string>
<string name="archive"></string>
<!-- Verb "to unarchive", as in "remove a chat from the archive", opposite of the previous string -->
<string name="unarchive">取消</string>
<string name="unarchive">取消</string>
<string name="mute">静音</string>
<string name="muted">已静音</string>
<string name="ephemeral_messages">消息定时销毁</string>
@@ -150,9 +150,9 @@
<string name="gif">Gif</string>
<!-- "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="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>
<string name="voice_message">语音消息</string>
@@ -232,8 +232,8 @@
<string name="menu_edit_group">编辑群组</string>
<string name="menu_group_name_and_image">群组名称和图像</string>
<string name="menu_show_global_map">显示所有位置</string>
<string name="menu_archive_chat">档聊天</string>
<string name="menu_unarchive_chat">取消档聊天</string>
<string name="menu_archive_chat">档聊天</string>
<string name="menu_unarchive_chat">取消档聊天</string>
<string name="menu_add_attachment">添加附件</string>
<string name="menu_leave_group">离开群组</string>
<string name="menu_delete_chat">删除聊天</string>
@@ -298,6 +298,7 @@
<string name="menu_learn_spelling">学习拼写</string>
<string name="menu_chat_audit_log">聊天审计日志</string>
<string name="jump_to_message">跳转到消息</string>
<string name="jump_to_original_message">跳转到原始消息</string>
<string name="copy_json">复制 JSON</string>
<string name="replace_draft">替换草稿</string>
<string name="title_share_location">与所有群组成员共享位置</string>
@@ -322,7 +323,9 @@
<string name="donate">捐赠</string>
<string name="mute_for_one_hour">静音 1 小时</string>
<!-- deprecated -->
<string name="mute_for_two_hours">静音 2 小时</string>
<string name="mute_for_eight_hours">静音 8 小时</string>
<string name="mute_for_one_day">静音 1 天</string>
<string name="mute_for_seven_days">静音 7 天</string>
<string name="mute_forever">永久静音</string>
@@ -357,14 +360,14 @@
<!-- get confirmations -->
<string name="ask_leave_group">您确定要离开此群组吗?</string>
<plurals name="ask_delete_chat">
<item quantity="other">删除 %d 个聊天?被删除的聊天不会再显示在聊天列表中;聊天消息仍将保留于服务器。</item>
<item quantity="other">是否删除所有设备上的 %d 个聊天?</item>
</plurals>
<string name="ask_delete_named_chat">删除聊天“%1$s”?它将不再显示在聊天列表中,其消息将保留在服务器上。</string>
<string name="ask_delete_message">在所有设备上删除此消息</string>
<string name="ask_delete_named_chat">是否删除所有设备上的聊天“%1$s”?</string>
<string name="ask_delete_message">是否在所有设备上删除此消息?</string>
<plurals name="ask_delete_messages">
<item quantity="other">是否删除所有设备上的 %d 条消息?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="other">删除 %d 条消息吗?</item>
</plurals>
@@ -396,12 +399,12 @@
<!-- chatlist and chat view -->
<plurals name="chat_archived">
<item quantity="other">%d 个聊天已存档</item>
<item quantity="other">已归档 %d 个聊天</item>
</plurals>
<plurals name="chat_unarchived">
<item quantity="other">%d 个聊天已取消存档</item>
<item quantity="other">已取消归档 %d 个聊天</item>
</plurals>
<string name="chat_archived_chats_title">档聊天</string>
<string name="chat_archived_chats_title">档聊天</string>
<string name="chat_please_enter_message">请输入消息。</string>
<string name="chat_camera_unavailable">相机不可用。</string>
<string name="chat_unable_to_record_audio">无法录制音频。</string>
@@ -415,14 +418,14 @@
<string name="chat_record_slide_to_cancel">滑动来取消</string>
<string name="chat_record_explain">按住来录制语音消息,松开来发送</string>
<string name="chat_no_chats_yet_title">收件箱为空。\n按“+”来开始新聊天。</string>
<string name="chat_all_archived">所有聊天已档。\n按“+”来开始新聊天。</string>
<string name="chat_all_archived">所有聊天已档。\n按“+”来开始新聊天。</string>
<string name="chat_share_with_title">分享给</string>
<string name="chat_input_placeholder">输入消息…</string>
<string name="chat_archived_label"></string>
<string name="chat_archived_label"></string>
<string name="chat_request_label">请求</string>
<string name="chat_no_messages">没有消息。</string>
<string name="chat_self_talk_subtitle">发给自己的消息</string>
<string name="archive_empty_hint">档的聊天将显示在此处。</string>
<string name="archive_empty_hint">档的聊天将显示在此处。</string>
<string name="saved_messages">保存的消息</string>
<string name="saved_messages_explain">• 转发消息于此以便于访问\n\n• 做笔记或语音备忘录\n\n• 附加媒体以保存它们</string>
<!-- Should match "Saved" from "Saved messages" -->
@@ -489,7 +492,7 @@
<string name="remove_group_image">移除群组图像</string>
<string name="change_group_image">更改群组图像</string>
<string name="group_create_button">创建群组</string>
<string name="group_please_enter_group_name">为群组输入一个名称。</string>
<string name="group_please_enter_group_name">输入群组名称。</string>
<string name="group_add_members">添加成员</string>
<string name="group_self_not_in_group">为了执行此操作,您必须是群组成员。</string>
<string name="profile_encryption">加密</string>
@@ -565,7 +568,7 @@
<!-- Shown in the setting if the app is "Connected" -->
<string name="connectivity_connected">已连接</string>
<string name="sending">发送中…</string>
<string name="last_msg_sent_successfully">一条消息发送成功</string>
<string name="last_msg_sent_successfully">最后一条消息已成功发送。</string>
<string name="not_supported_by_provider">不被您的邮件提供商支持。</string>
<!-- Subtitle in quota context of "Connetivity" view. Should be be plural always, no number is prefixed. -->
<string name="messages">消息</string>
@@ -644,16 +647,17 @@
<string name="login_error_required_fields">请输入有效的电子邮件地址和密码</string>
<string name="import_backup_title">从备份恢复</string>
<string name="import_backup_ask">在“%1$s”找到备份。\n\n您要导入并使用其中的全部数据与设置吗?</string>
<string name="import_backup_no_backup_found">没有找到备份。\n\n将备份复制到“%1$s”然后再试一次。或者按“开始发送消息”来进行常规设置流程。</string>
<string name="import_backup_no_backup_found">找到备份。\n\n将备份复制到“%1$s”然后重试。或者按“开始发送消息”来进行常规设置流程。</string>
<!-- Translators: %1$s will be replaced by the e-mail address -->
<string name="login_error_cannot_login">无法作为“%1$s”登录。请检查电子邮件地址和密码是否正确。</string>
<!-- TLS certificate checks -->
<string name="accept_invalid_certificates">接受无效的证书</string>
<string name="switch_account">切换账号</string>
<string name="add_account">添加账号</string>
<string name="profile_tag">私密标签</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">账号标签</string>
<string name="profile_tag_hint">如工作、家庭</string>
<string name="profile_tag_explain">仅对可见的标签帮助区分不同的配置文件</string>
<string name="profile_tag_explain">设置仅对可见的标签帮助区分您的账号。</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">移到顶部</string>
<string name="delete_account">删除账号</string>
@@ -986,8 +990,8 @@
<string name="qrshow_join_contact_no_connection_toast">没有互联网连接,无法进行二维码设置。</string>
<string name="qraccount_ask_create_and_login">在“%1$s”创建新的电子邮件地址并登录?</string>
<string name="qraccount_ask_create_and_login_another">在“%1$s”创建新账号并登录?\n\n不会删除您现有的账号。使用“切换账号”在账号之间切换。</string>
<string name="set_name_and_avatar_explain">设置一个你的联系人认得出的名字。你还可以设置头像图片</string>
<string name="please_enter_name">请输入名</string>
<string name="set_name_and_avatar_explain">设置联系人可以识别的名称,您还可以设置个人资料图片</string>
<string name="please_enter_name">请输入名称。</string>
<string name="qraccount_qr_code_cannot_be_used">扫描的二维码不能用于创建新账号。</string>
<!-- the placeholder will be replaced by the e-mail address of the profile -->
<string name="qrlogin_ask_login">登录 \"%1$s\"吗?</string>
@@ -1071,11 +1075,11 @@
<string name="global_menu_help_desktop">帮助</string>
<string name="delta_chat_homepage">Delta Chat 主页</string>
<string name="contribute">贡献</string>
<string name="global_menu_help_report_desktop">报告一个问题</string>
<string name="global_menu_help_report_desktop">报告问题</string>
<string name="global_menu_help_about_desktop">关于 Delta Chat</string>
<string name="global_menu_file_open_desktop">打开 Delta Chat</string>
<string name="global_menu_minimize_to_tray">最小化</string>
<string name="no_chat_selected_suggestion_desktop">选择一个聊天或创建新聊天</string>
<string name="no_chat_selected_suggestion_desktop">选择聊天或创建新聊天</string>
<string name="write_message_desktop">输入消息…</string>
<string name="encryption_info_title_desktop">加密信息</string>
<string name="delete_message_desktop">删除消息</string>
+60 -5
View File
@@ -28,6 +28,8 @@
<string name="join">加入</string>
<string name="rejoin">重新加入</string>
<string name="delete">刪除</string>
<string name="delete_for_me">為我刪除</string>
<string name="delete_for_everyone">為所有人刪除</string>
<string name="info">資訊</string>
<string name="update">更新</string>
<string name="emoji">表情符號</string>
@@ -37,14 +39,18 @@
<string name="close_window">關閉視窗</string>
<string name="forward">轉發</string>
<string name="create">建立</string>
<string name="reset">重置</string>
<string name="later">稍後</string>
<!-- "Resend" means "Sending the selected message(s) again to the same chat". The string is used in a menu and should be as short as possible. Resending may be needed after failures or to repost old messages to new members. -->
<string name="resend">重新傳送</string>
<string name="edited">已編輯</string>
<string name="edit_message">編輯訊息</string>
<!-- Verb "to archive", as in "put a chat in the archive", not a noun "The Archive". -->
<string name="archive">封存</string>
<!-- Verb "to unarchive", as in "remove a chat from the archive", opposite of the previous string -->
<string name="unarchive">取消封存</string>
<string name="mute">靜音</string>
<string name="muted">勿擾</string>
<string name="ephemeral_messages">自動銷毀訊息</string>
<string name="ephemeral_messages_hint">這些設定將會套用在所有使用 Delta Chat 的聊天成員上。但他們依然可以複製、儲存和轉發訊息,或使用其他的電子郵件客戶端。</string>
<string name="save">儲存</string>
@@ -173,6 +179,16 @@
<string name="webxdc_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">小程式</string>
<string name="webxdc_store_url">應用選取器連結</string>
<string name="webxdc_store_url_explain">如果設定,該連接將用作應用選擇器而不是預設連結</string>
<string name="home">主頁</string>
<string name="games">游戲</string>
<string name="tools">工具</string>
<string name="app_size">尺寸大小</string>
<string name="app_date_published">已發佈</string>
<string name="add_to_chat">添加到聊天</string>
<!-- short for "Browse through the App Picker/Store/Catalogue"; could also be translated as "Discover" or "Search" -->
<string name="browse">瀏覽</string>
<string name="unknown">未知</string>
<string name="green">綠色</string>
@@ -200,6 +216,8 @@
<string name="new_classic_contact_explain">手動添加的聯絡人可用於向傳統電子郵件發送文本,並且不能保證端到端加密。</string>
<string name="menu_new_chat">新增聊天</string>
<string name="menu_new_group">新增群組</string>
<!-- "Chat" is a verb here, "Message to" would also fit. the string might be used in the "New Chat" screen above the contact list -->
<string name="chat_with">與……聊天</string>
<string name="clone_chat">克隆聊天</string>
<!-- consider keeping the term "broadcast" as in WhatsApp or Telegram -->
<string name="broadcast_list">廣播列表</string>
@@ -280,6 +298,7 @@
<string name="menu_learn_spelling">學習拼寫</string>
<string name="menu_chat_audit_log">對話審查紀錄</string>
<string name="jump_to_message">移動至訊息</string>
<string name="jump_to_original_message">跳轉到原始訊息</string>
<string name="copy_json">複製 JSON 內容</string>
<string name="replace_draft">取代草稿</string>
<string name="title_share_location">分享所在地給所有群組成員</string>
@@ -304,6 +323,7 @@
<string name="donate">捐贈</string>
<string name="mute_for_one_hour">靜音1小時</string>
<!-- deprecated -->
<string name="mute_for_two_hours">靜音2小時</string>
<string name="mute_for_one_day">靜音1天</string>
<string name="mute_for_seven_days">靜音7天</string>
@@ -339,10 +359,14 @@
<!-- get confirmations -->
<string name="ask_leave_group">確定要離開本群組?</string>
<plurals name="ask_delete_chat">
<item quantity="other">確定刪除%d個對話嗎?將會從對話紀錄中刪除,然而伺服器中仍會保留對話。</item>
<item quantity="other">刪除您所有裝置上的%d個聊天記錄?</item>
</plurals>
<string name="ask_delete_named_chat">你確定你要刪除「%1$s」</string>
<!-- deprecated, use ask_delete_messages -->
<string name="ask_delete_named_chat">刪除您所有設備上的“%1$s”聊天 </string>
<string name="ask_delete_message">在您的所有裝置上刪除此訊息?</string>
<plurals name="ask_delete_messages">
<item quantity="other">是否刪除所有裝置上的%d條訊息?</item>
</plurals>
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="other">刪除%d則訊息?</item>
</plurals>
@@ -473,6 +497,8 @@
<string name="profile_encryption">加密</string>
<string name="profile_shared_chats">共享的對話</string>
<string name="related_chats">相關對話</string>
<!-- Separator between the list of actual members and past members -->
<string name="past_members">以前成員</string>
<string name="tab_contact">聯絡人</string>
<string name="tab_group">群組</string>
<string name="tab_gallery">相簿</string>
@@ -486,6 +512,7 @@
<string name="tab_audio_empty_hint">在此聊天中分享的音訊檔和語音消息將顯示在此處。</string>
<string name="tab_webxdc_empty_hint">在此聊天中分享的應用程式將在此處顯示。</string>
<string name="tab_all_media_empty_hint">在任何聊天中分享的媒體都會顯示在此處。</string>
<string name="all_files_empty_hint">在任何聊天中共用的檔案和其他檔案都會顯示在此處。</string>
<string name="all_apps_empty_hint">在任何聊天中接收或發送的應用程式都會顯示在此處。</string>
<string name="media_preview">媒體預覽</string>
<!-- option to show images in the gallery with the correct width/height aspect (instead of square); other gallery apps may be a source of inspiration for translation :) -->
@@ -512,6 +539,7 @@
<string name="multidevice_receiver_title">新增為第二個裝置</string>
<string name="multidevice_open_settings_on_other_device">在第一台裝置上,轉到「設定/新增第二台裝置」並掃描那裡顯示的QR碼</string>
<string name="multidevice_receiver_scanning_ask">將賬戶檔從其他裝置複製到此裝置?</string>
<string name="multidevice_receiver_needs_update">您要導入的配置檔來自較新的 Delta Chat 版本。\n\n要繼續設定第二台裝置,請將此裝置更新到最新版本的 Delta Chat。</string>
<string name="multidevice_abort">中止設定第二個裝置?</string>
<string name="multidevice_abort_will_invalidate_copied_qr">這將使複製到剪貼板的 QR 碼失效。</string>
<string name="multidevice_experimental_hint">(實驗性,需要版本 1.36</string>
@@ -625,9 +653,12 @@
<string name="accept_invalid_certificates">接受無效證書</string>
<string name="switch_account">切換個人檔案</string>
<string name="add_account">新增個人檔案</string>
<string name="profile_tag">私有標籤</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">賬戶標籤</string>
<string name="profile_tag_hint">例如工作、 家庭</string>
<string name="profile_tag_explain">僅對您可見的標籤;幫助您區分您的個人資料</string>
<string name="profile_tag_explain">設置僅對您可見的標籤;幫助您區分您的賬戶</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">移至頁首</string>
<string name="delete_account">刪除個人檔案</string>
<string name="delete_account_ask">您確定要刪除您的賬戶數據嗎?</string>
<string name="delete_account_explain_with_name">此裝置上 「%s」 的所有賬戶資料都將被刪除,包括您的端到端加密設置、聯絡人、聊天、消息和媒體。此操作無法復原。</string>
@@ -673,6 +704,8 @@
<string name="pref_screen_security_explain">要求系統在本通訊軟體中及應用程式列表中禁止擷圖</string>
<string name="pref_screen_security_please_restart_hint">請重新啟動本 app 以啟用螢幕安全設定。</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>
@@ -690,6 +723,7 @@
<string name="pref_appearance">外觀</string>
<string name="pref_theme">佈景主題</string>
<string name="pref_language">語言</string>
<string name="pref_use_system_ui_font">使用系統字體</string>
<string name="pref_incognito_keyboard">保密鍵盤</string>
<!-- Translators: Must indicate that there is no guarantee as the system may not honor our request. -->
<string name="pref_incognito_keyboard_explain">要求系統關閉鍵盤的個人化學習設定</string>
@@ -1038,6 +1072,8 @@
<string name="global_menu_view_developer_desktop">開發者</string>
<string name="global_menu_view_developer_tools_desktop">開發者工具</string>
<string name="global_menu_help_desktop">幫助</string>
<string name="delta_chat_homepage">Delta Chat 主頁</string>
<string name="contribute">貢獻</string>
<string name="global_menu_help_report_desktop">報告問題</string>
<string name="global_menu_help_about_desktop">關於 Delta Chat</string>
<string name="global_menu_file_open_desktop">開啟 Delta Chat</string>
@@ -1050,6 +1086,8 @@
<string name="timestamp_format_m_desktop">MMM D</string>
<string name="remove_desktop">移除</string>
<string name="save_desktop">儲存</string>
<!-- Opposite of "Save". Undo a "Save" action. Similar to "Unmute", "Unpin". Could also be worded as "Save no longer" or so. -->
<string name="unsave">取消保存</string>
<string name="name_desktop">名稱</string>
<string name="select_group_image_desktop">選擇群組圖片</string>
<string name="export_backup_desktop">匯出備份</string>
@@ -1109,6 +1147,18 @@
<string name="notifications_avg_minutes">平均每%1$d分鐘一次</string>
<string name="notifications_avg_hours">平均每%1$d小時一次</string>
<string name="last_check_at">在%1$s檢查</string>
<string name="system_settings">系統設定</string>
<!-- shown below the button "System Settings" on the notification screen. this is a hint about what can be edited on System Settings' Notification page - eg. the notification type (banner, lock screen, notification centre), sound, badges and so on. no need to be exhaustive here, it is only to give the user an idea. -->
<string name="system_settings_notify_explain_ios">編輯類型、徽章、預覽等</string>
<!-- iOS shortcut widget -->
<!-- use the same translation for "Shortcuts" as the system is using, often the term "Shortcut" stays untranslated; check eg. how the "Shortcuts" system app is called in your locale -->
<string name="shortcuts_widget_title">捷徑</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="shortcuts_widget_description">使用 Delta Chat 的“添加到小工具”添加項目</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="remove_from_widget">從小工具中移除</string>
<!-- use the same translation for "Widget" as the system is using; often the term "Widget" stays untranslated -->
<string name="add_to_widget">添加到小工具</string>
<!-- iOS permissions, copy from "deltachat-ios/Info.plist", which is used on missing translations in "deltachat-ios/LANG.lproj/InfoPlist.strings" -->
<string name="InfoPlist_NSCameraUsageDescription">Delta Chat 使用您的相機拍攝和傳送照片和影片,以及掃描QR碼。</string>
<string name="InfoPlist_NSContactsUsageDescription">Delta Chat 使用您的聯絡人來顯示您可以寫入的電子郵件位址清單。Delta Chat 沒有伺服器,您的聯絡人不會發送到任何地方。</string>
@@ -1117,6 +1167,9 @@
<string name="InfoPlist_NSMicrophoneUsageDescription">Delta Chat 使用您的麥克風錄製和發送音訊和帶聲音的視頻。</string>
<string name="InfoPlist_NSPhotoLibraryUsageDescription">Delta Chat 將讓您從圖庫中選擇要傳送的照片。</string>
<string name="InfoPlist_NSPhotoLibraryAddUsageDescription">Delta Chat 希望將圖像保存到您的照片庫。</string>
<string name="InfoPlist_NSFaceIDUsageDescription">Delta Chat 可以使用 Face ID 保護您的本地賬戶、備份創建和第二台裝置設定。</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>
@@ -1129,5 +1182,7 @@
<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_50_android">新功能\n\n❤️ 🔥 新的表情符號選擇器,包含更多表情符號\n\n🎮 增強的聊天應用程式:在上下文中獲取通知並打開支援應用程式,即直接打開添加的日曆條目\n\n👍獲取有關對您的消訊息的回應的通知\n\n...🛠️ 修復以及更多在%1$s</string>
<string name="update_switch_profile_placement">ℹ️「切換賬戶」選項已移動:點擊主螢幕右上角的賬戶大頭貼以添加或切換賬戶 💡</string>
</resources>
+1 -1
View File
@@ -72,7 +72,7 @@
<string-array name="mute_durations">
<item>@string/mute_for_one_hour</item>
<item>@string/mute_for_two_hours</item>
<item>@string/mute_for_eight_hours</item>
<item>@string/mute_for_one_day</item>
<item>@string/mute_for_seven_days</item>
<item>@string/mute_forever</item>
+27 -22
View File
@@ -1,16 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">
<!-- custom strings -->
<string name="community">Community</string>
<string name="description">Description</string>
<string name="ask_join_community">Do you want to join the Community \"%1$s\"?</string>
<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>
<string name="menu_export_image">Export Image</string>
<!-- the word "or" to separate blocks in the user interface that are mutually exclusive -->
<string name="or_separator">or</string>
<string name="online">online</string>
<string name="pink">Pink</string>
<string name="gray">Gray</string>
<string name="super_group">Super Group</string>
<string name="channel">Channel</string>
<string name="public_bots">🤖 Public Bots</string>
<string name="share_location_for_12_hours">For 12 hours</string>
<string name="force_e2ee">Force End-To-End Encryption</string>
<string name="disable_force_e2ee_warning">⚠️ If you disable this option, you will not be protected against sending unencrypted messages by accident. Only disable this if you want to send unencrypted e-mails with your classic e-mail account.</string>
<!-- End of custom strings -->
<!-- common strings without special context -->
<string name="app_name">ArcaneChat</string>
<string name="ok">OK</string>
<string name="cancel">Cancel</string>
<!-- the word "or" to separate blocks in the user interface that are mutually exclusive -->
<string name="or_separator">or</string>
<string name="clear_search">Clear Search</string>
<!-- a noun, used on a button, short for "show link" -->
<string name="link">Link</string>
@@ -118,7 +131,6 @@
<!-- Refers to the time a contact was last seen. Shown below contact name in the profile. The placeholder will be replaced by a relative point in time as "3 minutes ago" (see https://momentjs.com for more examples and languages)-->
<string name="last_seen_relative">last seen %1$s</string>
<string name="last_seen_unknown">last seen: Unknown</string>
<string name="online">online</string>
<!-- Shown beside messages that are "N minutes old". Prefer short strings, or well-known abbreviations. -->
<plurals name="n_minutes">
<item quantity="one">%d min</item>
@@ -216,8 +228,6 @@
<string name="purple">Purple</string>
<string name="magenta">Magenta</string>
<string name="white">White</string>
<string name="pink">Pink</string>
<string name="gray">Gray</string>
<string name="zoom">Zoom</string>
<string name="extra_small">Extra small</string>
@@ -282,7 +292,6 @@
<string name="menu_unmute">Unmute</string>
<string name="menu_export_attachment">Export Attachment</string>
<string name="menu_export_attachments">Export Attachments</string>
<string name="menu_export_image">Export Image</string>
<string name="menu_all_media">All Media</string>
<!-- Command to jump to the original message corresponding to a gallery image or document -->
<string name="show_in_chat">Show in Chat</string>
@@ -343,7 +352,9 @@
<string name="donate">Donate</string>
<string name="mute_for_one_hour">Mute for 1 hour</string>
<!-- deprecated -->
<string name="mute_for_two_hours">Mute for 2 hours</string>
<string name="mute_for_eight_hours">Mute for 8 hours</string>
<string name="mute_for_one_day">Mute for 1 day</string>
<string name="mute_for_seven_days">Mute for 7 days</string>
<string name="mute_forever">Mute forever</string>
@@ -353,7 +364,6 @@
<string name="share_location_for_one_hour">For 1 hour</string>
<string name="share_location_for_two_hours">For 2 hours</string>
<string name="share_location_for_six_hours">For 6 hours</string>
<string name="share_location_for_12_hours">For 12 hours</string>
<plurals name="ask_send_following_n_files_to">
<item quantity="one">Send the following file to %s?</item>
@@ -380,16 +390,16 @@
<!-- get confirmations -->
<string name="ask_leave_group">Are you sure you want to leave this group?</string>
<plurals name="ask_delete_chat">
<item quantity="one">Delete %d chat?</item>
<item quantity="other">Delete %d chats?</item>
<item quantity="one">Delete %d chat on all your devices?</item>
<item quantity="other">Delete %d chats on all your devices?</item>
</plurals>
<string name="ask_delete_named_chat">Delete chat \"%1$s\"?</string>
<string name="ask_delete_named_chat">Delete chat \"%1$s\" on all your devices?</string>
<string name="ask_delete_message">Delete this message on all your devices?</string>
<plurals name="ask_delete_messages">
<item quantity="one">Delete %d message on all your devices?</item>
<item quantity="other">Delete %d messages on all your devices?</item>
</plurals>
<!-- deprecated, use ask_delete_messages -->
<!-- Used for the deletion of Device messages -->
<plurals name="ask_delete_messages_simple">
<item quantity="one">Delete %d message?</item>
<item quantity="other">Delete %d messages?</item>
@@ -468,13 +478,8 @@
<!-- mailing lists -->
<string name="mailing_list">Mailing List</string>
<string name="super_group">Super Group</string>
<string name="channel">Channel</string>
<string name="mailing_list_profile_info">Changes to mailing list name and image apply on this device only.</string>
<!-- extra services -->
<string name="public_bots">🤖 Public Bots</string>
<!-- webxdc -->
<!-- "Start..." button for an app -->
<string name="start_app">Start…</string>
@@ -525,8 +530,6 @@
<string name="group_create_button">Create Group</string>
<string name="group_please_enter_group_name">Please enter a name for the group.</string>
<string name="group_add_members">Add Members</string>
<string name="group_add_member">Add Member</string>
<string name="group_remove_member">Remove Member</string>
<string name="group_self_not_in_group">You must be a member of the group to perform this action.</string>
<string name="profile_encryption">Encryption</string>
<string name="profile_shared_chats">Shared Chats</string>
@@ -687,9 +690,10 @@
<string name="accept_invalid_certificates">Accept invalid certificates</string>
<string name="switch_account">Switch Profile</string>
<string name="add_account">Add Profile</string>
<string name="profile_tag">Private Tag</string>
<!-- for translations, you can also think of "Profile Tag" or "Profile Description" as the source string -->
<string name="profile_tag">Profile Label</string>
<string name="profile_tag_hint">eg. Work, Family</string>
<string name="profile_tag_explain">Tag that is visible only for you; helping you to differ between your profiles.</string>
<string name="profile_tag_explain">Set a label that is visible only for you; helping you to differ between your profiles.</string>
<!-- Menu entry to sort an item to the beginning of a list. Only "To Top" may do as well in some translations, if that helps to stay shorter. -->
<string name="move_to_top">Move to Top</string>
<string name="delete_account">Delete Profile</string>
@@ -762,8 +766,6 @@
<string name="pref_incognito_keyboard_explain">Request keyboard to disable personalized learning</string>
<string name="pref_read_receipts">Read Receipts</string>
<string name="pref_read_receipts_explain">If read receipts are disabled, you won\'t be able to see read receipts from others.</string>
<string name="pref_subject">Subject</string>
<string name="pref_subject_explain">If subject is disabled, your messages will be sent without a subject.</string>
<string name="pref_server">Server</string>
<string name="pref_encryption">Encryption</string>
<string name="pref_manage_keys">Manage Keys</string>
@@ -897,6 +899,7 @@
<string name="autocrypt_prefer_e2ee">Prefer End-To-End Encryption</string>
<string name="autocrypt_asm_subject">Autocrypt Setup Message</string>
<string name="autocrypt_asm_general_body">This is the Autocrypt Setup Message used to transfer your end-to-end setup between clients.\n\nTo decrypt and use your setup, open the message in an Autocrypt-compliant client and enter the setup code presented on the generating device.</string>
<!-- deprecated -->
<string name="autocrypt_asm_click_body">This is the Autocrypt Setup Message used to transfer your end-to-end setup between clients.\n\nTo decrypt and use your setup, tap or click on this message.</string>
<string name="autocrypt_continue_transfer_title">Autocrypt Setup Message</string>
<string name="autocrypt_continue_transfer_please_enter_code">Please enter the setup code displayed on the other device.</string>
@@ -1218,6 +1221,8 @@
<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_56_android">🔮 What\'s new?\n\n★ add option to mute chats for 8 hours\n\n★ fix problem with padlock not appearing in messages\n\n★ always paste as plain text in message draft area\n\n★ allow to scroll in registration screen in small screens\n\n★ remove dangerous encryption options from Advanced settings\n\n\n💜 Show your love and support Delta Chat development: %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_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>
+1 -5
View File
@@ -45,11 +45,7 @@
<org.thoughtcrime.securesms.components.SwitchPreferenceCompat
android:defaultValue="true"
android:key="pref_prefer_e2ee"
android:title="@string/autocrypt_prefer_e2ee"/>
<Preference android:key="pref_manage_keys"
android:title="@string/pref_manage_keys"/>
android:title="@string/force_e2ee"/>
<Preference android:key="pref_send_autocrypt_setup_message"
android:title="@string/autocrypt_send_asm_title"/>
Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB