static void gs_plugin_fwupd_notify_status_cb (GObject *object, GParamSpec *pspec, GsPlugin *plugin) { GsPluginData *priv = gs_plugin_get_data (plugin); /* nothing in progress */ if (priv->app_current == NULL) { g_debug ("fwupd status: %s", fwupd_status_to_string (fwupd_client_get_status (priv->client))); return; } g_debug ("fwupd status for %s: %s", gs_app_get_unique_id (priv->app_current), fwupd_status_to_string (fwupd_client_get_status (priv->client))); switch (fwupd_client_get_status (priv->client)) { case FWUPD_STATUS_DECOMPRESSING: case FWUPD_STATUS_DEVICE_RESTART: case FWUPD_STATUS_DEVICE_WRITE: case FWUPD_STATUS_DEVICE_VERIFY: gs_app_set_state (priv->app_current, AS_APP_STATE_INSTALLING); break; case FWUPD_STATUS_IDLE: g_clear_object (&priv->app_current); break; default: break; } }
static void fu_idle_set_status (FuIdle *self, FwupdStatus status) { if (self->status == status) return; self->status = status; g_debug ("status now %s", fwupd_status_to_string (status)); g_object_notify (G_OBJECT (self), "status"); }