Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,15 @@ Please fill out as much of this form as you can (leaving out stuff that is not a

- Android version:
- Device:
- DeltaLab version:
- ArcaneChat version:
- Expected behavior:
- Actual behavior:
- Steps to reproduce the problem:
- Screenshots:
- Logs:

<!--
Debug logs can be copied from within the DeltaLab app with
Debug logs can be copied from within the app with
Settings menu -> Advanced -> View log

Logs may contain private data
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## DeltaLab Android Client
## ArcaneChat Android Client

A [Delta Chat](https://delta.chat/) client for Android.

Expand All @@ -19,8 +19,8 @@ A [Delta Chat](https://delta.chat/) client for Android.

This app has some extended support for WebXDC apps:

- `window.webxdc.deltalab` a string with the DeltaLab version and can be used by app developers
to detect when they can use the DeltaLab-specific features.
- `window.webxdc.arcanechat` a string with the ArcaneChat version and can be used by app developers
to detect when they can use the ArcaneChat-specific features.
- `window.webxdc.isCommunity` true if the current account is a community account
- `sendToChat()`: extra property `subject` can be set to a text string to set message/email's subject.
- `sendToChat()`: extra property `html` can be set to a string of html markup to set the HTML part of the email/message.
Expand Down
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ android {
final def markwon_version = '4.6.2'

dependencies {
// DeltaLab-only dependencies:
// ArcaneChat-only dependencies:
implementation "io.noties.markwon:core:$markwon_version"
implementation "io.noties.markwon:ext-strikethrough:$markwon_version"
implementation "io.noties.markwon:inline-parser:$markwon_version"
Expand Down
6 changes: 3 additions & 3 deletions fastlane/metadata/android/en-US/full_description.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<i>DeltaLab</i> is a friendly fork of <i>Delta Chat</i> messenger, a chat app compatible with the existing e-mail infrastructure.
<i>ArcaneChat</i> is a friendly fork of <i>Delta Chat</i> messenger, a chat app compatible with the existing e-mail infrastructure.

DeltaLab was created with a focus on usability, good user experience, and saving data plan and comes with some different default settings than Delta Chat. Also the app usually experiments with new features and alternative paths of development that eventually might get added to the official Delta Chat client.
ArcaneChat was created with a focus on usability, good user experience, and saving data plan and comes with some different default settings than Delta Chat. Also the app usually experiments with new features and alternative paths of development that eventually might get added to the official Delta Chat client.

<b>Main differences with official Delta Chat client:</b>

Expand All @@ -27,4 +27,4 @@ DeltaLab was created with a focus on usability, good user experience, and saving
<li>Better settings organization with additional "Privacy" section</li>
</ul>

<b>WARNING:</b> Be careful when running WebXDC apps in DeltaLab, the sandboxed webview can't currently prevent WebRTC connections, so in theory information inside the WebXDC app could be leaked and also your IP, the risk is low, for most people this is not even important, but if you are a person at risk, only use trusted apps, or use official Delta Chat.
<b>WARNING:</b> Be careful when running WebXDC apps in ArcaneChat, the sandboxed webview can't currently prevent WebRTC connections, so in theory information inside the WebXDC app could be leaked and also your IP, the risk is low, for most people this is not even important, but if you are a person at risk, only use trusted apps, or use official Delta Chat.
2 changes: 1 addition & 1 deletion fastlane/metadata/android/en-US/title.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
DeltaLab
ArcaneChat
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@ public void testOpenAgainFromRecents() {
* If you save your contacts's emails in the contacts app of the phone, there are buttons to call
* them and also to write an email to them.
*
* If you click the email button, Delta Chat opened but instead of opening a chat with that contact,
* If you click the email button, ArcaneChat opened but instead of opening a chat with that contact,
* the chat list was show and "share with" was displayed at the top
*/
@Test
Expand Down
354 changes: 177 additions & 177 deletions src/main/assets/help/cs/help.html

Large diffs are not rendered by default.

280 changes: 140 additions & 140 deletions src/main/assets/help/de/help.html

Large diffs are not rendered by default.

354 changes: 177 additions & 177 deletions src/main/assets/help/en/help.html

Large diffs are not rendered by default.

352 changes: 176 additions & 176 deletions src/main/assets/help/es/help.html

Large diffs are not rendered by default.

354 changes: 177 additions & 177 deletions src/main/assets/help/fr/help.html

Large diffs are not rendered by default.

354 changes: 177 additions & 177 deletions src/main/assets/help/id/help.html

Large diffs are not rendered by default.

354 changes: 177 additions & 177 deletions src/main/assets/help/it/help.html

Large diffs are not rendered by default.

334 changes: 167 additions & 167 deletions src/main/assets/help/nl/help.html

Large diffs are not rendered by default.

308 changes: 154 additions & 154 deletions src/main/assets/help/pl/help.html

Large diffs are not rendered by default.

354 changes: 177 additions & 177 deletions src/main/assets/help/pt/help.html

Large diffs are not rendered by default.

358 changes: 179 additions & 179 deletions src/main/assets/help/ru/help.html

Large diffs are not rendered by default.

354 changes: 177 additions & 177 deletions src/main/assets/help/sk/help.html

Large diffs are not rendered by default.

352 changes: 176 additions & 176 deletions src/main/assets/help/sq/help.html

Large diffs are not rendered by default.

308 changes: 154 additions & 154 deletions src/main/assets/help/uk/help.html

Large diffs are not rendered by default.

338 changes: 169 additions & 169 deletions src/main/assets/help/zh_CN/help.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/main/java/com/b44t/messenger/rpc/RpcException.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.b44t.messenger.rpc;

/**
* An exception occurred while processing a request in Delta Chat core.
* An exception occurred while processing a request in ArcaneChat core.
**/
public class RpcException extends Exception {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ public void onCreate() {
StringWriter stringWriter = new StringWriter();
throwable.printStackTrace(new PrintWriter(stringWriter, true));
String errorMsg = "Android " + Build.VERSION.RELEASE +":\n" + stringWriter.getBuffer().toString();
String subject = "DeltaLab " + BuildConfig.VERSION_NAME + " Crash Report";
String subject = "ArcaneChat " + BuildConfig.VERSION_NAME + " Crash Report";
Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -460,7 +460,7 @@ private void leaveRealtimeChannel() {

class InternalJSApi {
@JavascriptInterface
public String deltalab() {
public String arcanechat() {
return BuildConfig.VERSION_NAME;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -452,7 +452,7 @@ public static boolean isNetworkConnected(Context context) {
* Gets a string you can show to the user with basic information about connectivity.
* @param context
* @param connectedString Usually "Connected", but when using this as the title in
* ConversationListActivity, we want to write "Delta Chat" there instead.
* ConversationListActivity, we want to write "ArcaneChat" there instead.
* @return
*/
public static String getConnectivitySummary(Context context, int connectedString) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ static public KeepAliveService getInstance()

/* The notification
* A notification is required for a foreground service; and without a foreground service,
* Delta Chat won't get new messages reliable
* ArcaneChat won't get new messages reliable
**********************************************************************************************/

private Notification createNotification()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -486,7 +486,7 @@ public static void selectLocation(Activity activity, int chatId) {
// for rationale dialog requirements
Permissions.PermissionsBuilder permissionsBuilder = Permissions.with(activity)
.ifNecessary()
.withRationaleDialog("To share your live location with chat members, allow Delta Chat to use your location data.\n\nTo make live location work gaplessly, location data is used even when the app is closed or not in use.", R.drawable.ic_location_on_white_24dp)
.withRationaleDialog("To share your live location with chat members, allow ArcaneChat to use your location data.\n\nTo make live location work gaplessly, location data is used even when the app is closed or not in use.", R.drawable.ic_location_on_white_24dp)
.withPermanentDenialDialog(activity.getString(R.string.perm_explain_access_to_location_denied))
.onAllGranted(() -> {
ShareLocationDialog.show(activity, durationInSeconds -> {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ private PendingIntent getMarkAsReadIntent(ChatData chatData, boolean markNoticed
// - We include the delta-chat-notifications settings into the name of the channelId
// - The chatId is included only, if there are separate sound- or vibration-settings for a chat
// - This way, we have stable and few channelIds and the user
// can edit the notifications in Delta Chat as well as in the system
// can edit the notifications in ArcaneChat as well as in the system

// channelIds: CH_MSG_* are used here, the other ones from outside (defined here to have some overview)
public static final String CH_MSG_PREFIX = "ch_msg";
Expand Down Expand Up @@ -446,7 +446,7 @@ public void addNotification(int accountId, int chatId, int msgId) {
} catch (Exception e) { Log.w(TAG, e); }
}

// add buttons that allow some actions without opening Delta Chat.
// add buttons that allow some actions without opening ArcaneChat.
// if privacy options are enabled, the buttons are not added.
if (privacy.isDisplayContact() && privacy.isDisplayMessage()) {
try {
Expand Down Expand Up @@ -530,7 +530,7 @@ public void addNotification(int accountId, int chatId, int msgId) {
.setSmallIcon(R.drawable.icon_notification)
.setColor(context.getResources().getColor(R.color.def_accent))
.setCategory(NotificationCompat.CATEGORY_MESSAGE)
.setContentTitle("Delta Chat") // content title would only be used on SDK <24
.setContentTitle("ArcaneChat") // content title would only be used on SDK <24
.setContentText("New messages") // content text would only be used on SDK <24
.setContentIntent(getOpenChatlistIntent(accountId));
if (privacy.isDisplayContact()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -193,11 +193,11 @@ public void doFinish() {
}
} else if (transferMode == TransferMode.SENDER_SHOW_QR) {
// restart the activities that were removed when BackupTransferActivity was started at (**2)
// (we removed the activity backstack as otherwise a tap on the Delta Chat icon on the home screen would
// (we removed the activity backstack as otherwise a tap on the ArcaneChat icon on the home screen would
// call onNewIntent() which cannot be aborted and will kill BackupTransferActivity.
// if all activities are removed, onCreate() will be called and that can be aborted, so that
// a tap in the home icon just opens BackupTransferActivity.
// (the user can leave Delta Chat during backup transfer :)
// (the user can leave ArcaneChat during backup transfer :)
// a proper fix would maybe to not rely onNewIntent() at all - but that would require more refactorings
// and needs lots if testing in complicated areas (share ...))
startActivity(new Intent(getApplicationContext(), ConversationListActivity.class));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
import com.b44t.messenger.DcContext;

/**
* This (interprocess communication) service is invoked by companion apps aiming to add a new account to Delta Chat
* This (interprocess communication) service is invoked by companion apps aiming to add a new account to ArcaneChat
*/

public class IPCAddAccountsService extends Service {
Expand Down
3 changes: 2 additions & 1 deletion src/main/res/raw/webxdc.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ window.webxdc = (() => {
}

return {
deltalab: InternalJSApi.deltalab(),
arcanechat: InternalJSApi.arcanechat(),
deltalab: InternalJSApi.arcanechat(),

isCommunity: InternalJSApi.isCommunity(),

Expand Down
6 changes: 3 additions & 3 deletions src/main/res/values-ar/strings.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">
<!-- common strings without special context -->
<string name="app_name">DeltaLab</string>
<string name="app_name">ArcaneChat</string>
<string name="ok">موافق</string>
<string name="cancel">إلغاء</string>
<string name="yes">نعم</string>
Expand Down Expand Up @@ -171,7 +171,7 @@
<!-- for classic email, we use the classical term "Account" -->
<string name="pref_password_and_account_settings">الكلمة السرية والحساب</string>
<string name="pref_your_name">اسمك</string>
<!-- Translators: Visible only to recipients who DO NOT use Delta Chat, so it's the last line in an E-mail and not a "Status". -->
<!-- Translators: Visible only to recipients who DO NOT use ArcaneChat, so it's the last line in an E-mail and not a "Status". -->
<string name="pref_default_status_label">التوقيع</string>
<string name="pref_enter_sends">مفتاح الدخول يقوم بالإرسا</string>
<string name="pref_vibrate">إهتز</string>
Expand All @@ -190,7 +190,7 @@
<string name="pref_theme">السمة</string>
<string name="pref_language">اللغة</string>
<string name="pref_use_system_emoji">استخدام الرموز التعبيرية بالنظام</string>
<string name="pref_use_system_emoji_explain"> Delta Chat تعطيل الرموز التعبيرية المدمجة في </string>
<string name="pref_use_system_emoji_explain"> ArcaneChat تعطيل الرموز التعبيرية المدمجة في </string>
<string name="pref_app_access">دخول البرنامج</string>
<string name="pref_chats">المحادثات</string>
<string name="pref_in_chat_sounds">أصوات خلال الدردش</string>
Expand Down
20 changes: 10 additions & 10 deletions src/main/res/values-az/strings.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">
<!-- common strings without special context -->
<string name="app_name">DeltaLab</string>
<string name="app_name">ArcaneChat</string>
<string name="ok">OK</string>
<string name="cancel">Imtina</string>
<string name="yes">Bəli</string>
Expand Down Expand Up @@ -212,7 +212,7 @@
<item quantity="one">%d yeni messaj</item>
<item quantity="other">%d yeni messaj</item>
</plurals>
<string name="chat_new_group_hint">Başqalarının bu qrup daxilində cavab verməsinə imkan verən ilk mesajı yaradın. \n\n• Bütün üzvlər Delta Chat istifadə etsələr daha yaxşıdır. \n\n• İlk mesajı çatdırmaq bir müddət ala bilər.</string>
<string name="chat_new_group_hint">Başqalarının bu qrup daxilində cavab verməsinə imkan verən ilk mesajı yaradın. \n\n• Bütün üzvlər ArcaneChat istifadə etsələr daha yaxşıdır. \n\n• İlk mesajı çatdırmaq bir müddət ala bilər.</string>
<string name="chat_record_slide_to_cancel">Ləğv etmək üçün sürüşdürün</string>
<string name="chat_record_explain">Bir səsli mesajı yazmaq üçün toxunun və saxlayın, göndərmək üçün buraxın</string>
<string name="chat_no_chats_yet_title">Qutu boşdur.\nYeni çata başlamaq üçün \"+\" işarəsinə toxunun. </string>
Expand Down Expand Up @@ -259,7 +259,7 @@
<!-- for classic email, we use the classical term "Account" -->
<string name="login_explain">Mövcud e-mail hesabı ilə daxil olun</string>
<string name="login_subheader">Məlum elektron poçt provayderləri üçün əlavə parametrlər avtomatik olaraq quraşdırılır. Bəzən IMAP-ın web məkanında aktiv olması lazımdır. Yardım üçün e-poçt provayderinizə və ya dostlarınıza müraciət edin.</string>
<string name="login_no_servers_hint">Delta Chat serverləri yoxdur, məlumatlarınız cihazınızda qalır!</string>
<string name="login_no_servers_hint">ArcaneChat serverləri yoxdur, məlumatlarınız cihazınızda qalır!</string>
<string name="login_inbox">Gələn</string>
<string name="login_imap_login">IMAP logini</string>
<string name="login_imap_server">IMAP server</string>
Expand All @@ -273,7 +273,7 @@
<string name="login_smtp_security">SMTP təhlükəsizliyi</string>
<string name="login_auth_method">Yetkiləndirmə metodu</string>
<string name="login_info_oauth2_title">Sadələşdirilmiş tənzimləmə ilə davam edirsiniz?</string>
<string name="login_info_oauth2_text">Daxil edilmiş e-poçt ünvanı sadələşdirilmiş bir quraşdırma (OAuth2) dəstəkləyir. \n\nNövbəti addımda Delta Chat e-poçt tətbiqinizlə söhbət etməyə icazə verin. \n\n Delta Chat serverləri, cihazınızda qalır!</string>
<string name="login_info_oauth2_text">Daxil edilmiş e-poçt ünvanı sadələşdirilmiş bir quraşdırma (OAuth2) dəstəkləyir. \n\nNövbəti addımda ArcaneChat e-poçt tətbiqinizlə söhbət etməyə icazə verin. \n\n ArcaneChat serverləri, cihazınızda qalır!</string>
<string name="login_certificate_checks">Sertifikat yoxlanmaları</string>
<string name="login_error_mail">Xahiş edirik düzgün bir e-poçt ünvanı daxil et</string>
<string name="login_error_server">Xahiş edirik, düzgün bir server / IP ünvanı daxil et</string>
Expand All @@ -297,7 +297,7 @@
<string name="pref_blocked_contacts">Bloklanmış kontaktlar</string>
<string name="pref_who_can_see_profile_explain">Digər istifadəçilərlə ünsiyyət qurarkən profil şəkliniz və adınız mesajlarınızla birlikdə göstərilir. Zatən göndərilən məlumat silinməyəcək. </string>
<string name="pref_your_name">Adın</string>
<!-- Translators: Visible only to recipients who DO NOT use Delta Chat, so it's the last line in an E-mail and not a "Status". -->
<!-- Translators: Visible only to recipients who DO NOT use ArcaneChat, so it's the last line in an E-mail and not a "Status". -->
<string name="pref_default_status_label">Yazını mətni</string>
<string name="pref_enter_sends">Enter açarı ilə göndərmək</string>
<string name="pref_enter_sends_explain">Enter düyməsini basaraq mətn mesajları göndərəcək</string>
Expand Down Expand Up @@ -440,10 +440,10 @@
<!-- permissions -->
<string name="perm_required_title">İzin tələb olunur</string>
<string name="perm_continue">Davam edin</string>
<string name="perm_explain_access_to_camera_denied">Delta Chat şəkillər və ya video çəkmək üçün kamera icazə tələb edir, lakin bu, əbədi imtina edilmişdir. Proqramın sistem ayarlarına gedib \"İcazələr\"-i seçin və \"kamera\" izni verin.</string>
<string name="perm_explain_access_to_mic_denied">Delta Chat yer əlavə etmək üçün yer icazə tələb edir, lakin daimi olaraq rədd edilmişdir. \"İcazələr\"-i seçin və\"Yerləşmə\" izni verin. </string>
<string name="perm_explain_access_to_storage_denied">Delta Chat, fotoşəkilləri, videoları və ya səsləri əlavə etmək və ya ixrac etmək üçün saxlama icazəsini tələb edir, lakin bu daimi olaraq rədd edildi. Xahiş edirik tətbiq ayarları menyusuna davam edin, \"İzinlər\" seçin və \"Yaddaş\" funksiyasını aktivləşdirin.</string>
<string name="perm_explain_access_to_location_denied">Delta Chat yer əlavə etmək üçün yer icazə tələb edir, lakin daimi olaraq rədd edilmişdir. \"İcazələr\"-i seçin və\"Yerləşmə\" izni verin. </string>
<string name="perm_explain_access_to_camera_denied">ArcaneChat şəkillər və ya video çəkmək üçün kamera icazə tələb edir, lakin bu, əbədi imtina edilmişdir. Proqramın sistem ayarlarına gedib \"İcazələr\"-i seçin və \"kamera\" izni verin.</string>
<string name="perm_explain_access_to_mic_denied">ArcaneChat yer əlavə etmək üçün yer icazə tələb edir, lakin daimi olaraq rədd edilmişdir. \"İcazələr\"-i seçin və\"Yerləşmə\" izni verin. </string>
<string name="perm_explain_access_to_storage_denied">ArcaneChat, fotoşəkilləri, videoları və ya səsləri əlavə etmək və ya ixrac etmək üçün saxlama icazəsini tələb edir, lakin bu daimi olaraq rədd edildi. Xahiş edirik tətbiq ayarları menyusuna davam edin, \"İzinlər\" seçin və \"Yaddaş\" funksiyasını aktivləşdirin.</string>
<string name="perm_explain_access_to_location_denied">ArcaneChat yer əlavə etmək üçün yer icazə tələb edir, lakin daimi olaraq rədd edilmişdir. \"İcazələr\"-i seçin və\"Yerləşmə\" izni verin. </string>
<!-- dc_str_* resources -->
<string name="encrypted_message">Şifrələnmiş mesaj</string>

Expand Down Expand Up @@ -481,5 +481,5 @@
<string name="menu.view.developer.open.log.folder">Loq mələfini açın</string>
<string name="menu.view.developer.open.current.log.file">Loq-faylı açın</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">Delta Chat arxa fonda mesajları almaq üçün bura toxunun.</string>
<string name="perm_enable_bg_reminder_title">ArcaneChat arxa fonda mesajları almaq üçün bura toxunun.</string>
</resources>
Loading