~khurshid-alam/unity-control-center/libnm-port-test

« back to all changes in this revision

Viewing changes to panels/network/connection-editor/ce-page-vpn.c

  • Committer: Khurshid Alam
  • Date: 2018-06-05 14:47:56 UTC
  • Revision ID: khurshid.alam@linuxmail.org-20180605144756-or0tftb2kddhvhq2
Update connection editor pages and wireless security from Gnome-3.26

Show diffs side-by-side

added added

removed removed

Lines of Context:
28
28
 
29
29
#include "ce-page-vpn.h"
30
30
#include "vpn-helpers.h"
31
 
#include "firewall-helpers.h"
32
31
 
33
32
G_DEFINE_TYPE (CEPageVpn, ce_page_vpn, CE_TYPE_PAGE)
34
33
 
35
 
static void
36
 
all_user_changed (GtkToggleButton *b, CEPageVpn *page)
37
 
{
38
 
        gboolean all_users;
39
 
        NMSettingConnection *sc;
40
 
 
41
 
        sc = nm_connection_get_setting_connection (CE_PAGE (page)->connection);
42
 
        all_users = gtk_toggle_button_get_active (b);
43
 
 
44
 
        g_object_set (sc, "permissions", NULL, NULL);
45
 
        if (!all_users)
46
 
                nm_setting_connection_add_permission (sc, "user", g_get_user_name (), NULL);
47
 
}
48
 
 
49
34
/* Hack to make the plugin-provided editor widget fit in better with
50
35
 * the control center by changing
51
36
 *
121
106
connect_vpn_page (CEPageVpn *page)
122
107
{
123
108
        const gchar *name;
124
 
        GtkWidget *widget;
125
 
        GtkWidget *heading;
126
109
 
127
110
        name = nm_setting_connection_get_id (page->setting_connection);
128
111
        gtk_entry_set_text (page->name, name);
129
112
        g_signal_connect_swapped (page->name, "changed", G_CALLBACK (ce_page_changed), page);
130
 
 
131
 
        widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder,
132
 
                                                     "all_user_check"));
133
 
        gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget),
134
 
                                      nm_setting_connection_get_num_permissions (page->setting_connection) == 0);
135
 
        g_signal_connect (widget, "toggled",
136
 
                          G_CALLBACK (all_user_changed), page);
137
 
 
138
 
        widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "combo_zone"));
139
 
        heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "heading_zone"));
140
 
        firewall_ui_setup (page->setting_connection, widget, heading, CE_PAGE (page)->cancellable);
141
 
        g_signal_connect_swapped (widget, "changed", G_CALLBACK (ce_page_changed), page);
142
 
 
143
113
}
144
114
 
145
115
static gboolean
148
118
          GError       **error)
149
119
{
150
120
        CEPageVpn *self = CE_PAGE_VPN (page);
151
 
        GtkWidget *widget;
152
121
 
153
122
        g_object_set (self->setting_connection,
154
123
                      NM_SETTING_CONNECTION_ID, gtk_entry_get_text (self->name),
155
124
                      NULL);
156
 
        widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "combo_zone"));
157
 
        firewall_ui_to_setting (self->setting_connection, widget);
158
125
 
159
126
        if (!nm_setting_verify (NM_SETTING (self->setting_connection), NULL, error))
160
127
                return FALSE;