Evangelos Ribeiro Tzaras
98d66743a1
application: Don't add a provider if one is already present
...
If we initially invoked `gnome-calls -p sip` and later invoke
`gnome-calls sip:user@host` we don't expect to have the default MM provider
added.
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
3f3b108cea
new-call-box: Honour auto-use-default-origins setting
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
fef1531749
application: Add CallsSettings class
...
This makes it easy to access application wide settings.
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
0b2f146053
manager: support multiple providers
...
This includes the following changes:
- Introduce a `providers` hash table to keep track of multiple CallProvider's
and remove the `provider` member
- Remove `calls_manager_get_provider()` and `calls_manager_set_provider()`
in favour of `calls_manager_add_provider()`, `calls_manager_remove_provider()`
and `calls_manager_has_provider()`
- Introduce a `origins` GListStore to keep track of available origins.
`origins` is updated in `items_changed_cb()` when the origins of any
CallsProvider are updated.
- Adapt to changes with respect to `calls_manager_get_origins()`.
- Introduce `origins_by_protocol` hash table to keep track of available origins
per protocol.
- Adjust tests
- We temporarily break country code lookup which was handled previously
with the "default-origin" mechanism. We will add it back to the CallsSettings
class which will provide a better application-wide mechanism.
2021-06-01 14:52:18 +02:00
Evangelos Ribeiro Tzaras
0c966fdf83
origin: Add API to query supported protocols
...
This will allow selecting a suitable origin when placing outgoing calls.
2021-05-28 17:02:02 +02:00
Evangelos Ribeiro Tzaras
7ad0f4cdd6
provider: Add API to query supported protocols
...
These are the protocols that the provider plugin may support. The origins
must be queried independently whether or not they support any given protocol.
Example: A SIP origin/account may or may not support the "tel" protocol.
2021-05-28 17:02:02 +02:00
Evangelos Ribeiro Tzaras
6d8c227b24
calls-record: Introduce the protocol property
...
This is in preparation for supporting multiple providers (which are handling
different protocols/URI schemes).
This commit also changes the underlying database schema.
2021-05-28 17:02:02 +02:00
Evangelos Ribeiro Tzaras
53f69b06dd
call: Introduce protocol property
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
503e5c2154
test: Add util tests
...
Unit test the `get_protocol_from_address()` function family.
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
1e84812938
util: Add simple API to query protocol
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
1def4c3585
plugins: provider: Use CallsOrigin instead of derived types for GListStore
...
Otherwise we run into trouble when using `g_list_store_find()`
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
80ec7d8a35
account-provider: Add debugging in the public functions
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
a888ac54b1
mm: origin: Try using own number as the origin name
...
This will make it easier to select an origin for outgoing calls. Without this
change the name might be "0" which is not very expressive.
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
fecdc1fff8
cleanup: Fix calls_origin_get_name() related memory leaks
...
Document calls_origin_get_name() correctly as transfer-full.
Additionaly fix related memory leaks.
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
1543802c88
provider: whitespace and indentation
2021-05-28 13:18:24 +02:00
Evangelos Ribeiro Tzaras
2ac43f391a
manager: Set peas search path only once
...
There is no need to redo it for every added plugin.
2021-05-20 02:52:11 +02:00
Evangelos Ribeiro Tzaras
3121963220
Document and release 0.3.3
2021-05-19 18:15:00 +02:00
Mohammed Sadiq
b1278f6140
build: Avoid building files multiple times
...
We don't have to build each source for every test, instead we could
create a static library link it with every test, which will be a lot
faster.
2021-05-17 20:00:04 +05:30
Evangelos Ribeiro Tzaras
1db1ba6ca9
test: Add account tests
2021-05-04 06:48:36 +02:00
Evangelos Ribeiro Tzaras
95f16cb527
sip: provider: Implement CallsAccountProvider interface
2021-05-04 06:44:43 +02:00
Evangelos Ribeiro Tzaras
14ef4f6b17
Add CallsAccountProviderInterface
...
This interface should by implemented by providers for which the user can add
or remove accounts.
2021-05-04 06:41:43 +02:00
Evangelos Ribeiro Tzaras
36cd9bd122
sip: provider: return origin in calls_sip_provider_add_origin()
2021-05-04 05:58:41 +02:00
Evangelos Ribeiro Tzaras
a6cb02a4c9
sip: provider: codestyle
2021-05-04 05:58:41 +02:00
Evangelos Ribeiro Tzaras
3edd6d002b
sip: origin: Implement CallsAccountsInterface
2021-05-04 05:57:42 +02:00
Evangelos Ribeiro Tzaras
781adaddee
sip: origin: Use CallsAccountState instead of SipAccountState
2021-05-04 05:57:42 +02:00
Evangelos Ribeiro Tzaras
0e5bd82568
Add CallsAccountInterface
...
This interface should be implemented by origins which represent an online
account. This means they must have a implement a property representing the
credentials and another representing the account state (online, offline, etc).
2021-05-04 05:57:42 +02:00
Evangelos Ribeiro Tzaras
5d0de3d299
sip: origin: Use CallsCredentials and adapt to changes
...
All parts not related to credentials are now being set when creating the nua
handles and then updated with nua_set_params() when the credentials get updated.
2021-05-04 05:57:06 +02:00
Evangelos Ribeiro Tzaras
3f72d34c49
Add CallsCredentials class and use it in CallsSipProvider
...
CallsCredentials is a dumb container to store account credentials.
This is done in preparation for the account management in the UI.
2021-05-04 05:57:06 +02:00
Evangelos Ribeiro Tzaras
d6916b3510
sip: media-pipeline: Do not set the stream properties prematurely
2021-05-04 05:57:06 +02:00
Evangelos Ribeiro Tzaras
2b5811dc7b
flatpak: change URL for boost
...
The old one is giving a 403 Forbidden semi regularly.
2021-05-03 12:18:42 +02:00
Evangelos Ribeiro Tzaras
06076a864a
sip: media-pipeline: Fix memory leak in error path
2021-05-02 02:36:31 +02:00
Evangelos Ribeiro Tzaras
9cd13ca681
sip: media-pipeline: Fix memory leak
2021-05-02 02:36:25 +02:00
Evangelos Ribeiro Tzaras
21e72c9e12
sip: origin: Fix nua_authenticate call
...
nua_* calls need TAG_END or TAG_NULL as the final parameter.
2021-05-01 13:59:32 +02:00
Evangelos Ribeiro Tzaras
0d467244b2
test: sip: Connect to state-changed signal
...
instead of relying so much on g_timeout_add()
2021-04-30 09:42:44 +02:00
Evangelos Ribeiro Tzaras
95bde23f2e
README: Include code coverage badge
2021-04-27 13:17:55 +00:00
Evangelos Ribeiro Tzaras
f9a324fc6f
manager: add debug messages when adding or removing origins
2021-04-27 11:39:09 +02:00
Evangelos Ribeiro Tzaras
8a4d408f3f
manager: remove unused CallsProvider argument from functions
...
Both add_origin() and remove_origin() don't really need it.
2021-04-27 11:39:09 +02:00
Evangelos Ribeiro Tzaras
b71227aae5
call: doc: Indicate ownership in docstrings
2021-04-27 11:38:58 +02:00
Evangelos Ribeiro Tzaras
5ed24c4ed7
doc: Fix gtk-doc transfer annotations
2021-04-27 11:38:26 +02:00
Evangelos Ribeiro Tzaras
0c475a41dd
ci: Generate code coverage reports
2021-04-27 04:59:02 +02:00
Evangelos Ribeiro Tzaras
70f1df7e0e
build: separate version from the rest of the configuration data
...
This should make sure that we always have 'config.h' available and
should fix issues with flatpak build as seen in #257 :
`fatal error: config.h: No such file or directory`
2021-04-27 01:55:13 +02:00
Evangelos Ribeiro Tzaras
d7df1a4931
Revert "sip: build: depend on config.h"
...
This reverts commit 1a35d6544b
.
This has not actually fixed the issue completely. See follow up commit
2021-04-27 01:51:05 +02:00
Evangelos Ribeiro Tzaras
d0194fe534
manager: g_assert in static functions
2021-04-25 18:12:59 +02:00
Evangelos Ribeiro Tzaras
c2c3f64102
codestyle: new-call-box
2021-04-25 18:12:59 +02:00
Evangelos Ribeiro Tzaras
d65284acaa
codestyle: align function prototypes in calls-origin header
...
This makes it a easier on the eyes.
2021-04-25 18:12:59 +02:00
Evangelos Ribeiro Tzaras
868d9e36da
codestyle: get rid of CALLS_SET_PTR_PROPERTY macro
...
One more step towards fixing #214
In `calls-ofono-call.c` the changed code also adheres to the newly introduced
coding style.
2021-04-25 18:12:59 +02:00
Evangelos Ribeiro Tzaras
042478a8eb
call-record: Get rid of macros
...
While these macros are not too bad, they will still be removed for the sake
of consistency (no other purism project uses macros this heavily).
Fixes part of #214
2021-04-25 18:12:59 +02:00
Evangelos Ribeiro Tzaras
70cb120951
sip: fix typos
...
Thanks to lintian for pointing it out!
2021-04-23 15:35:14 +02:00
Evangelos Ribeiro Tzaras
1593dd299b
test: sip: Don't use DNS lookups
...
Otherwise build servers might not be happy.
2021-04-23 15:10:46 +02:00
Evangelos Ribeiro Tzaras
0389137df3
d/control: bump required libhandy
...
This was bumped for meson.build in 35f45d83
because of changes
to HdyAvatar
2021-04-23 13:27:03 +02:00