Evangelos Ribeiro Tzaras
f74f4b6469
test: manager: Expanded *has_provider() testing
2021-06-11 17:52:56 +02:00
Evangelos Ribeiro Tzaras
b550160a0d
util: Make position argument in calls_find_store() optional
2021-06-11 17:52:43 +02:00
Evangelos Ribeiro Tzaras
736c17a4bc
sip: origin: Fix if condition in dispose()
...
This should make sure that origins go offline
2021-06-11 17:51:06 +02:00
Evangelos Ribeiro Tzaras
ccae753194
manager: codestyle
2021-06-11 17:50:42 +02:00
Evangelos Ribeiro Tzaras
ddcd91d3d9
manager: Fix whitespace
2021-06-11 17:50:22 +02:00
Evangelos Ribeiro Tzaras
9f9ea16509
dir-locals: Treat G_* macros as including a semicolon
...
Otherwise without appending a semicolon explicitly to the macros, emacs
will insist on indentation.
2021-06-11 17:20:48 +02:00
Evangelos Ribeiro Tzaras
9b5508c627
README: Reword plugin search directory section to be more accurate
2021-06-04 17:06:07 +00:00
Evangelos Ribeiro Tzaras
f81ed3d063
run: Add plugin search directory
...
This makes sure we can load the plugins from the build directory.
2021-06-04 17:06:07 +00:00
Evangelos Ribeiro Tzaras
c0ad87fdd4
desktop-file: Register as sip and sips URI scheme handler
...
Closes #229
2021-06-04 06:43:08 +00:00
Evangelos Ribeiro Tzaras
feaace73f4
meson: Use stricter compilation warnings and errors
...
All the previous commits make sure we don't fail building with these flags.
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
acc35ad224
main-window: Add default case to switch statement
...
As caught by compiling with `-Wswitch-default`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
90b598ed5b
record-store: Add default case to switch statements
...
As caught by compiling with `-Wswitch-default`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
f097a39e04
call-display: Add default case to switch statement
...
As caught by compiling with `-Wswitch-default`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
6c146897d4
mm: origin: Don't shadow props variable
...
As caught by compiling with `'-Wshadow`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
521979ef69
ofono: call: Don't shadow props variable
...
As caught by compiling with `-Wshadow`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
7988ddf85b
sip: media-pipeline: Don't shadow props variable
...
As caught by compiling with `-Wshadow`
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
2847508034
Fix missing-declarations warnings all over the codebase
...
As caught by compiling with `-Wmissing-declarations`
by either making functions static, or declaring them in the header.
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
96a7d901c1
Fix old-style warnings all over the codebase
...
As caught by compiling with `-Wold-style-definition` and `-Wstrict-prototypes`.
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
38abbc5b18
record-store: codestyle
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
9877f4469b
display: Fix typo
2021-06-03 19:46:45 +00:00
Evangelos Ribeiro Tzaras
588955b59e
display: codestyle
2021-06-03 19:46:45 +00:00
Guido Günther
6f93b48ef4
Expose call objects on DBus
...
This exports call objects on the session bus:
$ gdbus monitor --session -d sm.puri.Calls
…
/sm/puri/Calls: org.freedesktop.DBus.ObjectManager.InterfacesAdded (objectpath '/sm/puri/Calls/Call/1', {'sm.puri.Calls.Call': {'Inbound': <false>, 'State': <uint32 0>, 'Id': <''>, 'Party': <''>}})
/sm/puri/Calls/Call/1: org.freedesktop.DBus.Properties.PropertiesChanged ('sm.puri.Calls.Call', {'Id': <'0987654321'>, 'Inbound': <true>, 'State': <uint32 5>}, @as [])
/sm/puri/Calls: org.freedesktop.DBus.ObjectManager.InterfacesRemoved (objectpath '/sm/puri/Calls/Call/1', ['sm.puri.Calls.Call'])
$ gdbus call --session --dest sm.puri.Calls --object-path /sm/puri/Calls/Call/1 --method sm.puri.Calls.Call.Hangup
Currenty hangup and accept methods are implemented as well as exposing
the current call state.
2021-06-03 14:29:36 +00:00
Evangelos Ribeiro Tzaras
8d937bedf6
Initial DBus API
2021-06-03 14:29:36 +00:00
Vittorio Monti
17f684db5e
po: Update Italian translation
2021-06-03 13:58:18 +00:00
Yuri Chornoivan
e744a3b77f
po: Update Ukrainian translation
2021-06-03 13:36:44 +00:00
Evangelos Ribeiro Tzaras
2ae79ea06f
Update README: Explain how to start calls without installing
...
Additionally get rid of the /usr/local/stow/calls-git prefix.
2021-06-03 13:27:56 +02:00
Evangelos Ribeiro Tzaras
04b81dd664
Add run script to the build directory
...
This allows starting calls by invoking something like _build/run.
Closes #292
2021-06-03 13:13:33 +02:00
Evangelos Ribeiro Tzaras
3d51d627d3
meson: Compile schemas in build directory
...
To make it easier to run from the build directory without having to install.
2021-06-03 12:54:46 +02:00
Evangelos Ribeiro Tzaras
23944acc91
d/control: Add libxml2-utils
...
We are requesting xml-stripblanks in gresources.xml and are missing
xmllint without this dependency.
2021-06-03 12:43:01 +02:00
Evangelos Ribeiro Tzaras
538d98f21d
ci: disable flatpak build
...
Reenable the build after the build failures from #291 have been sorted out.
2021-06-02 12:22:43 +02:00
Anders Jonsson
f2ea88f029
po: Update Swedish translation
2021-06-01 22:01:11 +02:00
Evangelos Ribeiro Tzaras
cb533aabb7
manager: Update country code
...
By connecting to the "notify::country-code" signal of our origins.
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
7d3426598d
application: settings: Add country code setting
...
This helps to unbreak country code lookup (see 5fd39121).
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
4990529c6c
tests: manager: Add multiple provider tests
...
The test suite can be further expanded later. For now this suffices to
have some basic regression testing for multiple provider support in place.
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
dde4bd8abf
sip: provider: Don't warn when trying to add account multiple times
...
A g_debug() will suffice which will let us get rid of g_test_expect_message() to
as we don't need to guard against the warning anymore.
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
9c91a33604
test: manager: Use more appropriate g_assert_*()
calls
2021-06-01 14:52:23 +02:00
Evangelos Ribeiro Tzaras
44f2002f86
manager: Differentiate the NO_ORIGIN state
...
This avoids confusion when only the SIP plugin is loaded, but no account
is being used.
For this we introduce two new functions in the abstract CallsProvider class:
`is_modem()` to indicate whether the the provider deals with PTSN telephony and
`is_operational()` which by default simply checks if there any avalaible origins
2021-06-01 14:52:23 +02:00
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