aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-10-25Update build.yml to use Gnome 46rodneyrod
Fixes #1596
2024-10-18Use XEP-0482 for multi-party call invitesfiaxh
2024-10-18Fix crash on account creation (resource generation)fiaxh
2024-09-29Generate new resource on resource conflictfiaxh
2024-09-29Handle TlsError when reading from stream (caused uncatched Exception)fiaxh
2024-09-28Store avatars in the user's cache directory. (#1621)eerielili
* Store avatars in the user's cache directory. - Not anymore in ~/.local/share, where media files are stored. - Already existing ~/.local/share/dino/avatars directory will be moved to ~/.cache/dino/avatars - If both directories already exists, the old one (in ~/.local/share) is removed. * Simplify old-to-new-location logic --------- Co-authored-by: fiaxh <git@lightrise.org>
2024-09-23Change message padding/margins (#1564)Linux in a Bit
3px padding on top and bottom of all messages 10px margin on top of messages with usernames This improves readability among other things. Co-authored-by: Linux in a Bit <105567407+RageGamerBoi@users.noreply.github.com>
2024-09-22Add keyboard shortcut to show preferences (Ctrl+,) (#1435)eerielili
2024-09-22XEP-0215: Remove timeout from previous connectionfiaxh
2024-09-22XEP-0215: management of the field `expires`Alexandre Jousset
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-09-22Ignore bad stun/turn IP addressesfiaxh
2024-09-21Add change password functionalityfiaxh
Co-authored-by: Stanislav Malishevskiy <stanislav.malishevskiy@gmail.com>
2024-09-16Preferences Window: Small improvementsfiaxh
2024-09-15Discover plugins in Meson build directorieshrxi
If the environment looks like a Meson build dir (parent directory is called "main"), then also look for plugins in `../plugins/*`. Fixes #1591.
2024-09-15Code cleanup: Remove remnants of previous accounts dialogfiaxh
2024-09-15Code cleanup: Remove broken disable CSD codefiaxh
2024-09-15Refresh "Add account" UIfiaxh
2024-09-15Use Adwaita 1.2, bump CI to Ubuntu 24.04fiaxh
2024-09-14Use new call.incoming notification categoryPigpog
This notification category is pending merge in FreeDesktop. See https://gitlab.freedesktop.org/xdg/xdg-specs/-/merge_requests/50
2024-09-14Update translationsTranslations
2024-09-14Update translationsTranslations
2024-08-22Update translationsTranslations
2024-08-19Omemo: Connect listener only once on account addedfiaxh
2024-08-19Add cancellable to stream connectfiaxh
2024-08-19Conversation details: Make block button a stateful menu buttonfiaxh
2024-08-19Allow blocking entire domain from conversation detailsMiquel Lionel
- the block domain option is in a drop down of the block button - when blocking the domain, the "Blocked domain" button appears and block button disappears and vice versa.
2024-08-18Add omemo key management tooltip (#1603)Matthew Fennell
2024-07-29Add initial message markup (XEP-0394) supportfiaxh
2024-07-29Store reply message as sent, with fallbackfiaxh
2024-07-20Fix shift+enter in chat input not scrolling downfiaxh
2024-07-19OMEMO: Do not show message for OMEMO messages without payloadMarvin W
2024-07-01Update translationsTranslations
2024-07-01Update translationsTranslations
2024-06-30Update appdataMarvin W
2024-06-29Allow self-signed .onion file transfer certs (#1149)Matthew Fennell
Most Certificate Authorities don't support issuing X.509 certificates for onion sites. However, it can still be useful to provide a certificate over Tor in some circumstances, for instance to tie your alphanumeric Tor address to your site's main identity. Therefore, many Tor services provide self-signed certificates. This is OK, since the onion service itself guarantees that you are connecting to the entity you think you are. Dino already allows self-signed certs when communicating over Tor (see 81a5505). However, the same exception does not exist yet for HTTP uploads and downloads - causing these to fail over Tor. Therefore, in this commit, we add the same exception for uploads/downloads, by passing the host of the upload/download urls to the already existing invalid certificate connection handler. Note that this handler only allows certificates with type TlsCertificateFlags.UNKNOWN_CA. This means the certificate of your server must also include the onion http upload and download URLs in its certificate - otherwise, the file transfer will fail with TlsCertificateFlags.BAD_IDENTITY.
2024-06-28Self-ping with server-given roomnick (#1594)Matthew Fennell
* 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>
2024-06-23Join Channel dialog: Fix displaying of bookmark detailsfiaxh
2024-06-21Preferences dialog: Various improvementsfiaxh
- Only show avatar remove button if one is set, fixes #1589 - Only show account picker if user has more than one account
2024-06-21Start chat: Adjust status icon position, prioritize statuses, update statusfiaxh
2024-06-21Show contact status in "Start chat" windowMiquel Lionel
should close #139 - adds svg dino-status-offline.svg
2024-06-20Settings dialog: Fix account subpage for Adwaita < 1.4, other fixesfiaxh
fixes #1592
2024-06-20Fix meson build filesfiaxh
2024-06-20Redesign and rewrite accounts and settings dialog into a combined onefiaxh
2024-06-19Store requested disco results with computed hash, use for offline ↵fiaxh
determining of private MUCs
2024-05-26Add logic for OMEMO by default settingfiaxh
2024-05-26Support avatar deletionfiaxh
2024-05-09AppData/DOAP: Use sentence case for summary.Marvin W
The suggestion is to not use title case which we did before.
2024-05-09Flatpak: Bump runtime version to 46Marvin W
2024-05-09AppData: Add brand colorMarvin W
2024-04-28Add WeakTimeout Pattern to Prevent LeaksChristopher Vollick
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>