diff options
author | Lubomir Rintel <lkundrak@v3.sk> | 2017-02-20 19:05:42 +0100 |
---|---|---|
committer | Lubomir Rintel <lkundrak@v3.sk> | 2017-02-27 11:16:45 +0100 |
commit | 8fce72360e36cef4551936c64e079fd666f6fd96 (patch) | |
tree | bcd0ace285fbf02516e93e6357c48d53e8dc323a | |
parent | b47340fd3f70c2636bb5dae56a5310b59b88cf7a (diff) | |
download | NetworkManager-8fce72360e36cef4551936c64e079fd666f6fd96.tar.gz |
tui/edit-connection-list: add routine to recommit connections in a list
This is useful when master connections are saved potentially influencing
how slave connections are serialized.
-rw-r--r-- | clients/tui/nmt-edit-connection-list.c | 27 | ||||
-rw-r--r-- | clients/tui/nmt-edit-connection-list.h | 2 |
2 files changed, 29 insertions, 0 deletions
diff --git a/clients/tui/nmt-edit-connection-list.c b/clients/tui/nmt-edit-connection-list.c index a1a59e0149..e90140b3c0 100644 --- a/clients/tui/nmt-edit-connection-list.c +++ b/clients/tui/nmt-edit-connection-list.c @@ -319,6 +319,33 @@ listbox_activated (NmtNewtWidget *listbox, gpointer list) edit_clicked (NMT_NEWT_BUTTON (priv->edit), list); } + +static void +connection_saved (GObject *conn, + GAsyncResult *result, + gpointer user_data) +{ + nm_remote_connection_save_finish (NM_REMOTE_CONNECTION (conn), result, NULL); +} + +void +nmt_edit_connection_list_recommit (NmtEditConnectionList *list) +{ + NmtEditConnectionListPrivate *priv = NMT_EDIT_CONNECTION_LIST_GET_PRIVATE (list); + NMConnection *conn; + GSList *iter; + + for (iter = priv->connections; iter; iter = iter->next) { + conn = iter->data; + + if ( NM_IS_REMOTE_CONNECTION (conn) + && (nm_remote_connection_get_unsaved (NM_REMOTE_CONNECTION (conn)) == FALSE)) { + nm_remote_connection_save_async (NM_REMOTE_CONNECTION (conn), + NULL, connection_saved, NULL); + } + } +} + static void nmt_edit_connection_list_finalize (GObject *object) { diff --git a/clients/tui/nmt-edit-connection-list.h b/clients/tui/nmt-edit-connection-list.h index fd492bce73..241bbe3ab4 100644 --- a/clients/tui/nmt-edit-connection-list.h +++ b/clients/tui/nmt-edit-connection-list.h @@ -52,4 +52,6 @@ typedef gboolean (*NmtEditConnectionListFilter) (NmtEditConnectionList *list, NMConnection *connection, gpointer user_data); +void nmt_edit_connection_list_recommit (NmtEditConnectionList *list); + #endif /* NMT_EDIT_CONNECTION_LIST_H */ |