| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Self-ping with server-given roomnick (#1467)
XEP-0045 describes how a server can modify a user's roomnick when joining a
room. To do this, it assigns status code 210, and sets the "from" attribute to
a JID with thew newly assigned nickname when sending the user's presence back
to the client.
This is used in IRC gateways such as biboumi. Since you can only have one nick
per IRC server, if you try and join multiple IRC-bridged MUCs on the same IRC
server, it will modify your nick to match the existing one you have on that
server.
Currently, when Dino performs a self-ping after joining a room, it uses the
nick that the client first requested, instead of the nick returned from the
server. This can lead to incorrect self-pings being sent out (until the client
is restarted, and populates mucs_todo correctly). This happens because it adds
the requested Jid to mucs_todo, before getting the given nick from the server.
Therefore, this commit adds the jid that has been given from the server
instead. If there is any error in requesting to join the MUC, it adds the
requested nick, to match existing behaviour and allow the request to be retried
via future self-pings.
fixes #1467
* Minor coding style changes
---------
Co-authored-by: fiaxh <git@lightrise.org>
|
| |
|
|
|
|
| |
determining of private MUCs
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
While doing testing I noticed that skeletons were being leaked, and
eventually tracked it down to the timer that updates the time label
closing over "this" and then keeping the reference alive, potentially
for 24 hours.
I noticed a few other places in the code doing some version of this, and
one of them had the "static and weak pointer" approach, which I pulled
out into a util class. Now, we still have to make sure we're passing it
a static method instead of a lambda, as that would also close over
"this" and render the whole thing useless, but at least most of the
annoying parts live in the util class now.
Also the call_widget version was doing a weird thing where it was
removing itself, but then returning "true"? I'm not sure what that
accomplishes, because returning "false" means to not run this again. So
I think my new version is the same in practice, but simpler...
There are other timeouts in the code that I briefly looked over, but all
of them seemed to be relatively short hard-coded durations, so I left
them alone.
But if any of them are long-lived, it's possible they could also benefit
from this class in the future.
Closes #1480
Co-Authored-By: Marvin W <git@larma.de>
|
|
|
|
|
| |
This should never happen in practice, but now we will correctly display
if a call has encrypted audio, but unencrypted video, or vice-versa.
|
|
|
|
|
|
|
|
|
| |
* Start conversation if closed when receiving an audio or video call
* Fix starting conversation on new calls, move setting conversation.last_active
---------
Co-authored-by: fiaxh <git@lightrise.org>
|
| |
|
| |
|
|
|
|
| |
See https://gitlab.gnome.org/GNOME/vala/-/issues/1474 and https://gitlab.gnome.org/GNOME/vala/-/issues/1478
|
|
|
|
|
|
| |
Add <x/> tag in MUC-PMs to support better Carbon delivery in
compliance with XEP-0045 v1.28 and above.
Fixes #1306
|
|
|
|
| |
fixes #1420
|
| |
|
|
|
|
| |
fixes #1405
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
They are being used from outside the library.
|
| |
|
|
|
|
| |
Also move some tasks to low priority idle queue so they won't block UI updates
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
| |
|
| |
|
|
|
|
| |
mitigates #1343
|
|
|
|
| |
As there is currently no spell check support for GTK4
|
|
|
|
| |
We don't know if they're from the same user as someone else could have joined with the same nickname after sender left
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
no-conversations placeholder
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
related #1335
|
|
|
|
|
| |
fixes #290
fixes #1330
|
| |
|
| |
|
|
|
|
|
|
| |
teated as milli sec)
fixes #1296
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
- Messages from MUCs weren't added to their respective MUC MAM ranges, thus re-fetched on rejoin
- The earliest ('first') message of a mam page was used to update the to_id, but it should have been 'last'; also the other way around.
- Duplicates weren't detected properly
|
|
|
|
| |
fixes #1297
|