From e93e14b12c852f2c78335139c12ffa3f56584c01 Mon Sep 17 00:00:00 2001 From: hrxi Date: Wed, 18 Oct 2023 18:04:42 +0200 Subject: [PATCH 01/11] rtp plugin doesn't depend on GnuTLS --- meson.build | 10 +--------- plugins/rtp/CMakeLists.txt | 1 - plugins/rtp/meson.build | 1 - 3 files changed, 1 insertion(+), 11 deletions(-) diff --git a/meson.build b/meson.build index 4ad18477..23a7b3d1 100644 --- a/meson.build +++ b/meson.build @@ -17,19 +17,11 @@ foreach plugin : ['plugin-ice', 'plugin-omemo', 'plugin-rtp'] endif endforeach -if get_option('plugin-ice').enabled() and not get_option('plugin-rtp').enabled() - dep_gnutls_required = get_option('plugin-ice') -elif get_option('plugin-ice').allowed() and not get_option('plugin-rtp').allowed() - dep_gnutls_required = get_option('plugin-ice') -else - dep_gnutls_required = get_option('plugin-rtp') -endif - dep_gdk_pixbuf = dependency('gdk-pixbuf-2.0') dep_gee = dependency('gee-0.8') dep_gio = dependency('gio-2.0') dep_glib = dependency('glib-2.0') -dep_gnutls = dependency('gnutls', disabler: true, required: dep_gnutls_required) +dep_gnutls = dependency('gnutls', disabler: true, required: get_option('plugin-ice')) dep_gmodule = dependency('gmodule-2.0') dep_gpgme = dependency('gpgme', disabler: true, required: get_option('plugin-openpgp')) dep_gstreamer = dependency('gstreamer-1.0', disabler: true, required: get_option('plugin-rtp')) diff --git a/plugins/rtp/CMakeLists.txt b/plugins/rtp/CMakeLists.txt index 2f6f5eaf..83df5df8 100644 --- a/plugins/rtp/CMakeLists.txt +++ b/plugins/rtp/CMakeLists.txt @@ -4,7 +4,6 @@ find_packages(RTP_PACKAGES REQUIRED Gee GLib GModule - GnuTLS GObject GTK4 Gst diff --git a/plugins/rtp/meson.build b/plugins/rtp/meson.build index 06821c91..a222a05a 100644 --- a/plugins/rtp/meson.build +++ b/plugins/rtp/meson.build @@ -4,7 +4,6 @@ dependencies = [ dep_gee, dep_glib, dep_gmodule, - dep_gnutls, dep_gstreamer, dep_gstreamer_app, dep_gstreamer_audio, From cb78cec9e2aaeae459031c2885843ada050ba752 Mon Sep 17 00:00:00 2001 From: Alexandre Jousset Date: Sun, 12 Nov 2023 14:17:55 +0100 Subject: [PATCH 02/11] main/meson.build:121: fix typo --- main/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main/meson.build b/main/meson.build index ccebf67d..fab6ba45 100644 --- a/main/meson.build +++ b/main/meson.build @@ -121,4 +121,4 @@ install_data('data/icons/scalable/apps/im.dino.Dino-symbolic.svg', install_dir: install_data('data/icons/scalable/apps/im.dino.Dino.svg', install_dir: get_option('datadir') / 'hicolor/scalable/apps') install_data('data/im.dino.Dino.appdata.xml', install_dir: get_option('datadir') / 'metainfo') install_data('data/im.dino.Dino.desktop', install_dir: get_option('datadir') / 'applications') -install_data('data/im.dino.Dino.service', install_dir: get_option('datadir') / 'dbus-1/servces') +install_data('data/im.dino.Dino.service', install_dir: get_option('datadir') / 'dbus-1/services') From 85ea7e50083be4be11a675c83835e2f1f957d0dc Mon Sep 17 00:00:00 2001 From: eerielili Date: Fri, 24 Nov 2023 21:13:57 +0000 Subject: [PATCH 03/11] Fix http upload for servers without file size limit (#1512) * Fix for ejabberd XMPP server 'infinity' http upload file size announce - fixes https://github.com/dino/dino/issues/1222 * Update 0363_http_file_upload.vala --- xmpp-vala/src/module/xep/0363_http_file_upload.vala | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xmpp-vala/src/module/xep/0363_http_file_upload.vala b/xmpp-vala/src/module/xep/0363_http_file_upload.vala index 996128e2..c7b8fb59 100644 --- a/xmpp-vala/src/module/xep/0363_http_file_upload.vala +++ b/xmpp-vala/src/module/xep/0363_http_file_upload.vala @@ -181,7 +181,9 @@ public class Module : XmppStreamModule { } } if (max_file_size_str != null) return long.parse(max_file_size_str); - return -1; + + // If there is no max-file-size node, there is no file size limit + return long.MAX; } } From 4689fcb53c3bd55411b2ada02350e6442d82fe25 Mon Sep 17 00:00:00 2001 From: eerielili Date: Sun, 10 Dec 2023 12:28:22 +0000 Subject: [PATCH 04/11] Fix segfault opening conversation details when no XEP-0191 support (#1513) fixes #1508 --- xmpp-vala/src/module/xep/0191_blocking_command.vala | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/xmpp-vala/src/module/xep/0191_blocking_command.vala b/xmpp-vala/src/module/xep/0191_blocking_command.vala index 987f538a..9e5ede78 100644 --- a/xmpp-vala/src/module/xep/0191_blocking_command.vala +++ b/xmpp-vala/src/module/xep/0191_blocking_command.vala @@ -12,7 +12,11 @@ public class Module : XmppStreamModule, Iq.Handler { public signal void unblock_all_received(XmppStream stream); public bool is_blocked(XmppStream stream, string jid) { - return stream.get_flag(Flag.IDENTITY).blocklist.contains(jid); + if (is_supported(stream)) { + return stream.get_flag(Flag.IDENTITY).blocklist.contains(jid); + } else { + return false; + } } public bool block(XmppStream stream, string[] jids) { From 384ef1d3f15c82af1a4647b0ee704f77919ff2b1 Mon Sep 17 00:00:00 2001 From: fiaxh Date: Sun, 10 Dec 2023 13:30:02 +0100 Subject: [PATCH 05/11] Conversation details dialog: Fix notification+block icons --- main/CMakeLists.txt | 3 +++ main/data/gresource.xml | 3 +++ .../scalable/status/dino-bell-large-none-symbolic.svg | 2 ++ .../icons/scalable/status/dino-bell-large-symbolic.svg | 2 ++ main/data/icons/scalable/status/dino-block-symbolic.svg | 7 +++++++ main/src/windows/conversation_details.vala | 4 ++-- 6 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 main/data/icons/scalable/status/dino-bell-large-none-symbolic.svg create mode 100644 main/data/icons/scalable/status/dino-bell-large-symbolic.svg create mode 100644 main/data/icons/scalable/status/dino-block-symbolic.svg diff --git a/main/CMakeLists.txt b/main/CMakeLists.txt index 437a84b9..9a7cb189 100644 --- a/main/CMakeLists.txt +++ b/main/CMakeLists.txt @@ -39,6 +39,9 @@ set(RESOURCE_LIST icons/scalable/mimetypes/dino-file-table-symbolic.svg icons/scalable/mimetypes/dino-file-video-symbolic.svg + icons/scalable/status/dino-bell-large-none-symbolic.svg + icons/scalable/status/dino-bell-large-symbolic.svg + icons/scalable/status/dino-block-symbolic.svg icons/scalable/status/dino-double-tick-symbolic.svg icons/scalable/status/dino-party-popper-symbolic.svg icons/scalable/status/dino-security-high-symbolic.svg diff --git a/main/data/gresource.xml b/main/data/gresource.xml index 503503c9..282838e0 100644 --- a/main/data/gresource.xml +++ b/main/data/gresource.xml @@ -40,6 +40,9 @@ icons/scalable/mimetypes/dino-file-table-symbolic.svg icons/scalable/mimetypes/dino-file-video-symbolic.svg icons/scalable/status/dino-double-tick-symbolic.svg + icons/scalable/status/dino-bell-large-none-symbolic.svg + icons/scalable/status/dino-bell-large-symbolic.svg + icons/scalable/status/dino-block-symbolic.svg icons/scalable/status/dino-party-popper-symbolic.svg icons/scalable/status/dino-security-high-symbolic.svg icons/scalable/status/dino-status-away.svg diff --git a/main/data/icons/scalable/status/dino-bell-large-none-symbolic.svg b/main/data/icons/scalable/status/dino-bell-large-none-symbolic.svg new file mode 100644 index 00000000..b6bc8b65 --- /dev/null +++ b/main/data/icons/scalable/status/dino-bell-large-none-symbolic.svg @@ -0,0 +1,2 @@ + + diff --git a/main/data/icons/scalable/status/dino-bell-large-symbolic.svg b/main/data/icons/scalable/status/dino-bell-large-symbolic.svg new file mode 100644 index 00000000..86a6ca20 --- /dev/null +++ b/main/data/icons/scalable/status/dino-bell-large-symbolic.svg @@ -0,0 +1,2 @@ + + diff --git a/main/data/icons/scalable/status/dino-block-symbolic.svg b/main/data/icons/scalable/status/dino-block-symbolic.svg new file mode 100644 index 00000000..5e938c6d --- /dev/null +++ b/main/data/icons/scalable/status/dino-block-symbolic.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/main/src/windows/conversation_details.vala b/main/src/windows/conversation_details.vala index 099412d1..1dac02c7 100644 --- a/main/src/windows/conversation_details.vala +++ b/main/src/windows/conversation_details.vala @@ -64,7 +64,7 @@ namespace Dino.Ui.ConversationDetails { } private void update_blocked_button() { - block_button_content.icon_name = "action-unavailable-symbolic"; + block_button_content.icon_name = "dino-block-symbolic"; block_button_content.label = model.blocked ? _("Blocked") : _("Block"); if (model.blocked) { block_button.add_css_class("error"); @@ -75,7 +75,7 @@ namespace Dino.Ui.ConversationDetails { private void update_notification_button() { string icon_name = model.notification == OFF ? - "notifications-disabled-symbolic" : "notification-symbolic"; + "dino-bell-large-none-symbolic" : "dino-bell-large-symbolic"; notification_button_toggle_content.icon_name = icon_name; notification_button_split_content.icon_name = icon_name; notification_button_menu_content.icon_name = icon_name; From 22516c186285ed4723644ef790d1fe0ce43a0bf1 Mon Sep 17 00:00:00 2001 From: eerielili Date: Wed, 10 Jan 2024 20:20:50 +0000 Subject: [PATCH 06/11] Fix crash on removing conference not in roster (#1516) --- main/src/ui/add_conversation/add_conference_dialog.vala | 1 + 1 file changed, 1 insertion(+) diff --git a/main/src/ui/add_conversation/add_conference_dialog.vala b/main/src/ui/add_conversation/add_conference_dialog.vala index 4b7364c7..c5e4ac51 100644 --- a/main/src/ui/add_conversation/add_conference_dialog.vala +++ b/main/src/ui/add_conversation/add_conference_dialog.vala @@ -101,6 +101,7 @@ public class AddConferenceDialog : Gtk.Dialog { }); select_fragment.remove_jid.connect((row) => { ConferenceListRow conference_row = row as ConferenceListRow; + if (conference_row == null) return; stream_interactor.get_module(MucManager.IDENTITY).remove_bookmark(conference_row.account, conference_row.bookmark); }); From 732d3a9814b383aa8f2c962d33c7feb0481ff7a7 Mon Sep 17 00:00:00 2001 From: Teemu Ikonen Date: Sat, 13 Jan 2024 14:56:13 +0200 Subject: [PATCH 07/11] Change select contact dialog container to AdwClamp (#1533) --- .../add_conversation/select_jid_fragment.ui | 96 ++++++++++--------- .../add_conference_dialog.vala | 2 + .../select_contact_dialog.vala | 2 + 3 files changed, 54 insertions(+), 46 deletions(-) diff --git a/main/data/add_conversation/select_jid_fragment.ui b/main/data/add_conversation/select_jid_fragment.ui index 787add9f..9687fd10 100644 --- a/main/data/add_conversation/select_jid_fragment.ui +++ b/main/data/add_conversation/select_jid_fragment.ui @@ -2,68 +2,72 @@