Commit Graph
100 Commits
Author SHA1 Message Date
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
Evangelos Ribeiro Tzaras 3f96639b81 dir-locals: Update projectile commands
We want to use meson, not ninja.

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:40:35 +02:00
Evangelos Ribeiro Tzaras 1e4349f340 tree: Ignore gdb history
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/755>
2024-09-14 11:40:34 +02:00
Evangelos Ribeiro Tzaras 503013fa67 flatpak: Fix libpeas2 configuration options
Fixes this error:
../meson.build:1:0: ERROR: Unknown options: "demos, glade_catalog, widgetry"

Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/754>
2024-09-05 08:15:29 +02:00
Evangelos Ribeiro Tzaras f60703351a treewide: Document changes and release 47~rc.1
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/752>
2024-08-31 23:24:36 +02:00
Evangelos Ribeiro Tzaras d27be9fc28 Document and release 47~beta.0
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/747>
2024-08-03 20:04:28 +02:00
Evangelos Ribeiro TzarasandMarge Bot 8917080a0c ci: Update debian image
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/746>
2024-07-31 18:51:56 +00:00
Evangelos Ribeiro TzarasandMarge Bot 3b34f19735 plugin: Reindent
Part-of: <https://gitlab.gnome.org/GNOME/calls/-/merge_requests/746>
2024-07-31 18:51:56 +00:00
Evangelos Ribeiro TzarasandMarge Bot 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
Evangelos Ribeiro Tzaras 2ff69e7bbe sip/account-widget: Adjust to renamed AdwComboRow property
The property name (and semantics) of Hdy/AdwComboRow changed
from "selected-index" to "select-item" resulting in
on_user_changed() not being called anymore leaving the apply button
insensitive.

Closes: https://gitlab.gnome.org/GNOME/calls/-/issues/653

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:24 +02:00
Evangelos Ribeiro Tzaras 1159c5135f gschema: Reword confusing always-allow-sdes key description
Closes: https://gitlab.gnome.org/GNOME/calls/-/issues/624

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:24 +02: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
Evangelos Ribeiro Tzaras 43f48ff2c3 Document and release 47~alpha.0 2024-06-29 11:43:23 +02:00
Evangelos Ribeiro Tzaras 936d362873 Document and release 45.0 2023-09-24 07:21:29 +02:00
Evangelos Ribeiro Tzaras 471f3ec4cd Document and release 45~rc.0 2023-09-02 11:24:04 +02:00
Evangelos Ribeiro Tzaras 0b0dc68000 build: Install .plugin files
Without them we cannot load plugins from the installed location.

Closes: #585

Fixes: 42b456f03a
2023-06-13 18:56:03 +02:00
Evangelos Ribeiro Tzaras 6987d0f1e3 plugin-manager: Add debugging to init() 2023-06-13 18:56:03 +02:00
Evangelos Ribeiro Tzaras 7d3b5afad9 application: Reindent struct members
Split into separate commit to reduce diff noise.
2023-05-20 04:04:50 +02:00
Evangelos Ribeiro Tzaras d3e42c93cd refactor: Switch to CallsPluginManager 2023-05-20 04:04:50 +02:00
Evangelos Ribeiro Tzaras 37b208f040 test-plugins: Switch to CallsPluginManager 2023-05-20 04:04:50 +02:00
Evangelos Ribeiro Tzaras 1b3f8ca20c Introduce CallsPluginManager 2023-05-20 04:04:48 +02:00
Evangelos Ribeiro Tzaras 3f5d570d4f Introduce CallsPlugin
A convenience class to query information about plugins and to allow
loading and unloading.
2023-05-15 09:56:28 +02:00
Evangelos Ribeiro Tzaras daf2981d19 dummy: Reword plugin information 2023-05-15 09:56:28 +02:00
Evangelos Ribeiro Tzaras 3a7b5f0c95 mm: Reword plugin information 2023-05-15 09:56:28 +02:00
Evangelos Ribeiro Tzaras 18c186b732 ofono: Reword plugin information 2023-05-15 09:56:28 +02:00
Evangelos Ribeiro Tzaras c2375a0c37 sip: Reword plugin information 2023-05-15 09:56:28 +02:00
Evangelos Ribeiro Tzaras 42b456f03a po: Add plugin desktop files
Calls preferences will show the name and description of a plugin,
so they should be translatable.
2023-05-15 09:56:28 +02:00
Evangelos Ribeiro Tzaras 22bcd46a26 build: Define po_dir variable 2023-05-15 09:56:28 +02:00
Evangelos Ribeiro Tzaras 4598eaa020 test-manager: Codestyle 2023-05-15 09:56:28 +02:00
Evangelos Ribeiro Tzaras e26e6640d8 test-application: Use dummy plugin
The test should not try communicating with any modem through ModemManager.

Fixes: #576
2023-05-12 16:46:30 +00:00
Evangelos Ribeiro Tzaras 9c5d7a58a1 sip-provider: Add debugging to password lookup 2023-05-12 18:06:34 +02:00
Evangelos Ribeiro Tzaras b32f3185a1 ci: Allow nightly jobs to fail
Apparently the publish jobs try to run even though the needed flatpak
job failed, so disable these too.

Fixes: b550617de2
2023-05-10 20:37:41 +02:00
Evangelos Ribeiro Tzaras 3e699275a4 mm-origin: Don't unref origin in call_deleted_cb
Fixes: 72a85d62fa
Closes: #573
2023-05-10 18:00:42 +00:00
Evangelos Ribeiro Tzaras 037d2c55f6 srtp-utils: Pass MKI length into error message
Fixes: 4937723541
2023-05-09 09:23:39 +00:00
Evangelos Ribeiro Tzaras 509456cb50 ci: Build tarball for tags 2023-05-09 07:44:09 +00:00
Evangelos Ribeiro Tzaras e80abf713a tests: Use g_test_init instead of gtk_test_init
gtk_test_init() ends up calling gtk_init() which tries opening
the default display. CI jobs sometimes seem to trip over this
even when run through xvfb-run. Therefore we use g_test_init()
instead.
2023-05-09 07:44:09 +00:00
Evangelos Ribeiro Tzaras b550617de2 ci: Allow flatpak jobs to fail
They have been a bit flaky lately, especially the arm64 job.
2023-05-09 09:16:11 +02:00
Evangelos Ribeiro Tzaras 61b81a285c mm-provider: Don't warn about cancelled mm_manager_new()
It is cancelled when disposing and does not warrant a warning.
2023-05-01 09:35:10 +02:00
Evangelos Ribeiro Tzaras e9452a394a Document and release 45~alpha.0 2023-04-25 11:19:18 +02:00
Evangelos Ribeiro Tzaras c6ea3adf64 manager: Respect object life cycle for signal handlers 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras f7dd62c0bd contacts-provider: Disconnect signals on finalize 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras c7ba302b18 account-row: Guard calls_account_row_new() against invalid provider 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 4576547c20 sip-origin: Prefer named constant over magic numbers 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 5362d1c975 sip-origin: Don't leak address 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 0e753816c9 sip-origin: Include SIP address in debugging
This makes it easier to see if all accounts are being disposed
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras f7745f50bd sip-origin: Keep sofia running to allow unregistering on dispose
sofia-sip needs to keep iterating its' main loop in order to
unregister as well as process the response from the server.

Closes: #554
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 8b3eccd1b7 sip-origin: Use g_clear_pointer() instead of emulating it 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 3076f913e7 manager: Clear providers after origins
Fixes a segmentation fault on shutdown in nua_unregister()
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 23e9cca320 main-window: Use gtk_widget_destroy() for windows
Top level widgets should typically call gtk_widget_destroy()
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 47bb3aaa62 account-overview: Respect object life cycle for signal handlers
Prevents the following failed assertion when shutting down Calls:

CallsAccountOverview:ERROR:../src/calls-account-overview.c:222:update_account_list: assertion failed: (CALLS_IS_ACCOUNT_OVERVIEW (self))
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 34d4e854bc manager: Respect object life cycle for signal handlers
Don't call signal handlers after the manager has been disposed.
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras f485215a9f application: Initialize objects before parsing options
This helps making object life cycles clearer and
with logging already set up we won't miss any early debugging messages.
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras d690fe5f68 application: Handle setting verbosity first
We want logging verbosity to be set before other command line options
are handled as we might be missing messages otherwise.
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 813103e684 application: Don't leak CallsManager 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 2f3f55c831 new-call-box: Don't leak CallsOrigin
get_selected_origin () does not need to take a reference on CallsOrigin
2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras ea5d7038e7 new-call-box: Use STR_IS_NULL_OR_EMPTY macro 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 0452d8a2bf manager: Use STR_IS_NULL_OR_EMPTY macro 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 3e43ba2975 call-window: Remove dead code 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 2550141585 application: Remove unused macro 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 12161080bc test-manager: Remove unused include 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 62f6f75667 test-manager: Remove unused variable 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 4e900e1ac5 main-window: Codestyle 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 0261271560 main-window: Sort includes 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 9ff06561e8 resources: Sort alphabetically 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras 0cb25d9e3c build: Sort enum headers 2023-04-18 08:34:39 +00:00
Evangelos Ribeiro Tzaras cf52fbba67 test-contacts: Add more test cases
Testing lookup of both empty string and NULL ensures we won't regress.
2023-04-13 06:01:05 +00:00
Evangelos Ribeiro Tzaras 23ee0475dd best-match: Don't special case NULL best match
We always get a valid best match, even for NULL or empty ids,
so there is no more need to special case it.
2023-04-13 06:01:05 +00:00
Evangelos Ribeiro Tzaras 830906f57a contacts-provider: Handle NULL and empty strings graceful in lookup
Fixes a crash where we asserted on best match when the id was NULL or
empty.

Closes: #567
2023-04-13 06:01:05 +00:00
Evangelos Ribeiro Tzaras 10d74634ba contacts-provider: Simplify refcounting in lookup_id()
g_autoptr usage was a bit pointless here since
calls_contacts_provider_lookup_id() is transfer full
2023-04-13 06:01:05 +00:00
Evangelos Ribeiro Tzaras ac2dc8573d best-match: Add gtk-doc annotations to the public API
Notably this adds ownership and nullable annotations, where appropriate.
2023-04-13 06:01:05 +00:00
Evangelos Ribeiro Tzaras 3fb016f6b2 best-match: Allow both NULL and empty strings as phone number
This allows us to get rid of some special casing when retrieving
primary and secondary display information.
2023-04-13 06:01:05 +00:00
Evangelos Ribeiro Tzaras 94cfbd83b2 sip-provider: Chain up to constructed early 2023-04-12 09:17:40 +00:00
Evangelos Ribeiro Tzaras 243753d064 sip-provider: Improve debugging of account loading
This should help diagnosing why the flatpak sometimes fails to add SIP accounts.
2023-04-12 09:17:40 +00:00
Evangelos Ribeiro Tzaras 208438236c sip-provider: Don't leak keyfile
The reference taken in new_origin_from_keyfile_secret() was never
released in the async callback.
2023-04-12 09:17:40 +00:00
Evangelos Ribeiro Tzaras c84f2a2bd9 sip-provider: Remove unused variables 2023-04-12 09:17:40 +00:00
Evangelos Ribeiro Tzaras 13d57f19bf tests: Add CALLS_SIP_ACCOUNT_FILE to environment
Otherwise the application test will try using the users
configured SIP accounts.
2023-04-10 08:03:21 +02:00
Evangelos Ribeiro Tzaras 36fdbc28e6 emergency-calls-manager: Don't leak origin
g_list_model_get_item is transfer full
2023-04-09 16:08:22 +02:00
Evangelos Ribeiro Tzaras 0de7599567 emergency-calls-manager: Add missing argument for on_origins_changed handler
The "removed" argument of the models "items-changed" signal was
forgotten making it misbehave when origins do get removed:

GLib-GObject[1287799]: WARNING: invalid (NULL) pointer instance
GLib-GObject[1287799]:CRITICAL: g_signal_connect_object: assertion 'G_TYPE_CHECK_INSTANCE (instance)' failed
2023-04-09 16:08:00 +02:00
Evangelos Ribeiro Tzaras 9a52c57ffe emergency-calls-manager: Fix indentation
By running uncrustify
2023-04-09 12:18:55 +02:00
Evangelos Ribeiro Tzaras 3647f8f8c2 Update libcall-ui to v0.1.0
From NEWS:
  * Breaking change: Drop deprecated call states
  * Fix audio-mode reset
  * Improve keyboard navigation

Also includes updates to translations.
2023-04-08 18:53:30 +02:00
Evangelos Ribeiro Tzaras 8963218478 Document and release 44.0 2023-03-17 11:36:29 +01:00
Evangelos Ribeiro Tzaras d6619d68c9 tests: Don't override XDG_CONFIG_HOME
It was introduced in 4b51f340c8
to prevent accessing user home during tests:

The only place where this the home is currently accessed is when loading
SIP accounts and these can already be overriden with
CALLS_SIP_ACCOUNT_FILE.

It seems that XDG_CONFIG_HOME is propagated to the flatpak runner,
even though it was only overriden for the test suite.

  ========================================================================
  Building module calls in /builds/devrtz/calls/.flatpak-builder/build/calls-1
  ========================================================================
  Error: module calls: Error opening directory '/builds/devrtz/calls/_build/calls': Permission denied

Reported at https://gitlab.gnome.org/Infrastructure/GitLab/-/issues/596#note_1654082
2023-02-12 10:26:48 +01:00
Evangelos Ribeiro Tzaras d790e35bc3 sip-provider: Remove duplicated check
init() already checked if CALLS_SIP_TEST was set,
no need to do it again in constructed()
2023-02-12 10:26:46 +01:00
Evangelos Ribeiro Tzaras 4d402d2f79 sip-provider: Use STR_IS_NULL_OR_EMPTY macro 2023-02-12 10:26:46 +01:00
Evangelos Ribeiro Tzaras e4bd4580e7 tests: Add application shutdown tests 2023-02-09 19:07:32 +00:00
Evangelos Ribeiro Tzaras d901e4c8a6 application: Delay shutting down until database is done
Operations on the database are not cancellable, so we need to ensure any
critical code (such as database migration) has completed.
Otherwise we risk leaving the database in a locked state (or worse):

WARNING **: 09:24:53.428: Failed to determine schema version: sqlite3_prepare_v2 failed: database is locked: CREATE TABLE IF NOT EXISTS _gom_version (version INTEGER);
2023-02-09 19:07:32 +00:00
Evangelos Ribeiro Tzaras fb07e0122d record-store: Emit signal once DB is migrated
This helps letting CallsApplication decide if it should run a few more
iterations to ensure any critical code finishes executing.
2023-02-09 19:07:32 +00:00
Evangelos Ribeiro Tzaras 4b51f340c8 tests: Prevent tests from accessing user home
User files such as call records and VoIP account configs should be left
alone during tests.
2023-02-09 19:07:32 +00:00
Evangelos Ribeiro Tzaras 01b8a1c873 record-store: Allow overriding database location
By setting the environment variable CALLS_RECORD_DIR the database
location can be overriden which is useful for testing.
2023-02-09 19:07:32 +00:00
Evangelos Ribeiro Tzaras 4ff33a4566 ci: Update debian image 2023-02-01 08:48:35 +01:00
Evangelos Ribeiro Tzaras a1892f9421 debian: Ran wrap-and-sort -ast 2023-02-01 08:48:35 +01:00
Evangelos Ribeiro Tzaras 767fbdad01 d/control: Add svg pixbufloader
As needed for the application test.
2023-02-01 08:48:35 +01:00
Evangelos Ribeiro Tzaras 656c8f96bf account-overview: Respect object lifecycle for signals 2023-02-01 08:48:35 +01:00
Evangelos Ribeiro Tzaras ffc3c984b0 application: Respect object lifecycle for signals 2023-02-01 08:48:35 +01:00
Evangelos Ribeiro Tzaras 6ab5905a9b call-window: Respect object lifecycle for signals 2023-02-01 08:48:35 +01:00
Evangelos Ribeiro Tzaras 63d065118f main-window: Respect object lifecycle for signals 2023-02-01 08:48:35 +01:00
Evangelos Ribeiro Tzaras e168170f9e new-call-box: Respect object lifecycle for signals 2023-02-01 08:48:35 +01:00
Evangelos Ribeiro Tzaras 46736a63fa record-store: Ensure store stays alive during async tasks
As GOM does not allow us to cancel asynchronous tasks,
we need to hold references temporarily.
2023-02-01 08:48:35 +01:00