Commit graph

669 commits

Author SHA1 Message Date
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
fiaxh 2fba24ccae Fix subscription notification clearing 2023-09-07 21:30:47 +02:00
Robert Mader 35163f08f9 data: Set X-Purism-FormFactor in .desktop file
So the app is detected as mobile-friendly on Phosh.
2023-07-08 11:23:44 +02:00
fiaxh b830b796a5 Cleanup automatically loaded help overlay 2023-07-08 11:20:51 +02:00
Christopher Davis 3d5dad25d8 application: Load help overlay automatically
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
2023-07-08 11:20:51 +02:00
Christopher Davis a36a63d7e4 main_window: Use AdwApplicationWindow
The main window of an app should be an ApplicationWindow.
These windows provide nicer APIs for actions and more.
2023-07-08 11:20:51 +02:00
eerielili da7be50f05
Add a keyboard shortcut to show keyboard shortcuts (#1432)
Add a keyboard shortcut to show keyboard shortcuts

    - It's Ctrl+?
2023-06-25 13:39:07 +02:00
Tobias Bernard 4bb0c465fc
icons: Refresh some symbolic icons (#1444) 2023-05-29 22:01:33 +02:00
Marvin W 9a04573fdc Fix reactions being made to the wrong message
fixes #1426
2023-05-14 16:44:37 +02:00
fiaxh 9e4def221f Fix chat input for IME
fixes #1419

Co-authored-by: Marvin W <git@larma.de>
2023-05-14 14:12:05 +02:00
fiaxh 287d5bee6e Fix chat input status having a fixed width requirement
fixes #1439
2023-05-13 14:45:37 +02:00
Karim Malhas ec6c24c2b4 Focus ChatInput textbox after selecting emoji
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.
2023-04-23 11:53:57 +02:00
fiaxh 03e367ecb8 Fix call window styling 2023-04-22 19:52:28 +02:00
fiaxh 5815e757b7 Fix call window controlls hiding 2023-04-22 17:07:29 +02:00
Klemens Nanni b75b6062ab Always export symbols to fix startup on BSDs
```
$ dino
(dino:38515): Gtk-ERROR **: 15:38:38.538: failed to add UI from resource /im/dino/Dino/unified_main_content.ui: .:26:1 Invalid object type 'DinoUiConversationSelector'
Trace/BPT trap (core dumped)
```

This works on Linux because CMake itself links with `-rdynamic` by default
as per its `Modules/Platform/Linux-*.cmake`.

OpenBSD carries this as local patch, FreeBSD links with `--export-dynamics`.
Just linking with `-rdynamic` also fixes it on OpenBSD, as expected.

https://cmake.org/cmake/help/latest/prop_tgt/ENABLE_EXPORTS.html

Fix #438.
2023-03-24 19:36:32 +01: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
fiaxh 65efaca6fd
Fix images from another client in our account not being displayed right away 2023-03-23 12:14:22 -06:00
Sebastian Krzyszkowiak 444275a99d FreeDesktopNotifier: Set notification categories
This provides notifications servers some context on how to handle
the notification.
2023-03-21 17:57:33 -06:00
Sebastian Krzyszkowiak 57d47b9575 data: Set StartupNotify to true in .desktop file
GTK handles startup notifications, so advertise it in desktop
file. This allows splash screens and other startup indications
in DEs to work.
2023-03-21 17:56:53 -06:00
Marvin W 4e1311dfa9
Improve database performance while reconnecting and syncing
Also move some tasks to low priority idle queue so they won't block UI updates
2023-03-21 17:35:58 -06:00
Marvin W db3b0d5f23
New Avatar UI 2023-03-05 16:47:46 +01:00
Marvin W d818296520
Implement XEP-0392: Consistent Color Generation 2023-03-05 16:47:46 +01:00
Marvin W 74ca991ddf
Fix critical warnings after DTLS-SRTP calls without OMEMO verification
libdino-CRITICAL **: dino_plugins_encryption_list_entry_get_encryption_icon_name: assertion 'self != NULL' failed
2023-03-02 00:02:35 +01:00
fiaxh fb799e3ba8 Fix some memory leaks 2023-02-27 23:38:31 +01:00
fiaxh c526848098 Stop regenerating message menu buttons
mitigates #1343
2023-02-16 12:51:33 +01:00
fiaxh f7750c548a Clear chat input after /command
fixes #1359
2023-02-10 14:25:04 +01:00
fiaxh 9bf304095c Remove spell check setting
As there is currently no spell check support for GTK4
2023-02-09 12:35:50 +01:00
fiaxh e554f90ff9 Make the symbolic app icon square 2023-02-09 12:11:09 +01:00
fiaxh 634302217c Settings: Connect to Switch.notify-active instead of to activate
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
2023-02-09 11:36:33 +01:00
Christopher Davis 430a8df4f6 menu_app: Move preferences to last group
Per
https://developer.gnome.org/hig/patterns/controls/menus.html#standard-primary-menu-items, preferences
should be at the top of the last group in the menu.
2023-02-09 11:36:33 +01:00
Christopher Davis 5eab892a24 menu_app: Rename Settings to Preferences
The standard name in GNOME applications is Preferences.
2023-02-09 11:36:33 +01:00
Christopher Davis b19986a685 settings_dialog: Use AdwPreferencesWindow and AdwActionRow
AdwPreferencesWindow contains a nice API for preferences
windows, and AdwActionRow is the widget to use for rows
of preferences.
2023-02-09 11:36:33 +01:00
Marvin W 5568bbc6bf
Prepare for 0.4 release 2023-02-07 21:44:15 +01:00
Translations e73b556a1a Update translations 2023-02-07 21:40:04 +01:00
Marvin W 116682e311
Fix various date/time stamps not updated or wrong time zone 2023-02-07 20:23:52 +01:00
Marvin W 32ae87a3c4
Fix some form entries not updating properly 2023-02-07 20:23:51 +01:00
Marvin W 1559a7a603
Show "Me" instead of bare jid when no local alias is set 2023-02-07 20:23:51 +01:00
Marvin W 1d123c7e66
Fix label attributes updated with delay 2023-02-07 10:50:45 +01:00
fiaxh e0ece2aa62 Fix placeholder being shown on startup, fix missing vertical line in no-conversations placeholder 2023-01-31 20:16:23 +01:00
Marvin W 3aa3912dc3
New Date Separator 2023-01-31 15:15:55 +01:00
Marvin W 9e11bef219
Fix critical warning due to tooltip issue 2023-01-31 15:14:47 +01:00
Prashant Kumar e3c833bce0
Add tooltips to the delivered and read icons (#1341) 2023-01-30 23:19:53 +01:00
fiaxh b0b81b88c6 Always display reaction+reply buttons, disable if not possible 2023-01-30 22:54:55 +01:00
fiaxh 1dbacbbcab Remove nl_BE from LINGUAS files and appdata file (fixup d0a00e1) 2023-01-28 15:44:25 +01:00
Translations d0a00e1e75 Remove Dutch (Belgium) translation, fallback to Dutch
fixes #1231
2023-01-28 15:04:48 +01:00
Translations 04eb0e763b Update translations 2023-01-28 14:56:04 +01:00
fiaxh e833a924b5 Update appdata file with content_rating, releases, update image tags 2023-01-28 01:38:51 +01:00
Marvin W e35df88d4a
Fix UI for libadwaita 2023-01-25 11:02:02 +01:00
Marvin W cc7db3b85f
Fix scaling image for GTK4 2023-01-24 19:21:25 +01:00
Marvin W 99d9cb383a
Small UI fixes for libAdwaita 2023-01-24 19:21:25 +01:00
fiaxh 6a182ba313
Only use Adw.AboutWindow for Adwaita >= 1.2 2023-01-24 19:21:25 +01:00
fiaxh 4b391f3f31
Use Adw.StatusPage instead of custom placeholders 2023-01-24 19:20:43 +01:00
fiaxh 92aca5672d
Improve libadwaita integration 2023-01-24 19:20:43 +01:00
Teemu Ikonen 0d7c8bb6e1
Change Gtk.Paned to Adw.Leaflet in MainWindow 2023-01-24 19:20:43 +01:00
Teemu Ikonen e934a76a11
Add back button to ConversationTitlebar
Add a bool 'back_button_visible' and a signal 'back_pressed' to the
ConversationTitlebar interface.

Also add implementations to both ConversationTitlebarNoCsd and
ConversationTitlebarCsd.
2023-01-24 19:20:43 +01:00
Teemu Ikonen 04acab82c9
Remove set_window_buttons() from MainWindow 2023-01-24 19:20:43 +01:00
Teemu Ikonen ba9462503c
Use Adw.HeaderBar for CSD header bars
This allows showing the correct buttons with 'show-start-title-buttons'
and 'show-end-title-buttons' properties when folding.
2023-01-24 19:20:42 +01:00
Teemu Ikonen 2741bf21ae
Convert main window layout to 2 vertical boxes
Use Adw.Window as main window widget, add the now missing HeaderBars to
MainWindowPlaceholder and MainWindow in the NoCSD case.
2023-01-24 19:20:42 +01:00
Teemu Ikonen 1ef42b47d2
Use Adw.Application, make about dialog an Adw.AboutWindow 2023-01-24 19:20:42 +01:00
Teemu Ikonen f6e73d85c0
Add libadwaita to build system 2023-01-24 19:20:42 +01:00
fiaxh 7da79864b3 Fix pin setting switch displaying 2023-01-16 18:37:11 +01:00
fiaxh 05289e0b4d Fix reply cancelling
fixes #1340
2023-01-16 17:39:22 +01:00
fiaxh 73c0263f35 Add debug outputs to summarize_whitespaces_to_space and don't assert_not_reached
related #1335
2023-01-13 11:44:28 +01:00
fiaxh 860c72bfc9 Fix crash when removing jid from roster
fixes #1332
2023-01-11 19:54:17 +01:00
fiaxh 75500dc767 Support pinning of conversations (locally)
fixes #290
fixes #1330
2023-01-11 19:54:02 +01:00
fiaxh cb3b19b01d Support replies and reactions to files 2023-01-11 19:49:03 +01:00
fiaxh 60371331e0 Replies: Fix quoted message not being reset after sending
fixes #1334
2023-01-07 23:35:39 +01:00
fiaxh dc52e7595c Add support for XEP-0461 replies (with fallback) 2023-01-06 14:03:54 +01:00
fiaxh 4d7809bb12 Fix compiler warnings 2022-12-30 21:34:40 +01:00
Marvin W cdd22e404e
Fix build with Vala < 0.52
MenuButton.set_child was only added to VAPIs of 0.52 and later.
Even if GTK4 is new enough, they wouldn't be available.
2022-11-10 22:32:19 +01:00
fiaxh 7a19a25156 Clean up log outputs 2022-11-04 15:57:58 -06:00
fiaxh a45280f8df Reactions: Improve style 2022-10-11 18:55:33 +02:00
fiaxh 11b6e615b7 Don't require use of MenuButton.set_child introduced with GTK 4.6 2022-10-11 17:50:54 +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
fiaxh 9c736af765 Fix regression with channel join button not getting sensitive
fixes #1284
2022-10-09 11:48:58 +02:00
fiaxh 7d8b08deca Small fixes 2022-10-09 11:48:58 +02:00
fiaxh 03878eee49 Add account dialog: Reenable Next-button activation on enter 2022-10-09 11:48:58 +02:00
fiaxh 85342ee2eb Fix drag and drop uploading 2022-10-09 11:48:58 +02:00
fiaxh 21ab48e09a Fix channel join button not getting sensitive 2022-10-03 19:14:45 +02:00
fiaxh 146af31524 Move icons out of scalable/ui/ since it's not allowed by icon naming spec 2022-09-18 20:30:24 +02:00
fiaxh 7ad52d9335 OMEMO QR code: Switch to paintable, fix css 2022-09-18 20:30:24 +02:00
fiaxh 117f193812 Fix crashes and warning in Join Conference dialog
fixes #1262
2022-08-22 13:16:46 +02:00
fiaxh 14bc3d6717 Fix crash on call window closing 2022-08-22 13:16:46 +02:00
fiaxh 054d3fec16 Fix encryption button update and reduce its required GTK version
MenuButton.activate only exists since 4.4
2022-08-21 14:16:31 +02:00
Marvin W d6afa6e8ff
GTK4: Don't require use of MenuButton.set_child introduced with 4.6 2022-08-21 00:57:46 +02:00
Marvin W 5103a7fb7b
Move all icons in respective paths 2022-08-20 21:23:35 +02:00
fiaxh 6bfa70fc70 Disable tooltips for GTK 4.6.4 - 4.6.6
A bug in GTK caused the application to crash in some tooltip-related conditions
https://gitlab.gnome.org/GNOME/gtk/-/issues/4941
2022-08-20 21:09:42 +02:00
Marvin W 517363dfc9
GTK4: Fix theme blue highlight 2022-08-20 20:46:03 +02:00
Marvin W e51b55432f Gtk4 bug fixes and improvements 2022-07-27 20:55:54 +02:00
fiaxh f44cbe02c1 Improve Gtk4 port 2022-07-27 20:34:20 +02:00
Marvin W 2b3ce5fc95 Video for GTK4 2022-07-27 20:34:20 +02:00
fiaxh 7e7dcedaf3 Port from GTK3 to GTK4 2022-07-27 20:34:20 +02:00
Xavi92 99c076254a
Inhibit idle and suspend during calls (#1233) 2022-05-11 11:12:30 +02:00
Marvin W 193bf38a79
Allow cancellation of file transfers 2022-03-30 10:36:52 -06:00
Marvin W 339d1d8f55
Fix Version handling, add function to retrieve short version without git commit 2022-03-30 10:36:07 -06:00
mjk 855a98c045 OMEMO: Make QR code fixed-resolution and the quiet zone ISO-conformant 2022-02-25 22:26:43 +00:00
fiaxh 1309d7e2e4 Fix quote formating to not (partially) expect a space after > 2022-02-14 23:49:45 +01:00
fiaxh 9838d56794 Prepare for 0.3 release 2022-02-12 22:18:06 +01:00
Translations f5d1435182 Update translations 2022-02-12 22:08:07 +01:00