diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2017-05-30 20:09:56 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2017-06-06 15:20:56 +0200 |
commit | 2c19b1f778af9b0e4200b063d3d0ed064c17b6b1 (patch) | |
tree | 62703d49c1fb5ff9517a5a018c286889c83725ba /src | |
parent | 8ad868cea27f2ab043e5dfb544d5d70de34f60c2 (diff) |
iface-modem: if bands, capabilities or modes change, refresh signal
We also remove the explicit refresh request from the Cinterion plugin,
as this is a generic action applicable to all modems that require
polling for signal quality and/or access technology.
Diffstat (limited to 'src')
-rw-r--r-- | src/mm-iface-modem.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/mm-iface-modem.c b/src/mm-iface-modem.c index 223f2785..7f040d1d 100644 --- a/src/mm-iface-modem.c +++ b/src/mm-iface-modem.c @@ -2058,8 +2058,12 @@ set_current_capabilities_ready (MMIfaceModem *self, if (!MM_IFACE_MODEM_GET_INTERFACE (self)->set_current_capabilities_finish (self, res, &error)) g_dbus_method_invocation_take_error (ctx->invocation, error); - else + else { + /* Capabilities updated: explicitly refresh signal and access technology */ + mm_iface_modem_refresh_signal (self); mm_gdbus_modem_complete_set_current_capabilities (ctx->skeleton, ctx->invocation); + } + handle_set_current_capabilities_context_free (ctx); } @@ -2436,8 +2440,11 @@ handle_set_current_bands_ready (MMIfaceModem *self, if (!mm_iface_modem_set_current_bands_finish (self, res, &error)) g_dbus_method_invocation_take_error (ctx->invocation, error); - else + else { + /* Bands updated: explicitly refresh signal and access technology */ + mm_iface_modem_refresh_signal (self); mm_gdbus_modem_complete_set_current_bands (ctx->skeleton, ctx->invocation); + } handle_set_current_bands_context_free (ctx); } @@ -2752,8 +2759,11 @@ handle_set_current_modes_ready (MMIfaceModem *self, if (!mm_iface_modem_set_current_modes_finish (self, res, &error)) g_dbus_method_invocation_take_error (ctx->invocation, error); - else + else { + /* Modes updated: explicitly refresh signal and access technology */ + mm_iface_modem_refresh_signal (self); mm_gdbus_modem_complete_set_current_modes (ctx->skeleton, ctx->invocation); + } handle_set_current_modes_context_free (ctx); } |