Commit Graph

899 Commits

Author SHA1 Message Date
Guido Günther
fc9aabb1ec calls-manager: Keep ref on list models
The gtk_*list_model_new() functions are `transfer: full` for the model.
Since we keep accessing the underlying models we keep the refs for clear
ownership and drop them in finalize.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/756>
2024-09-21 06:23:20 +00:00
Guido Günther
2b5d2f53a9 calls-notifier: Use official notification category
See https://gitlab.freedesktop.org/xdg/xdg-specs/-/merge_requests/50

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/748>
2024-09-21 06:15:19 +00:00
Evangelos Ribeiro Tzaras
b15d557106 record-row: Only popup context menu if row is realized
This works around the long press gesture
(mis?) firing the "press" signal on a
row that is not realized anymore
(because the slice model in the history box
 currently rebuilds all rows when the items change).

Fixes: https://gitlab.gnome.org/GNOME/calls/-/issues/666
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 17:43:15 +02:00
Evangelos Ribeiro Tzaras
d9e6fb3717 record-row: Prefer g_signal_connect_object() over a plain connect()
Apparently the slice list model in the history box
rebuilds the whole list when a single new record gets added.

Additionally, the "pressed" signal gets emitted on the
GtkGestureLongPress controller even when the call button is tapped
(i.e. should not have been pressed down for longer than the required timeout).
This then causes the callback to be invoked with a disposed record row.

This commit ensures the signals get properly disconnected
even in the face of unforeseen cleanup of the record row.

Helps with https://gitlab.gnome.org/GNOME/calls/-/issues/666

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 17:42:51 +02:00
Evangelos Ribeiro Tzaras
f810e0a9b1 tree: Remove custom clearing macros
The macros was emulating g_clear_handle_id() and friends
let's use the glib functions directly instead.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:59:27 +02:00
Evangelos Ribeiro Tzaras
5eabbb2ada record-store: Simplify struct setup of record call data
Just a mechanical change that results in -2 lines.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:59:11 +02:00
Evangelos Ribeiro Tzaras
3b1cf7b5ee record-row: Prefer g_autoptr for GDateTime
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:40:35 +02:00
Evangelos Ribeiro Tzaras
03a50260ec history-box: Add debug statement
This helps in debugging in debugging
why the slice list model rebuilds the whole list
when a single call gets added.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:40:35 +02:00
Evangelos Ribeiro Tzaras
9dfaac19cc record-row: Define log domain
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:40:35 +02:00
Evangelos Ribeiro Tzaras
87ad8acf39 record-row: Remove unused include
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:40:35 +02:00
Evangelos Ribeiro Tzaras
32b8995f2d record-row: Remove unnecessary cast
g_object_get() wants a gpointer,
so there is no need for casting to GObject*.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:40:35 +02:00
Evangelos Ribeiro Tzaras
5473f03be9 record-store: Remove unnecessary casts
g_object_get() accepts gpointer, so casting is not needed.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:40:35 +02:00
Chris Talbot
29fdb869f0 new-call-box: clear number entry when windows is closed
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/717>
2024-09-02 15:56:58 +00:00
Chris Talbot
45b4717c78 contacts-box: clear entry if window is closed
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/717>
2024-09-02 15:56:58 +00:00
Chris Talbot
28ca838ab4 application: add signal for main window hiding
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/717>
2024-09-02 15:56:58 +00:00
Anton Lazarev
7577e85cd9 contacts-box: add .boxed-list CSS class
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/727>
2024-08-31 20:58:09 +00:00
Anton Lazarev
bb4d92f920 call buttons: Add .flat CSS class
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/727>
2024-08-31 20:58:09 +00:00
Guido Günther
05dc7c24ef main-window: Use AdwAboutDialog
Fixes the deprecation warning and lets us use a bottom
sheet that can always be closed.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/749>
2024-08-31 15:17:20 +00:00
Guido Günther
7241f8bed4 build: Bump libadwaita dep to 1.5
Needed for AdwAboutDialog

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/749>
2024-08-31 15:17:20 +00:00
Balló György
ef5467fb64 build: Actually translate metainfo
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/751>
2024-08-31 08:11:50 +00:00
Balló György
5fde6bcc3a application: Set default window icon
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/750>
2024-08-31 00:36:09 +02:00
Evangelos Ribeiro Tzaras
3b34f19735 plugin: Reindent
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/746>
2024-07-31 18:51:56 +00:00
Evangelos Ribeiro Tzaras
26484766d3 treewide: Port to libpeas-2
Closes #609

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/746>
2024-07-31 18:51:56 +00:00
Guido Günther
506a1cfc34 manager: Emit phone-hangup event if the other side hung up
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/743>
2024-07-31 17:50:58 +00:00
Guido Günther
7b2ab53f4d call: Track which side hung up the call
Adding a boolean flag allows us to distinguish this from situations
where the other side ended the call.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/743>
2024-07-31 17:50:58 +00:00
Guido Günther
7bc0cc06ca call: Fix name of parent class
It's not an interface

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/743>
2024-07-31 17:50:58 +00:00
Guido Günther
7aa3d163b5 build: Bump minimum glib version
Glib 2.74 is even in Debian stable

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/743>
2024-07-31 17:50:58 +00:00
Evangelos Ribeiro Tzaras
8a4e53ded4 application: Log version on startup
Closes: https://gitlab.gnome.org/GNOME/calls/-/issues/652

Signed-off-by: Evangelos Ribeiro Tzaras <devrtz@fortysixandtwo.eu>
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/745>
2024-07-18 04:44:23 +02:00
Evangelos Ribeiro Tzaras
e73dd15525 application: Remove unused variable in startup()
Signed-off-by: Evangelos Ribeiro Tzaras <devrtz@fortysixandtwo.eu>
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/745>
2024-07-18 04:42:46 +02:00
Guido Günther
b5af7f5e7d calls-ringer: Don't restart when feedback got ended explicitly
If a user e.g. lowers the gobal feedback level we don't want to
retrigger the events.

Without this calls assumes events ended naturally and restarts the
ringing without any events. As that is never ended even subsequent calls
don't receive any ringing.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/734>
2024-06-23 12:02:59 +00:00
Anton Lazarev
2fa17c86d3 main-window: Use AdwBanner for the permanent error label
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/732>
2024-06-20 12:39:59 +00:00
Anton Lazarev
14362843c9 about: Switch to AdwAboutWindow
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/726>
2024-05-22 11:24:33 -07:00
Anton Lazarev
36cd614310 treewide: Use gtk4.12, libadwaita 1.4
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/729>
2024-05-21 20:27:49 -07:00
Anton Lazarev
72e3ae36ba main-window: Change GtkDialog to GtkWindow
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/729>
2024-05-21 20:27:48 -07:00
Anton Lazarev
b2f191eaec treewide: Replace StyleContext with GtkWidget CSS operations
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/729>
2024-05-21 20:27:48 -07:00
Anton Lazarev
e2fa92ff45 build: Use gtk4.10, libadwaita 1.3
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/729>
2024-05-21 20:27:48 -07:00
Anton Lazarev
b2e3e8445d calls-contacts-box: Migrate to GListModel
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:29 -07:00
Anton Lazarev
27e6b7a9db treewide: Remove requires glade-isms from ui definitions
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:29 -07:00
Anton Lazarev
7cf7fc02d6 build: Specify required GTK version
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:29 -07:00
Anton Lazarev
933655e8e0 new-call-box: Expand to fill horizontal width
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
51e74ef595 treewide: Ensure memory is not disposed multiple times
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
8a464224a3 contacts-box: Use AdwToolbarView with search as top bar
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
9fb5a11c69 contacts-box: Use AdwStatusPage for the placeholder
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
a3a193b77f main-window: Replace AdwViewSwitcherTitle
https://gnome.pages.gitlab.gnome.org/libadwaita/doc/main/migrating-to-breakpoints.html#replace-adwviewswitchertitle

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
001d599495 treewide: Parent from AdwBin where possible
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
4fc1374fe8 call-window: Remove superfluous GtkViewport
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
52b4aa7769 call-record-row: Fix layout
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
eef5b33ad4 call-record-row: Improve event handling
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
caecf10cc1 treewide: Remove visible=True on adwaita widgets
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00
Anton Lazarev
8ea553bd0c call-selector-item: Remove misc unavailable properties
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/714>
2024-04-06 08:15:28 -07:00