remove 'add as bookmark' checkmark in join conference dialog

Daniel Gultsch created

Change summary

src/main/java/eu/siacs/conversations/ui/JoinConferenceDialog.java      |  8 
src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java | 39 
src/main/res/layout/dialog_join_conference.xml                         | 15 
src/main/res/values-ar/strings.xml                                     |  1 
src/main/res/values-cs/strings.xml                                     |  1 
src/main/res/values-de/strings.xml                                     |  1 
src/main/res/values-es/strings.xml                                     |  1 
src/main/res/values-fa-rIR/strings.xml                                 |  1 
src/main/res/values-fr/strings.xml                                     |  1 
src/main/res/values-gl/strings.xml                                     |  1 
src/main/res/values-it/strings.xml                                     |  1 
src/main/res/values-ja/strings.xml                                     |  1 
src/main/res/values-pl/strings.xml                                     |  1 
src/main/res/values-ro-rRO/strings.xml                                 |  1 
src/main/res/values-ru/strings.xml                                     |  1 
src/main/res/values-sq-rAL/strings.xml                                 |  1 
src/main/res/values-sv/strings.xml                                     |  1 
src/main/res/values-tr-rTR/strings.xml                                 |  1 
src/main/res/values-uk/strings.xml                                     |  1 
src/main/res/values-vi/strings.xml                                     |  1 
src/main/res/values-zh-rCN/strings.xml                                 |  1 
src/main/res/values-zh-rTW/strings.xml                                 |  1 
src/main/res/values/strings.xml                                        |  1 
23 files changed, 22 insertions(+), 60 deletions(-)

Detailed changes

src/main/java/eu/siacs/conversations/ui/JoinConferenceDialog.java 🔗

@@ -67,9 +67,9 @@ public class JoinConferenceDialog extends DialogFragment implements OnBackendCon
 		builder.setNegativeButton(R.string.cancel, null);
 		AlertDialog dialog = builder.create();
 		dialog.show();
-		dialog.getButton(DialogInterface.BUTTON_POSITIVE).setOnClickListener(view -> mListener.onJoinDialogPositiveClick(dialog, binding.account, binding.accountJidLayout, binding.jid, binding.bookmark.isChecked()));
+		dialog.getButton(DialogInterface.BUTTON_POSITIVE).setOnClickListener(view -> mListener.onJoinDialogPositiveClick(dialog, binding.account, binding.accountJidLayout, binding.jid));
 		binding.jid.setOnEditorActionListener((v, actionId, event) -> {
-			mListener.onJoinDialogPositiveClick(dialog, binding.account, binding.accountJidLayout, binding.jid, binding.bookmark.isChecked());
+			mListener.onJoinDialogPositiveClick(dialog, binding.account, binding.accountJidLayout, binding.jid);
 			return true;
 		});
 		return dialog;
@@ -89,7 +89,7 @@ public class JoinConferenceDialog extends DialogFragment implements OnBackendCon
 	}
 
 	@Override
-	public void onAttach(Context context) {
+	public void onAttach(@NonNull final Context context) {
 		super.onAttach(context);
 		try {
 			mListener = (JoinConferenceDialogListener) context;
@@ -118,6 +118,6 @@ public class JoinConferenceDialog extends DialogFragment implements OnBackendCon
 	}
 
 	public interface JoinConferenceDialogListener {
-		void onJoinDialogPositiveClick(Dialog dialog, AutoCompleteTextView spinner, TextInputLayout jidLayout, AutoCompleteTextView jid, boolean isBookmarkChecked);
+		void onJoinDialogPositiveClick(Dialog dialog, AutoCompleteTextView spinner, TextInputLayout jidLayout, AutoCompleteTextView jid);
 	}
 }

src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java 🔗

@@ -454,13 +454,13 @@ public class StartConversationActivity extends XmppActivity implements XmppConne
         }
     }
 
-    protected void openConversationsForBookmark(Bookmark bookmark) {
+    protected void openConversationsForBookmark(final Bookmark bookmark) {
         final Jid jid = bookmark.getFullJid();
         if (jid == null) {
             Toast.makeText(this, R.string.invalid_jid, Toast.LENGTH_SHORT).show();
             return;
         }
-        Conversation conversation = xmppConnectionService.findOrCreateConversation(bookmark.getAccount(), jid, true, true, true);
+        final Conversation conversation = xmppConnectionService.findOrCreateConversation(bookmark.getAccount(), jid, true, true, true);
         bookmark.setConversation(conversation);
         if (!bookmark.autojoin()) {
             bookmark.setAutojoin(true);
@@ -1117,7 +1117,7 @@ public class StartConversationActivity extends XmppActivity implements XmppConne
     }
 
     @Override
-    public void onJoinDialogPositiveClick(Dialog dialog, AutoCompleteTextView spinner, TextInputLayout layout, AutoCompleteTextView jid, boolean isBookmarkChecked) {
+    public void onJoinDialogPositiveClick(final Dialog dialog, final AutoCompleteTextView spinner, final TextInputLayout layout, final AutoCompleteTextView jid) {
         if (!xmppConnectionServiceBound) {
             return;
         }
@@ -1141,32 +1141,23 @@ public class StartConversationActivity extends XmppActivity implements XmppConne
                 return;
             }
         }
-
-        if (isBookmarkChecked) {
-            Bookmark bookmark = account.getBookmark(conferenceJid);
-            if (bookmark != null) {
-                dialog.dismiss();
-                openConversationsForBookmark(bookmark);
-            } else {
-                bookmark = new Bookmark(account, conferenceJid.asBareJid());
-                bookmark.setAutojoin(true);
-                final String nick = conferenceJid.getResource();
-                if (nick != null && !nick.isEmpty() && !nick.equals(MucOptions.defaultNick(account))) {
-                    bookmark.setNick(nick);
-                }
-                xmppConnectionService.createBookmark(account, bookmark);
-                final Conversation conversation = xmppConnectionService
-                        .findOrCreateConversation(account, conferenceJid, true, true, true);
-                bookmark.setConversation(conversation);
-                dialog.dismiss();
-                switchToConversation(conversation);
-            }
+        final var existingBookmark = account.getBookmark(conferenceJid);
+        if (existingBookmark != null) {
+            openConversationsForBookmark(existingBookmark);
         } else {
+            final var bookmark = new Bookmark(account, conferenceJid.asBareJid());
+            bookmark.setAutojoin(true);
+            final String nick = conferenceJid.getResource();
+            if (nick != null && !nick.isEmpty() && !nick.equals(MucOptions.defaultNick(account))) {
+                bookmark.setNick(nick);
+            }
+            xmppConnectionService.createBookmark(account, bookmark);
             final Conversation conversation = xmppConnectionService
                     .findOrCreateConversation(account, conferenceJid, true, true, true);
-            dialog.dismiss();
+            bookmark.setConversation(conversation);
             switchToConversation(conversation);
         }
+        dialog.dismiss();
     }
 
     @Override

src/main/res/layout/dialog_join_conference.xml 🔗

@@ -1,6 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<layout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto">
+<layout xmlns:android="http://schemas.android.com/apk/res/android">
 
     <LinearLayout
         android:layout_width="match_parent"
@@ -31,20 +30,12 @@
             android:hint="@string/xmpp_address">
 
             <com.google.android.material.textfield.MaterialAutoCompleteTextView
-                android:padding="16dp"
                 android:id="@+id/jid"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
                 android:imeOptions="actionDone|flagNoExtractUi"
-                android:inputType="textEmailAddress" />
+                android:inputType="textEmailAddress"
+                android:padding="16dp" />
         </com.google.android.material.textfield.TextInputLayout>
-
-        <CheckBox
-            android:id="@+id/bookmark"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginTop="8dp"
-            android:checked="true"
-            android:text="@string/save_as_group_chat" />
     </LinearLayout>
 </layout>

src/main/res/values-ar/strings.xml 🔗

@@ -649,7 +649,6 @@
     <string name="pref_prevent_screenshots">منع أخذ لقطات للشاشة</string>
     <string name="last_seen_day">آخِر ظهور البارحة</string>
     <string name="last_seen_hour">آخر ظهور منذ ساعة</string>
-    <string name="save_as_group_chat">احفظه كمحادثة جماعية</string>
     <string name="account_status_regis_invalid_token">رمز التسجيل غير صالح</string>
     <string name="bad_key_for_encryption">مفتاح تعمية خاطئ.</string>
     <string name="invalid_jid">هذا ليس عنوان XMPP صالح</string>

src/main/res/values-cs/strings.xml 🔗

@@ -971,7 +971,6 @@
     <string name="action_fix_to_location">Fixovat polohu</string>
     <string name="group_chats">Skupinové chaty</string>
     <string name="missed_calls_channel_name">Zmeškané hovory</string>
-    <string name="save_as_group_chat">Uložit jako skupinový chat</string>
     <string name="conference_technical_problems">Tento skupinový chat jste opustili z technických důvodů</string>
     <string name="reconnecting_call">Znovu spojuji hovor</string>
     <string name="blindly_trusted_omemo_keys">Slepě důvěřované klíče OMEMO, které mohou být někdo jiný nebo někým zasaženy.</string>

src/main/res/values-de/strings.xml 🔗

@@ -988,7 +988,6 @@
     <string name="delete_from_server">Konto vom Server löschen</string>
     <string name="could_not_delete_account_from_server">Konto konnte nicht vom Server gelöscht werden</string>
     <string name="group_chats">Gruppenchats</string>
-    <string name="save_as_group_chat">Als Gruppenchat speichern</string>
     <string name="search_group_chats">Gruppenchats durchsuchen</string>
     <string name="restore_warning_continued">Versuche nicht, Backups wiederherzustellen, die du nicht selbst erstellt hast!</string>
     <string name="outdated_backup_file_format">Du versuchst, ein veraltetes Sicherungsdateiformat zu importieren</string>

src/main/res/values-es/strings.xml 🔗

@@ -1003,7 +1003,6 @@
     <string name="could_not_delete_account_from_server">No se pudo eliminar la cuenta del servidor</string>
     <string name="group_chats">Chats en grupo</string>
     <string name="search_group_chats">Buscar un grupo de chats</string>
-    <string name="save_as_group_chat">Guardar como un chat en grupo</string>
     <string name="restore_warning_continued">¡No intentes restaurar las copias de seguridad que no creaste tu mismo!</string>
     <string name="outdated_backup_file_format">Estás intentando importar un formato de copia de seguridad obsoleto</string>
     <string name="audiobook">Audiolibro</string>

src/main/res/values-fa-rIR/strings.xml 🔗

@@ -481,7 +481,6 @@
     <string name="rtp_state_application_failure">خطای برنامه</string>
     <string name="send_private_message">فرستادن پیام خصوصی</string>
     <string name="notification_restored_backup_subtitle">فعال‌سازی حساب را فراموش نکنید.</string>
-    <string name="save_as_group_chat">ذخیره به عنوان گفتگوی گروهی</string>
     <string name="audiobook">کتاب صوتی</string>
     <string name="non_anonymous">نشانی‌های XMPP را برای همه نمایان کن</string>
     <string name="account_status_connecting">وصل می‌شود…</string>

src/main/res/values-fr/strings.xml 🔗

@@ -993,7 +993,6 @@
         <item quantity="other">%1$d appels manqués de %2$d contacts</item>
     </plurals>
     <string name="group_chats">Discussions de groupe</string>
-    <string name="save_as_group_chat">Enregistrer comme groupe</string>
     <string name="pref_autojoin">Synchroniser les favoris</string>
     <string name="pref_autojoin_summary">Activer \"Rejoindre automatiquement\" en entrant ou sortant d\'un groupe et réagir aux modifications apportées par d\'autres clients.</string>
     <string name="vector_graphic">graphique vectoriel</string>

src/main/res/values-gl/strings.xml 🔗

@@ -989,7 +989,6 @@
     <string name="outgoing_call_timestamp">Chamada saínte · %s</string>
     <string name="delete_from_server">Eliminar a conta no servidor</string>
     <string name="could_not_delete_account_from_server">Non se puido eliminar a conta no servidor</string>
-    <string name="save_as_group_chat">Gardar como chat en grupo</string>
     <string name="search_group_chats">Buscar chats en grupo</string>
     <string name="group_chats">Chats en grupo</string>
     <string name="restore_warning_continued">Non intentes restablecer unha copia de apoio que non tiveses creado ti!</string>

src/main/res/values-it/strings.xml 🔗

@@ -1002,7 +1002,6 @@
     <string name="delete_from_server">Rimuovi profilo dal server</string>
     <string name="could_not_delete_account_from_server">Impossibile eliminare il profilo dal server</string>
     <string name="group_chats">Chat di gruppo</string>
-    <string name="save_as_group_chat">Salva come chat di gruppo</string>
     <string name="search_group_chats">Cerca chat di gruppo</string>
     <string name="restore_warning_continued">Non tentare di ripristinare dei backup che non hai creato te stesso!</string>
     <string name="outdated_backup_file_format">Stai tentando di importare un formato di file di backup obsoleto</string>

src/main/res/values-ja/strings.xml 🔗

@@ -976,7 +976,6 @@
     <string name="no_account_deactivated">なし(無効)</string>
     <string name="decline">拒否</string>
     <string name="pref_up_push_server_title">Pushサーバー</string>
-    <string name="save_as_group_chat">グループチャットとして保存</string>
     <string name="unified_push_distributor">UnifiedPushディストリビューター</string>
     <string name="report_spam">スパムを報告</string>
     <string name="pref_up_push_account_summary">Pushメッセージを受信する際に経由するアカウント。</string>

src/main/res/values-pl/strings.xml 🔗

@@ -1021,7 +1021,6 @@
     <string name="could_not_delete_account_from_server">Nie można usunąć konta z serwera</string>
     <string name="search_group_chats">Przeszukaj rozmowy grupowe</string>
     <string name="group_chats">Rozmowy grupowe</string>
-    <string name="save_as_group_chat">Zapisz jako rozmowę grupową</string>
     <string name="restore_warning_continued">Nie próbuj przywracać kopii zapasowych, których nie utworzono samodzielnie!</string>
     <string name="outdated_backup_file_format">Próbujesz zaimportować plik kopii zapasowej o przestarzałym formacie</string>
     <string name="audiobook">Audiobook</string>

src/main/res/values-ro-rRO/strings.xml 🔗

@@ -1007,7 +1007,6 @@
     <string name="could_not_delete_account_from_server">Nu s-a putut șterge contul de pe server</string>
     <string name="delete_from_server">Șterge contul de pe server</string>
     <string name="group_chats">Discuții de grup</string>
-    <string name="save_as_group_chat">Salvare ca discuție de grup</string>
     <string name="search_group_chats">Caută discuții de grup</string>
     <string name="restore_warning_continued">Nu încercați să restaurați copii de rezervă pe care nu le-ați creat personal!</string>
     <string name="outdated_backup_file_format">Încercați să importați un fișier copie de rezervă format vechi</string>

src/main/res/values-ru/strings.xml 🔗

@@ -994,7 +994,6 @@
     <string name="decline">Отклонить</string>
     <string name="could_not_delete_account_from_server">Невозможно удалить учётную запись на сервере</string>
     <string name="delete_from_server">Удалить учётную запись на сервере</string>
-    <string name="save_as_group_chat">Сохранить как групповую беседу</string>
     <string name="pref_autojoin">Синхронизировать закладки</string>
     <string name="pref_autojoin_summary">Устанавливать флаг \"автоприсоединение\" при входе в- и выходе из MUC, и реагировать на изменения от других клиентов.</string>
     <string name="search_group_chats">Поиск по групповым беседам</string>

src/main/res/values-sq-rAL/strings.xml 🔗

@@ -978,7 +978,6 @@
     <string name="jabber_network">jabber.network</string>
     <string name="search_group_chats">kërkoni në fjalosje grupesh</string>
     <string name="group_chats">Fjalosje në grup</string>
-    <string name="save_as_group_chat">Ruaje si fjalosjeje grupi</string>
     <string name="unverified_devices">Po përdorni pajisje të paverifikuara. Që të kryhet verifikimi dhe të pengohen sulme MITM, skanoni Kodin QR në pajisjet tuaja të tjera.</string>
     <string name="title_activity_block_list">Listë bllokimesh</string>
     <string name="account_state_logged_out">I dalë</string>

src/main/res/values-sv/strings.xml 🔗

@@ -1016,7 +1016,6 @@
     <string name="account_state_logged_out">Utloggad</string>
     <string name="unverified_devices">Du använder overifierade enheter. Skanna QR-kod på dina andra enheter, för att utföra en verifiering och för att förhindra aktiva MITM-attacker.</string>
     <string name="outgoing_call_timestamp">Utgående samtal · %s</string>
-    <string name="save_as_group_chat">Spara som gruppchatt</string>
     <string name="audiobook">Ljudbok</string>
     <string name="report_spam">Rapportera spam</string>
     <string name="restore_warning_continued">Försök inte att återställa säkerhetskopior som du inte har skapat själv!</string>

src/main/res/values-tr-rTR/strings.xml 🔗

@@ -1017,7 +1017,6 @@
     <string name="rtp_state_content_add_video">Görüntülü aramaya geçilsin mi?</string>
     <string name="pref_allow_screenshots_summary">Uygulama değiştiricide içeriği göster ve ekran görüntüsü almaya izin ver</string>
     <string name="remove_bookmark_and_close">%s için yer imini kaldırmak ve sohbeti arşivlemek ister misiniz?</string>
-    <string name="save_as_group_chat">Grup olarak kaydet</string>
     <string name="audiobook">Sesli kitap</string>
     <string name="send_encrypted_message">Şifrelenmiş ileti gönder</string>
     <string name="group_chats">Gruplar</string>

src/main/res/values-uk/strings.xml 🔗

@@ -981,7 +981,6 @@
     <string name="omemo_fingerprint_x509_selected_message">Цифровий підпис v\\OMEMO (джерело повідомлення)</string>
     <string name="continue_btn">Продовжити</string>
     <string name="group_chats">Групові чати</string>
-    <string name="save_as_group_chat">Зберегти як групу</string>
     <string name="pref_autojoin">Синхронізувати закладки</string>
     <string name="conference_technical_problems">Ви залишили цю групу з технічних причин</string>
     <string name="vector_graphic">векторна графіка</string>

src/main/res/values-vi/strings.xml 🔗

@@ -957,7 +957,6 @@
     <string name="pref_up_push_server_title">Máy chủ đẩy</string>
     <string name="no_account_deactivated">Không tồn tại (đã vô hiệu hóa)</string>
     <string name="decline">Từ chối</string>
-    <string name="save_as_group_chat">Lưu thành nhóm trò chuyện</string>
     <string name="conference_technical_problems">Bạn đã rời khỏi nhóm trò chuyện này vì lý do kỹ thuật</string>
     <string name="verifying_omemo_keys_trusted_source_account">Bạn chuẩn bị xác minh các khoá OMEMO cho tài khoản của chính bạn. Việc làm này chỉ an toàn nếu bạn đã đến liên kết này từ một nguồn đáng tin tưởng, chỉ có bạn mới có thể cho ra liên kết này trước đó.</string>
     <string name="continue_btn">Tiếp tục</string>

src/main/res/values-zh-rCN/strings.xml 🔗

@@ -993,7 +993,6 @@
     <string name="outgoing_call_timestamp">去电 · %s</string>
     <string name="could_not_delete_account_from_server">无法从服务器删除账号</string>
     <string name="group_chats">群聊</string>
-    <string name="save_as_group_chat">保存为群聊</string>
     <string name="search_group_chats">搜索群聊</string>
     <string name="delete_from_server">从服务器移除账号</string>
     <string name="restore_warning_continued">请勿尝试恢复您尚未自行创建的备份!</string>

src/main/res/values-zh-rTW/strings.xml 🔗

@@ -994,7 +994,6 @@
     <string name="could_not_delete_account_from_server">無法從伺服器刪除帳戶</string>
     <string name="search_group_chats">搜尋群組聊天</string>
     <string name="group_chats">群組聊天</string>
-    <string name="save_as_group_chat">儲存為群組聊天</string>
     <string name="this_account_is_logged_out">您已登出此帳戶</string>
     <string name="log_in">登入</string>
     <string name="hide_notification">隱藏通知</string>

src/main/res/values/strings.xml 🔗

@@ -238,7 +238,6 @@
     <string name="channel_full_jid_example">channel@conference.example.com/nick</string>
     <string name="channel_bare_jid_example">channel@conference.example.com</string>
     <string name="save_as_bookmark">Save as bookmark</string>
-    <string name="save_as_group_chat">Save as group chat</string>
     <string name="delete_bookmark">Delete bookmark</string>
     <string name="destroy_room">Destroy group chat</string>
     <string name="destroy_channel">Destroy channel</string>