Commit graph

334 commits

Author SHA1 Message Date
Alexandre Jousset d6173ba850 XEP-0215: management of the field expires
Add a field in `Xmpp.Xep.ExternalServiceDiscovery` to keep track
of the `expires` TURN service value and use it (divided by 2) to
restart periodically the external services discovery.
2024-04-24 18:53:05 +03:00
Xavier Del Campo Romero 595902355e Show file upload/download progress
Fixes upstream issue #1350.

Notes:

Image uploads were incorrectly handled by Dino, as they were always
reported as completed even if they were not, maybe so as to show the
image preview from the start. Now, Dino shows the upload progress for
all file types, and the image is only shown when completed.

(cherry picked from commit 700708b7e10ce1110528a2b83b854fae3f6be95e)
2024-04-16 18:21:42 +03:00
Igor Sharonov c1d2e3647b meson: Support all tests from cmake
Unified test launch for both meson and cmake: make/ninja test.
Support tests for cmake through ctest.
Enable jid test in libdino.
Enable tests for win64 CI/CD.
2024-04-09 13:20:11 +03:00
eerielili e5302d1d9d Fix message stanza with body changing MUC subject (#1569)
- fixes https://github.com/dino/dino/issues/1542
            - more consistent with
              https://xmpp.org/extensions/xep-0045.html#enter-subject:
                    "Note: In accordance with the core definition of XML stanzas,
                    any message can contain a <subject/> element; only a message that
                    contains a <subject/> but no <body/> element shall be considered a
                    subject change for MUC purposes."
2024-04-01 17:48:43 +03:00
Vadim Lomovtsev 81253f28cc project-wide: build & run-time fixes
While using meson some issues were faced with link and application
startup. This commit is to put fixes for the following issues:

- missed conversation_details.css file;
  add conversation_details.css to the main/data/gresources.xml;
- the 'localtime_r' symbol  can't be found while linking application
  add POSIX_C_SOURCES=1 macro definition
- meson configure complains that xmpp-vala package version is not set
  set xmpp-vala version to 0.1
- application startup failures due to unresolved symbols while creating
  initial UI
   fix: put '--export-all-symbols' to the main/meson.build for mingw64 build
- segmentation fault while running app built by meson
  meson.build: add _WIN32 definefor vala compilation
- main/meson.build: add _FILE_OFFSET_BITS definition (sync with cmake
  cfg)
- main/meson.build: compile window resources (fix missed window icon)

Signed-off-by: Vadim Lomovtsev <jelezny@gmail.com>
2024-04-01 16:38:27 +03:00
Stanislav Malishevskiy 8e2a459eae Save password after succes change 2024-03-26 18:37:00 +03:00
Maxim Logaev e2075ed9fc Added support for changing password (#9)
* Fixed: server refuses to respond in any way to the sent iq stanza.
* Fix issue #261.

---------

Co-authored-by: Miquel Lionel <lionel@les-miquelots.net>
Co-authored-by: Stanislav Malishevskiy <stanislav.malishevskiy@gmail.com>
2024-03-19 11:31:57 +03:00
eerielili 4689fcb53c
Fix segfault opening conversation details when no XEP-0191 support (#1513)
fixes #1508
2023-12-10 13:28:22 +01:00
eerielili 85ea7e5008
Fix http upload for servers without file size limit (#1512)
* Fix for ejabberd XMPP server 'infinity' http upload file size announce

	- fixes https://github.com/dino/dino/issues/1222

* Update 0363_http_file_upload.vala
2023-11-24 22:13:57 +01:00
fiaxh 1e167eeea6 Fix some compiler warnings 2023-10-07 14:34:23 +02:00
fiaxh 0c45387bf9 Fix implicit-function-declaration compiler warnings 2023-10-07 13:56:38 +02:00
hrxi 62ed82a495 meson: Install more stuff
Install .vapi, .deps, .h files for the Vala libraries. Also install the
data files. .deps files have to be manually generated, there's a feature
request for automated generation at
https://github.com/mesonbuild/meson/issues/9756.

Import the gnome module globally.

Install dependencies on Meson CI.
2023-10-06 15:25:12 +02:00
fiaxh e2c34bf223 Rewrite contact details dialog 2023-09-24 19:54:04 +02:00
Marvin W 9eafe4139d Fix build on some Vala compiler versions
See https://gitlab.gnome.org/GNOME/vala/-/issues/1474 and https://gitlab.gnome.org/GNOME/vala/-/issues/1478
2023-09-24 19:51:33 +02:00
mesonium bc5a1d35cb
fix: Add x node to MUC PM stanza (#1462)
Add <x/> tag in MUC-PMs to support better Carbon delivery in
compliance with XEP-0045 v1.28 and above.

Fixes #1306
2023-07-29 14:02:38 +02:00
Kim Alvefur d0fca291ac Fix showing the kick option to owners
Missing case in the switch defaulted to returning false for Owners, thus
preventing they with the most privileges from using those privileges.
2023-07-29 13:52:11 +02:00
fiaxh 4dfe853fbf Fix xml output intendation 2023-05-13 14:45:37 +02:00
fiaxh 2b9a0ccf7e Fix crash on NS_URI call when own server has no MAM; drop broken mam:1 "support"
fixes #1405
2023-04-23 11:40:06 +02:00
hrxi 5a90e793dd First steps of meson support
Basic configuration of qlite, xmpp-vala, the Dino library and the Dino
application are supported. There's no support for the plugins.

This e.g. enables using the Vala language server.
2023-03-24 19:32:50 +01:00
Marvin W ef8fb0e94c
Check sender of bookmark:1 updates 2023-03-23 11:37:47 -06:00
Bohdan Horbeshko adb2b58b61 Fix a crash if a message subnode is not found in a carbon
Fixes #1392
2023-03-21 17:57:56 -06:00
Marvin W 3721027edb
Improve history sync
- Ensure we fully fetch desired history if possible (previously, duplicates
  from offline message queue could hinder MAM sync)
- Early drop illegal MAM messages so they don't pile up in the pending queue
  waiting for their query to end (which it never will if they were not
  requested in first place).

Fixes #1386
2023-03-21 17:35:58 -06:00
Marvin W d818296520
Implement XEP-0392: Consistent Color Generation 2023-03-05 16:47:46 +01:00
Marvin W 76e1410c2a
Fix typing notifications in groupchats 2023-03-02 00:02:32 +01:00
Marvin W d092473fe4
Improve history sync under load 2023-02-07 10:50:45 +01:00
Marvin W d76e12b215
Add priority for and allow cancellation of outgoing stanzas 2023-02-07 10:50:45 +01:00
Marvin W 18321ed15c
Collapse most stream releated errors into IOError 2023-02-07 10:50:43 +01:00
Marvin W 921f28c84b
Fix reaction display in private MUCs 2023-01-31 15:14:55 +01:00
fiaxh 5d9978b38b Reactions: Fix fallback bodies being displayed as messages
fixes #1352
2023-01-27 21:55:51 +01:00
fiaxh cb3b19b01d Support replies and reactions to files 2023-01-11 19:49:03 +01:00
fiaxh dc52e7595c Add support for XEP-0461 replies (with fallback) 2023-01-06 14:03:54 +01:00
Teemu Ikonen a2e894dda1
Parse conference.password from XEP-0402 bookmarks (#1310) 2022-11-10 19:23:29 +01:00
fiaxh 7a19a25156 Clean up log outputs 2022-11-04 15:57:58 -06:00
Marvin W e62955d3cf
HTTP: Make LimitInputStream pollable for better async compatibility
Fixes #1307
2022-11-04 15:45:48 -06:00
fiaxh d4c674284e Reactions: Fix xml attribute name 2022-10-12 19:23:12 +02:00
fiaxh 80258a874d Add support for reactions 2022-10-11 13:37:48 +02:00
fiaxh 6c6e7e3aa7 Rewrite MAM logic and add MUC MAM 2022-10-10 21:55:15 +02:00
Marvin W e51b55432f Gtk4 bug fixes and improvements 2022-07-27 20:55:54 +02:00
Marvin W a0eac798cd
Fix build of tests 2022-04-08 22:03:31 +02:00
Marvin W 3f169c64d7
CIM: Announce accepted method 2022-02-12 19:16:16 +01:00
Marvin W b586aebbac
Calls: Fix OMEMO in group calls 2022-02-12 17:18:03 +01:00
fiaxh be751a5dda 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)
2022-02-12 14:22:29 +01:00
fiaxh dbc6d87cb9 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
2022-02-10 15:43:34 +01:00
Marvin W 28248607f0
DTLS: Handle DTLS fingerprint in transport-info before session-accept 2022-02-09 23:58:54 +01:00
fiaxh 8b473c890b Call Invite Message: Send 'finished' messages, include reasons 2022-02-08 22:13:59 +01:00
fiaxh 3088879a7b Various call fixes
- Use groupchat message type for invites in MUCs
- Use call id (from propose) instead of message id for Call Invite Messages
- Fix call window controlls appearing when hovering controls
2022-02-07 22:17:21 +01:00
fiaxh 29d1abccac Support direct jingle call invites with call invite messages 2022-02-07 01:21:11 +01:00
fiaxh 071d925e37 Add support for call invite messages
As of https://github.com/xsf/xeps/pull/1155
2022-02-07 01:21:11 +01:00
fiaxh 4ef50db3e5 Various call UI/UX improvements 2022-02-07 01:21:11 +01:00
Marvin W 51dc414631
Use uppercase hex for DTLS fingerprints 2022-02-06 00:19:26 +01:00