From 28248607f03bfd3e5fc6b29e0528edfd4f04a601 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Wed, 9 Feb 2022 23:52:47 +0100 Subject: [PATCH 01/19] DTLS: Handle DTLS fingerprint in transport-info before session-accept --- plugins/ice/src/transport_parameters.vala | 29 +++++++++++++++++-- plugins/rtp/src/stream.vala | 2 +- .../transport_parameters.vala | 7 +++++ 3 files changed, 35 insertions(+), 3 deletions(-) diff --git a/plugins/ice/src/transport_parameters.vala b/plugins/ice/src/transport_parameters.vala index fdeebb82..66dde8b1 100644 --- a/plugins/ice/src/transport_parameters.vala +++ b/plugins/ice/src/transport_parameters.vala @@ -160,13 +160,25 @@ public class Dino.Plugins.Ice.TransportParameters : JingleIceUdp.IceUdpTransport } } + private bool bytes_equal(uint8[] a1, uint8[] a2) { + return a1.length == a2.length && Memory.cmp(a1, a2, a1.length) == 0; + } + public override void handle_transport_accept(StanzaNode transport) throws Jingle.IqError { debug("on_transport_accept from %s", peer_full_jid.to_string()); base.handle_transport_accept(transport); if (dtls_srtp_handler != null && peer_fingerprint != null) { - dtls_srtp_handler.peer_fingerprint = peer_fingerprint; - dtls_srtp_handler.peer_fp_algo = peer_fp_algo; + if (dtls_srtp_handler.peer_fingerprint != null) { + if (!bytes_equal(dtls_srtp_handler.peer_fingerprint, peer_fingerprint)) { + warning("Tried to replace certificate fingerprint mid use. We don't allow that."); + peer_fingerprint = dtls_srtp_handler.peer_fingerprint; + peer_fp_algo = dtls_srtp_handler.peer_fp_algo; + } + } else { + dtls_srtp_handler.peer_fingerprint = peer_fingerprint; + dtls_srtp_handler.peer_fp_algo = peer_fp_algo; + } if (peer_setup == "passive") { dtls_srtp_handler.mode = DtlsSrtp.Mode.CLIENT; dtls_srtp_handler.stop_dtls_connection(); @@ -186,6 +198,19 @@ public class Dino.Plugins.Ice.TransportParameters : JingleIceUdp.IceUdpTransport debug("on_transport_info from %s", peer_full_jid.to_string()); base.handle_transport_info(transport); + if (dtls_srtp_handler != null && peer_fingerprint != null) { + if (dtls_srtp_handler.peer_fingerprint != null) { + if (!bytes_equal(dtls_srtp_handler.peer_fingerprint, peer_fingerprint)) { + warning("Tried to replace certificate fingerprint mid use. We don't allow that."); + peer_fingerprint = dtls_srtp_handler.peer_fingerprint; + peer_fp_algo = dtls_srtp_handler.peer_fp_algo; + } + } else { + dtls_srtp_handler.peer_fingerprint = peer_fingerprint; + dtls_srtp_handler.peer_fp_algo = peer_fp_algo; + } + } + if (!we_want_connection) return; if (remote_ufrag != null && remote_pwd != null && !remote_credentials_set) { diff --git a/plugins/rtp/src/stream.vala b/plugins/rtp/src/stream.vala index 2a236533..25a1ed2c 100644 --- a/plugins/rtp/src/stream.vala +++ b/plugins/rtp/src/stream.vala @@ -317,7 +317,7 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { rtp_buffer.unmap(); } if (our_ssrc != buffer_ssrc) { - warning("Sending RTP %s buffer seq %u with SSRC %u when our ssrc is %u", media, buffer_seq, buffer_ssrc, our_ssrc); + warning_once("Sending RTP %s buffer seq %u with SSRC %u when our ssrc is %u", media, buffer_seq, buffer_ssrc, our_ssrc); } } diff --git a/xmpp-vala/src/module/xep/0176_jingle_ice_udp/transport_parameters.vala b/xmpp-vala/src/module/xep/0176_jingle_ice_udp/transport_parameters.vala index 454a82bb..490cc125 100644 --- a/xmpp-vala/src/module/xep/0176_jingle_ice_udp/transport_parameters.vala +++ b/xmpp-vala/src/module/xep/0176_jingle_ice_udp/transport_parameters.vala @@ -119,6 +119,13 @@ public abstract class Xmpp.Xep.JingleIceUdp.IceUdpTransportParameters : Jingle.T foreach (StanzaNode candidateNode in node.get_subnodes("candidate")) { remote_candidates.add(Candidate.parse(candidateNode)); } + + StanzaNode? fingerprint_node = node.get_subnode("fingerprint", DTLS_NS_URI); + if (fingerprint_node != null) { + peer_fingerprint = fingerprint_to_bytes(fingerprint_node.get_string_content()); + peer_fp_algo = fingerprint_node.get_attribute("hash"); + peer_setup = fingerprint_node.get_attribute("setup"); + } } public virtual void create_transport_connection(XmppStream stream, Jingle.Content content) { From dbc6d87cb9c26a5858ccf7400a43cdd4f6f26971 Mon Sep 17 00:00:00 2001 From: fiaxh Date: Thu, 10 Feb 2022 15:41:24 +0100 Subject: [PATCH 02/19] Various call fixes - Don't create incoming CIM calls twice - Fix is_color check for video devices w/ multiple formats - Tolerate mismatching content creator on jingle responses - Change MUJI namespace to urn:xmpp:jingle:muji:0 --- libdino/src/service/call_peer_state.vala | 2 +- libdino/src/service/calls.vala | 35 ++++++++++++------- plugins/rtp/src/plugin.vala | 11 +++--- .../src/module/xep/0166_jingle/session.vala | 8 ++--- xmpp-vala/src/module/xep/0272_muji.vala | 2 +- .../xep/0353_jingle_message_initiation.vala | 2 ++ 6 files changed, 35 insertions(+), 25 deletions(-) diff --git a/libdino/src/service/call_peer_state.vala b/libdino/src/service/call_peer_state.vala index 5fa77926..cf39eec4 100644 --- a/libdino/src/service/call_peer_state.vala +++ b/libdino/src/service/call_peer_state.vala @@ -12,7 +12,7 @@ public class Dino.PeerState : Object { public signal void encryption_updated(Xep.Jingle.ContentEncryption? audio_encryption, Xep.Jingle.ContentEncryption? video_encryption, bool same); public StreamInteractor stream_interactor; - CallState call_state; + public CallState call_state; public Calls calls; public Call call; public Jid jid; diff --git a/libdino/src/service/calls.vala b/libdino/src/service/calls.vala index 94ddc0df..443c9ae4 100644 --- a/libdino/src/service/calls.vala +++ b/libdino/src/service/calls.vala @@ -48,9 +48,9 @@ namespace Dino { stream_interactor.get_module(CallStore.IDENTITY).add_call(call, conversation); var call_state = new CallState(call, stream_interactor); + connect_call_state_signals(call_state); call_state.we_should_send_video = video; call_state.we_should_send_audio = true; - connect_call_state_signals(call_state); if (conversation.type_ == Conversation.Type.CHAT) { call.add_peer(conversation.counterpart); @@ -205,6 +205,9 @@ namespace Dino { // This is a direct call without prior JMI. Ask user. PeerState peer_state = create_received_call(account, session.peer_full_jid, account.full_jid, counterpart_wants_video); peer_state.set_session(session); + Conversation conversation = stream_interactor.get_module(ConversationManager.IDENTITY).get_conversation(peer_state.call.counterpart.bare_jid, account, Conversation.Type.CHAT); + call_incoming(peer_state.call, peer_state.call_state, conversation, counterpart_wants_video, false); + stream_interactor.module_manager.get_module(account, Xep.JingleRtp.Module.IDENTITY).session_info_type.send_ringing(session); } @@ -237,12 +240,6 @@ namespace Dino { call_state.we_should_send_video = video_requested; call_state.we_should_send_audio = true; - if (call.direction == Call.DIRECTION_INCOMING) { - call_incoming(call, call_state, conversation, video_requested, false); - } else { - call_outgoing(call, call_state, conversation); - } - return peer_state; } @@ -305,6 +302,7 @@ namespace Dino { // TODO create conv Conversation? conversation = stream_interactor.get_module(ConversationManager.IDENTITY).get_conversation(inviter_jid.bare_jid, account); + if (conversation == null) return null; stream_interactor.get_module(CallStore.IDENTITY).add_call(call, conversation); conversation.last_active = call.time; @@ -348,18 +346,25 @@ namespace Dino { Xep.JingleMessageInitiation.Module mi_module = stream_interactor.module_manager.get_module(account, Xep.JingleMessageInitiation.Module.IDENTITY); mi_module.session_proposed.connect((from, to, sid, descriptions) => { + + if (stream_interactor.get_module(MucManager.IDENTITY).might_be_groupchat(from.bare_jid, account)) return; + bool audio_requested = descriptions.any_match((description) => description.ns_uri == Xep.JingleRtp.NS_URI && description.get_attribute("media") == "audio"); bool video_requested = descriptions.any_match((description) => description.ns_uri == Xep.JingleRtp.NS_URI && description.get_attribute("media") == "video"); if (!audio_requested && !video_requested) return; PeerState peer_state = create_received_call(account, from, to, video_requested); peer_state.sid = sid; - CallState call_state = call_states[peer_state.call]; - call_state.we_should_send_audio = true; - call_state.we_should_send_video = video_requested; - jmi_request_peer[call_state.call] = peer_state; + jmi_request_peer[peer_state.call] = peer_state; + + Conversation conversation = stream_interactor.get_module(ConversationManager.IDENTITY).get_conversation(call_state.call.counterpart.bare_jid, account, Conversation.Type.CHAT); + if (call_state.call.direction == Call.DIRECTION_INCOMING) { + call_incoming(call_state.call, call_state, conversation, video_requested, false); + } else { + call_outgoing(call_state.call, call_state, conversation); + } }); mi_module.session_accepted.connect((from, to, sid) => { PeerState? peer_state = get_peer_by_sid(account, sid, from, to); @@ -442,7 +447,7 @@ namespace Dino { } else if (join_method_node.name == "jingle" && join_method_node.ns_uri == Xep.CallInvites.NS_URI) { // This is an invite for a direct Jingle session - if (message_stanza.type_ != Xmpp.MessageStanza.TYPE_CHAT) return; + if (stream_interactor.get_module(MucManager.IDENTITY).might_be_groupchat(from_jid.bare_jid, account)) return; string? sid = join_method_node.get_attribute("sid"); if (sid == null) return; @@ -472,7 +477,11 @@ namespace Dino { conversation.last_active = call_state.call.time; if (conversation == null) return; - call_incoming(call_state.call, call_state, conversation, video_requested, multiparty); + if (call_state.call.direction == Call.DIRECTION_INCOMING) { + call_incoming(call_state.call, call_state, conversation, video_requested, multiparty); + } else { + call_outgoing(call_state.call, call_state, conversation); + } }); call_invites_module.call_accepted.connect((from_jid, to_jid, call_id, message_type) => { CallState? call_state = get_call_state_by_call_id(account, call_id, from_jid, to_jid); diff --git a/plugins/rtp/src/plugin.vala b/plugins/rtp/src/plugin.vala index e7ee7117..2469a967 100644 --- a/plugins/rtp/src/plugin.vala +++ b/plugins/rtp/src/plugin.vala @@ -350,10 +350,16 @@ public class Dino.Plugins.Rtp.Plugin : RootInterface, VideoCallPlugin, Object { if (device.media != "video") continue; if (device.is_sink) continue; + // Skip monitors + if (device.is_monitor) continue; + bool is_color = false; for (int i = 0; i < device.device.caps.get_size(); i++) { unowned Gst.Structure structure = device.device.caps.get_structure(i); - if (structure.has_field("format") && !structure.get_string("format").has_prefix("GRAY")) { + if (!structure.has_field("format")) continue; + // "format" might be an array and get_string() will then return null. We just assume arrays to be fine. + string? format = structure.get_string("format"); + if (format == null || !format.has_prefix("GRAY")) { is_color = true; } } @@ -361,9 +367,6 @@ public class Dino.Plugins.Rtp.Plugin : RootInterface, VideoCallPlugin, Object { // Don't allow grey-scale devices if (!is_color) continue; - // Skip monitors - if (device.is_monitor) continue; - if (device.protocol == DeviceProtocol.PIPEWIRE) { pipewire_devices.add(device); } else { diff --git a/xmpp-vala/src/module/xep/0166_jingle/session.vala b/xmpp-vala/src/module/xep/0166_jingle/session.vala index af913aab..e5084880 100644 --- a/xmpp-vala/src/module/xep/0166_jingle/session.vala +++ b/xmpp-vala/src/module/xep/0166_jingle/session.vala @@ -105,9 +105,7 @@ public class Xmpp.Xep.Jingle.Session : Object { Content content = contents_map[content_node.name]; - if (content_node.creator != content.content_creator) { - throw new IqError.BAD_REQUEST("unknown content; creator"); - } + if (content_node.creator != content.content_creator) warning("Received transport-* with unexpected content creator from %s", peer_full_jid.to_string()); switch (action) { case "transport-accept": @@ -135,9 +133,7 @@ public class Xmpp.Xep.Jingle.Session : Object { Content content = contents_map[content_node.name]; - if (content_node.creator != content.content_creator) { - throw new IqError.BAD_REQUEST("unknown content; creator"); - } + if (content_node.creator != content.content_creator) warning("Received description-info with unexpected content creator from %s", peer_full_jid.to_string()); content.on_description_info(stream, content_node.description, jingle, iq); } else if (action == "security-info") { diff --git a/xmpp-vala/src/module/xep/0272_muji.vala b/xmpp-vala/src/module/xep/0272_muji.vala index f8b45e25..b1dd7f40 100644 --- a/xmpp-vala/src/module/xep/0272_muji.vala +++ b/xmpp-vala/src/module/xep/0272_muji.vala @@ -1,7 +1,7 @@ using Gee; namespace Xmpp.Xep.Muji { - public const string NS_URI = "http://telepathy.freedesktop.org/muji"; + public const string NS_URI = "urn:xmpp:jingle:muji:0"; public class Module : XmppStreamModule { public static ModuleIdentity IDENTITY = new ModuleIdentity(NS_URI, "0272_muji"); diff --git a/xmpp-vala/src/module/xep/0353_jingle_message_initiation.vala b/xmpp-vala/src/module/xep/0353_jingle_message_initiation.vala index ac1d8329..730f07e8 100644 --- a/xmpp-vala/src/module/xep/0353_jingle_message_initiation.vala +++ b/xmpp-vala/src/module/xep/0353_jingle_message_initiation.vala @@ -51,6 +51,8 @@ namespace Xmpp.Xep.JingleMessageInitiation { } private void on_received_message(XmppStream stream, MessageStanza message) { + if (message.type_ == MessageStanza.TYPE_GROUPCHAT) return; + Xep.MessageArchiveManagement.MessageFlag? mam_flag = Xep.MessageArchiveManagement.MessageFlag.get_flag(message); if (mam_flag != null) return; From e768c40e1122c4a8ef8785aef6a07044f6e869e1 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Fri, 11 Feb 2022 19:55:19 +0100 Subject: [PATCH 03/19] RTP: Make codec and hardware support compile-time configurable --- plugins/rtp/CMakeLists.txt | 26 ++++++++++---- plugins/rtp/src/codec_util.vala | 61 +++++++++++++++++++++++++++++---- plugins/rtp/src/device.vala | 1 - plugins/rtp/src/module.vala | 26 ++++++-------- plugins/rtp/src/stream.vala | 1 - 5 files changed, 85 insertions(+), 30 deletions(-) diff --git a/plugins/rtp/CMakeLists.txt b/plugins/rtp/CMakeLists.txt index 4c159c1b..87ca4dcb 100644 --- a/plugins/rtp/CMakeLists.txt +++ b/plugins/rtp/CMakeLists.txt @@ -12,20 +12,34 @@ find_packages(RTP_PACKAGES REQUIRED GstAudio ) +set(RTP_DEFINITIONS) + if(GstRtp_VERSION VERSION_GREATER "1.16") - set(RTP_DEFINITIONS GST_1_16) + set(RTP_DEFINITIONS ${RTP_DEFINITIONS} GST_1_16) endif() if(GstRtp_VERSION VERSION_GREATER "1.18") - set(RTP_DEFINITIONS GST_1_18) + set(RTP_DEFINITIONS ${RTP_DEFINITIONS} GST_1_18) endif() -if(Vala_VERSION VERSION_GREATER "0.50") - set(RTP_DEFINITIONS VALA_0_50) +set(RTP_ENABLE_VP9 "no" CACHE BOOL "Enable VP9 support") +if(RTP_ENABLE_VP9) + set(RTP_DEFINITIONS ${RTP_DEFINITIONS} ENABLE_VP9) endif() -if(Vala_VERSION VERSION_GREATER "0.52") - set(RTP_DEFINITIONS VALA_0_52) +set(RTP_ENABLE_H264 "no" CACHE BOOL "Enable H264 support") +if(RTP_ENABLE_H264) + set(RTP_DEFINITIONS ${RTP_DEFINITIONS} ENABLE_H264) +endif() + +set(RTP_ENABLE_VAAPI "no" CACHE BOOL "Enable VAAPI support") +if(RTP_ENABLE_VAAPI) + set(RTP_DEFINITIONS ${RTP_DEFINITIONS} ENABLE_VAAPI) +endif() + +set(RTP_ENABLE_MSDK "no" CACHE BOOL "Enable MSDK support") +if(RTP_ENABLE_MSDK) + set(RTP_DEFINITIONS ${RTP_DEFINITIONS} ENABLE_MSDK) endif() if(WebRTCAudioProcessing_VERSION GREATER "0.4") diff --git a/plugins/rtp/src/codec_util.vala b/plugins/rtp/src/codec_util.vala index 443baa7e..ac8c7f98 100644 --- a/plugins/rtp/src/codec_util.vala +++ b/plugins/rtp/src/codec_util.vala @@ -97,11 +97,35 @@ public class Dino.Plugins.Rtp.CodecUtil { } else if (media == "video") { switch (codec) { case "h264": - return new string[] {/*"msdkh264enc", */"vaapih264enc", "x264enc"}; + return new string[] { +#if ENABLE_MSDK + "msdkh264enc", +#endif +#if ENABLE_VAAPI + "vaapih264enc", +#endif + "x264enc" + }; case "vp9": - return new string[] {/*"msdkvp9enc", */"vaapivp9enc", "vp9enc"}; + return new string[] { +#if ENABLE_MSDK + "msdkvp9enc", +#endif +#if ENABLE_VAAPI + "vaapivp9enc", +#endif + "vp9enc" + }; case "vp8": - return new string[] {/*"msdkvp8enc", */"vaapivp8enc", "vp8enc"}; + return new string[] { +#if ENABLE_MSDK + "msdkvp8enc", +#endif +#if ENABLE_VAAPI + "vaapivp8enc", +#endif + "vp8enc" + }; } } return new string[0]; @@ -125,11 +149,35 @@ public class Dino.Plugins.Rtp.CodecUtil { } else if (media == "video") { switch (codec) { case "h264": - return new string[] {/*"msdkh264dec", */"vaapih264dec"}; + return new string[] { +#if ENABLE_MSDK + "msdkh264dec", +#endif +#if ENABLE_VAAPI + "vaapih264dec", +#endif + null + }; case "vp9": - return new string[] {/*"msdkvp9dec", */"vaapivp9dec", "vp9dec"}; + return new string[] { +#if ENABLE_MSDK + "msdkvp9dec", +#endif +#if ENABLE_VAAPI + "vaapivp9dec", +#endif + "vp9dec" + }; case "vp8": - return new string[] {/*"msdkvp8dec", */"vaapivp8dec", "vp8dec"}; + return new string[] { +#if ENABLE_MSDK + "msdkvp8dec", +#endif +#if ENABLE_VAAPI + "vaapivp8dec", +#endif + "vp8dec" + }; } } return new string[0]; @@ -268,7 +316,6 @@ public class Dino.Plugins.Rtp.CodecUtil { } public string? get_decode_element_name(string media, string? codec) { - if (codec == "vp9") return null; // Temporary unsupport VP9 if (get_depay_element_name(media, codec) == null) return null; foreach (string candidate in get_decode_candidates(media, codec)) { if (is_element_supported(candidate)) return candidate; diff --git a/plugins/rtp/src/device.vala b/plugins/rtp/src/device.vala index e97a0d04..aca97578 100644 --- a/plugins/rtp/src/device.vala +++ b/plugins/rtp/src/device.vala @@ -438,7 +438,6 @@ public class Dino.Plugins.Rtp.Device : MediaDevice, Object { if (is_sink && media == "audio") { mixer = (Gst.Base.Aggregator) Gst.ElementFactory.make("audiomixer", @"mixer_$id"); pipe.add(mixer); - mixer.link(pipe); if (plugin.echoprobe != null && !plugin.echoprobe.get_static_pad("src").is_linked()) { mixer.link(plugin.echoprobe); plugin.echoprobe.link(element); diff --git a/plugins/rtp/src/module.vala b/plugins/rtp/src/module.vala index ca1a6a5b..be153b10 100644 --- a/plugins/rtp/src/module.vala +++ b/plugins/rtp/src/module.vala @@ -147,19 +147,23 @@ public class Dino.Plugins.Rtp.Module : JingleRtp.Module { yield add_if_supported(list, media, pcmu); yield add_if_supported(list, media, pcma); } else if (media == "video") { - var h264 = new JingleRtp.PayloadType() { clockrate = 90000, name = "H264", id = 96 }; - var vp9 = new JingleRtp.PayloadType() { clockrate = 90000, name = "VP9", id = 97 }; - var vp8 = new JingleRtp.PayloadType() { clockrate = 90000, name = "VP8", id = 98 }; var rtcp_fbs = new ArrayList(); rtcp_fbs.add(new JingleRtp.RtcpFeedback("goog-remb")); rtcp_fbs.add(new JingleRtp.RtcpFeedback("ccm", "fir")); rtcp_fbs.add(new JingleRtp.RtcpFeedback("nack")); rtcp_fbs.add(new JingleRtp.RtcpFeedback("nack", "pli")); - h264.rtcp_fbs.add_all(rtcp_fbs); - vp9.rtcp_fbs.add_all(rtcp_fbs); - vp8.rtcp_fbs.add_all(rtcp_fbs); +#if ENABLE_H264 + var h264 = new JingleRtp.PayloadType() { clockrate = 90000, name = "H264", id = 96 }; yield add_if_supported(list, media, h264); + h264.rtcp_fbs.add_all(rtcp_fbs); +#endif +#if ENABLE_VP9 + var vp9 = new JingleRtp.PayloadType() { clockrate = 90000, name = "VP9", id = 97 }; + vp9.rtcp_fbs.add_all(rtcp_fbs); yield add_if_supported(list, media, vp9); +#endif + var vp8 = new JingleRtp.PayloadType() { clockrate = 90000, name = "VP8", id = 98 }; + vp8.rtcp_fbs.add_all(rtcp_fbs); yield add_if_supported(list, media, vp8); } else { warning("Unsupported media type: %s", media); @@ -168,15 +172,7 @@ public class Dino.Plugins.Rtp.Module : JingleRtp.Module { } public override async JingleRtp.PayloadType? pick_payload_type(string media, Gee.List payloads) { - if (media == "audio") { - foreach (JingleRtp.PayloadType type in payloads) { - if (yield is_payload_supported(media, type)) return adjust_payload_type(media, type.clone()); - } - } else if (media == "video") { - // We prefer H.264 (best support for hardware acceleration and good overall codec quality) - JingleRtp.PayloadType? h264 = payloads.first_match((it) => it.name.up() == "H264"); - if (h264 != null && yield is_payload_supported(media, h264)) return adjust_payload_type(media, h264.clone()); - // Take first of the list that we do support otherwise + if (media == "audio" || media == "video") { foreach (JingleRtp.PayloadType type in payloads) { if (yield is_payload_supported(media, type)) return adjust_payload_type(media, type.clone()); } diff --git a/plugins/rtp/src/stream.vala b/plugins/rtp/src/stream.vala index 25a1ed2c..ef9ffe96 100644 --- a/plugins/rtp/src/stream.vala +++ b/plugins/rtp/src/stream.vala @@ -505,7 +505,6 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { buffer_seq = rtp_buffer.get_seq(); rtp_buffer.unmap(); } - debug("Received RTP %s buffer seq %u with SSRC %u", media, buffer_seq, buffer_ssrc); } #endif if (push_recv_data) { From 6532c2b160c66540091d667c4af116ec4d71ff43 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Fri, 11 Feb 2022 20:33:06 +0100 Subject: [PATCH 04/19] RTP: Only display SSRC mismatch warning for GLib versions supporting warning_once --- plugins/rtp/CMakeLists.txt | 5 +++++ plugins/rtp/src/stream.vala | 2 ++ 2 files changed, 7 insertions(+) diff --git a/plugins/rtp/CMakeLists.txt b/plugins/rtp/CMakeLists.txt index 87ca4dcb..c8652c54 100644 --- a/plugins/rtp/CMakeLists.txt +++ b/plugins/rtp/CMakeLists.txt @@ -1,4 +1,5 @@ find_package(GstRtp REQUIRED) +find_package(GLib ${GLib_GLOBAL_VERSION} REQUIRED) find_package(WebRTCAudioProcessing 0.2) find_packages(RTP_PACKAGES REQUIRED Gee @@ -22,6 +23,10 @@ if(GstRtp_VERSION VERSION_GREATER "1.18") set(RTP_DEFINITIONS ${RTP_DEFINITIONS} GST_1_18) endif() +if(GLib_VERSION VERSION_GREATER "2.64") + set(RTP_DEFINITIONS ${RTP_DEFINITIONS} GLIB_2_64) +endif() + set(RTP_ENABLE_VP9 "no" CACHE BOOL "Enable VP9 support") if(RTP_ENABLE_VP9) set(RTP_DEFINITIONS ${RTP_DEFINITIONS} ENABLE_VP9) diff --git a/plugins/rtp/src/stream.vala b/plugins/rtp/src/stream.vala index ef9ffe96..6bd92e3f 100644 --- a/plugins/rtp/src/stream.vala +++ b/plugins/rtp/src/stream.vala @@ -316,9 +316,11 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { next_timestamp_offset_stamp = get_monotonic_time(); rtp_buffer.unmap(); } +#if GLIB_2_64 if (our_ssrc != buffer_ssrc) { warning_once("Sending RTP %s buffer seq %u with SSRC %u when our ssrc is %u", media, buffer_seq, buffer_ssrc, our_ssrc); } +#endif } prepare_local_crypto(); From be751a5dda6e4b4612276d278f59f9f96ed0298c Mon Sep 17 00:00:00 2001 From: fiaxh Date: Sat, 12 Feb 2022 14:07:19 +0100 Subject: [PATCH 05/19] Various call fixes - If peer invited us claiming audio-only and then wants to have a video content, do a content-modify and accept audio-only - Check contents for video (and modify) and whether call is truly accepted in PeerState.accept() directly - If a message contains both JMI and CIM, only use JMI - Fix outgoing CIM (disabled) - Use opacity instead of visiblity for file_menu, small fixes - Add back owner/admin/member queries when joining MUC (regression from 33104a7) --- libdino/src/service/call_peer_state.vala | 24 ++++++++++++- libdino/src/service/call_state.vala | 2 +- libdino/src/service/calls.vala | 35 +++++++------------ main/data/file_default_widget.ui | 3 +- .../file_default_widget.vala | 4 +-- xmpp-vala/src/module/xep/0045_muc/module.vala | 6 ++++ .../module/xep/0353_call_invite_message.vala | 13 ++++--- 7 files changed, 56 insertions(+), 31 deletions(-) diff --git a/libdino/src/service/call_peer_state.vala b/libdino/src/service/call_peer_state.vala index cf39eec4..c97aa48d 100644 --- a/libdino/src/service/call_peer_state.vala +++ b/libdino/src/service/call_peer_state.vala @@ -90,7 +90,10 @@ public class Dino.PeerState : Object { } stream.get_module(Xmpp.Xep.JingleMessageInitiation.Module.IDENTITY).send_session_propose_to_peer(stream, jid, sid, descriptions); -// call_state.cim_call_id = stream.get_module(Xmpp.Xep.CallInvites.Module.IDENTITY).send_jingle_propose(stream, jid, sid, we_should_send_video); + +// Uncomment this use CIM instead of JMI +// call_state.cim_call_id = sid; +// stream.get_module(Xmpp.Xep.CallInvites.Module.IDENTITY).send_jingle_propose(stream, call_state.cim_call_id, jid, sid, we_should_send_video); } else if (jid_for_direct != null) { yield call_resource(jid_for_direct); } @@ -111,8 +114,27 @@ public class Dino.PeerState : Object { } public void accept() { + if (!call_state.accepted) { + critical("Tried to accept peer in unaccepted call?! Something's fishy. Abort."); + return; + } + if (session != null) { foreach (Xep.Jingle.Content content in session.contents) { + Xep.JingleRtp.Parameters? rtp_content_parameter = content.content_params as Xep.JingleRtp.Parameters; + if (rtp_content_parameter != null && rtp_content_parameter.media == "video") { + // We didn't accept video but our peer wants to negotiate that content + if (!we_should_send_video && session.senders_include_us(content.senders)) { + if (session.senders_include_counterpart(content.senders)) { + // If our peer wants to send, let them + content.modify(session.we_initiated ? Xep.Jingle.Senders.RESPONDER : Xep.Jingle.Senders.INITIATOR); + } else { + // If only we're supposed to send, reject + content.reject(); + continue; + } + } + } content.accept(); } } else { diff --git a/libdino/src/service/call_state.vala b/libdino/src/service/call_state.vala index 73b26650..c403fc6a 100644 --- a/libdino/src/service/call_state.vala +++ b/libdino/src/service/call_state.vala @@ -373,7 +373,7 @@ public class Dino.CallState : Object { handle_peer_left(peer_state, false, Xep.Jingle.ReasonElement.CANCEL, "Peer left the MUJI MUC"); }); - if (group_call.peers_to_connect_to.size > 3) { + if (group_call.peers_to_connect_to.size > 4) { end("Call too full - P2p calls don't work well with many participants"); return; } diff --git a/libdino/src/service/calls.vala b/libdino/src/service/calls.vala index 443c9ae4..ef853903 100644 --- a/libdino/src/service/calls.vala +++ b/libdino/src/service/calls.vala @@ -159,7 +159,7 @@ namespace Dino { debug("[%s] Incoming call from %s from MUJI muc %s", account.bare_jid.to_string(), session.peer_full_jid.to_string(), muji_muc.to_string()); foreach (CallState call_state in call_states.values) { - if (call_state.group_call != null && call_state.group_call.muc_jid.equals(muji_muc)) { + if (call_state.call.account.equals(account) && call_state.group_call != null && call_state.group_call.muc_jid.equals(muji_muc)) { if (call_state.peers.keys.contains(session.peer_full_jid)) { PeerState peer_state = call_state.peers[session.peer_full_jid]; debug("[%s] Incoming call, we know the peer. Expected %s", account.bare_jid.to_string(), peer_state.waiting_for_inbound_muji_connection.to_string()); @@ -182,28 +182,19 @@ namespace Dino { debug(@"[%s] Incoming call from %s", account.bare_jid.to_string(), session.peer_full_jid.to_string()); - // Check if we already accepted this call via Jingle Message Initiation => accept - Call? call = null; - foreach (PeerState peer_state in jmi_request_peer.values) { - CallState call_state = call_states[peer_state.call]; - if (peer_state.sid == session.sid && - call_state.call.account.equals(account) && - peer_state.jid.equals_bare(session.peer_full_jid) && - call_state.we_should_send_video == counterpart_wants_video && - call_state.accepted) { - call = peer_state.call; - break; - } - } - if (call != null) { - jmi_request_peer[call].set_session(session); - jmi_request_peer[call].accept(); - jmi_request_peer.unset(call); + // Check if we already got this call via Jingle Message Initiation => accept + // PeerState.accept() checks if the call was accepted and ensures that we don't accidentally send video + PeerState? peer_state = get_peer_by_sid(account, session.sid, session.peer_full_jid); + if (peer_state != null) { + jmi_request_peer[peer_state.call].set_session(session); + jmi_request_peer[peer_state.call].accept(); + jmi_request_peer.unset(peer_state.call); return; } // This is a direct call without prior JMI. Ask user. - PeerState peer_state = create_received_call(account, session.peer_full_jid, account.full_jid, counterpart_wants_video); + if (stream_interactor.get_module(MucManager.IDENTITY).might_be_groupchat(session.peer_full_jid.bare_jid, account)) return; + peer_state = create_received_call(account, session.peer_full_jid, account.full_jid, counterpart_wants_video); peer_state.set_session(session); Conversation conversation = stream_interactor.get_module(ConversationManager.IDENTITY).get_conversation(peer_state.call.counterpart.bare_jid, account, Conversation.Type.CHAT); call_incoming(peer_state.call, peer_state.call_state, conversation, counterpart_wants_video, false); @@ -260,8 +251,8 @@ namespace Dino { return null; } - private PeerState? get_peer_by_sid(Account account, string sid, Jid jid1, Jid jid2) { - Jid relevant_jid = jid1.equals_bare(account.bare_jid) ? jid2 : jid1; + private PeerState? get_peer_by_sid(Account account, string sid, Jid jid1, Jid? jid2 = null) { + Jid relevant_jid = jid1.equals_bare(account.bare_jid) && jid2 != null ? jid2 : jid1; foreach (CallState call_state in call_states.values) { if (!call_state.call.account.equals(account)) continue; @@ -284,7 +275,7 @@ namespace Dino { CallState call_state = call_states[call]; - if (call.counterparts.contains(inviter_jid) && call_state.accepted) { + if (call.counterparts.size == 1 && call.counterparts.contains(inviter_jid) && call_state.accepted) { // A call is converted into a group call. call_state.join_group_call.begin(muc_jid); return null; diff --git a/main/data/file_default_widget.ui b/main/data/file_default_widget.ui index 7da52ec2..6315e230 100644 --- a/main/data/file_default_widget.ui +++ b/main/data/file_default_widget.ui @@ -90,7 +90,8 @@ - False + True + 0 none diff --git a/main/src/ui/conversation_content_view/file_default_widget.vala b/main/src/ui/conversation_content_view/file_default_widget.vala index dc952b30..28b7d477 100644 --- a/main/src/ui/conversation_content_view/file_default_widget.vala +++ b/main/src/ui/conversation_content_view/file_default_widget.vala @@ -85,7 +85,7 @@ public class FileDefaultWidget : EventBox { image_stack.set_visible_child_name("download_image"); } if (state == FileTransfer.State.COMPLETE) { - file_menu.visible = true; + file_menu.opacity = 1; } return false; } @@ -104,7 +104,7 @@ public class FileDefaultWidget : EventBox { if (state == FileTransfer.State.NOT_STARTED) { image_stack.set_visible_child_name("content_type_image"); } - file_menu.visible = false; + file_menu.opacity = 0; } private static string get_file_icon_name(string? mime_type) { diff --git a/xmpp-vala/src/module/xep/0045_muc/module.vala b/xmpp-vala/src/module/xep/0045_muc/module.vala index 9969f507..56d50210 100644 --- a/xmpp-vala/src/module/xep/0045_muc/module.vala +++ b/xmpp-vala/src/module/xep/0045_muc/module.vala @@ -345,6 +345,12 @@ public class Module : XmppStreamModule { if (status_codes.contains(StatusCode.SELF_PRESENCE)) { Jid bare_jid = presence.from.bare_jid; if (flag.get_enter_id(bare_jid) != null) { + + // TODO only query that if we actually have the rights to + query_affiliation.begin(stream, bare_jid, "member"); + query_affiliation.begin(stream, bare_jid, "admin"); + query_affiliation.begin(stream, bare_jid, "owner"); + flag.finish_muc_enter(bare_jid); var join_result = new JoinResult() { nick=presence.from.resourcepart, newly_created=status_codes.contains(StatusCode.NEW_ROOM_CREATED) }; flag.enter_futures[bare_jid].set_value(join_result); diff --git a/xmpp-vala/src/module/xep/0353_call_invite_message.vala b/xmpp-vala/src/module/xep/0353_call_invite_message.vala index bc74ba2c..38d87f43 100644 --- a/xmpp-vala/src/module/xep/0353_call_invite_message.vala +++ b/xmpp-vala/src/module/xep/0353_call_invite_message.vala @@ -12,10 +12,10 @@ namespace Xmpp.Xep.CallInvites { public signal void call_rejected(Jid from, Jid to, string call_id, string message_type); public signal void call_left(Jid from, Jid to, string call_id, string message_type); - public string send_jingle_propose(XmppStream stream, Jid invitee, string sid, bool video) { + public void send_jingle_propose(XmppStream stream, string call_id, Jid invitee, string sid, bool video) { StanzaNode jingle_node = new StanzaNode.build("jingle", CallInvites.NS_URI) .put_attribute("sid", sid); - return send_propose(stream, sid, invitee, jingle_node, video, false, MessageStanza.TYPE_CHAT); + send_propose(stream, call_id, invitee, jingle_node, video, false, MessageStanza.TYPE_CHAT); } public void send_muji_propose(XmppStream stream, string call_id, Jid invitee, Jid muc_jid, bool video, string message_type) { @@ -24,7 +24,7 @@ namespace Xmpp.Xep.CallInvites { send_propose(stream, call_id, invitee, muji_node, video, true, message_type); } - private string send_propose(XmppStream stream, string call_id, Jid invitee, StanzaNode inner_node, bool video, bool multiparty, string message_type) { + private void send_propose(XmppStream stream, string call_id, Jid invitee, StanzaNode inner_node, bool video, bool multiparty, string message_type) { StanzaNode invite_node = new StanzaNode.build("propose", NS_URI).add_self_xmlns() .put_attribute("id", call_id) .put_attribute("video", video.to_string()) @@ -34,7 +34,6 @@ namespace Xmpp.Xep.CallInvites { MessageProcessingHints.set_message_hint(invite_message, MessageProcessingHints.HINT_STORE); invite_message.stanza.put_node(invite_node); stream.get_module(MessageModule.IDENTITY).send_message.begin(stream, invite_message); - return invite_message.id; } public void send_retract(XmppStream stream, Jid to, string call_id, string message_type) { @@ -81,6 +80,12 @@ namespace Xmpp.Xep.CallInvites { if (relevant_node.name == "propose") { if (relevant_node.sub_nodes.is_empty) return; + + // If there's also a JMI node, just use that one instead. + foreach (StanzaNode node in message.stanza.sub_nodes) { + if (node.ns_uri == JingleMessageInitiation.NS_URI) return; + } + bool video = relevant_node.get_attribute_bool("video", false); call_proposed(message.from, message.to, call_id, video, relevant_node.sub_nodes, message); return; From 0f5f57888e2e237549b1bc7002770ec102ff0e6b Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 12 Feb 2022 12:54:48 +0100 Subject: [PATCH 06/19] Calls: Use GtkHeaderBar for each participant --- main/data/theme.css | 50 +++++----- main/src/ui/call_window/call_window.vala | 17 +--- .../call_window/call_window_controller.vala | 41 ++++---- .../ui/call_window/participant_widget.vala | 97 ++++++++----------- 4 files changed, 95 insertions(+), 110 deletions(-) diff --git a/main/data/theme.css b/main/data/theme.css index b8def4e1..2451f5d9 100644 --- a/main/data/theme.css +++ b/main/data/theme.css @@ -256,6 +256,10 @@ box.dino-input-error label.input-status-highlight-once { /* Call window */ +.dino-call-window decoration { + border-radius: 0; +} + .dino-call-window .titlebar { min-height: 0; } @@ -264,12 +268,6 @@ box.dino-input-error label.input-status-highlight-once { box-shadow: none; } -.dino-call-window .titlebutton.close:hover { - background: rgba(255,255,255,0.15); - border-color: rgba(255,255,255,0); - box-shadow: none; -} - .dino-call-window button.call-button { outline: 0; border-radius: 1000px; @@ -335,31 +333,39 @@ box.dino-input-error label.input-status-highlight-once { background: rgba(20,20,20,0.5); } -.dino-call-window .call-header-bar { +.dino-call-window .participant-header-bar { + background: none; + border: none; + border-radius: 0; + color: #ededec; + text-shadow: 0 0 2px black; +} + +.dino-call-window .call-header-background { background: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0)); border: 0; border-radius: 0; } -.dino-call-window .call-header-bar { - color: #ededec; -} - -.dino-call-window .call-header-bar button image { - color: alpha(white, 0.7); -} - -.dino-call-window .call-header-bar button:hover image { - color: white; -} - -.dino-call-window .participant-title-button { +.dino-call-window .participant-header-bar button { background: none; - border: 0; - border-radius: 0; +} + +.dino-call-window .participant-header-bar button:hover { + background: rgba(255,255,255,0.15); + border-color: rgba(255,255,255,0); box-shadow: none; } +.dino-call-window .participant-header-bar button image { + color: alpha(white, 0.7); + -gtk-icon-shadow: none; +} + +.dino-call-window .participant-header-bar button:hover image { + color: white; +} + .dino-call-window .call-bottom-bar { background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.3)); border: 0; diff --git a/main/src/ui/call_window/call_window.vala b/main/src/ui/call_window/call_window.vala index cf9ca0e6..ab969597 100644 --- a/main/src/ui/call_window/call_window.vala +++ b/main/src/ui/call_window/call_window.vala @@ -15,11 +15,9 @@ namespace Dino.Ui { public Grid grid = new Grid() { visible=true }; public CallBottomBar bottom_bar = new CallBottomBar() { visible=true }; public Revealer bottom_bar_revealer = new Revealer() { valign=Align.END, transition_type=RevealerTransitionType.CROSSFADE, transition_duration=200, visible=true }; - public HeaderBar header_bar = new HeaderBar() { valign=Align.START, halign=Align.END, show_close_button=true, visible=true }; - public Revealer header_bar_revealer = new Revealer() { halign=Align.END, valign=Align.START, transition_type=RevealerTransitionType.CROSSFADE, transition_duration=200, visible=true }; + public HeaderBar header_bar = new HeaderBar() { valign=Align.START, halign=Align.END, show_close_button=true, visible=true, opacity=0.0 }; + public Revealer header_bar_revealer = new Revealer() { halign=Align.END, valign=Align.START, transition_type=RevealerTransitionType.SLIDE_LEFT, transition_duration=200, visible=true, reveal_child=false }; public Box own_video_box = new Box(Orientation.HORIZONTAL, 0) { halign=Align.END, valign=Align.END, visible=true }; - public Revealer invite_button_revealer = new Revealer() { margin_top=50, margin_right=30, halign=Align.END, valign=Align.START, transition_type=RevealerTransitionType.CROSSFADE, transition_duration=200 }; - public Button invite_button = new Button.from_icon_name("dino-account-plus") { relief=ReliefStyle.NONE, visible=true }; private Widget? own_video = null; private HashMap participant_widgets = new HashMap(); private ArrayList participants = new ArrayList(); @@ -32,12 +30,11 @@ namespace Dino.Ui { public bool controls_active { get; set; default=true; } construct { - Util.force_css(header_bar, "* { background: none; border: 0; border-radius: 0; }"); header_bar.get_style_context().add_class("call-header-bar"); + header_bar.custom_title = new Box(Orientation.VERTICAL, 0); + header_bar.spacing = 0; header_bar_revealer.add(header_bar); bottom_bar_revealer.add(bottom_bar); - invite_button.get_style_context().add_class("black-element"); - invite_button_revealer.add(invite_button); own_video_box.get_style_context().add_class("own-video"); this.get_style_context().add_class("dino-call-window"); @@ -46,7 +43,6 @@ namespace Dino.Ui { overlay.add_overlay(own_video_box); overlay.add_overlay(bottom_bar_revealer); overlay.add_overlay(header_bar_revealer); - overlay.add_overlay(invite_button_revealer); overlay.get_child_position.connect(on_get_child_position); add(overlay); @@ -54,8 +50,6 @@ namespace Dino.Ui { public CallWindow() { this.bind_property("controls-active", bottom_bar_revealer, "reveal-child", BindingFlags.SYNC_CREATE); - this.bind_property("controls-active", header_bar_revealer, "reveal-child", BindingFlags.SYNC_CREATE); - this.bind_property("controls-active", invite_button_revealer, "reveal-child", BindingFlags.SYNC_CREATE); this.motion_notify_event.connect(reveal_control_elements); this.enter_notify_event.connect(reveal_control_elements); @@ -125,8 +119,7 @@ namespace Dino.Ui { participant_widgets[participants[0]].margin_bottom = margin_bottom; participant_widgets[participants[0]].margin_start = margin_left; - participant_widgets[participants[0]].on_lowest_row_changed(margin_bottom == 0); - participant_widgets[participants[0]].on_highest_row_changed(margin_top == 0); + participant_widgets[participants[0]].on_row_changed(margin_top == 0, margin_bottom == 0, margin_left == 0, margin_right == 0); return; } diff --git a/main/src/ui/call_window/call_window_controller.vala b/main/src/ui/call_window/call_window_controller.vala index e482e3aa..445f88ea 100644 --- a/main/src/ui/call_window/call_window_controller.vala +++ b/main/src/ui/call_window/call_window_controller.vala @@ -16,12 +16,12 @@ public class Dino.Ui.CallWindowController : Object { private HashMap participant_videos = new HashMap(); private HashMap participant_widgets = new HashMap(); private HashMap peer_states = new HashMap(); + private HashMap invite_handler_ids = new HashMap(); private int window_height = -1; private int window_width = -1; private bool window_size_changed = false; private ulong[] call_window_handler_ids = new ulong[0]; private ulong[] bottom_bar_handler_ids = new ulong[0]; - private ulong[] invite_handler_ids = new ulong[0]; public CallWindowController(CallWindow call_window, CallState call_state, StreamInteractor stream_interactor) { this.call_window = call_window; @@ -93,18 +93,6 @@ public class Dino.Ui.CallWindowController : Object { call_window_handler_ids += call_window.realize.connect(() => { capture_window_size(); }); - invite_handler_ids += call_window.invite_button.clicked.connect(() => { - Gee.List acc_list = new ArrayList(Account.equals_func); - acc_list.add(call.account); - SelectContactDialog add_chat_dialog = new SelectContactDialog(stream_interactor, acc_list); - add_chat_dialog.set_transient_for((Window) call_window.get_toplevel()); - add_chat_dialog.title = _("Invite to Call"); - add_chat_dialog.ok_button.label = _("Invite"); - add_chat_dialog.selected.connect((account, jid) => { - call_state.invite_to_call.begin(jid); - }); - add_chat_dialog.present(); - }); calls.conference_info_received.connect((call, conference_info) => { if (!this.call.equals(call)) return; @@ -129,6 +117,19 @@ public class Dino.Ui.CallWindowController : Object { update_own_video(); } + private void invite_button_clicked() { + Gee.List acc_list = new ArrayList(Account.equals_func); + acc_list.add(call.account); + SelectContactDialog add_chat_dialog = new SelectContactDialog(stream_interactor, acc_list); + add_chat_dialog.set_transient_for((Window) call_window.get_toplevel()); + add_chat_dialog.title = _("Invite to Call"); + add_chat_dialog.ok_button.label = _("Invite"); + add_chat_dialog.selected.connect((account, jid) => { + call_state.invite_to_call.begin(jid); + }); + add_chat_dialog.present(); + } + private void connect_peer_signals(PeerState peer_state) { string peer_id = peer_state.internal_id; Jid peer_jid = peer_state.jid; @@ -149,7 +150,7 @@ public class Dino.Ui.CallWindowController : Object { call_state.can_convert_into_groupcall.begin((_, res) => { bool can_convert = call_state.can_convert_into_groupcall.end(res); - call_window.invite_button_revealer.visible = can_convert; + participant_widgets.values.@foreach((widget) => widget.may_show_invite_button = true); }); call_plugin.devices_changed.connect((media, incoming) => { @@ -160,7 +161,7 @@ public class Dino.Ui.CallWindowController : Object { update_audio_device_choices(); update_video_device_choices(); } else if (participant_widgets.size >= 1) { - call_window.invite_button_revealer.visible = true; + participant_widgets.values.@foreach((widget) => widget.may_show_invite_button = true); } }); peer_state.counterpart_sends_video_updated.connect((mute) => { @@ -215,7 +216,8 @@ public class Dino.Ui.CallWindowController : Object { string participant_name = conversation != null ? Util.get_conversation_display_name(stream_interactor, conversation) : jid.bare_jid.to_string(); ParticipantWidget participant_widget = new ParticipantWidget(participant_name); - participant_widget.menu_button.clicked.connect((event) => { + participant_widget.may_show_invite_button = !participant_widgets.is_empty; + participant_widget.debug_information_clicked.connect(() => { var conn_details_window = new CallConnectionDetailsWindow() { title=participant_name, visible=true }; conn_details_window.update_content(peer_states[participant_id].get_info()); uint timeout_handle_id = Timeout.add_seconds(1, () => { @@ -227,6 +229,7 @@ public class Dino.Ui.CallWindowController : Object { conn_details_window.present(); this.call_window.destroy.connect(() => conn_details_window.close() ); }); + invite_handler_ids[participant_id] += participant_widget.invite_button_clicked.connect(() => invite_button_clicked()); participant_widgets[participant_id] = participant_widget; call_window.add_participant(participant_id, participant_widget); @@ -256,7 +259,9 @@ public class Dino.Ui.CallWindowController : Object { if (peer_states.has_key(participant_id)) debug(@"[%s] Call window controller | Remove participant: %s", call.account.bare_jid.to_string(), peer_states[participant_id].jid.to_string()); participant_videos.unset(participant_id); + participant_widgets[participant_id].disconnect(invite_handler_ids[participant_id]); participant_widgets.unset(participant_id); + invite_handler_ids.unset(participant_id); peer_states.unset(participant_id); call_window.remove_participant(participant_id); } @@ -337,9 +342,9 @@ public class Dino.Ui.CallWindowController : Object { public override void dispose() { foreach (ulong handler_id in call_window_handler_ids) call_window.disconnect(handler_id); foreach (ulong handler_id in bottom_bar_handler_ids) call_window.bottom_bar.disconnect(handler_id); - foreach (ulong handler_id in invite_handler_ids) call_window.invite_button.disconnect(handler_id); + participant_widgets.keys.@foreach((peer_id) => { remove_participant(peer_id); return true; }); - call_window_handler_ids = bottom_bar_handler_ids = invite_handler_ids = new ulong[0]; + call_window_handler_ids = bottom_bar_handler_ids = new ulong[0]; base.dispose(); } diff --git a/main/src/ui/call_window/participant_widget.vala b/main/src/ui/call_window/participant_widget.vala index cbf8df2d..0d8d25b4 100644 --- a/main/src/ui/call_window/participant_widget.vala +++ b/main/src/ui/call_window/participant_widget.vala @@ -9,63 +9,57 @@ namespace Dino.Ui { public class ParticipantWidget : Gtk.Overlay { public Widget main_widget; - public Box outer_box = new Box(Orientation.HORIZONTAL, 0) { valign=Align.START, visible=true }; + public HeaderBar header_bar = new HeaderBar() { valign=Align.START, visible=true }; public Box inner_box = new Box(Orientation.HORIZONTAL, 0) { margin_start=5, margin_top=5, hexpand=true, visible=true }; public Box title_box = new Box(Orientation.VERTICAL, 0) { valign=Align.CENTER, hexpand=true, visible=true }; public CallEncryptionButton encryption_button = new CallEncryptionButton() { opacity=0, relief=ReliefStyle.NONE, height_request=30, width_request=30, margin_end=5, visible=true }; - public Label status_label = new Label("") { ellipsize=EllipsizeMode.MIDDLE }; - public Label name_label = new Label("") { ellipsize=EllipsizeMode.MIDDLE, visible=true }; - public Button menu_button = new Button.from_icon_name("view-more-horizontal-symbolic") { relief=ReliefStyle.NONE, visible=true }; + public MenuButton menu_button = new MenuButton() { relief=ReliefStyle.NONE, visible=true, image=new Image.from_icon_name("open-menu-symbolic", IconSize.MENU) }; + public Button invite_button = new Button.from_icon_name("dino-account-plus") { relief=ReliefStyle.NONE, visible=true }; public bool shows_video = false; public string? participant_name; bool is_highest_row = false; - bool is_lowest_row = false; public bool controls_active { get; set; } + public bool may_show_invite_button { get; set; } + + public signal void debug_information_clicked(); + public signal void invite_button_clicked(); public ParticipantWidget(string participant_name) { this.participant_name = participant_name; - name_label.label = participant_name; + header_bar.title = participant_name; + header_bar.get_style_context().add_class("participant-header-bar"); + header_bar.pack_start(invite_button); + header_bar.pack_start(encryption_button); + header_bar.pack_end(menu_button); + PopoverMenu menu = new PopoverMenu(); + Box box = new Box(Orientation.VERTICAL, 0) { margin=10, visible=true }; + ModelButton debug_information_button = new ModelButton() { text=_("Debug information"), visible=true }; + debug_information_button.clicked.connect(() => debug_information_clicked()); + box.add(debug_information_button); + menu.add(box); + menu_button.popover = menu; + invite_button.clicked.connect(() => invite_button_clicked()); - name_label.attributes = new AttrList(); - name_label.attributes.filter((attr) => attr.equal(attr_weight_new(Weight.BOLD))); - - name_label.attributes = new AttrList(); - name_label.attributes.filter((attr) => attr.equal(attr_scale_new(0.9))); - status_label.get_style_context().add_class("dim-label"); - - Util.force_css(outer_box, "* { color: white; text-shadow: 1px 1px black; }"); - menu_button.get_style_context().add_class("participant-title-button"); - encryption_button.get_style_context().add_class("participant-title-button"); - - title_box.add(name_label); - title_box.add(status_label); - - outer_box.add(inner_box); - - inner_box.add(menu_button); - inner_box.add(encryption_button); - inner_box.add(title_box); - inner_box.add(new Button.from_icon_name("go-up-symbolic") { opacity=0, visible=true }); - inner_box.add(new Button.from_icon_name("go-up-symbolic") { opacity=0, visible=true }); - - this.add_overlay(outer_box); + this.add_overlay(header_bar); this.notify["controls-active"].connect(reveal_or_hide_controls); } - public void on_show_names_changed(bool show) { - name_label.visible = show; - reveal_or_hide_controls(); - } - - public void on_highest_row_changed(bool is_highest) { + public void on_row_changed(bool is_highest, bool is_lowest, bool is_start, bool is_end) { is_highest_row = is_highest; - reveal_or_hide_controls(); - } - - public void on_lowest_row_changed(bool is_lowest) { - is_lowest_row = is_lowest; + header_bar.show_close_button = is_highest_row; + invite_button.visible = may_show_invite_button && is_highest_row && is_start; + if (is_highest_row) { + header_bar.get_style_context().add_class("call-header-background"); + Gtk.Settings? gtk_settings = Gtk.Settings.get_default(); + if (gtk_settings != null) { + string[] buttons = gtk_settings.gtk_decoration_layout.split(":"); + header_bar.decoration_layout = (is_start ? buttons[0] : "") + ":" + (is_end && buttons.length == 2 ? buttons[1] : ""); + } + } else { + header_bar.get_style_context().remove_class("call-header-background"); + } reveal_or_hide_controls(); } @@ -98,32 +92,19 @@ namespace Dino.Ui { } public void set_status(string state) { - status_label.visible = true; - if (state == "requested") { - status_label.label = _("Calling…"); + header_bar.subtitle = _("Calling…"); } else if (state == "ringing") { - status_label.label = _("Ringing…"); + header_bar.subtitle = _("Ringing…"); } else if (state == "establishing") { - status_label.label = _("Connecting…"); + header_bar.subtitle = _("Connecting…"); } else { - status_label.visible = false; + header_bar.subtitle = ""; } } private void reveal_or_hide_controls() { - if (controls_active && name_label.visible) { - title_box.opacity = 1; - menu_button.opacity = 1; - } else { - title_box.opacity = 0; - menu_button.opacity = 0; - } - if (is_highest_row && controls_active) { - outer_box.get_style_context().add_class("call-header-bar"); - } else { - outer_box.get_style_context().remove_class("call-header-bar"); - } + header_bar.opacity = controls_active ? 1.0 : 0.0; } } } \ No newline at end of file From 369d0c79d7272b4059c39ecedb10a62121bfbe56 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 12 Feb 2022 14:35:44 +0100 Subject: [PATCH 07/19] Calls: Fix device selector for multi-party calls, allow picking device before call started --- libdino/src/plugin/interfaces.vala | 14 +++-- libdino/src/service/call_state.vala | 59 ++++++++++++++++--- .../call_window/audio_settings_popover.vala | 24 ++++---- .../call_window/call_window_controller.vala | 12 ++-- .../call_window/video_settings_popover.vala | 12 ++-- plugins/rtp/src/device.vala | 15 +++-- plugins/rtp/src/plugin.vala | 23 ++++---- plugins/rtp/src/stream.vala | 16 ++--- plugins/rtp/src/video_widget.vala | 4 +- 9 files changed, 114 insertions(+), 65 deletions(-) diff --git a/libdino/src/plugin/interfaces.vala b/libdino/src/plugin/interfaces.vala index b6955a6b..c7c2c375 100644 --- a/libdino/src/plugin/interfaces.vala +++ b/libdino/src/plugin/interfaces.vala @@ -103,16 +103,17 @@ public abstract interface VideoCallPlugin : Object { // Devices public signal void devices_changed(string media, bool incoming); public abstract Gee.List get_devices(string media, bool incoming); - public abstract MediaDevice? get_device(Xmpp.Xep.JingleRtp.Stream stream, bool incoming); - public abstract void set_pause(Xmpp.Xep.JingleRtp.Stream stream, bool pause); - public abstract void set_device(Xmpp.Xep.JingleRtp.Stream stream, MediaDevice? device); + public abstract MediaDevice? get_preferred_device(string media, bool incoming); + public abstract MediaDevice? get_device(Xmpp.Xep.JingleRtp.Stream? stream, bool incoming); + public abstract void set_pause(Xmpp.Xep.JingleRtp.Stream? stream, bool pause); + public abstract void set_device(Xmpp.Xep.JingleRtp.Stream? stream, MediaDevice? device); public abstract void dump_dot(); } public abstract interface VideoCallWidget : Object { public signal void resolution_changed(uint width, uint height); - public abstract void display_stream(Xmpp.Xep.JingleRtp.Stream stream, Jid jid); + public abstract void display_stream(Xmpp.Xep.JingleRtp.Stream? stream, Jid jid); public abstract void display_device(MediaDevice device); public abstract void detach(); } @@ -120,7 +121,10 @@ public abstract interface VideoCallWidget : Object { public abstract interface MediaDevice : Object { public abstract string id { owned get; } public abstract string display_name { owned get; } - public abstract string detail_name { owned get; } + public abstract string? detail_name { owned get; } + + public abstract string? media { owned get; } + public abstract bool incoming { get; } } public abstract interface NotificationPopulator : Object { diff --git a/libdino/src/service/call_state.vala b/libdino/src/service/call_state.vala index c403fc6a..c1f0522d 100644 --- a/libdino/src/service/call_state.vala +++ b/libdino/src/service/call_state.vala @@ -26,6 +26,10 @@ public class Dino.CallState : Object { public HashMap peers = new HashMap(Jid.hash_func, Jid.equals_func); + private Plugins.MediaDevice selected_microphone_device; + private Plugins.MediaDevice selected_speaker_device; + private Plugins.MediaDevice selected_video_device; + public CallState(Call call, StreamInteractor stream_interactor) { this.call = call; this.stream_interactor = stream_interactor; @@ -80,6 +84,15 @@ public class Dino.CallState : Object { peer_joined(peer.jid, peer); } + internal void on_peer_stream_created(PeerState peer, string media) { + if (media == "audio") { + call_plugin.set_device(peer.get_audio_stream(), get_microphone_device()); + call_plugin.set_device(peer.get_audio_stream(), get_speaker_device()); + } else if (media == "video") { + call_plugin.set_device(peer.get_video_stream(), get_video_device()); + } + } + public void accept() { accepted = true; call.state = Call.State.ESTABLISHING; @@ -206,30 +219,57 @@ public class Dino.CallState : Object { } public Plugins.MediaDevice? get_microphone_device() { - if (peers.is_empty) return null; - var audio_stream = peers.values.to_array()[0].get_audio_stream(); - return call_plugin.get_device(audio_stream, false); + if (selected_microphone_device == null) { + if (!peers.is_empty) { + var audio_stream = peers.values.to_array()[0].get_audio_stream(); + selected_microphone_device = call_plugin.get_device(audio_stream, false); + } + if (selected_microphone_device == null) { + selected_microphone_device = call_plugin.get_preferred_device("audio", false); + } + } + return selected_microphone_device; } public Plugins.MediaDevice? get_speaker_device() { - if (peers.is_empty) return null; - var audio_stream = peers.values.to_array()[0].get_audio_stream(); - return call_plugin.get_device(audio_stream, true); + if (selected_speaker_device == null) { + if (!peers.is_empty) { + var audio_stream = peers.values.to_array()[0].get_audio_stream(); + selected_speaker_device = call_plugin.get_device(audio_stream, true); + } + if (selected_speaker_device == null) { + selected_speaker_device = call_plugin.get_preferred_device("audio", true); + } + } + return selected_speaker_device; } public Plugins.MediaDevice? get_video_device() { - if (peers.is_empty) return null; - var video_stream = peers.values.to_array()[0].get_video_stream(); - return call_plugin.get_device(video_stream, false); + if (selected_video_device == null) { + if (!peers.is_empty) { + var video_stream = peers.values.to_array()[0].get_video_stream(); + selected_video_device = call_plugin.get_device(video_stream, false); + } + if (selected_video_device == null) { + selected_video_device = call_plugin.get_preferred_device("video", false); + } + } + return selected_video_device; } public void set_audio_device(Plugins.MediaDevice? device) { + if (device.incoming) { + selected_speaker_device = device; + } else { + selected_microphone_device = device; + } foreach (PeerState peer_state in peers.values) { call_plugin.set_device(peer_state.get_audio_stream(), device); } } public void set_video_device(Plugins.MediaDevice? device) { + selected_video_device = device; foreach (PeerState peer_state in peers.values) { call_plugin.set_device(peer_state.get_video_stream(), device); } @@ -270,6 +310,7 @@ public class Dino.CallState : Object { this.bind_property("we-should-send-video", peer_state, "we-should-send-video", BindingFlags.SYNC_CREATE | BindingFlags.BIDIRECTIONAL); this.bind_property("group-call", peer_state, "group-call", BindingFlags.SYNC_CREATE | BindingFlags.BIDIRECTIONAL); + peer_state.stream_created.connect((peer, media) => { on_peer_stream_created(peer, media); }); peer_state.session_terminated.connect((we_terminated, reason_name, reason_text) => { debug("[%s] Peer left %s: %s %s (%i peers remaining)", call.account.bare_jid.to_string(), reason_text ?? "", reason_name ?? "", peer_state.jid.to_string(), peers.size); handle_peer_left(peer_state, we_terminated, reason_name, reason_text); diff --git a/main/src/ui/call_window/audio_settings_popover.vala b/main/src/ui/call_window/audio_settings_popover.vala index 3b5dff3f..f7e490cd 100644 --- a/main/src/ui/call_window/audio_settings_popover.vala +++ b/main/src/ui/call_window/audio_settings_popover.vala @@ -37,10 +37,6 @@ public class Dino.Ui.AudioSettingsPopover : Gtk.Popover { micro_frame.add(micro_list_box); foreach (Plugins.MediaDevice device in devices) { Label display_name_label = new Label(device.display_name) { xalign=0, visible=true }; - Label detail_name_label = new Label(device.detail_name) { xalign=0, visible=true }; - detail_name_label.get_style_context().add_class("dim-label"); - detail_name_label.attributes = new Pango.AttrList(); - detail_name_label.attributes.insert(Pango.attr_scale_new(0.8)); Image image = new Image.from_icon_name("object-select-symbolic", IconSize.BUTTON) { visible=true }; if (current_microphone_device == null || current_microphone_device.id != device.id) { image.opacity = 0; @@ -56,7 +52,13 @@ public class Dino.Ui.AudioSettingsPopover : Gtk.Popover { device_box.add(image); Box label_box = new Box(Orientation.VERTICAL, 0) { visible = true }; label_box.add(display_name_label); - label_box.add(detail_name_label); + if (device.detail_name != null) { + Label detail_name_label = new Label(device.detail_name) { xalign=0, visible=true }; + detail_name_label.get_style_context().add_class("dim-label"); + detail_name_label.attributes = new Pango.AttrList(); + detail_name_label.attributes.insert(Pango.attr_scale_new(0.8)); + label_box.add(detail_name_label); + } device_box.add(label_box); ListBoxRow list_box_row = new ListBoxRow() { visible=true }; list_box_row.add(device_box); @@ -94,10 +96,6 @@ public class Dino.Ui.AudioSettingsPopover : Gtk.Popover { speaker_frame.add(speaker_list_box); foreach (Plugins.MediaDevice device in devices) { Label display_name_label = new Label(device.display_name) { xalign=0, visible=true }; - Label detail_name_label = new Label(device.detail_name) { xalign=0, visible=true }; - detail_name_label.get_style_context().add_class("dim-label"); - detail_name_label.attributes = new Pango.AttrList(); - detail_name_label.attributes.insert(Pango.attr_scale_new(0.8)); Image image = new Image.from_icon_name("object-select-symbolic", IconSize.BUTTON) { visible=true }; if (current_speaker_device == null || current_speaker_device.id != device.id) { image.opacity = 0; @@ -113,7 +111,13 @@ public class Dino.Ui.AudioSettingsPopover : Gtk.Popover { device_box.add(image); Box label_box = new Box(Orientation.VERTICAL, 0) { visible = true }; label_box.add(display_name_label); - label_box.add(detail_name_label); + if (device.detail_name != null) { + Label detail_name_label = new Label(device.detail_name) { xalign=0, visible=true }; + detail_name_label.get_style_context().add_class("dim-label"); + detail_name_label.attributes = new Pango.AttrList(); + detail_name_label.attributes.insert(Pango.attr_scale_new(0.8)); + label_box.add(detail_name_label); + } device_box.add(label_box); ListBoxRow list_box_row = new ListBoxRow() { visible=true }; list_box_row.add(device_box); diff --git a/main/src/ui/call_window/call_window_controller.vala b/main/src/ui/call_window/call_window_controller.vala index 445f88ea..e929aedc 100644 --- a/main/src/ui/call_window/call_window_controller.vala +++ b/main/src/ui/call_window/call_window_controller.vala @@ -115,6 +115,9 @@ public class Dino.Ui.CallWindowController : Object { call_window.menu_dump_dot.connect(() => { call_plugin.dump_dot(); }); update_own_video(); + + update_audio_device_choices(); + update_video_device_choices(); } private void invite_button_clicked() { @@ -135,13 +138,6 @@ public class Dino.Ui.CallWindowController : Object { Jid peer_jid = peer_state.jid; peer_states[peer_id] = peer_state; - peer_state.stream_created.connect((media) => { - if (media == "audio") { - update_audio_device_choices(); - } else if (media == "video") { - update_video_device_choices(); - } - }); peer_state.connection_ready.connect(() => { call_window.set_status(peer_state.internal_id, ""); if (participant_widgets.size == 1) { @@ -331,7 +327,7 @@ public class Dino.Ui.CallWindowController : Object { } else { Widget widget = (Widget) own_video; call_window.set_own_video(widget); - own_video.display_device(devices.first()); + own_video.display_device(call_state.get_video_device()); } } else { own_video.detach(); diff --git a/main/src/ui/call_window/video_settings_popover.vala b/main/src/ui/call_window/video_settings_popover.vala index 48ab3cab..7dd5ec9f 100644 --- a/main/src/ui/call_window/video_settings_popover.vala +++ b/main/src/ui/call_window/video_settings_popover.vala @@ -33,10 +33,6 @@ public class Dino.Ui.VideoSettingsPopover : Gtk.Popover { frame.add(list_box); foreach (Plugins.MediaDevice device in devices) { Label display_name_label = new Label(device.display_name) { xalign=0, visible=true }; - Label detail_name_label = new Label(device.detail_name) { xalign=0, visible=true }; - detail_name_label.get_style_context().add_class("dim-label"); - detail_name_label.attributes = new Pango.AttrList(); - detail_name_label.attributes.insert(Pango.attr_scale_new(0.8)); Image image = new Image.from_icon_name("object-select-symbolic", IconSize.BUTTON) { visible=true }; if (current_device == null || current_device.id != device.id) { image.opacity = 0; @@ -52,7 +48,13 @@ public class Dino.Ui.VideoSettingsPopover : Gtk.Popover { device_box.add(image); Box label_box = new Box(Orientation.VERTICAL, 0) { visible = true }; label_box.add(display_name_label); - label_box.add(detail_name_label); + if (device.detail_name != null) { + Label detail_name_label = new Label(device.detail_name) { xalign=0, visible=true }; + detail_name_label.get_style_context().add_class("dim-label"); + detail_name_label.attributes = new Pango.AttrList(); + detail_name_label.attributes.insert(Pango.attr_scale_new(0.8)); + label_box.add(detail_name_label); + } device_box.add(label_box); ListBoxRow list_box_row = new ListBoxRow() { visible=true }; list_box_row.add(device_box); diff --git a/plugins/rtp/src/device.vala b/plugins/rtp/src/device.vala index aca97578..d4eca09a 100644 --- a/plugins/rtp/src/device.vala +++ b/plugins/rtp/src/device.vala @@ -18,12 +18,14 @@ public class Dino.Plugins.Rtp.Device : MediaDevice, Object { public string id { owned get { return device_name; }} public string display_name { owned get { return device_display_name; }} - public string detail_name { owned get { - return device.properties.get_string("alsa.card_name") ?? device.properties.get_string("alsa.name") ?? device.properties.get_string("alsa.id") ?? device.properties.get_string("api.v4l2.cap.card") ?? id; + public string? detail_name { owned get { + if (device.properties.has_field("alsa.card_name")) return device.properties.get_string("alsa.card_name"); + if (device.properties.has_field("alsa.name")) return device.properties.get_string("alsa.name"); + if (device.properties.has_field("alsa.id")) return device.properties.get_string("alsa.id"); + if (device.properties.has_field("api.v4l2.cap.card")) return device.properties.get_string("api.v4l2.cap.card"); + return null; }} - - public Gst.Pipeline pipe { get { return plugin.pipe; }} - public string? media { get { + public string? media { owned get { if (device.has_classes("Audio")) { return "audio"; } else if (device.has_classes("Video")) { @@ -32,6 +34,9 @@ public class Dino.Plugins.Rtp.Device : MediaDevice, Object { return null; } }} + public bool incoming { get { return is_sink; } } + + public Gst.Pipeline pipe { get { return plugin.pipe; }} public bool is_source { get { return device.has_classes("Source"); }} public bool is_sink { get { return device.has_classes("Sink"); }} public bool is_monitor { get { return device.properties.get_string("device.class") == "monitor" || (protocol == DeviceProtocol.PIPEWIRE && device.has_classes("Stream")); } } diff --git a/plugins/rtp/src/plugin.vala b/plugins/rtp/src/plugin.vala index 2469a967..3a4f6ce1 100644 --- a/plugins/rtp/src/plugin.vala +++ b/plugins/rtp/src/plugin.vala @@ -388,7 +388,7 @@ public class Dino.Plugins.Rtp.Plugin : RootInterface, VideoCallPlugin, Object { return fps; } - public Device? get_preferred_device(string media, bool incoming) { + public MediaDevice? get_preferred_device(string media, bool incoming) { Gee.List devices = new ArrayList(); foreach (MediaDevice media_device in get_devices(media, incoming)) { if (media_device is Device) devices.add((Device)media_device); @@ -427,14 +427,11 @@ public class Dino.Plugins.Rtp.Plugin : RootInterface, VideoCallPlugin, Object { } } - public MediaDevice? get_device(Xmpp.Xep.JingleRtp.Stream stream, bool incoming) { - Stream plugin_stream = stream as Stream; + public MediaDevice? get_device(Xmpp.Xep.JingleRtp.Stream? stream, bool incoming) { + Stream? plugin_stream = stream as Stream?; if (plugin_stream == null) return null; - if (incoming) { - return plugin_stream.output_device ?? get_preferred_device(stream.media, incoming); - } else { - return plugin_stream.input_device ?? get_preferred_device(stream.media, incoming); - } + MediaDevice? device = incoming ? plugin_stream.output_device : plugin_stream.input_device; + return device ?? get_preferred_device(stream.media, incoming); } public void dump_dot() { @@ -444,8 +441,8 @@ public class Dino.Plugins.Rtp.Plugin : RootInterface, VideoCallPlugin, Object { print(@"Stored pipe details as $name\n"); } - public void set_pause(Xmpp.Xep.JingleRtp.Stream stream, bool pause) { - Stream plugin_stream = stream as Stream; + public void set_pause(Xmpp.Xep.JingleRtp.Stream? stream, bool pause) { + Stream? plugin_stream = stream as Stream?; if (plugin_stream == null) return; if (pause) { plugin_stream.pause(); @@ -454,9 +451,9 @@ public class Dino.Plugins.Rtp.Plugin : RootInterface, VideoCallPlugin, Object { } } - public void set_device(Xmpp.Xep.JingleRtp.Stream stream, MediaDevice? device) { - Device real_device = device as Device; - Stream plugin_stream = stream as Stream; + public void set_device(Xmpp.Xep.JingleRtp.Stream? stream, MediaDevice? device) { + Device? real_device = device as Device?; + Stream? plugin_stream = stream as Stream?; if (real_device == null || plugin_stream == null) return; if (real_device.is_source) { plugin_stream.input_device = real_device; diff --git a/plugins/rtp/src/stream.vala b/plugins/rtp/src/stream.vala index 6bd92e3f..abdda776 100644 --- a/plugins/rtp/src/stream.vala +++ b/plugins/rtp/src/stream.vala @@ -27,7 +27,7 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { private Device _input_device; public Device input_device { get { return _input_device; } set { - if (!paused) { + if (sending && !paused) { var input = this.input; set_input(value != null ? value.link_source(payload_type, our_ssrc, next_seqnum_offset, next_timestamp_offset) : null); if (this._input_device != null) this._input_device.unlink(input); @@ -37,7 +37,7 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { private Device _output_device; public Device output_device { get { return _output_device; } set { if (output != null) remove_output(output); - if (value != null) add_output(value.link_sink()); + if (value != null && receiving) add_output(value.link_sink()); this._output_device = value; }} @@ -74,10 +74,10 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { public void on_senders_changed() { if (sending && input == null) { - input_device = plugin.get_preferred_device(media, false); + input_device = input_device; } if (receiving && output == null) { - output_device = plugin.get_preferred_device(media, true); + output_device = output_device; } } @@ -86,11 +86,11 @@ public class Dino.Plugins.Rtp.Stream : Xmpp.Xep.JingleRtp.Stream { // Create i/o if needed - if (input == null && input_device == null && sending) { - input_device = plugin.get_preferred_device(media, false); + if (input == null && sending) { + input_device = input_device; } - if (output == null && output_device == null && receiving && media == "audio") { - output_device = plugin.get_preferred_device(media, true); + if (output == null && receiving && media == "audio") { + output_device = output_device; } // Create app elements diff --git a/plugins/rtp/src/video_widget.vala b/plugins/rtp/src/video_widget.vala index 664d45ee..82693b09 100644 --- a/plugins/rtp/src/video_widget.vala +++ b/plugins/rtp/src/video_widget.vala @@ -130,11 +130,11 @@ public class Dino.Plugins.Rtp.VideoWidget : Gtk.Bin, Dino.Plugins.VideoCallWidge return false; } - public void display_stream(Xmpp.Xep.JingleRtp.Stream stream, Xmpp.Jid jid) { + public void display_stream(Xmpp.Xep.JingleRtp.Stream? stream, Xmpp.Jid jid) { if (sink == null) return; detach(); if (stream.media != "video") return; - connected_stream = stream as Stream; + connected_stream = stream as Stream?; if (connected_stream == null) return; plugin.pause(); pipe.add(sink); From 6f9375e6ea524ac5b1d36b05a99e9b90a0ac866d Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 12 Feb 2022 15:14:15 +0100 Subject: [PATCH 08/19] Calls: Only show invite button when it's supported --- main/src/ui/call_window/call_window_controller.vala | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/main/src/ui/call_window/call_window_controller.vala b/main/src/ui/call_window/call_window_controller.vala index e929aedc..6ea69287 100644 --- a/main/src/ui/call_window/call_window_controller.vala +++ b/main/src/ui/call_window/call_window_controller.vala @@ -139,14 +139,14 @@ public class Dino.Ui.CallWindowController : Object { peer_states[peer_id] = peer_state; peer_state.connection_ready.connect(() => { - call_window.set_status(peer_state.internal_id, ""); + call_window.set_status(peer_id, ""); if (participant_widgets.size == 1) { // This is the first peer. // If it can do MUJI, show invite button. call_state.can_convert_into_groupcall.begin((_, res) => { bool can_convert = call_state.can_convert_into_groupcall.end(res); - participant_widgets.values.@foreach((widget) => widget.may_show_invite_button = true); + participant_widgets[peer_id].may_show_invite_button = can_convert; }); call_plugin.devices_changed.connect((media, incoming) => { @@ -174,7 +174,7 @@ public class Dino.Ui.CallWindowController : Object { }); peer_state.info_received.connect((session_info) => { if (session_info == Xmpp.Xep.JingleRtp.CallSessionInfo.RINGING) { - call_window.set_status(peer_state.internal_id, "ringing"); + call_window.set_status(peer_id, "ringing"); } }); peer_state.encryption_updated.connect((audio_encryption, video_encryption, same) => { From b586aebbac20ea03509e42e54f1632d654ea968d Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 12 Feb 2022 17:18:03 +0100 Subject: [PATCH 09/19] Calls: Fix OMEMO in group calls --- libdino/src/service/calls.vala | 11 ++-- .../src/dtls_srtp_verification_draft.vala | 64 ++++++++++++++++++- .../module/xep/0166_jingle/jingle_module.vala | 15 ++++- .../src/module/xep/0166_jingle/session.vala | 2 + .../0167_jingle_rtp/content_parameters.vala | 10 --- .../0167_jingle_rtp/jingle_rtp_module.vala | 10 +-- 6 files changed, 88 insertions(+), 24 deletions(-) diff --git a/libdino/src/service/calls.vala b/libdino/src/service/calls.vala index ef853903..a75ed063 100644 --- a/libdino/src/service/calls.vala +++ b/libdino/src/service/calls.vala @@ -143,23 +143,22 @@ namespace Dino { } private void on_incoming_call(Account account, Xep.Jingle.Session session) { - Jid? muji_muc = null; + Jid? muji_room = session.muji_room; bool counterpart_wants_video = false; foreach (Xep.Jingle.Content content in session.contents) { Xep.JingleRtp.Parameters? rtp_content_parameter = content.content_params as Xep.JingleRtp.Parameters; if (rtp_content_parameter == null) continue; - muji_muc = rtp_content_parameter.muji_muc; if (rtp_content_parameter.media == "video" && session.senders_include_us(content.senders)) { counterpart_wants_video = true; } } // Check if this comes from a MUJI MUC => accept - if (muji_muc != null) { - debug("[%s] Incoming call from %s from MUJI muc %s", account.bare_jid.to_string(), session.peer_full_jid.to_string(), muji_muc.to_string()); + if (muji_room != null) { + debug("[%s] Incoming call from %s from MUJI muc %s", account.bare_jid.to_string(), session.peer_full_jid.to_string(), muji_room.to_string()); foreach (CallState call_state in call_states.values) { - if (call_state.call.account.equals(account) && call_state.group_call != null && call_state.group_call.muc_jid.equals(muji_muc)) { + if (call_state.call.account.equals(account) && call_state.group_call != null && call_state.group_call.muc_jid.equals(muji_room)) { if (call_state.peers.keys.contains(session.peer_full_jid)) { PeerState peer_state = call_state.peers[session.peer_full_jid]; debug("[%s] Incoming call, we know the peer. Expected %s", account.bare_jid.to_string(), peer_state.waiting_for_inbound_muji_connection.to_string()); @@ -271,7 +270,7 @@ namespace Dino { debug("[%s] Muji call received from %s for MUC %s, type %s", account.bare_jid.to_string(), inviter_jid.to_string(), muc_jid.to_string(), message_type); foreach (Call call in call_states.keys) { - if (!call.account.equals(account)) return null; + if (!call.account.equals(account)) continue; CallState call_state = call_states[call]; diff --git a/plugins/omemo/src/dtls_srtp_verification_draft.vala b/plugins/omemo/src/dtls_srtp_verification_draft.vala index 577c77e7..cc775977 100644 --- a/plugins/omemo/src/dtls_srtp_verification_draft.vala +++ b/plugins/omemo/src/dtls_srtp_verification_draft.vala @@ -11,6 +11,7 @@ namespace Dino.Plugins.Omemo.DtlsSrtpVerificationDraft { private VerificationSendListener send_listener = new VerificationSendListener(); private HashMap device_id_by_jingle_sid = new HashMap(); + private HashMap device_id_by_muji_member = new HashMap(); private HashMap> content_names_by_jingle_sid = new HashMap>(); private void on_preprocess_incoming_iq_set_get(XmppStream stream, Xmpp.Iq.Stanza iq) { @@ -88,8 +89,26 @@ namespace Dino.Plugins.Omemo.DtlsSrtpVerificationDraft { StanzaNode? jingle_node = iq.stanza.get_subnode("jingle", Xep.Jingle.NS_URI); if (jingle_node == null) return; + int device_id = -1; string? sid = jingle_node.get_attribute("sid", Xep.Jingle.NS_URI); - if (sid == null || !device_id_by_jingle_sid.has_key(sid)) return; + if (sid != null && device_id_by_jingle_sid.has_key(sid)) { + device_id = device_id_by_jingle_sid[sid]; + } + + StanzaNode? muji_node = jingle_node.get_subnode("muji", Xep.Muji.NS_URI); + if (muji_node != null) { + string muji_room = muji_node.get_attribute("room"); + try { + Jid muji_jid = new Jid(muji_room); + if (device_id_by_muji_member.has_key(@"$(muji_jid.bare_jid)/$(iq.to)")) { + device_id = device_id_by_muji_member[@"$(muji_jid.bare_jid)/$(iq.to)"]; + } + } catch (InvalidJidError e) { + // Ignore + } + } + + if (device_id == -1) return; Gee.List content_nodes = jingle_node.get_subnodes("content", Xep.Jingle.NS_URI); if (content_nodes.size == 0) return; @@ -105,7 +124,7 @@ namespace Dino.Plugins.Omemo.DtlsSrtpVerificationDraft { try { Xep.Omemo.OmemoEncryptor encryptor = stream.get_module(Xep.Omemo.OmemoEncryptor.IDENTITY); Xep.Omemo.EncryptionData enc_data = encryptor.encrypt_plaintext(fingerprint); - encryptor.encrypt_key(enc_data, iq.to.bare_jid, device_id_by_jingle_sid[sid]); + encryptor.encrypt_key(enc_data, iq.to.bare_jid, device_id); encrypted_node = enc_data.get_encrypted_node(); } catch (Error e) { warning("Error while OMEMO-encrypting call keys: %s", e.message); @@ -155,12 +174,52 @@ namespace Dino.Plugins.Omemo.DtlsSrtpVerificationDraft { } } + private void on_pre_send_presence_stanza(XmppStream stream, Presence.Stanza presence) { + StanzaNode? muji_node = presence.stanza.get_subnode("muji", Xep.Muji.NS_URI); + if (muji_node == null) return; + + StanzaNode device_node = new StanzaNode.build("device", NS_URI).add_self_xmlns() + .put_attribute("id", stream.get_module(Omemo.StreamModule.IDENTITY).store.local_registration_id.to_string()); + muji_node.put_node(device_node); + } + + private void on_received_available(XmppStream stream, Presence.Stanza presence) { + StanzaNode? muji_node = presence.stanza.get_subnode("muji", Xep.Muji.NS_URI); + if (muji_node == null) return; + + StanzaNode? device_node = muji_node.get_subnode("device", NS_URI); + if (device_node == null) return; + + int device_id = device_node.get_attribute_int("id", -1); + if (device_id == -1) return; + + StanzaNode? muc_x_node = presence.stanza.get_subnode("x", "http://jabber.org/protocol/muc#user"); + if (muc_x_node == null) return; + + StanzaNode? item_node = muc_x_node.get_subnode("item"); + if (item_node == null) return; + + Jid? real_jid = null; + try { + string jid_attribute = item_node.get_attribute("jid"); + if (jid_attribute == null) return; + real_jid = new Jid(jid_attribute); + } catch (InvalidJidError e) { + // Ignore + return; + } + + device_id_by_muji_member[@"$(presence.from.bare_jid)/$(real_jid)"] = device_id; + } + public override void attach(XmppStream stream) { stream.get_module(Xmpp.MessageModule.IDENTITY).received_message.connect(on_message_received); stream.get_module(Xmpp.MessageModule.IDENTITY).send_pipeline.connect(send_listener); stream.get_module(Xmpp.Iq.Module.IDENTITY).preprocess_incoming_iq_set_get.connect(on_preprocess_incoming_iq_set_get); stream.get_module(Xmpp.Iq.Module.IDENTITY).preprocess_outgoing_iq_set_get.connect(on_preprocess_outgoing_iq_set_get); stream.get_module(Xep.Jingle.Module.IDENTITY).session_initiate_received.connect(on_session_initiate_received); + stream.get_module(Xmpp.Presence.Module.IDENTITY).pre_send_presence_stanza.connect(on_pre_send_presence_stanza); + stream.get_module(Xmpp.Presence.Module.IDENTITY).received_available.connect(on_received_available); } public override void detach(XmppStream stream) { @@ -169,6 +228,7 @@ namespace Dino.Plugins.Omemo.DtlsSrtpVerificationDraft { stream.get_module(Xmpp.Iq.Module.IDENTITY).preprocess_incoming_iq_set_get.disconnect(on_preprocess_incoming_iq_set_get); stream.get_module(Xmpp.Iq.Module.IDENTITY).preprocess_outgoing_iq_set_get.disconnect(on_preprocess_outgoing_iq_set_get); stream.get_module(Xep.Jingle.Module.IDENTITY).session_initiate_received.disconnect(on_session_initiate_received); + stream.get_module(Xmpp.Presence.Module.IDENTITY).received_available.disconnect(on_received_available); } public override string get_ns() { return NS_URI; } diff --git a/xmpp-vala/src/module/xep/0166_jingle/jingle_module.vala b/xmpp-vala/src/module/xep/0166_jingle/jingle_module.vala index 186848f6..cdcb9130 100644 --- a/xmpp-vala/src/module/xep/0166_jingle/jingle_module.vala +++ b/xmpp-vala/src/module/xep/0166_jingle/jingle_module.vala @@ -102,7 +102,7 @@ namespace Xmpp.Xep.Jingle { return (yield is_jingle_available(stream, full_jid)) && (yield select_transport(stream, type, components, full_jid, Set.empty())) != null; } - public async Session create_session(XmppStream stream, Gee.List contents, Jid receiver_full_jid, string? sid = null) throws Error { + public async Session create_session(XmppStream stream, Gee.List contents, Jid receiver_full_jid, string? sid = null, Jid? muji_room = null) throws Error { if (!yield is_jingle_available(stream, receiver_full_jid)) { throw new Error.NO_SHARED_PROTOCOLS("No Jingle support"); } @@ -138,6 +138,10 @@ namespace Xmpp.Xep.Jingle { initiate_jingle_iq.put_node(content_node); } + if (muji_room != null) { + initiate_jingle_iq.put_node(new StanzaNode.build("muji", Xep.Muji.NS_URI).add_self_xmlns().put_attribute("room", muji_room.to_string())); + } + Iq.Stanza iq = new Iq.Stanza.set(initiate_jingle_iq) { to=receiver_full_jid }; stream.get_flag(Flag.IDENTITY).add_session(session); @@ -158,6 +162,15 @@ namespace Xmpp.Xep.Jingle { Session session = new Session.initiate_received(stream, sid, my_jid, iq.from); session.terminated.connect((stream) => { stream.get_flag(Flag.IDENTITY).remove_session(sid); }); + string? muji_room_str = iq.stanza.get_deep_attribute(NS_URI + ":jingle", Xep.Muji.NS_URI + ":muji", "room"); + if (muji_room_str != null) { + try { + session.muji_room = new Jid(muji_room_str); + } catch (InvalidJidError e) { + // Ignore + } + } + stream.get_flag(Flag.IDENTITY).pre_add_session(session.sid); foreach (ContentNode content_node in get_content_nodes(jingle)) { diff --git a/xmpp-vala/src/module/xep/0166_jingle/session.vala b/xmpp-vala/src/module/xep/0166_jingle/session.vala index e5084880..577792ff 100644 --- a/xmpp-vala/src/module/xep/0166_jingle/session.vala +++ b/xmpp-vala/src/module/xep/0166_jingle/session.vala @@ -29,6 +29,8 @@ public class Xmpp.Xep.Jingle.Session : Object { public SecurityParameters? security { get { return contents.to_array()[0].security_params; } } + public Jid muji_room { get; set; } + public Session.initiate_sent(XmppStream stream, string sid, Jid local_full_jid, Jid peer_full_jid) { this.stream = stream; this.sid = sid; diff --git a/xmpp-vala/src/module/xep/0167_jingle_rtp/content_parameters.vala b/xmpp-vala/src/module/xep/0167_jingle_rtp/content_parameters.vala index c4c299c5..a92a6998 100644 --- a/xmpp-vala/src/module/xep/0167_jingle_rtp/content_parameters.vala +++ b/xmpp-vala/src/module/xep/0167_jingle_rtp/content_parameters.vala @@ -21,7 +21,6 @@ public class Xmpp.Xep.JingleRtp.Parameters : Jingle.ContentParameters, Object { public Gee.List remote_cryptos = new ArrayList(); public Crypto? local_crypto = null; public Crypto? remote_crypto = null; - public Jid? muji_muc = null; public bool rtp_ready { get; private set; default=false; } public bool rtcp_ready { get; private set; default=false; } @@ -32,7 +31,6 @@ public class Xmpp.Xep.JingleRtp.Parameters : Jingle.ContentParameters, Object { public Parameters(Module parent, string media, Gee.List payload_types, - Jid? muji_muc, string? ssrc = null, bool rtcp_mux = false, string? bandwidth = null, string? bandwidth_type = null, bool encryption_required = false, Crypto? local_crypto = null @@ -46,7 +44,6 @@ public class Xmpp.Xep.JingleRtp.Parameters : Jingle.ContentParameters, Object { this.encryption_required = encryption_required; this.payload_types = payload_types; this.local_crypto = local_crypto; - this.muji_muc = muji_muc; } public Parameters.from_node(Module parent, StanzaNode node) throws Jingle.IqError { @@ -67,10 +64,6 @@ public class Xmpp.Xep.JingleRtp.Parameters : Jingle.ContentParameters, Object { foreach (StanzaNode subnode in node.get_subnodes(HeaderExtension.NAME, HeaderExtension.NS_URI)) { this.header_extensions.add(HeaderExtension.parse(subnode)); } - string? muji_muc_str = node.get_deep_attribute(Xep.Muji.NS_URI + ":muji", "muc"); - if (muji_muc_str != null) { - muji_muc = new Jid(muji_muc_str); - } } public async void handle_proposed_content(XmppStream stream, Jingle.Session session, Jingle.Content content) { @@ -216,9 +209,6 @@ public class Xmpp.Xep.JingleRtp.Parameters : Jingle.ContentParameters, Object { if (rtcp_mux) { ret.put_node(new StanzaNode.build("rtcp-mux", NS_URI)); } - if (muji_muc != null) { - ret.put_node(new StanzaNode.build("muji", Xep.Muji.NS_URI).add_self_xmlns().put_attribute("muc", muji_muc.to_string())); - } return ret; } } diff --git a/xmpp-vala/src/module/xep/0167_jingle_rtp/jingle_rtp_module.vala b/xmpp-vala/src/module/xep/0167_jingle_rtp/jingle_rtp_module.vala index 9dab5dc2..1b027916 100644 --- a/xmpp-vala/src/module/xep/0167_jingle_rtp/jingle_rtp_module.vala +++ b/xmpp-vala/src/module/xep/0167_jingle_rtp/jingle_rtp_module.vala @@ -29,7 +29,7 @@ public abstract class Module : XmppStreamModule { public abstract Gee.List get_suggested_header_extensions(string media); public abstract void close_stream(Stream stream); - public async Jingle.Session start_call(XmppStream stream, Jid receiver_full_jid, bool video, string sid, Jid? muji_muc) throws Jingle.Error { + public async Jingle.Session start_call(XmppStream stream, Jid receiver_full_jid, bool video, string sid, Jid? muji_room) throws Jingle.Error { Jingle.Module jingle_module = stream.get_module(Jingle.Module.IDENTITY); @@ -41,7 +41,7 @@ public abstract class Module : XmppStreamModule { ArrayList contents = new ArrayList(); // Create audio content - Parameters audio_content_parameters = new Parameters(this, "audio", yield get_supported_payloads("audio"), muji_muc); + Parameters audio_content_parameters = new Parameters(this, "audio", yield get_supported_payloads("audio")); audio_content_parameters.local_crypto = generate_local_crypto(); audio_content_parameters.header_extensions.add_all(get_suggested_header_extensions("audio")); Jingle.Transport? audio_transport = yield jingle_module.select_transport(stream, content_type.required_transport_type, content_type.required_components, receiver_full_jid, Set.empty()); @@ -59,7 +59,7 @@ public abstract class Module : XmppStreamModule { Jingle.Content? video_content = null; if (video) { // Create video content - Parameters video_content_parameters = new Parameters(this, "video", yield get_supported_payloads("video"), muji_muc); + Parameters video_content_parameters = new Parameters(this, "video", yield get_supported_payloads("video")); video_content_parameters.local_crypto = generate_local_crypto(); video_content_parameters.header_extensions.add_all(get_suggested_header_extensions("video")); Jingle.Transport? video_transport = yield stream.get_module(Jingle.Module.IDENTITY).select_transport(stream, content_type.required_transport_type, content_type.required_components, receiver_full_jid, Set.empty()); @@ -77,7 +77,7 @@ public abstract class Module : XmppStreamModule { // Create session try { - Jingle.Session session = yield jingle_module.create_session(stream, contents, receiver_full_jid, sid); + Jingle.Session session = yield jingle_module.create_session(stream, contents, receiver_full_jid, sid, muji_room); return session; } catch (Jingle.Error e) { throw new Jingle.Error.GENERAL(@"Couldn't create Jingle session: $(e.message)"); @@ -101,7 +101,7 @@ public abstract class Module : XmppStreamModule { if (content == null) { // Content for video does not yet exist -> create it - Parameters video_content_parameters = new Parameters(this, "video", yield get_supported_payloads("video"), muji_muc); + Parameters video_content_parameters = new Parameters(this, "video", yield get_supported_payloads("video")); video_content_parameters.local_crypto = generate_local_crypto(); video_content_parameters.header_extensions.add_all(get_suggested_header_extensions("video")); Jingle.Transport? video_transport = yield stream.get_module(Jingle.Module.IDENTITY).select_transport(stream, content_type.required_transport_type, content_type.required_components, receiver_full_jid, Set.empty()); From 06f0bc00f14046dfb72794e0fcf516d240250e21 Mon Sep 17 00:00:00 2001 From: fiaxh Date: Sat, 12 Feb 2022 17:32:13 +0100 Subject: [PATCH 10/19] Calls: Show invite button quicker --- main/src/ui/call_window/call_window_controller.vala | 2 +- main/src/ui/call_window/participant_widget.vala | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/main/src/ui/call_window/call_window_controller.vala b/main/src/ui/call_window/call_window_controller.vala index 6ea69287..65e5ebd6 100644 --- a/main/src/ui/call_window/call_window_controller.vala +++ b/main/src/ui/call_window/call_window_controller.vala @@ -156,7 +156,7 @@ public class Dino.Ui.CallWindowController : Object { update_audio_device_choices(); update_video_device_choices(); - } else if (participant_widgets.size >= 1) { + } else if (participant_widgets.size > 1) { participant_widgets.values.@foreach((widget) => widget.may_show_invite_button = true); } }); diff --git a/main/src/ui/call_window/participant_widget.vala b/main/src/ui/call_window/participant_widget.vala index 0d8d25b4..e21ab586 100644 --- a/main/src/ui/call_window/participant_widget.vala +++ b/main/src/ui/call_window/participant_widget.vala @@ -19,6 +19,7 @@ namespace Dino.Ui { public string? participant_name; bool is_highest_row = false; + bool is_start_row = false; public bool controls_active { get; set; } public bool may_show_invite_button { get; set; } @@ -44,12 +45,14 @@ namespace Dino.Ui { this.add_overlay(header_bar); this.notify["controls-active"].connect(reveal_or_hide_controls); + this.notify["may-show-invite-button"].connect(reveal_or_hide_controls); } public void on_row_changed(bool is_highest, bool is_lowest, bool is_start, bool is_end) { - is_highest_row = is_highest; + this.is_highest_row = is_highest; + this.is_start_row = is_start; + header_bar.show_close_button = is_highest_row; - invite_button.visible = may_show_invite_button && is_highest_row && is_start; if (is_highest_row) { header_bar.get_style_context().add_class("call-header-background"); Gtk.Settings? gtk_settings = Gtk.Settings.get_default(); @@ -105,6 +108,7 @@ namespace Dino.Ui { private void reveal_or_hide_controls() { header_bar.opacity = controls_active ? 1.0 : 0.0; + invite_button.visible = may_show_invite_button && is_highest_row && is_start_row; } } } \ No newline at end of file From 602834bdf777cf1c3909392dc52e5a3543f0ad0c Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 12 Feb 2022 19:15:35 +0100 Subject: [PATCH 11/19] Fix build on Debian 10 --- .../ui/call_window/participant_widget.vala | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/main/src/ui/call_window/participant_widget.vala b/main/src/ui/call_window/participant_widget.vala index e21ab586..1f6be68d 100644 --- a/main/src/ui/call_window/participant_widget.vala +++ b/main/src/ui/call_window/participant_widget.vala @@ -33,13 +33,8 @@ namespace Dino.Ui { header_bar.pack_start(invite_button); header_bar.pack_start(encryption_button); header_bar.pack_end(menu_button); - PopoverMenu menu = new PopoverMenu(); - Box box = new Box(Orientation.VERTICAL, 0) { margin=10, visible=true }; - ModelButton debug_information_button = new ModelButton() { text=_("Debug information"), visible=true }; - debug_information_button.clicked.connect(() => debug_information_clicked()); - box.add(debug_information_button); - menu.add(box); - menu_button.popover = menu; + + menu_button.popover = create_menu(); invite_button.clicked.connect(() => invite_button_clicked()); this.add_overlay(header_bar); @@ -94,6 +89,16 @@ namespace Dino.Ui { this.add(main_widget); } + private PopoverMenu create_menu() { + PopoverMenu menu = new PopoverMenu(); + Box box = new Box(Orientation.VERTICAL, 0) { margin=10, visible=true }; + ModelButton debug_information_button = new ModelButton() { text=_("Debug information"), visible=true }; + debug_information_button.clicked.connect(() => debug_information_clicked()); + box.add(debug_information_button); + menu.add(box); + return menu; + } + public void set_status(string state) { if (state == "requested") { header_bar.subtitle = _("Calling…"); From 3f169c64d70ee3c4b735d31744be154cccc85d67 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 12 Feb 2022 19:15:52 +0100 Subject: [PATCH 12/19] CIM: Announce accepted method --- libdino/src/service/call_state.vala | 12 +++++++++++- xmpp-vala/src/module/xep/0166_jingle/session.vala | 2 +- .../src/module/xep/0353_call_invite_message.vala | 10 ++++++++-- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/libdino/src/service/call_state.vala b/libdino/src/service/call_state.vala index c1f0522d..452deb4f 100644 --- a/libdino/src/service/call_state.vala +++ b/libdino/src/service/call_state.vala @@ -100,7 +100,17 @@ public class Dino.CallState : Object { if (use_cim) { XmppStream stream = stream_interactor.get_stream(call.account); if (stream == null) return; - stream.get_module(Xep.CallInvites.Module.IDENTITY).send_accept(stream, cim_counterpart, cim_call_id, cim_message_type); + StanzaNode? inner_node = null; + if (group_call != null) { + inner_node = new StanzaNode.build("muji", Xep.Muji.NS_URI).add_self_xmlns() + .put_attribute("room", group_call.muc_jid.to_string()); + } else if (peers.size == 1) { + foreach (PeerState peer in peers.values) { + inner_node = new StanzaNode.build("jingle", Xep.CallInvites.NS_URI) + .put_attribute("sid", peer.sid); + } + } + stream.get_module(Xep.CallInvites.Module.IDENTITY).send_accept(stream, cim_counterpart, cim_call_id, inner_node, cim_message_type); } else { foreach (PeerState peer in peers.values) { peer.accept(); diff --git a/xmpp-vala/src/module/xep/0166_jingle/session.vala b/xmpp-vala/src/module/xep/0166_jingle/session.vala index 577792ff..53a9c58d 100644 --- a/xmpp-vala/src/module/xep/0166_jingle/session.vala +++ b/xmpp-vala/src/module/xep/0166_jingle/session.vala @@ -426,7 +426,7 @@ public class Xmpp.Xep.Jingle.Session : Object { reason_node.put_node(new StanzaNode.build(reason_name, NS_URI)); } if (reason_text != null) { - reason_node.put_node(new StanzaNode.text(reason_text)); + reason_node.put_node(new StanzaNode.build("text", NS_URI).put_node(new StanzaNode.text(reason_text))); } terminate_iq.put_node(reason_node); } diff --git a/xmpp-vala/src/module/xep/0353_call_invite_message.vala b/xmpp-vala/src/module/xep/0353_call_invite_message.vala index 38d87f43..8031beaf 100644 --- a/xmpp-vala/src/module/xep/0353_call_invite_message.vala +++ b/xmpp-vala/src/module/xep/0353_call_invite_message.vala @@ -40,8 +40,14 @@ namespace Xmpp.Xep.CallInvites { send_message(stream, to, call_id, "retract", "cancel", message_type); } - public void send_accept(XmppStream stream, Jid to, string call_id, string message_type) { - send_message(stream, to, call_id, "accept", null, message_type); + public void send_accept(XmppStream stream, Jid inviter, string call_id, StanzaNode? inner_node, string message_type) { + StanzaNode accept_node = new StanzaNode.build("accept", NS_URI).add_self_xmlns() + .put_attribute("id", call_id); + if (inner_node != null) accept_node.put_node(inner_node); + MessageStanza invite_message = new MessageStanza() { to=inviter, type_=message_type }; + MessageProcessingHints.set_message_hint(invite_message, MessageProcessingHints.HINT_STORE); + invite_message.stanza.put_node(accept_node); + stream.get_module(MessageModule.IDENTITY).send_message.begin(stream, invite_message); } public void send_reject(XmppStream stream, Jid to, string call_id, string message_type) { From ad00f3f930a7c55b4393a1a00f4de83f65750b32 Mon Sep 17 00:00:00 2001 From: fiaxh Date: Sat, 12 Feb 2022 19:16:38 +0100 Subject: [PATCH 13/19] Remove call notification if other device accepted/denied --- libdino/src/service/call_state.vala | 2 +- libdino/src/service/calls.vala | 36 ++++++++++++++++++++--------- 2 files changed, 26 insertions(+), 12 deletions(-) diff --git a/libdino/src/service/call_state.vala b/libdino/src/service/call_state.vala index 452deb4f..da97b792 100644 --- a/libdino/src/service/call_state.vala +++ b/libdino/src/service/call_state.vala @@ -34,7 +34,7 @@ public class Dino.CallState : Object { this.call = call; this.stream_interactor = stream_interactor; - if (call.direction == Call.DIRECTION_OUTGOING) { + if (call.direction == Call.DIRECTION_OUTGOING && call.state != Call.State.OTHER_DEVICE && call.ourpart.equals(call.account.full_jid)) { accepted = true; Timeout.add_seconds(30, () => { diff --git a/libdino/src/service/calls.vala b/libdino/src/service/calls.vala index a75ed063..094a45c9 100644 --- a/libdino/src/service/calls.vala +++ b/libdino/src/service/calls.vala @@ -233,15 +233,15 @@ namespace Dino { return peer_state; } - private CallState? get_call_state_by_call_id(Account account, string call_id, Jid jid1, Jid jid2) { - Jid relevant_jid = jid1.equals_bare(account.bare_jid) ? jid2 : jid1; - + private CallState? get_call_state_by_call_id(Account account, string call_id, Jid? counterpart_jid = null) { foreach (CallState call_state in call_states.values) { if (!call_state.call.account.equals(account)) continue; if (call_state.cim_call_id == call_id) { + if (counterpart_jid == null) return call_state; + foreach (Jid jid in call_state.peers.keys) { - if (jid.equals_bare(relevant_jid)) { + if (jid.equals_bare(counterpart_jid)) { return call_state; } } @@ -266,7 +266,7 @@ namespace Dino { return null; } - private CallState? create_recv_muji_call(Account account, Jid inviter_jid, Jid muc_jid, string message_type) { + private CallState? create_recv_muji_call(Account account, string call_id, Jid inviter_jid, Jid muc_jid, string message_type) { debug("[%s] Muji call received from %s for MUC %s, type %s", account.bare_jid.to_string(), inviter_jid.to_string(), muc_jid.to_string(), message_type); foreach (Call call in call_states.keys) { @@ -276,6 +276,7 @@ namespace Dino { if (call.counterparts.size == 1 && call.counterparts.contains(inviter_jid) && call_state.accepted) { // A call is converted into a group call. + call_state.cim_call_id = call_id; call_state.join_group_call.begin(muc_jid); return null; } @@ -429,7 +430,7 @@ namespace Dino { string? room_jid_str = join_method_node.get_attribute("room"); if (room_jid_str == null) return; Jid room_jid = new Jid(room_jid_str); - call_state = create_recv_muji_call(account, from_jid, room_jid, message_stanza.type_); + call_state = create_recv_muji_call(account, call_id, from_jid, room_jid, message_stanza.type_); multiparty = true; break; @@ -474,12 +475,13 @@ namespace Dino { } }); call_invites_module.call_accepted.connect((from_jid, to_jid, call_id, message_type) => { - CallState? call_state = get_call_state_by_call_id(account, call_id, from_jid, to_jid); - if (call_state == null) return; - Call call = call_state.call; - // Carboned message from our account if (from_jid.equals_bare(account.bare_jid)) { + + CallState? call_state = get_call_state_by_call_id(account, call_id); + if (call_state == null) return; + Call call = call_state.call; + // Ignore carbon from ourselves if (from_jid.equals(account.full_jid)) return; @@ -490,6 +492,10 @@ namespace Dino { return; } + CallState? call_state = get_call_state_by_call_id(account, call_id, from_jid); + if (call_state == null) return; + Call call = call_state.call; + // We proposed the call. This is a message from our peer. if (call.direction == Call.DIRECTION_OUTGOING && to_jid.equals(account.full_jid)) { @@ -502,7 +508,7 @@ namespace Dino { if (from_jid.equals_bare(account.bare_jid)) return; // The call was retracted by the counterpart - CallState? call_state = get_call_state_by_call_id(account, call_id, from_jid, to_jid); + CallState? call_state = get_call_state_by_call_id(account, call_id, from_jid); if (call_state == null) return; if (call_state.call.state != Call.State.RINGING) { @@ -516,6 +522,14 @@ namespace Dino { remove_call_from_datastructures(call_state.call); }); call_invites_module.call_rejected.connect((from_jid, to_jid, call_id, message_type) => { + // We rejected an invite from another device + if (from_jid.equals_bare(account.bare_jid)) { + CallState? call_state = get_call_state_by_call_id(account, call_id); + if (call_state == null) return; + Call call = call_state.call; + call.state = Call.State.DECLINED; + } + if (from_jid.equals_bare(account.bare_jid)) return; debug(@"[%s] %s rejected our MUJI invite", account.bare_jid.to_string(), from_jid.to_string()); }); From 6dca4f499ef53f25667c0fb495b5e3bec639cf36 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 12 Feb 2022 20:51:31 +0100 Subject: [PATCH 14/19] Fix call participant widget --- main/data/theme.css | 28 +++---------------- .../ui/call_window/participant_widget.vala | 5 ++-- 2 files changed, 7 insertions(+), 26 deletions(-) diff --git a/main/data/theme.css b/main/data/theme.css index 2451f5d9..3e076248 100644 --- a/main/data/theme.css +++ b/main/data/theme.css @@ -309,30 +309,6 @@ box.dino-input-error label.input-status-highlight-once { margin: 0; } -.dino-call-window .black-element { - color: rgba(255,255,255,0.7); - border-radius: 5px; - background: rgba(0,0,0,0.5); - border: none; - box-shadow: none; -} - -.dino-call-window label.black-element { - padding: 5px; -} - -.dino-call-window button.black-element { - padding: 0; -} - -.dino-call-window button.black-element.unencrypted { - color: @error_color; -} - -.dino-call-window .black-element:hover { - background: rgba(20,20,20,0.5); -} - .dino-call-window .participant-header-bar { background: none; border: none; @@ -366,6 +342,10 @@ box.dino-input-error label.input-status-highlight-once { color: white; } +.dino-call-window .participant-header-bar button.unencrypted image { + color: @error_color; +} + .dino-call-window .call-bottom-bar { background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.3)); border: 0; diff --git a/main/src/ui/call_window/participant_widget.vala b/main/src/ui/call_window/participant_widget.vala index 1f6be68d..f18ae242 100644 --- a/main/src/ui/call_window/participant_widget.vala +++ b/main/src/ui/call_window/participant_widget.vala @@ -13,7 +13,7 @@ namespace Dino.Ui { public Box inner_box = new Box(Orientation.HORIZONTAL, 0) { margin_start=5, margin_top=5, hexpand=true, visible=true }; public Box title_box = new Box(Orientation.VERTICAL, 0) { valign=Align.CENTER, hexpand=true, visible=true }; public CallEncryptionButton encryption_button = new CallEncryptionButton() { opacity=0, relief=ReliefStyle.NONE, height_request=30, width_request=30, margin_end=5, visible=true }; - public MenuButton menu_button = new MenuButton() { relief=ReliefStyle.NONE, visible=true, image=new Image.from_icon_name("open-menu-symbolic", IconSize.MENU) }; + public MenuButton menu_button = new MenuButton() { relief=ReliefStyle.NONE, visible=true }; public Button invite_button = new Button.from_icon_name("dino-account-plus") { relief=ReliefStyle.NONE, visible=true }; public bool shows_video = false; public string? participant_name; @@ -34,7 +34,8 @@ namespace Dino.Ui { header_bar.pack_start(encryption_button); header_bar.pack_end(menu_button); - menu_button.popover = create_menu(); + menu_button.image = new Image.from_icon_name("open-menu-symbolic", IconSize.MENU); + menu_button.set_popover(create_menu()); invite_button.clicked.connect(() => invite_button_clicked()); this.add_overlay(header_bar); From f5d1435182dc1a5c2ffc995f0ed7e100f7b91215 Mon Sep 17 00:00:00 2001 From: Translations Date: Sat, 12 Feb 2022 22:07:08 +0100 Subject: [PATCH 15/19] Update translations --- main/po/ar.po | 32 ++++++++++-------- main/po/ca.po | 32 ++++++++++-------- main/po/cs.po | 32 ++++++++++-------- main/po/da.po | 32 ++++++++++-------- main/po/de.po | 46 ++++++++++++++------------ main/po/dino.pot | 32 ++++++++++-------- main/po/el.po | 50 ++++++++++++++++------------- main/po/en.po | 32 ++++++++++-------- main/po/eo.po | 32 ++++++++++-------- main/po/es.po | 32 ++++++++++-------- main/po/eu.po | 32 ++++++++++-------- main/po/fa.po | 32 ++++++++++-------- main/po/fi.po | 32 ++++++++++-------- main/po/fr.po | 50 ++++++++++++++++------------- main/po/gl.po | 50 ++++++++++++++++------------- main/po/hu.po | 32 ++++++++++-------- main/po/id.po | 32 ++++++++++-------- main/po/ie.po | 32 ++++++++++-------- main/po/it.po | 50 ++++++++++++++++------------- main/po/ja.po | 32 ++++++++++-------- main/po/kab.po | 32 ++++++++++-------- main/po/ko.po | 32 ++++++++++-------- main/po/lb.po | 32 ++++++++++-------- main/po/lt.po | 36 ++++++++++++--------- main/po/nb.po | 44 +++++++++++++------------ main/po/nl.po | 46 ++++++++++++++------------ main/po/nl_BE.po | 32 ++++++++++-------- main/po/oc.po | 32 ++++++++++-------- main/po/pl.po | 32 ++++++++++-------- main/po/pt.po | 32 ++++++++++-------- main/po/pt_BR.po | 32 ++++++++++-------- main/po/ro.po | 50 ++++++++++++++++------------- main/po/ru.po | 36 ++++++++++++--------- main/po/sq.po | 32 ++++++++++-------- main/po/sv.po | 50 ++++++++++++++++------------- main/po/ta.po | 32 ++++++++++-------- main/po/tr.po | 46 ++++++++++++++------------ main/po/uk.po | 36 ++++++++++++--------- main/po/zh_CN.po | 32 ++++++++++-------- main/po/zh_TW.po | 32 ++++++++++-------- plugins/omemo/po/ar.po | 2 +- plugins/omemo/po/ca.po | 2 +- plugins/omemo/po/cs.po | 2 +- plugins/omemo/po/de.po | 2 +- plugins/omemo/po/dino-omemo.pot | 2 +- plugins/omemo/po/el.po | 2 +- plugins/omemo/po/en.po | 2 +- plugins/omemo/po/eo.po | 2 +- plugins/omemo/po/es.po | 2 +- plugins/omemo/po/eu.po | 2 +- plugins/omemo/po/fa.po | 2 +- plugins/omemo/po/fi.po | 2 +- plugins/omemo/po/fr.po | 2 +- plugins/omemo/po/gl.po | 2 +- plugins/omemo/po/hu.po | 2 +- plugins/omemo/po/id.po | 2 +- plugins/omemo/po/ie.po | 2 +- plugins/omemo/po/it.po | 2 +- plugins/omemo/po/ja.po | 2 +- plugins/omemo/po/lb.po | 2 +- plugins/omemo/po/lt.po | 6 ++-- plugins/omemo/po/nb.po | 2 +- plugins/omemo/po/nl.po | 2 +- plugins/omemo/po/nl_BE.po | 2 +- plugins/omemo/po/oc.po | 2 +- plugins/omemo/po/pl.po | 2 +- plugins/omemo/po/pt.po | 2 +- plugins/omemo/po/pt_BR.po | 2 +- plugins/omemo/po/ro.po | 2 +- plugins/omemo/po/ru.po | 6 ++-- plugins/omemo/po/sq.po | 2 +- plugins/omemo/po/sv.po | 2 +- plugins/omemo/po/tr.po | 2 +- plugins/omemo/po/uk.po | 6 ++-- plugins/omemo/po/zh_CN.po | 2 +- plugins/omemo/po/zh_TW.po | 2 +- plugins/openpgp/po/ar.po | 2 +- plugins/openpgp/po/ca.po | 2 +- plugins/openpgp/po/cs.po | 2 +- plugins/openpgp/po/de.po | 2 +- plugins/openpgp/po/dino-openpgp.pot | 2 +- plugins/openpgp/po/el.po | 2 +- plugins/openpgp/po/en.po | 2 +- plugins/openpgp/po/eo.po | 2 +- plugins/openpgp/po/es.po | 2 +- plugins/openpgp/po/eu.po | 2 +- plugins/openpgp/po/fa.po | 2 +- plugins/openpgp/po/fi.po | 2 +- plugins/openpgp/po/fr.po | 2 +- plugins/openpgp/po/gl.po | 2 +- plugins/openpgp/po/hu.po | 2 +- plugins/openpgp/po/id.po | 2 +- plugins/openpgp/po/ie.po | 2 +- plugins/openpgp/po/it.po | 2 +- plugins/openpgp/po/ja.po | 2 +- plugins/openpgp/po/lb.po | 2 +- plugins/openpgp/po/lt.po | 2 +- plugins/openpgp/po/nb.po | 2 +- plugins/openpgp/po/nl.po | 2 +- plugins/openpgp/po/nl_BE.po | 2 +- plugins/openpgp/po/oc.po | 2 +- plugins/openpgp/po/pl.po | 2 +- plugins/openpgp/po/pt.po | 2 +- plugins/openpgp/po/pt_BR.po | 2 +- plugins/openpgp/po/ro.po | 2 +- plugins/openpgp/po/ru.po | 6 ++-- plugins/openpgp/po/sq.po | 2 +- plugins/openpgp/po/sv.po | 2 +- plugins/openpgp/po/tr.po | 2 +- plugins/openpgp/po/uk.po | 6 ++-- plugins/openpgp/po/zh_CN.po | 2 +- plugins/openpgp/po/zh_TW.po | 2 +- 112 files changed, 889 insertions(+), 729 deletions(-) diff --git a/main/po/ar.po b/main/po/ar.po index b9759e23..971aadcf 100644 --- a/main/po/ar.po +++ b/main/po/ar.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-02-06 17:57+0000\n" "Language-Team: Arabic \n" @@ -128,7 +128,7 @@ msgstr "مستخدِم" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "ادعو" @@ -165,7 +165,7 @@ msgstr "اختر" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -206,26 +206,30 @@ msgstr "ابحث في الرسائل" msgid "Members" msgstr "الأعضاء" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "يتصل…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "يرِن…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "الإتصال جارٍ …" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "أنهى %s المكالمة" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "رفض %s المكالمة" @@ -246,15 +250,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -269,7 +273,7 @@ msgid "Start" msgstr "إبدأ" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "انضم للقناة" @@ -285,7 +289,7 @@ msgstr "التالي" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "انضمّ" @@ -352,7 +356,7 @@ msgstr "اضف" msgid "Keyboard Shortcuts" msgstr "ختصارات لوحة المفاتيح" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "عن Dino" diff --git a/main/po/ca.po b/main/po/ca.po index 7d87c296..97c72d32 100644 --- a/main/po/ca.po +++ b/main/po/ca.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: dino 20180510\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-01-09 03:56+0000\n" "Language-Team: Catalan; Valencian \n" "Language: ca\n" @@ -121,7 +121,7 @@ msgstr "Usuari" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Invita" @@ -158,7 +158,7 @@ msgstr "Selecciona" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -199,26 +199,30 @@ msgstr "Cerca els missatges" msgid "Members" msgstr "Membres" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Trucant…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Sonant…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "S'està connectant…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s trucada finalitzada" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s ha rebutjat la trucada" @@ -239,15 +243,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -262,7 +266,7 @@ msgid "Start" msgstr "Inicia" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Uneix-m'hi al canal" @@ -278,7 +282,7 @@ msgstr "Següent" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Uneix-te" @@ -345,7 +349,7 @@ msgstr "Afegeix" msgid "Keyboard Shortcuts" msgstr "Dreceres de teclat" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Quant al Dino" diff --git a/main/po/cs.po b/main/po/cs.po index 09e685ea..a709f5c5 100644 --- a/main/po/cs.po +++ b/main/po/cs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-01-06 09:53+0000\n" "Language-Team: none\n" "Language: cs\n" @@ -123,7 +123,7 @@ msgstr "Uživatel" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Pozvat" @@ -160,7 +160,7 @@ msgstr "Vybrat" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,26 +201,30 @@ msgstr "Hledat zprávy" msgid "Members" msgstr "Členové" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Vyzvánění…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Připojování…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s ukončil hovor" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s odmítl hovor" @@ -241,15 +245,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Začít" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Připojit se ke kanálu" @@ -280,7 +284,7 @@ msgstr "Další" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Připojit" @@ -347,7 +351,7 @@ msgstr "Přidat" msgid "Keyboard Shortcuts" msgstr "Klávesové zkratky" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "O Dino" diff --git a/main/po/da.po b/main/po/da.po index 6580b765..6baefc02 100644 --- a/main/po/da.po +++ b/main/po/da.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-09-14 14:36+0000\n" "Language-Team: none\n" "Language: da\n" @@ -122,7 +122,7 @@ msgstr "" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "" @@ -159,7 +159,7 @@ msgstr "" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "" @@ -279,7 +283,7 @@ msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "" @@ -346,7 +350,7 @@ msgstr "" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/de.po b/main/po/de.po index 2e376360..7d9d8d55 100644 --- a/main/po/de.po +++ b/main/po/de.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: dino-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-08 21:14+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: German \n" "Language: de\n" @@ -118,7 +118,7 @@ msgstr "Gast" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Einladen" @@ -155,7 +155,7 @@ msgstr "Auswählen" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -196,55 +196,59 @@ msgstr "Nachrichten suchen" msgid "Members" msgstr "Mitglieder" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Anrufen…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Klingeln…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Verbinden…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s hat den Anruf beendet" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s hat den Anruf abgelehnt" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Kameras" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Keine Kamera gefunden." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Mikrofone" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Kein Mikrofon gefunden." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Lautsprecher" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Kein Lautsprecher gefunden." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Zum Anruf einladen" @@ -259,7 +263,7 @@ msgid "Start" msgstr "Starten" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Kanal beitreten" @@ -275,7 +279,7 @@ msgstr "Weiter" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Beitreten" @@ -342,7 +346,7 @@ msgstr "Hinzufügen" msgid "Keyboard Shortcuts" msgstr "Tastenkombinationen" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Info zu Dino" diff --git a/main/po/dino.pot b/main/po/dino.pot index 90cba644..efbf0e9c 100644 --- a/main/po/dino.pot +++ b/main/po/dino.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -123,7 +123,7 @@ msgstr "" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "" @@ -160,7 +160,7 @@ msgstr "" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,26 +201,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -241,15 +245,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -264,7 +268,7 @@ msgid "Start" msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "" @@ -280,7 +284,7 @@ msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "" @@ -347,7 +351,7 @@ msgstr "" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/el.po b/main/po/el.po index f49418c3..bdc0088b 100644 --- a/main/po/el.po +++ b/main/po/el.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-04 09:55+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: none\n" "Language: el\n" "MIME-Version: 1.0\n" @@ -122,7 +122,7 @@ msgstr "Χρήστης" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Πρόσκληση" @@ -159,7 +159,7 @@ msgstr "Επιλογή" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,55 +200,59 @@ msgstr "Αναζήτηση μηνυμάτων" msgid "Members" msgstr "Μέλη" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Κλήση…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Κουδούνισμα…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Σύνδεση…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s τερμάτισε την κλήση" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s απέρριψε την κλήση" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Κάμερες" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Δεν βρέθηκε κάμερα." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Μικρόφωνα" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Δε βρέθηκε μικρόφωνο." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Ηχεία" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Δε βρέθηκε ηχείο." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Πρόσκληση σε Κλήση" @@ -263,7 +267,7 @@ msgid "Start" msgstr "Έναρξη" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Συμμετοχή σε Ομαδική συνομιλία" @@ -279,7 +283,7 @@ msgstr "Επόμενο" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Συμμετοχή" @@ -346,7 +350,7 @@ msgstr "Προσθήκη" msgid "Keyboard Shortcuts" msgstr "Συντομεύσεις πληκτρολογίου" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Σχετικά με το Dino" @@ -377,13 +381,13 @@ msgstr "Εισερχόμενη βιντεοκλήση" #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming video group call" -msgstr "" +msgstr "Εισερχόμενη ομαδική βιντεοκλήση" #: main/src/ui/notifier_gnotifications.vala:72 #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming group call" -msgstr "" +msgstr "Εισερχόμενη ομαδική κλήση" #: main/src/ui/notifier_gnotifications.vala:80 #: main/src/ui/notifier_freedesktop.vala:123 diff --git a/main/po/en.po b/main/po/en.po index c8aba2a7..747fc74f 100644 --- a/main/po/en.po +++ b/main/po/en.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -113,7 +113,7 @@ msgstr "" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "" @@ -150,7 +150,7 @@ msgstr "" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -191,26 +191,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -231,15 +235,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -254,7 +258,7 @@ msgid "Start" msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "" @@ -270,7 +274,7 @@ msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "" @@ -337,7 +341,7 @@ msgstr "" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/eo.po b/main/po/eo.po index 29f8b257..770a7348 100644 --- a/main/po/eo.po +++ b/main/po/eo.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-09-29 07:37+0000\n" "Language-Team: Esperanto \n" @@ -123,7 +123,7 @@ msgstr "Uzanto" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Inviti" @@ -160,7 +160,7 @@ msgstr "Elekti" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,26 +201,30 @@ msgstr "Serĉi mesaĝojn" msgid "Members" msgstr "Anoj" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Alvokante…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Voksonante…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Konektado…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s finis la alvokon" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s malakceptis la alvokon" @@ -241,15 +245,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Komenci" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Aliĝi al Kanalo" @@ -280,7 +284,7 @@ msgstr "Sekva" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Aliĝi" @@ -347,7 +351,7 @@ msgstr "Aldoni" msgid "Keyboard Shortcuts" msgstr "Fulmoklavoj" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Pri Dino" diff --git a/main/po/es.po b/main/po/es.po index 7b14e31b..9e40f98a 100644 --- a/main/po/es.po +++ b/main/po/es.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-12-31 21:54+0000\n" "Language-Team: Spanish \n" @@ -123,7 +123,7 @@ msgstr "Usuario" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Invitar" @@ -160,7 +160,7 @@ msgstr "Seleccionar" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,26 +201,30 @@ msgstr "Buscar mensajes" msgid "Members" msgstr "Miembros" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Llamando…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Timbrando…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Conectando…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s Llamada finalizada" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s ha rechazado la llamada" @@ -241,15 +245,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Iniciar" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Unirse al Canal" @@ -280,7 +284,7 @@ msgstr "Siguiente" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Unirse" @@ -347,7 +351,7 @@ msgstr "Añadir" msgid "Keyboard Shortcuts" msgstr "Atajos de teclado" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Acerca de Dino" diff --git a/main/po/eu.po b/main/po/eu.po index 5d7a959d..2eca971d 100644 --- a/main/po/eu.po +++ b/main/po/eu.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-12-09 19:53+0000\n" "Language-Team: Basque \n" @@ -124,7 +124,7 @@ msgstr "Erabiltzailea" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Gonbidatu" @@ -161,7 +161,7 @@ msgstr "Hautatu" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -202,26 +202,30 @@ msgstr "Mezuak bilatu" msgid "Members" msgstr "Kideak" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Deika…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Soinua jotzen…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Konektatzen…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s(e)k deia amaitu zuen" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s(e)k uko egin dio deiari" @@ -242,15 +246,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -265,7 +269,7 @@ msgid "Start" msgstr "Hasi" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Kanalera gehitu" @@ -281,7 +285,7 @@ msgstr "Hurrengoa" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Batu" @@ -348,7 +352,7 @@ msgstr "Gehitu" msgid "Keyboard Shortcuts" msgstr "Laster-teklak" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Dinori buruz" diff --git a/main/po/fa.po b/main/po/fa.po index 7cff726f..620cc5d6 100644 --- a/main/po/fa.po +++ b/main/po/fa.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-09-29 07:37+0000\n" "Language-Team: none\n" "Language: fa\n" @@ -122,7 +122,7 @@ msgstr "کاربر" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "دعوت" @@ -159,7 +159,7 @@ msgstr "انتخاب" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "جست‌جوی پیام‌ها" msgid "Members" msgstr "اعضا" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "در حال اتصال…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "آغاز" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "پیوستن به کانال" @@ -279,7 +283,7 @@ msgstr "بعدی" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "پیوستن" @@ -346,7 +350,7 @@ msgstr "اضافه کردن" msgid "Keyboard Shortcuts" msgstr "میانبر های صفحه کلید" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 #, fuzzy msgid "About Dino" msgstr "درباره دینو" diff --git a/main/po/fi.po b/main/po/fi.po index d4a36b99..cd44332a 100644 --- a/main/po/fi.po +++ b/main/po/fi.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-04-12 20:01+0000\n" "Language-Team: Finnish \n" @@ -123,7 +123,7 @@ msgstr "Käyttäjä" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Kutsu" @@ -160,7 +160,7 @@ msgstr "Valitse" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,26 +201,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Yhdistää…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -241,15 +245,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Aloita" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Liity kanavalle" @@ -280,7 +284,7 @@ msgstr "Seuraava" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Liity" @@ -347,7 +351,7 @@ msgstr "Lisää" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/fr.po b/main/po/fr.po index eb763540..36a2c822 100644 --- a/main/po/fr.po +++ b/main/po/fr.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-04 09:55+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: French \n" "Language: fr\n" @@ -123,7 +123,7 @@ msgstr "Utilisateur" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Inviter" @@ -160,7 +160,7 @@ msgstr "Sélectionner" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,55 +201,59 @@ msgstr "Rechercher dans les messages" msgid "Members" msgstr "Membres" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Appel en cours…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Ça sonne…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Connexion…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s a arrêté l’appel" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s a rejeté cet appel" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Caméras" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Aucune caméra trouvée." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Microphones" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Aucun microphone trouvé." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Haut-parleurs" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Aucun haut-parleur trouvé." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Inviter à un appel" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Démarrer" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Rejoindre un salon" @@ -280,7 +284,7 @@ msgstr "Suivant" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Rejoindre" @@ -347,7 +351,7 @@ msgstr "Ajouter" msgid "Keyboard Shortcuts" msgstr "Raccourcis clavier" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "À propos de Dino" @@ -378,13 +382,13 @@ msgstr "Appel vidéo entrant" #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming video group call" -msgstr "" +msgstr "Appel vidéo de groupe entrant" #: main/src/ui/notifier_gnotifications.vala:72 #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming group call" -msgstr "" +msgstr "Appel de groupe entrant" #: main/src/ui/notifier_gnotifications.vala:80 #: main/src/ui/notifier_freedesktop.vala:123 diff --git a/main/po/gl.po b/main/po/gl.po index a767dbb4..88f6e566 100644 --- a/main/po/gl.po +++ b/main/po/gl.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-04 09:55+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: Galician \n" "Language: gl\n" @@ -123,7 +123,7 @@ msgstr "Usuario" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Convidar" @@ -160,7 +160,7 @@ msgstr "Escoller" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,55 +201,59 @@ msgstr "Buscar mensaxes" msgid "Members" msgstr "Membresía" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Chamando…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Soando…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Conectando…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s rematou a chamada" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s rexeitou a chamada" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Cámaras" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Non se atopa unha cámara." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Micrófonos" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Non se atopa o micrófono." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Altofalantes" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Non se atopa o altofalante." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Convidar a Chamada" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Comezar" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Unirse a unha canle" @@ -280,7 +284,7 @@ msgstr "Seguinte" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Unirse" @@ -347,7 +351,7 @@ msgstr "Engadir" msgid "Keyboard Shortcuts" msgstr "Atallos de teclado" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Acerca de Dino" @@ -378,13 +382,13 @@ msgstr "Chamada de vídeo entrante" #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming video group call" -msgstr "" +msgstr "Chamada de vídeo en grupo" #: main/src/ui/notifier_gnotifications.vala:72 #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming group call" -msgstr "" +msgstr "Chamada en grupo" #: main/src/ui/notifier_gnotifications.vala:80 #: main/src/ui/notifier_freedesktop.vala:123 diff --git a/main/po/hu.po b/main/po/hu.po index 41dd7a6f..fd00b6ef 100644 --- a/main/po/hu.po +++ b/main/po/hu.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-12-05 01:51+0000\n" "Language-Team: Hungarian \n" @@ -123,7 +123,7 @@ msgstr "Felhasználó" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Meghívás" @@ -160,7 +160,7 @@ msgstr "Kiválasztás" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,26 +201,30 @@ msgstr "Üzenetek keresése" msgid "Members" msgstr "Tagok" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Hívás…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Csörgetés…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Kapcsolódás…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s befejezte a hívást" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s elutasította a hívást" @@ -241,15 +245,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Indítás" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Csatlakozás csatornához" @@ -280,7 +284,7 @@ msgstr "Következő" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Csatlakozás" @@ -349,7 +353,7 @@ msgstr "Hozzáadás" msgid "Keyboard Shortcuts" msgstr "Gyorsbillentyűk" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "A Dino névjegye" diff --git a/main/po/id.po b/main/po/id.po index 475bb765..d4125721 100644 --- a/main/po/id.po +++ b/main/po/id.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-01-04 01:53+0000\n" "Language-Team: none\n" "Language: id\n" @@ -121,7 +121,7 @@ msgstr "Pengguna" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Undang" @@ -158,7 +158,7 @@ msgstr "Pilih" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -199,26 +199,30 @@ msgstr "Cari pesan" msgid "Members" msgstr "Anggota" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Memanggil…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Berdering…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Menghubungi…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s mengakhiri panggilan" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s menolak panggilan" @@ -239,15 +243,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -262,7 +266,7 @@ msgid "Start" msgstr "Mulai" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Bergabung dengan Channel" @@ -278,7 +282,7 @@ msgstr "Selanjutnya" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Bergabung" @@ -345,7 +349,7 @@ msgstr "Tambah" msgid "Keyboard Shortcuts" msgstr "Kombinasi tombol" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Tentang Dino" diff --git a/main/po/ie.po b/main/po/ie.po index 980c4a07..95646576 100644 --- a/main/po/ie.po +++ b/main/po/ie.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-03-01 10:50+0000\n" "Language-Team: none\n" "Language: ie\n" @@ -122,7 +122,7 @@ msgstr "Usator" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Invitar" @@ -159,7 +159,7 @@ msgstr "Selecter" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "Serchar missages" msgid "Members" msgstr "Membres" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Conexion…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "Iniciar" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Adherer al chanele" @@ -279,7 +283,7 @@ msgstr "Avan" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Adherer" @@ -346,7 +350,7 @@ msgstr "Adjunter" msgid "Keyboard Shortcuts" msgstr "Rapid-tastes" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Pri Dino" diff --git a/main/po/it.po b/main/po/it.po index 52902875..a4e3edad 100644 --- a/main/po/it.po +++ b/main/po/it.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-04 09:55+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: Italian \n" "Language: it\n" @@ -123,7 +123,7 @@ msgstr "Utente" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Invita" @@ -160,7 +160,7 @@ msgstr "Seleziona" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,55 +201,59 @@ msgstr "Cerca tra i messaggi" msgid "Members" msgstr "Partecipanti" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Chiamando…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Sta squillando…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Connessione…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s ha terminato la chiamata" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s ha rifiutato la chiamata" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Telecamere" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Nessuna telecamera trovata." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Microfoni" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Nessun microfono trovato." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Altoparlanti" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Nessun altoparlante trovato." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Invita alla chiamata" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Inizia" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Entra nel canale" @@ -280,7 +284,7 @@ msgstr "Avanti" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Partecipa" @@ -347,7 +351,7 @@ msgstr "Aggiungi" msgid "Keyboard Shortcuts" msgstr "Scorciatoie da tastiera" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Informazioni su Dino" @@ -378,13 +382,13 @@ msgstr "Videochiamata in arrivo" #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming video group call" -msgstr "" +msgstr "Videochiamata di gruppo in arrivo" #: main/src/ui/notifier_gnotifications.vala:72 #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming group call" -msgstr "" +msgstr "Chiamata di gruppo in arrivo" #: main/src/ui/notifier_gnotifications.vala:80 #: main/src/ui/notifier_freedesktop.vala:123 diff --git a/main/po/ja.po b/main/po/ja.po index 5e5a5f26..428a19c7 100644 --- a/main/po/ja.po +++ b/main/po/ja.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-12-15 01:54+0000\n" "Language-Team: Japanese \n" @@ -122,7 +122,7 @@ msgstr "ユーザー" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "招待" @@ -159,7 +159,7 @@ msgstr "選択" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "メッセージを検索" msgid "Members" msgstr "メンバー" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "呼び出し中…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "鳴っている…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "接続試行中…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%sは通話を終了しました" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s は通話を拒否しました" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "開始" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "チャンネルに参加" @@ -279,7 +283,7 @@ msgstr "次へ" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "参加" @@ -346,7 +350,7 @@ msgstr "追加" msgid "Keyboard Shortcuts" msgstr "キーボードショートカット" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Dino について" diff --git a/main/po/kab.po b/main/po/kab.po index c6b5f2fe..337611eb 100644 --- a/main/po/kab.po +++ b/main/po/kab.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-09-20 18:38+0000\n" "Language-Team: none\n" "Language: kab\n" @@ -122,7 +122,7 @@ msgstr "" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "" @@ -159,7 +159,7 @@ msgstr "" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "" @@ -279,7 +283,7 @@ msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "" @@ -346,7 +350,7 @@ msgstr "" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/ko.po b/main/po/ko.po index e8523dbd..f5827f30 100644 --- a/main/po/ko.po +++ b/main/po/ko.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-08-08 22:32+0000\n" "Language-Team: none\n" "Language: ko\n" @@ -121,7 +121,7 @@ msgstr "" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "초대" @@ -158,7 +158,7 @@ msgstr "선택" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -199,26 +199,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "연결 중…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -239,15 +243,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -262,7 +266,7 @@ msgid "Start" msgstr "시작" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "채널 참가" @@ -278,7 +282,7 @@ msgstr "다음" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "참가" @@ -345,7 +349,7 @@ msgstr "추가" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/lb.po b/main/po/lb.po index ef2b62d9..6f9676e8 100644 --- a/main/po/lb.po +++ b/main/po/lb.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Luxembourgish (Dino)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-04-15 00:11+0000\n" "Language-Team: Luxembourgish \n" @@ -118,7 +118,7 @@ msgstr "Benotzer" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Alueden" @@ -155,7 +155,7 @@ msgstr "Auswielen" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -196,26 +196,30 @@ msgstr "Messagen duerchsichen" msgid "Members" msgstr "Memberen" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Verbannen…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -236,15 +240,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -259,7 +263,7 @@ msgid "Start" msgstr "Start" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Kanal bäitrieden" @@ -275,7 +279,7 @@ msgstr "Nächst" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Bäitrieden" @@ -342,7 +346,7 @@ msgstr "Bäisetzen" msgid "Keyboard Shortcuts" msgstr "Tastaturofkierzungen" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Iwwert Dino" diff --git a/main/po/lt.po b/main/po/lt.po index 5c7a8f68..0b33e4c7 100644 --- a/main/po/lt.po +++ b/main/po/lt.po @@ -7,15 +7,15 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-09-29 07:37+0000\n" "Language-Team: none\n" "Language: lt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" -"%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"(n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Weblate 4.9-dev\n" #: main/src/ui/file_send_overlay.vala:85 @@ -124,7 +124,7 @@ msgstr "Naudotojas" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Pakviesti" @@ -161,7 +161,7 @@ msgstr "Pasirinkti" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -202,26 +202,30 @@ msgstr "Ieškoti žinučių" msgid "Members" msgstr "Nariai" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Skambinama…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Skamba…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Jungiamasi…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s baigė pokalbį" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s atmetė skambutį" @@ -242,15 +246,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -265,7 +269,7 @@ msgid "Start" msgstr "Pradėti" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Prisijungti prie kanalo" @@ -281,7 +285,7 @@ msgstr "Kitas" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Prisijungti" @@ -348,7 +352,7 @@ msgstr "Pridėti" msgid "Keyboard Shortcuts" msgstr "Trumpiniai" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Apie Dino" diff --git a/main/po/nb.po b/main/po/nb.po index 62d18de0..07d4cfd8 100644 --- a/main/po/nb.po +++ b/main/po/nb.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-04 09:55+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: Norwegian Bokmål \n" "Language: nb\n" @@ -124,7 +124,7 @@ msgstr "Bruker" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Inviter" @@ -161,7 +161,7 @@ msgstr "Velg" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -202,33 +202,37 @@ msgstr "Søk i meldinger" msgid "Members" msgstr "Medlemmer" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Ringer …" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Ringer …" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Kobler til…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s avsluttet samtalen" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s avslo samtalen" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Kamera" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." @@ -236,21 +240,21 @@ msgstr "" #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Mikrofoner" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Høyttalere" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 #, fuzzy msgid "Invite to Call" msgstr "Inviter til samtalen" @@ -266,7 +270,7 @@ msgid "Start" msgstr "Start" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Ta del i kanal" @@ -282,7 +286,7 @@ msgstr "Neste" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Ta del" @@ -349,7 +353,7 @@ msgstr "Legg til" msgid "Keyboard Shortcuts" msgstr "Tastatursnarveier" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Om Dino" @@ -380,13 +384,13 @@ msgstr "Innkommende videosamtale" #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming video group call" -msgstr "" +msgstr "Innkommende videogruppeanrop" #: main/src/ui/notifier_gnotifications.vala:72 #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming group call" -msgstr "" +msgstr "Innkommende gruppeanrop" #: main/src/ui/notifier_gnotifications.vala:80 #: main/src/ui/notifier_freedesktop.vala:123 diff --git a/main/po/nl.po b/main/po/nl.po index 4b667bbf..b5cf9522 100644 --- a/main/po/nl.po +++ b/main/po/nl.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-08 21:14+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: Dutch \n" "Language: nl\n" @@ -123,7 +123,7 @@ msgstr "Gebruiker" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Uitnodigen" @@ -160,7 +160,7 @@ msgstr "Kiezen" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,55 +201,59 @@ msgstr "Zoeken naar berichten" msgid "Members" msgstr "Deelnemers" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Bezig met bellen…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Bezig met overgaan…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Bezig met verbinden…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s heeft de oproep beëindigd" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s hebt/heeft de oproep geweigerd" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Camera's" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Geen camera aangetroffen." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Microfoons" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Geen microfoon aangetroffen." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Luidsprekers" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Geen luidspreker aangetroffen." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Uitnodigen voor gesprek" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Starten" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Deelnemen aan kanaal" @@ -280,7 +284,7 @@ msgstr "Volgende" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Deelnemen" @@ -347,7 +351,7 @@ msgstr "Toevoegen" msgid "Keyboard Shortcuts" msgstr "Sneltoetsen" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Over Dino" diff --git a/main/po/nl_BE.po b/main/po/nl_BE.po index 7fbe9861..f1a5eb3b 100644 --- a/main/po/nl_BE.po +++ b/main/po/nl_BE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2019-01-12 20:06+0000\n" "Language-Team: Flemish \n" @@ -123,7 +123,7 @@ msgstr "Gebruiker" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Uitnodigen" @@ -160,7 +160,7 @@ msgstr "Selecteren" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,26 +201,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Verbinding maken…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -241,15 +245,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Beginnen" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Deelnemen aan kanaal" @@ -280,7 +284,7 @@ msgstr "Volgende" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Deelnemen" @@ -347,7 +351,7 @@ msgstr "Toevoegen" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/oc.po b/main/po/oc.po index da42a0bb..8e00a51b 100644 --- a/main/po/oc.po +++ b/main/po/oc.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-01-02 16:52+0000\n" "Language-Team: none\n" "Language: oc\n" @@ -123,7 +123,7 @@ msgstr "Utilizaire" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Convidar" @@ -160,7 +160,7 @@ msgstr "Seleccionar" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -201,26 +201,30 @@ msgstr "Cercar de messatges" msgid "Members" msgstr "Membres" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Sonada…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Tinda…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Connexion…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s a arrestat la sonada" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s a regetat la sonada" @@ -241,15 +245,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -264,7 +268,7 @@ msgid "Start" msgstr "Començar" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Rejónher una sala" @@ -280,7 +284,7 @@ msgstr "Seguent" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Rejónher" @@ -347,7 +351,7 @@ msgstr "Ajustar" msgid "Keyboard Shortcuts" msgstr "Acorchis clavièr" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "A prepaus de Dino" diff --git a/main/po/pl.po b/main/po/pl.po index b3fa4f74..903740bb 100644 --- a/main/po/pl.po +++ b/main/po/pl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-02-04 09:55+0000\n" "Language-Team: Polish \n" @@ -125,7 +125,7 @@ msgstr "Użytkownik" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Zaproś" @@ -162,7 +162,7 @@ msgstr "Wybierz" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -203,26 +203,30 @@ msgstr "Wyszukaj wiadomości" msgid "Members" msgstr "Członkowie" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Łączenie…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Łączenie…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Łączenie…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s zakończył połączenie" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s odrzucił połączenie" @@ -243,15 +247,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Zaproś do Rozmowy" @@ -266,7 +270,7 @@ msgid "Start" msgstr "Rozpocznij" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Dołącz do kanału" @@ -282,7 +286,7 @@ msgstr "Dalej" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Dołącz" @@ -349,7 +353,7 @@ msgstr "Dodaj" msgid "Keyboard Shortcuts" msgstr "Skróty klawiszowe" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "O Dino" diff --git a/main/po/pt.po b/main/po/pt.po index 03a865e7..de991393 100644 --- a/main/po/pt.po +++ b/main/po/pt.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-05-10 09:33+0000\n" "Language-Team: none\n" "Language: pt\n" @@ -122,7 +122,7 @@ msgstr "Utilizador" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Convidar" @@ -159,7 +159,7 @@ msgstr "Selecionar" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "Buscar mensagens" msgid "Members" msgstr "Membros" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Conectando…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "Iniciar" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Juntar-se a um canal" @@ -279,7 +283,7 @@ msgstr "Próximo" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Juntar-se" @@ -346,7 +350,7 @@ msgstr "Adicionar" msgid "Keyboard Shortcuts" msgstr "Atalhos de Teclado" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Sobre Dino" diff --git a/main/po/pt_BR.po b/main/po/pt_BR.po index 207e0fc8..b078346e 100644 --- a/main/po/pt_BR.po +++ b/main/po/pt_BR.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-02-22 00:50+0000\n" "Language-Team: Portuguese (Brazil) \n" @@ -122,7 +122,7 @@ msgstr "Usuário" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Convidar" @@ -159,7 +159,7 @@ msgstr "Selecionar" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "Buscar mensagens" msgid "Members" msgstr "Membros" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Conectando…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "Iniciar" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Juntar-se a um Canal" @@ -279,7 +283,7 @@ msgstr "Próximo" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Juntar-se" @@ -346,7 +350,7 @@ msgstr "Adicionar" msgid "Keyboard Shortcuts" msgstr "Atalhos de Teclado" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Sobre Dino" diff --git a/main/po/ro.po b/main/po/ro.po index 935b24ee..70d07255 100644 --- a/main/po/ro.po +++ b/main/po/ro.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-04 09:55+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: Romanian \n" "Language: ro\n" @@ -125,7 +125,7 @@ msgstr "Utilizator" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Invită" @@ -162,7 +162,7 @@ msgstr "Selectare" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -203,55 +203,59 @@ msgstr "Caută mesaje" msgid "Members" msgstr "Membri" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Se apelează…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Sună…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Conectare…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s a încheiat apelul" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s a refuzat apelul" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Camere" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Nici o cameră găsită." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Microfoane" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Nici un microfon găsit." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Difuzoare" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Nici un difuzor găsit." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Invitați la apel" @@ -266,7 +270,7 @@ msgid "Start" msgstr "Pornire" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Alăturați-vă canalului" @@ -282,7 +286,7 @@ msgstr "Următorul" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Alăturați-vă" @@ -349,7 +353,7 @@ msgstr "Adaugă" msgid "Keyboard Shortcuts" msgstr "Scurtături de tastatură" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Despre Dino" @@ -381,13 +385,13 @@ msgstr "Apel video primit" #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming video group call" -msgstr "" +msgstr "Apel de grup video primit" #: main/src/ui/notifier_gnotifications.vala:72 #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming group call" -msgstr "" +msgstr "Apelul de grup primit" #: main/src/ui/notifier_gnotifications.vala:80 #: main/src/ui/notifier_freedesktop.vala:123 diff --git a/main/po/ru.po b/main/po/ru.po index a8d01840..699516cc 100644 --- a/main/po/ru.po +++ b/main/po/ru.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-02-06 17:57+0000\n" "Language-Team: Russian \n" @@ -15,8 +15,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 4.11-dev\n" #: main/src/ui/file_send_overlay.vala:85 @@ -125,7 +125,7 @@ msgstr "Пользователь" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Пригласить" @@ -162,7 +162,7 @@ msgstr "Выбрать" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -203,26 +203,30 @@ msgstr "Поиск сообщений" msgid "Members" msgstr "Участники" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Звонок…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Звонок…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Подключение…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s завершил(а) звонок" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s отклонил(а) звонок" @@ -243,15 +247,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 #, fuzzy msgid "Invite to Call" msgstr "Пригласить на звонок" @@ -267,7 +271,7 @@ msgid "Start" msgstr "Начать" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Войти в канал" @@ -283,7 +287,7 @@ msgstr "Далее" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Войти" @@ -350,7 +354,7 @@ msgstr "Добавить" msgid "Keyboard Shortcuts" msgstr "Горячие клавиши" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "О Dino" diff --git a/main/po/sq.po b/main/po/sq.po index 444789c0..8f3b1428 100644 --- a/main/po/sq.po +++ b/main/po/sq.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-02-06 17:57+0000\n" "Language-Team: none\n" "Language: sq\n" @@ -122,7 +122,7 @@ msgstr "Përdorues" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Ftoje" @@ -159,7 +159,7 @@ msgstr "Përzgjidhe" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "Kërko te mesazhet" msgid "Members" msgstr "Anëtarë" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Po thirret…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Po i bihet ziles…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Po lidhet…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s përfundoi thirrjen" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s s’pranoi thirrjen" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Ftoni për Thirrje" @@ -263,7 +267,7 @@ msgid "Start" msgstr "Fillo" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Hyni në Kanal" @@ -279,7 +283,7 @@ msgstr "Pasuesi" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Merrni pjesë" @@ -346,7 +350,7 @@ msgstr "Shto" msgid "Keyboard Shortcuts" msgstr "Shkurtore Tastiere" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Mbi Dino-s" diff --git a/main/po/sv.po b/main/po/sv.po index e20329a4..c969969d 100644 --- a/main/po/sv.po +++ b/main/po/sv.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-04 09:55+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: none\n" "Language: sv\n" "MIME-Version: 1.0\n" @@ -122,7 +122,7 @@ msgstr "Användare" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Bjud in" @@ -159,7 +159,7 @@ msgstr "Välj" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,55 +200,59 @@ msgstr "Sök meddelanden" msgid "Members" msgstr "Medlemmar" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Ringer…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Ringer…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Ansluter…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s avslutade samtalet" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s avvisade samtalet" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Kameror" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Ingen kamera hittades." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Mikrofoner" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Ingen mikrofon hittades." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Högtalare" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Ingen högtalare hittades." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Bjud in till samtal" @@ -263,7 +267,7 @@ msgid "Start" msgstr "Starta" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Gå med i kanal" @@ -279,7 +283,7 @@ msgstr "Nästa" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Gå med" @@ -346,7 +350,7 @@ msgstr "Lägg till" msgid "Keyboard Shortcuts" msgstr "Snabbkommandon" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Om Dino" @@ -377,13 +381,13 @@ msgstr "Inkommande videosamtal" #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming video group call" -msgstr "" +msgstr "Inkommande videogruppsamtal" #: main/src/ui/notifier_gnotifications.vala:72 #: main/src/ui/notifier_freedesktop.vala:115 #: main/src/ui/conversation_content_view/call_widget.vala:130 msgid "Incoming group call" -msgstr "" +msgstr "Inkommande gruppsamtal" #: main/src/ui/notifier_gnotifications.vala:80 #: main/src/ui/notifier_freedesktop.vala:123 diff --git a/main/po/ta.po b/main/po/ta.po index 642751d3..6f41ff7b 100644 --- a/main/po/ta.po +++ b/main/po/ta.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-04-16 20:11+0000\n" "Language-Team: none\n" "Language: ta\n" @@ -122,7 +122,7 @@ msgstr "" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "" @@ -159,7 +159,7 @@ msgstr "" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "" @@ -279,7 +283,7 @@ msgstr "" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "" @@ -346,7 +350,7 @@ msgstr "" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/tr.po b/main/po/tr.po index a6daeafb..1a53af43 100644 --- a/main/po/tr.po +++ b/main/po/tr.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" -"PO-Revision-Date: 2022-02-08 21:14+0000\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" +"PO-Revision-Date: 2022-02-11 18:58+0000\n" "Language-Team: none\n" "Language: tr\n" "MIME-Version: 1.0\n" @@ -122,7 +122,7 @@ msgstr "Kullanıcı" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Davet et" @@ -159,7 +159,7 @@ msgstr "Seç" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,55 +200,59 @@ msgstr "Mesajları ara" msgid "Members" msgstr "Üyeler" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "Aranıyor…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "Çalıyor…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "Bağlanıyor…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s aramayı sonlandırdı" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s aramayı reddetti" #: main/src/ui/call_window/video_settings_popover.vala:25 msgid "Cameras" -msgstr "" +msgstr "Kameralar" #: main/src/ui/call_window/video_settings_popover.vala:28 msgid "No camera found." -msgstr "" +msgstr "Kamera bulunamadı." #: main/src/ui/call_window/audio_settings_popover.vala:29 msgid "Microphones" -msgstr "" +msgstr "Mikrofonlar" #: main/src/ui/call_window/audio_settings_popover.vala:32 msgid "No microphone found." -msgstr "" +msgstr "Mikrofon bulunamadı." -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" -msgstr "" +msgstr "Hoparlörler" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." -msgstr "" +msgstr "Hoparlör bulunamadı." -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "Aramaya Davet Et" @@ -263,7 +267,7 @@ msgid "Start" msgstr "Başla" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Kanala katıl" @@ -279,7 +283,7 @@ msgstr "İleri" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Katıl" @@ -346,7 +350,7 @@ msgstr "Ekle" msgid "Keyboard Shortcuts" msgstr "Klavye Kısayolları" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "Dino Hakkında" diff --git a/main/po/uk.po b/main/po/uk.po index aaf42f7c..c94e372e 100644 --- a/main/po/uk.po +++ b/main/po/uk.po @@ -7,15 +7,15 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-12-31 17:29+0000\n" "Language-Team: none\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 4.4.1-dev\n" #: main/src/ui/file_send_overlay.vala:85 @@ -124,7 +124,7 @@ msgstr "Користувач" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "Запросити" @@ -161,7 +161,7 @@ msgstr "Вибрати" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -202,26 +202,30 @@ msgstr "" msgid "Members" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "З'єднання…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -242,15 +246,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -265,7 +269,7 @@ msgid "Start" msgstr "Почати" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "Приєднатись до каналу" @@ -281,7 +285,7 @@ msgstr "Далі" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "Приєднатися" @@ -348,7 +352,7 @@ msgstr "Додати" msgid "Keyboard Shortcuts" msgstr "" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "" diff --git a/main/po/zh_CN.po b/main/po/zh_CN.po index b84e95ed..9aa66fee 100644 --- a/main/po/zh_CN.po +++ b/main/po/zh_CN.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: dino\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-11-11 13:51+0000\n" "Language-Team: Chinese (Simplified) \n" @@ -122,7 +122,7 @@ msgstr "用户" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "邀请" @@ -159,7 +159,7 @@ msgstr "选择" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -200,26 +200,30 @@ msgstr "搜索消息" msgid "Members" msgstr "成员" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "正在呼叫…" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "对方已响铃…" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "连接中…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "%s 结束了通话" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "%s 拒绝了通话" @@ -240,15 +244,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -263,7 +267,7 @@ msgid "Start" msgstr "开始" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "加入频道" @@ -279,7 +283,7 @@ msgstr "下一个" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "加入" @@ -346,7 +350,7 @@ msgstr "添加" msgid "Keyboard Shortcuts" msgstr "键盘快捷键" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "关于 Dino" diff --git a/main/po/zh_TW.po b/main/po/zh_TW.po index 50f5e441..df01e9fd 100644 --- a/main/po/zh_TW.po +++ b/main/po/zh_TW.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-12-10 19:29+0000\n" "Language-Team: none\n" "Language: zh_TW\n" @@ -121,7 +121,7 @@ msgstr "使用者" #: main/src/ui/occupant_menu/view.vala:28 #: main/src/ui/occupant_menu/view.vala:146 -#: main/src/ui/call_window/call_window_controller.vala:102 +#: main/src/ui/call_window/call_window_controller.vala:129 msgid "Invite" msgstr "邀請" @@ -158,7 +158,7 @@ msgstr "選擇" #: main/src/ui/add_conversation/select_contact_dialog.vala:38 #: main/src/ui/add_conversation/add_conference_dialog.vala:15 #: main/src/ui/add_conversation/add_conference_dialog.vala:122 -#: main/src/ui/application.vala:307 main/src/ui/manage_accounts/dialog.vala:152 +#: main/src/ui/application.vala:308 main/src/ui/manage_accounts/dialog.vala:152 #: main/data/message_item_widget_edit_mode.ui:54 #: main/data/add_conversation/add_groupchat_dialog.ui:11 #: main/data/add_conversation/add_contact_dialog.ui:12 @@ -199,26 +199,30 @@ msgstr "搜尋訊息" msgid "Members" msgstr "會員" -#: main/src/ui/call_window/participant_widget.vala:104 +#: main/src/ui/call_window/participant_widget.vala:96 +msgid "Debug information" +msgstr "" + +#: main/src/ui/call_window/participant_widget.vala:105 #: main/src/ui/conversation_content_view/call_widget.vala:143 msgid "Calling…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:106 +#: main/src/ui/call_window/participant_widget.vala:107 msgid "Ringing…" msgstr "" -#: main/src/ui/call_window/participant_widget.vala:108 +#: main/src/ui/call_window/participant_widget.vala:109 #: main/src/ui/manage_accounts/dialog.vala:219 msgid "Connecting…" msgstr "正在連線…" -#: main/src/ui/call_window/call_window.vala:188 +#: main/src/ui/call_window/call_window.vala:181 #, c-format msgid "%s ended the call" msgstr "" -#: main/src/ui/call_window/call_window.vala:190 +#: main/src/ui/call_window/call_window.vala:183 #, c-format msgid "%s declined the call" msgstr "" @@ -239,15 +243,15 @@ msgstr "" msgid "No microphone found." msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:83 +#: main/src/ui/call_window/audio_settings_popover.vala:85 msgid "Speakers" msgstr "" -#: main/src/ui/call_window/audio_settings_popover.vala:86 +#: main/src/ui/call_window/audio_settings_popover.vala:88 msgid "No speaker found." msgstr "" -#: main/src/ui/call_window/call_window_controller.vala:101 +#: main/src/ui/call_window/call_window_controller.vala:128 msgid "Invite to Call" msgstr "" @@ -262,7 +266,7 @@ msgid "Start" msgstr "開始" #: main/src/ui/add_conversation/add_conference_dialog.vala:26 -#: main/src/ui/application.vala:307 main/data/menu_add.ui:13 +#: main/src/ui/application.vala:308 main/data/menu_add.ui:13 #: main/data/shortcuts.ui:24 msgid "Join Channel" msgstr "加入聊天室" @@ -278,7 +282,7 @@ msgstr "下一個" #: main/src/ui/add_conversation/add_conference_dialog.vala:66 #: main/src/ui/add_conversation/add_conference_dialog.vala:142 #: main/src/ui/add_conversation/conference_details_fragment.vala:157 -#: main/src/ui/application.vala:307 +#: main/src/ui/application.vala:308 msgid "Join" msgstr "加入" @@ -345,7 +349,7 @@ msgstr "新增" msgid "Keyboard Shortcuts" msgstr "鍵盤快捷鍵" -#: main/src/ui/application.vala:283 main/data/menu_app.ui:21 +#: main/src/ui/application.vala:284 main/data/menu_app.ui:21 msgid "About Dino" msgstr "關於 Dino" diff --git a/plugins/omemo/po/ar.po b/plugins/omemo/po/ar.po index d4125b3b..6a7d3d47 100644 --- a/plugins/omemo/po/ar.po +++ b/plugins/omemo/po/ar.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-08-31 23:44+0000\n" "Language-Team: Arabic \n" diff --git a/plugins/omemo/po/ca.po b/plugins/omemo/po/ca.po index ab1fc79f..e35e5147 100644 --- a/plugins/omemo/po/ca.po +++ b/plugins/omemo/po/ca.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-omemo 20180123\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-01-14 05:21+0000\n" "Language-Team: Catalan \n" "Language: ca\n" diff --git a/plugins/omemo/po/cs.po b/plugins/omemo/po/cs.po index 459c6f4b..6810b3c2 100644 --- a/plugins/omemo/po/cs.po +++ b/plugins/omemo/po/cs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-07-05 16:32+0000\n" "Language-Team: none\n" "Language: cs\n" diff --git a/plugins/omemo/po/de.po b/plugins/omemo/po/de.po index 97d7e660..2a300eba 100644 --- a/plugins/omemo/po/de.po +++ b/plugins/omemo/po/de.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-omemo-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-10 10:49+0000\n" "Language-Team: German \n" diff --git a/plugins/omemo/po/dino-omemo.pot b/plugins/omemo/po/dino-omemo.pot index a2a49f19..3cda02bb 100644 --- a/plugins/omemo/po/dino-omemo.pot +++ b/plugins/omemo/po/dino-omemo.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/plugins/omemo/po/el.po b/plugins/omemo/po/el.po index b49ee02c..f4730011 100644 --- a/plugins/omemo/po/el.po +++ b/plugins/omemo/po/el.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-02-04 09:55+0000\n" "Language-Team: none\n" "Language: el\n" diff --git a/plugins/omemo/po/en.po b/plugins/omemo/po/en.po index 260783c7..3f1782cd 100644 --- a/plugins/omemo/po/en.po +++ b/plugins/omemo/po/en.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-omemo-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/plugins/omemo/po/eo.po b/plugins/omemo/po/eo.po index e1610d41..b3f78154 100644 --- a/plugins/omemo/po/eo.po +++ b/plugins/omemo/po/eo.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-03-08 22:02+0000\n" "Language-Team: none\n" "Language: eo\n" diff --git a/plugins/omemo/po/es.po b/plugins/omemo/po/es.po index 806122b6..f4a4bd7e 100644 --- a/plugins/omemo/po/es.po +++ b/plugins/omemo/po/es.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-11-16 22:33+0000\n" "Language-Team: Spanish \n" diff --git a/plugins/omemo/po/eu.po b/plugins/omemo/po/eu.po index 1eaa3783..4eb57d19 100644 --- a/plugins/omemo/po/eu.po +++ b/plugins/omemo/po/eu.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-01-17 17:56+0000\n" "Language-Team: Basque \n" diff --git a/plugins/omemo/po/fa.po b/plugins/omemo/po/fa.po index 367bfa73..e1b53732 100644 --- a/plugins/omemo/po/fa.po +++ b/plugins/omemo/po/fa.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-08-10 03:32+0000\n" "Language-Team: none\n" "Language: fa\n" diff --git a/plugins/omemo/po/fi.po b/plugins/omemo/po/fi.po index 4dd938af..36c5a828 100644 --- a/plugins/omemo/po/fi.po +++ b/plugins/omemo/po/fi.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-04-12 20:01+0000\n" "Language-Team: none\n" "Language: fi\n" diff --git a/plugins/omemo/po/fr.po b/plugins/omemo/po/fr.po index 510eb7f3..5cf23ff8 100644 --- a/plugins/omemo/po/fr.po +++ b/plugins/omemo/po/fr.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-11-12 17:21+0000\n" "Language-Team: French \n" diff --git a/plugins/omemo/po/gl.po b/plugins/omemo/po/gl.po index 3046cca7..eb9d8e3c 100644 --- a/plugins/omemo/po/gl.po +++ b/plugins/omemo/po/gl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-10 10:49+0000\n" "Language-Team: Galician \n" diff --git a/plugins/omemo/po/hu.po b/plugins/omemo/po/hu.po index d9e7d66a..5380090b 100644 --- a/plugins/omemo/po/hu.po +++ b/plugins/omemo/po/hu.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-12-07 00:53+0000\n" "Language-Team: Hungarian \n" diff --git a/plugins/omemo/po/id.po b/plugins/omemo/po/id.po index 9789b4c9..071f9b4a 100644 --- a/plugins/omemo/po/id.po +++ b/plugins/omemo/po/id.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-01-10 15:32+0000\n" "Language-Team: none\n" "Language: id\n" diff --git a/plugins/omemo/po/ie.po b/plugins/omemo/po/ie.po index 5972181e..28102977 100644 --- a/plugins/omemo/po/ie.po +++ b/plugins/omemo/po/ie.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-03-01 10:50+0000\n" "Language-Team: none\n" "Language: ie\n" diff --git a/plugins/omemo/po/it.po b/plugins/omemo/po/it.po index 9a40d8d7..39da8cdc 100644 --- a/plugins/omemo/po/it.po +++ b/plugins/omemo/po/it.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-omemo-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-11-25 11:28+0000\n" "Language-Team: Italian \n" diff --git a/plugins/omemo/po/ja.po b/plugins/omemo/po/ja.po index f75c68ac..9f628303 100644 --- a/plugins/omemo/po/ja.po +++ b/plugins/omemo/po/ja.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-10 10:49+0000\n" "Language-Team: none\n" "Language: ja\n" diff --git a/plugins/omemo/po/lb.po b/plugins/omemo/po/lb.po index ffde841b..d108e0a6 100644 --- a/plugins/omemo/po/lb.po +++ b/plugins/omemo/po/lb.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-omemo-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-04-12 20:01+0000\n" "Language-Team: Luxembourgish \n" diff --git a/plugins/omemo/po/lt.po b/plugins/omemo/po/lt.po index 36215315..b910c45f 100644 --- a/plugins/omemo/po/lt.po +++ b/plugins/omemo/po/lt.po @@ -7,15 +7,15 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-11-21 18:29+0000\n" "Language-Team: none\n" "Language: lt\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" -"%100<10 || n%100>=20) ? 1 : 2);\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"(n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Weblate 4.4-dev\n" #: plugins/omemo/src/ui/bad_messages_populator.vala:157 diff --git a/plugins/omemo/po/nb.po b/plugins/omemo/po/nb.po index 6cafc158..9fb8a1a4 100644 --- a/plugins/omemo/po/nb.po +++ b/plugins/omemo/po/nb.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-10 10:49+0000\n" "Language-Team: Norwegian Bokmål \n" diff --git a/plugins/omemo/po/nl.po b/plugins/omemo/po/nl.po index 74658f5f..dbdb6e69 100644 --- a/plugins/omemo/po/nl.po +++ b/plugins/omemo/po/nl.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-omemo-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-10 10:49+0000\n" "Language-Team: Dutch \n" diff --git a/plugins/omemo/po/nl_BE.po b/plugins/omemo/po/nl_BE.po index 857f0be1..39abbb2e 100644 --- a/plugins/omemo/po/nl_BE.po +++ b/plugins/omemo/po/nl_BE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2019-01-12 20:06+0000\n" "Language-Team: Flemish \n" diff --git a/plugins/omemo/po/oc.po b/plugins/omemo/po/oc.po index 2607d8e9..a58f7a07 100644 --- a/plugins/omemo/po/oc.po +++ b/plugins/omemo/po/oc.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-11-03 11:26+0000\n" "Language-Team: none\n" "Language: oc\n" diff --git a/plugins/omemo/po/pl.po b/plugins/omemo/po/pl.po index baad35ac..1ba1df3d 100644 --- a/plugins/omemo/po/pl.po +++ b/plugins/omemo/po/pl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-01-20 15:56+0000\n" "Language-Team: Polish \n" diff --git a/plugins/omemo/po/pt.po b/plugins/omemo/po/pt.po index 4dbc83f7..4166d5b2 100644 --- a/plugins/omemo/po/pt.po +++ b/plugins/omemo/po/pt.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-05-10 09:33+0000\n" "Language-Team: none\n" "Language: pt\n" diff --git a/plugins/omemo/po/pt_BR.po b/plugins/omemo/po/pt_BR.po index 11434cb8..a792f9bb 100644 --- a/plugins/omemo/po/pt_BR.po +++ b/plugins/omemo/po/pt_BR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-22 03:26+0000\n" "Language-Team: none\n" "Language: pt_BR\n" diff --git a/plugins/omemo/po/ro.po b/plugins/omemo/po/ro.po index 9cc60138..48836bac 100644 --- a/plugins/omemo/po/ro.po +++ b/plugins/omemo/po/ro.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-13 09:26+0000\n" "Language-Team: Romanian \n" diff --git a/plugins/omemo/po/ru.po b/plugins/omemo/po/ru.po index 36ef7d63..1f3fa526 100644 --- a/plugins/omemo/po/ru.po +++ b/plugins/omemo/po/ru.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-10 10:49+0000\n" "Language-Team: Russian \n" @@ -15,8 +15,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 4.3-dev\n" #: plugins/omemo/src/ui/bad_messages_populator.vala:157 diff --git a/plugins/omemo/po/sq.po b/plugins/omemo/po/sq.po index ae211ae5..fe91a112 100644 --- a/plugins/omemo/po/sq.po +++ b/plugins/omemo/po/sq.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-03-04 15:20+0000\n" "Language-Team: none\n" "Language: sq\n" diff --git a/plugins/omemo/po/sv.po b/plugins/omemo/po/sv.po index 99a0a720..953c7d27 100644 --- a/plugins/omemo/po/sv.po +++ b/plugins/omemo/po/sv.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-03-05 16:50+0000\n" "Language-Team: none\n" "Language: sv\n" diff --git a/plugins/omemo/po/tr.po b/plugins/omemo/po/tr.po index 61b3775d..4ab6aab3 100644 --- a/plugins/omemo/po/tr.po +++ b/plugins/omemo/po/tr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-07-30 08:33+0000\n" "Language-Team: none\n" "Language: tr\n" diff --git a/plugins/omemo/po/uk.po b/plugins/omemo/po/uk.po index c75d1490..36df9180 100644 --- a/plugins/omemo/po/uk.po +++ b/plugins/omemo/po/uk.po @@ -7,15 +7,15 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-12-31 17:29+0000\n" "Language-Team: none\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 4.4.1-dev\n" #: plugins/omemo/src/ui/bad_messages_populator.vala:157 diff --git a/plugins/omemo/po/zh_CN.po b/plugins/omemo/po/zh_CN.po index 851b2faa..001b8a96 100644 --- a/plugins/omemo/po/zh_CN.po +++ b/plugins/omemo/po/zh_CN.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-omemo-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-10-26 14:26+0000\n" "Language-Team: Chinese (Simplified) \n" diff --git a/plugins/omemo/po/zh_TW.po b/plugins/omemo/po/zh_TW.po index 7e6b0197..18886476 100644 --- a/plugins/omemo/po/zh_TW.po +++ b/plugins/omemo/po/zh_TW.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-11-24 05:28+0000\n" "Language-Team: Chinese (Traditional) \n" diff --git a/plugins/openpgp/po/ar.po b/plugins/openpgp/po/ar.po index d27364e4..5b5ed5f8 100644 --- a/plugins/openpgp/po/ar.po +++ b/plugins/openpgp/po/ar.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-10-23 17:22+0000\n" "Language-Team: Arabic \n" diff --git a/plugins/openpgp/po/ca.po b/plugins/openpgp/po/ca.po index 8f1e0176..3ae8ad54 100644 --- a/plugins/openpgp/po/ca.po +++ b/plugins/openpgp/po/ca.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-openpgp 20180123\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-01-24 11:24+0100\n" "Language-Team: Catalan \n" "Language: ca\n" diff --git a/plugins/openpgp/po/cs.po b/plugins/openpgp/po/cs.po index 8cccc057..7ea9693f 100644 --- a/plugins/openpgp/po/cs.po +++ b/plugins/openpgp/po/cs.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-08-21 05:36+0000\n" "Language-Team: none\n" "Language: cs\n" diff --git a/plugins/openpgp/po/de.po b/plugins/openpgp/po/de.po index 7b814c9f..345fee2e 100644 --- a/plugins/openpgp/po/de.po +++ b/plugins/openpgp/po/de.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-openpgp-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-04-16 20:11+0000\n" "Language-Team: German \n" diff --git a/plugins/openpgp/po/dino-openpgp.pot b/plugins/openpgp/po/dino-openpgp.pot index 8c18b61f..8031eb26 100644 --- a/plugins/openpgp/po/dino-openpgp.pot +++ b/plugins/openpgp/po/dino-openpgp.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" diff --git a/plugins/openpgp/po/el.po b/plugins/openpgp/po/el.po index 71f15825..2762d215 100644 --- a/plugins/openpgp/po/el.po +++ b/plugins/openpgp/po/el.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2022-02-04 09:55+0000\n" "Language-Team: none\n" "Language: el\n" diff --git a/plugins/openpgp/po/en.po b/plugins/openpgp/po/en.po index 45f77fb3..bf67d97e 100644 --- a/plugins/openpgp/po/en.po +++ b/plugins/openpgp/po/en.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-openpgp-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "Language: en\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" diff --git a/plugins/openpgp/po/eo.po b/plugins/openpgp/po/eo.po index 98a1ba9f..560ae6a5 100644 --- a/plugins/openpgp/po/eo.po +++ b/plugins/openpgp/po/eo.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-03-08 22:02+0000\n" "Language-Team: none\n" "Language: eo\n" diff --git a/plugins/openpgp/po/es.po b/plugins/openpgp/po/es.po index 4b812228..69295eff 100644 --- a/plugins/openpgp/po/es.po +++ b/plugins/openpgp/po/es.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-11-19 08:07+0000\n" "Language-Team: Spanish \n" diff --git a/plugins/openpgp/po/eu.po b/plugins/openpgp/po/eu.po index 5560d9ff..17f0cb73 100644 --- a/plugins/openpgp/po/eu.po +++ b/plugins/openpgp/po/eu.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-04-03 15:27+0000\n" "Language-Team: Basque \n" diff --git a/plugins/openpgp/po/fa.po b/plugins/openpgp/po/fa.po index f416680c..70b851a4 100644 --- a/plugins/openpgp/po/fa.po +++ b/plugins/openpgp/po/fa.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-04-26 15:32+0000\n" "Language-Team: none\n" "Language: fa\n" diff --git a/plugins/openpgp/po/fi.po b/plugins/openpgp/po/fi.po index 2eb79029..dec5e6d3 100644 --- a/plugins/openpgp/po/fi.po +++ b/plugins/openpgp/po/fi.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-09-02 00:45+0000\n" "Language-Team: none\n" "Language: fi\n" diff --git a/plugins/openpgp/po/fr.po b/plugins/openpgp/po/fr.po index b2bd0d37..fc5aeb09 100644 --- a/plugins/openpgp/po/fr.po +++ b/plugins/openpgp/po/fr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-11-12 17:21+0000\n" "Language-Team: French \n" diff --git a/plugins/openpgp/po/gl.po b/plugins/openpgp/po/gl.po index 3eea7012..d53027b3 100644 --- a/plugins/openpgp/po/gl.po +++ b/plugins/openpgp/po/gl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-02-07 10:50+0000\n" "Language-Team: Galician \n" diff --git a/plugins/openpgp/po/hu.po b/plugins/openpgp/po/hu.po index 26db8125..1fc8cbe7 100644 --- a/plugins/openpgp/po/hu.po +++ b/plugins/openpgp/po/hu.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-12-05 01:51+0000\n" "Language-Team: Hungarian \n" diff --git a/plugins/openpgp/po/id.po b/plugins/openpgp/po/id.po index 5ebb9ed4..61794043 100644 --- a/plugins/openpgp/po/id.po +++ b/plugins/openpgp/po/id.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-01-09 11:43+0000\n" "Language-Team: none\n" "Language: id\n" diff --git a/plugins/openpgp/po/ie.po b/plugins/openpgp/po/ie.po index be705d24..9f2a236e 100644 --- a/plugins/openpgp/po/ie.po +++ b/plugins/openpgp/po/ie.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-02-04 16:50+0000\n" "Language-Team: none\n" "Language: ie\n" diff --git a/plugins/openpgp/po/it.po b/plugins/openpgp/po/it.po index ea48d266..cc4c0c4b 100644 --- a/plugins/openpgp/po/it.po +++ b/plugins/openpgp/po/it.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-openpgp-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-01-24 12:18+0000\n" "Language-Team: Italian \n" diff --git a/plugins/openpgp/po/ja.po b/plugins/openpgp/po/ja.po index a29e21e0..7da47502 100644 --- a/plugins/openpgp/po/ja.po +++ b/plugins/openpgp/po/ja.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-01-28 23:24+0000\n" "Language-Team: none\n" "Language: ja\n" diff --git a/plugins/openpgp/po/lb.po b/plugins/openpgp/po/lb.po index f02bb84d..abb6a2ef 100644 --- a/plugins/openpgp/po/lb.po +++ b/plugins/openpgp/po/lb.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-openpgp-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-01-24 12:20+0000\n" "Language-Team: Luxembourgish \n" diff --git a/plugins/openpgp/po/lt.po b/plugins/openpgp/po/lt.po index 28d18843..62c0646c 100644 --- a/plugins/openpgp/po/lt.po +++ b/plugins/openpgp/po/lt.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-02-01 15:50+0000\n" "Language-Team: none\n" "Language: lt\n" diff --git a/plugins/openpgp/po/nb.po b/plugins/openpgp/po/nb.po index ee1ba6c8..7efe2384 100644 --- a/plugins/openpgp/po/nb.po +++ b/plugins/openpgp/po/nb.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2017-11-18 00:23+0000\n" "Language-Team: Norwegian Bokmål \n" diff --git a/plugins/openpgp/po/nl.po b/plugins/openpgp/po/nl.po index 07667275..cda00951 100644 --- a/plugins/openpgp/po/nl.po +++ b/plugins/openpgp/po/nl.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-openpgp-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-09-05 19:21+0000\n" "Language-Team: Dutch \n" diff --git a/plugins/openpgp/po/nl_BE.po b/plugins/openpgp/po/nl_BE.po index 88ff1093..a2101f42 100644 --- a/plugins/openpgp/po/nl_BE.po +++ b/plugins/openpgp/po/nl_BE.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-12-26 15:08+0000\n" "Language-Team: Flemish \n" diff --git a/plugins/openpgp/po/oc.po b/plugins/openpgp/po/oc.po index bf9c490a..04266361 100644 --- a/plugins/openpgp/po/oc.po +++ b/plugins/openpgp/po/oc.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-06-22 10:41+0000\n" "Language-Team: none\n" "Language: oc\n" diff --git a/plugins/openpgp/po/pl.po b/plugins/openpgp/po/pl.po index 4621d28f..b1616d97 100644 --- a/plugins/openpgp/po/pl.po +++ b/plugins/openpgp/po/pl.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-05-13 18:41+0000\n" "Language-Team: Polish \n" diff --git a/plugins/openpgp/po/pt.po b/plugins/openpgp/po/pt.po index a63e63b7..2682e850 100644 --- a/plugins/openpgp/po/pt.po +++ b/plugins/openpgp/po/pt.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-08-23 21:36+0000\n" "Language-Team: none\n" "Language: pt\n" diff --git a/plugins/openpgp/po/pt_BR.po b/plugins/openpgp/po/pt_BR.po index 7bb6baca..e1fae4d4 100644 --- a/plugins/openpgp/po/pt_BR.po +++ b/plugins/openpgp/po/pt_BR.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-01-16 00:21+0000\n" "Language-Team: none\n" "Language: pt_BR\n" diff --git a/plugins/openpgp/po/ro.po b/plugins/openpgp/po/ro.po index 61c9a420..b879eb06 100644 --- a/plugins/openpgp/po/ro.po +++ b/plugins/openpgp/po/ro.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-01-12 23:14+0000\n" "Language-Team: Romanian \n" diff --git a/plugins/openpgp/po/ru.po b/plugins/openpgp/po/ru.po index 38284867..9d759897 100644 --- a/plugins/openpgp/po/ru.po +++ b/plugins/openpgp/po/ru.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-06-02 11:41+0000\n" "Language-Team: Russian \n" @@ -15,8 +15,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 4.1-dev\n" #: plugins/openpgp/src/account_settings_widget.vala:60 diff --git a/plugins/openpgp/po/sq.po b/plugins/openpgp/po/sq.po index 52c3e33e..a5869514 100644 --- a/plugins/openpgp/po/sq.po +++ b/plugins/openpgp/po/sq.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2021-03-04 15:20+0000\n" "Language-Team: none\n" "Language: sq\n" diff --git a/plugins/openpgp/po/sv.po b/plugins/openpgp/po/sv.po index f2d48242..c20e7944 100644 --- a/plugins/openpgp/po/sv.po +++ b/plugins/openpgp/po/sv.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2019-08-14 11:23+0000\n" "Language-Team: none\n" "Language: sv\n" diff --git a/plugins/openpgp/po/tr.po b/plugins/openpgp/po/tr.po index 5fb1f7e8..46650281 100644 --- a/plugins/openpgp/po/tr.po +++ b/plugins/openpgp/po/tr.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-02-04 16:50+0000\n" "Language-Team: none\n" "Language: tr\n" diff --git a/plugins/openpgp/po/uk.po b/plugins/openpgp/po/uk.po index 189f9cff..0ec705f7 100644 --- a/plugins/openpgp/po/uk.po +++ b/plugins/openpgp/po/uk.po @@ -7,15 +7,15 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-12-31 17:29+0000\n" "Language-Team: none\n" "Language: uk\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" -"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " +"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "X-Generator: Weblate 4.4.1-dev\n" #: plugins/openpgp/src/account_settings_widget.vala:60 diff --git a/plugins/openpgp/po/zh_CN.po b/plugins/openpgp/po/zh_CN.po index a0bf1194..c1c9e80f 100644 --- a/plugins/openpgp/po/zh_CN.po +++ b/plugins/openpgp/po/zh_CN.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: dino-omemo-0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2018-05-08 09:42+0000\n" "Language-Team: Chinese (Simplified) \n" diff --git a/plugins/openpgp/po/zh_TW.po b/plugins/openpgp/po/zh_TW.po index 3401d899..b337c8cf 100644 --- a/plugins/openpgp/po/zh_TW.po +++ b/plugins/openpgp/po/zh_TW.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-02-08 22:15+0100\n" +"POT-Creation-Date: 2022-02-12 22:06+0100\n" "PO-Revision-Date: 2020-11-24 05:28+0000\n" "Language-Team: Chinese (Traditional) \n" From 9838d5679470d1add098accaeae8eaf0ee3c58ee Mon Sep 17 00:00:00 2001 From: fiaxh Date: Sat, 12 Feb 2022 22:18:06 +0100 Subject: [PATCH 16/19] Prepare for 0.3 release --- libdino/src/service/call_state.vala | 2 +- main/data/im.dino.Dino.appdata.xml | 8 ++++---- main/data/im.dino.Dino.appdata.xml.in | 8 ++++---- main/src/ui/application.vala | 1 + 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/libdino/src/service/call_state.vala b/libdino/src/service/call_state.vala index da97b792..65d33557 100644 --- a/libdino/src/service/call_state.vala +++ b/libdino/src/service/call_state.vala @@ -34,7 +34,7 @@ public class Dino.CallState : Object { this.call = call; this.stream_interactor = stream_interactor; - if (call.direction == Call.DIRECTION_OUTGOING && call.state != Call.State.OTHER_DEVICE && call.ourpart.equals(call.account.full_jid)) { + if (call.direction == Call.DIRECTION_OUTGOING && call.state != Call.State.OTHER_DEVICE) { accepted = true; Timeout.add_seconds(30, () => { diff --git a/main/data/im.dino.Dino.appdata.xml b/main/data/im.dino.Dino.appdata.xml index 0d121e48..bfa25803 100644 --- a/main/data/im.dino.Dino.appdata.xml +++ b/main/data/im.dino.Dino.appdata.xml @@ -140,14 +140,14 @@ - https://dino.im/img/appdata/main.png + https://dino.im/img/appdata/2022-02_screenshot-main.png + + + https://dino.im/img/appdata/2022-02_screenshot-call.png https://dino.im/img/appdata/start_chat.png - - https://dino.im/img/appdata/contact_details.png - dino Dino Development Team diff --git a/main/data/im.dino.Dino.appdata.xml.in b/main/data/im.dino.Dino.appdata.xml.in index c2b29725..c95ef12e 100644 --- a/main/data/im.dino.Dino.appdata.xml.in +++ b/main/data/im.dino.Dino.appdata.xml.in @@ -13,14 +13,14 @@ - https://dino.im/img/appdata/main.png + https://dino.im/img/appdata/2022-02_screenshot-main.png + + + https://dino.im/img/appdata/2022-02_screenshot-call.png https://dino.im/img/appdata/start_chat.png - - https://dino.im/img/appdata/contact_details.png - dino Dino Development Team diff --git a/main/src/ui/application.vala b/main/src/ui/application.vala index 62f01bcb..2fd5320e 100644 --- a/main/src/ui/application.vala +++ b/main/src/ui/application.vala @@ -274,6 +274,7 @@ public class Dino.Ui.Application : Gtk.Application, Dino.Application { if (version != null && !version.contains("git")) { switch (version.substring(0, 3)) { case "0.2": version = @"$version - Mexican Caribbean Coral Reefs"; break; + case "0.3": version = @"$version - Theikenmeer"; break; } } Gtk.AboutDialog dialog = new Gtk.AboutDialog(); From 3719fcbefbad037c0ffa82ab3f26c19f0a9b5f74 Mon Sep 17 00:00:00 2001 From: mjk Date: Sun, 13 Feb 2022 21:32:28 +0100 Subject: [PATCH 17/19] RTP: clarify codec support warning --- plugins/rtp/src/codec_util.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/rtp/src/codec_util.vala b/plugins/rtp/src/codec_util.vala index ac8c7f98..12fcfed7 100644 --- a/plugins/rtp/src/codec_util.vala +++ b/plugins/rtp/src/codec_util.vala @@ -295,7 +295,7 @@ public class Dino.Plugins.Rtp.CodecUtil { supported_elements.add(element_name); return true; } else { - warning("%s is not supported on this platform", element_name); + warning("%s is not installed or supported on this system", element_name); unsupported_elements.add(element_name); return false; } From 7b9e62b8dd83aaa0ee8dff6e6410d9e018ac6f0c Mon Sep 17 00:00:00 2001 From: Marvin W Date: Mon, 14 Feb 2022 01:23:49 +0100 Subject: [PATCH 18/19] Update DOAP file --- dino.doap | 42 ++++++++++++++++++++++++++++++++++++++++++ dino.doap.in | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) diff --git a/dino.doap b/dino.doap index f03fb035..ba5814e3 100644 --- a/dino.doap +++ b/dino.doap @@ -270,12 +270,23 @@ Only for viewing avatars + + + + + partial + + + + For use with XEP-0260 + + @@ -378,6 +389,11 @@ + + + + + @@ -422,6 +438,11 @@ + + + + + @@ -492,16 +513,37 @@ + + + + partial + + + + + + + complete + + + + + + + + + + diff --git a/dino.doap.in b/dino.doap.in index ba23a033..941fd11b 100644 --- a/dino.doap.in +++ b/dino.doap.in @@ -90,12 +90,23 @@ Only for viewing avatars + + + + + partial + + + + For use with XEP-0260 + + @@ -198,6 +209,11 @@ + + + + + @@ -242,6 +258,11 @@ + + + + + @@ -312,16 +333,37 @@ + + + + partial + + + + + + + complete + + + + + + + + + + From 1309d7e2e42a1fdced3127c641f108fb72cc2fdd Mon Sep 17 00:00:00 2001 From: fiaxh Date: Mon, 14 Feb 2022 23:49:45 +0100 Subject: [PATCH 19/19] Fix quote formating to not (partially) expect a space after > --- main/src/ui/util/helper.vala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main/src/ui/util/helper.vala b/main/src/ui/util/helper.vala index 51f0cc9c..427c2d3a 100644 --- a/main/src/ui/util/helper.vala +++ b/main/src/ui/util/helper.vala @@ -259,7 +259,7 @@ public static string parse_add_markup_theme(string s_, string? highlight_word, b theme_dependent = true; quote_match_info.fetch_pos(0, out start, out end); return parse_add_markup_theme(s[0:start], highlight_word, parse_links, parse_text_markup, parse_quotes, dark_theme, ref theme_dependent, already_escaped) + - @"$gt " + parse_add_markup_theme(s[start + gt.length + 1:end], highlight_word, parse_links, parse_text_markup, false, dark_theme, ref theme_dependent, already_escaped) + "" + + @"$gt" + parse_add_markup_theme(s[start + gt.length:end], highlight_word, parse_links, parse_text_markup, false, dark_theme, ref theme_dependent, already_escaped) + "" + parse_add_markup_theme(s[end:s.length], highlight_word, parse_links, parse_text_markup, parse_quotes, dark_theme, ref theme_dependent, already_escaped); } }