aboutsummaryrefslogtreecommitdiff
path: root/main/src
Commit message (Collapse)AuthorAgeFilesLines
* Add WeakTimeout Pattern to Prevent LeaksChristopher Vollick2024-04-284-28/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Calls: Correctly display information in partially encrypted callsMarvin W2024-04-282-25/+57
| | | | | This should never happen in practice, but now we will correctly display if a call has encrypted audio, but unencrypted video, or vice-versa.
* Remove conversation closing via hover buttonfiaxh2024-03-211-20/+0
|
* Introduce conversation menu, add close optionfiaxh2024-03-211-8/+20
|
* Conversation details dialog: Fix runtime criticalfiaxh2024-03-211-0/+1
|
* Fix poor contrast of highlight in search results with dark theme (#1557)eerielili2024-03-021-1/+2
| | | - fixes #1308
* Add unread indicatorfiaxh2024-03-022-0/+91
| | | | | Co-authored-by: Alexandre Jousset <mid@gtmp.org> Co-authored-by: Aidan Epstein <aidan@jmad.org>
* Enable hyperlinks in topic text to be clicked (#1523)eerielili2024-01-132-3/+5
| | | fixes #1042
* Change select contact dialog container to AdwClamp (#1533)Teemu Ikonen2024-01-132-0/+4
|
* Fix crash on removing conference not in roster (#1516)eerielili2024-01-101-0/+1
|
* Conversation details dialog: Fix notification+block iconsfiaxh2023-12-101-2/+2
|
* Fix some compiler warningsfiaxh2023-10-079-13/+11
|
* conversation details: Fix for libadwaita < 1.4fiaxh2023-09-251-0/+5
|
* Rewrite contact details dialogfiaxh2023-09-2412-360/+599
|
* Fix build on some Vala compiler versionsMarvin W2023-09-243-4/+10
| | | | See https://gitlab.gnome.org/GNOME/vala/-/issues/1474 and https://gitlab.gnome.org/GNOME/vala/-/issues/1478
* Fix subscription notification clearingfiaxh2023-09-072-12/+23
|
* Cleanup automatically loaded help overlayfiaxh2023-07-081-1/+0
|
* application: Load help overlay automaticallyChristopher Davis2023-07-081-14/+0
| | | | | | | | | GTK automatically loads and sets up the action and keyboard shortcut for the Keyboard Shortcuts dialog. We don't need to manually do it as long as we put everything in the right place. See https://docs.gtk.org/gtk4/class.Application.html#automatic-resources
* main_window: Use AdwApplicationWindowChristopher Davis2023-07-081-1/+1
| | | | | The main window of an app should be an ApplicationWindow. These windows provide nicer APIs for actions and more.
* Add a keyboard shortcut to show keyboard shortcuts (#1432)eerielili2023-06-251-0/+2
| | | | | Add a keyboard shortcut to show keyboard shortcuts - It's Ctrl+?
* icons: Refresh some symbolic icons (#1444)Tobias Bernard2023-05-294-8/+8
|
* Fix reactions being made to the wrong messageMarvin W2023-05-141-1/+0
| | | | fixes #1426
* Fix chat input for IMEfiaxh2023-05-141-1/+6
| | | | | | fixes #1419 Co-authored-by: Marvin W <git@larma.de>
* Focus ChatInput textbox after selecting emojiKarim Malhas2023-04-231-0/+2
| | | | | | | | | | | | After selecting an emoji, the emoji is inserted into the textbox, but focus remains on the emoji_button. This causes the EmojiChooser to be opened again if a user hits the Enter key directly, but text is inserted into the textbox if they continue to type. This commit just explicitely focuses on the textbox after an emoji has been selected.
* Fix call window stylingfiaxh2023-04-221-3/+0
|
* Fix call window controlls hidingfiaxh2023-04-221-3/+19
|
* Fix images from another client in our account not being displayed right awayfiaxh2023-03-231-3/+7
|
* FreeDesktopNotifier: Set notification categoriesSebastian Krzyszkowiak2023-03-211-0/+6
| | | | | This provides notifications servers some context on how to handle the notification.
* Improve database performance while reconnecting and syncingMarvin W2023-03-211-0/+14
| | | | Also move some tasks to low priority idle queue so they won't block UI updates
* New Avatar UIMarvin W2023-03-0521-592/+595
|
* Implement XEP-0392: Consistent Color GenerationMarvin W2023-03-051-10/+13
|
* Fix critical warnings after DTLS-SRTP calls without OMEMO verificationMarvin W2023-03-021-1/+1
| | | | libdino-CRITICAL **: dino_plugins_encryption_list_entry_get_encryption_icon_name: assertion 'self != NULL' failed
* Fix some memory leaksfiaxh2023-02-275-43/+112
|
* Stop regenerating message menu buttonsfiaxh2023-02-163-32/+49
| | | | mitigates #1343
* Clear chat input after /commandfiaxh2023-02-101-7/+8
| | | | fixes #1359
* Remove spell check settingfiaxh2023-02-092-83/+0
| | | | As there is currently no spell check support for GTK4
* Settings: Connect to Switch.notify-active instead of to activatefiaxh2023-02-091-5/+5
| | | | As per the documentation of the activate signal "Applications should never connect to this signal, but use the notify:active signal." https://valadoc.org/gtk+-3.0/Gtk.Switch.activate.html
* settings_dialog: Use AdwPreferencesWindow and AdwActionRowChristopher Davis2023-02-091-19/+19
| | | | | | AdwPreferencesWindow contains a nice API for preferences windows, and AdwActionRow is the widget to use for rows of preferences.
* Prepare for 0.4 releaseMarvin W2023-02-071-4/+5
|
* Fix various date/time stamps not updated or wrong time zoneMarvin W2023-02-073-13/+29
|
* Fix some form entries not updating properlyMarvin W2023-02-074-29/+15
|
* Show "Me" instead of bare jid when no local alias is setMarvin W2023-02-071-1/+1
|
* Fix label attributes updated with delayMarvin W2023-02-071-16/+17
|
* Fix placeholder being shown on startup, fix missing vertical line in ↵fiaxh2023-01-311-1/+0
| | | | no-conversations placeholder
* New Date SeparatorMarvin W2023-01-312-79/+111
|
* Fix critical warning due to tooltip issueMarvin W2023-01-311-1/+1
|
* Add tooltips to the delivered and read icons (#1341)Prashant Kumar2023-01-301-2/+8
|
* Always display reaction+reply buttons, disable if not possiblefiaxh2023-01-304-51/+64
|
* Fix UI for libadwaitaMarvin W2023-01-2512-248/+367
|
* Fix scaling image for GTK4Marvin W2023-01-242-180/+104
|