···
1
+
diff --git a/src/backend/plugins/config-gnome/config-gnome.c b/src/backend/plugins/config-gnome/config-gnome.c
2
+
index 820827b..338e269 100644
3
+
--- a/src/backend/plugins/config-gnome/config-gnome.c
4
+
+++ b/src/backend/plugins/config-gnome/config-gnome.c
5
+
@@ -85,11 +85,60 @@ px_config_gnome_init (PxConfigGnome *self)
6
+
if (!self->available)
9
+
- self->proxy_settings = g_settings_new ("org.gnome.system.proxy");
10
+
- self->http_proxy_settings = g_settings_new ("org.gnome.system.proxy.http");
11
+
- self->https_proxy_settings = g_settings_new ("org.gnome.system.proxy.https");
12
+
- self->ftp_proxy_settings = g_settings_new ("org.gnome.system.proxy.ftp");
13
+
- self->socks_proxy_settings = g_settings_new ("org.gnome.system.proxy.socks");
15
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
16
+
+ g_autoptr(GSettingsSchema) schema;
17
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
18
+
+ g_settings_schema_source_get_default(),
20
+
+ schema = g_settings_schema_source_lookup(schema_source,
21
+
+ "org.gnome.system.proxy", FALSE);
22
+
+ self->proxy_settings = g_settings_new_full(schema, NULL, NULL);
25
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
26
+
+ g_autoptr(GSettingsSchema) schema;
27
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
28
+
+ g_settings_schema_source_get_default(),
30
+
+ schema = g_settings_schema_source_lookup(schema_source,
31
+
+ "org.gnome.system.proxy.http",
33
+
+ self->http_proxy_settings = g_settings_new_full(schema, NULL, NULL);
36
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
37
+
+ g_autoptr(GSettingsSchema) schema;
38
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
39
+
+ g_settings_schema_source_get_default(),
41
+
+ schema = g_settings_schema_source_lookup(schema_source,
42
+
+ "org.gnome.system.proxy.https",
44
+
+ self->https_proxy_settings = g_settings_new_full(schema, NULL, NULL);
47
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
48
+
+ g_autoptr(GSettingsSchema) schema;
49
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
50
+
+ g_settings_schema_source_get_default(),
52
+
+ schema = g_settings_schema_source_lookup(schema_source,
53
+
+ "org.gnome.system.proxy.ftp",
55
+
+ self->ftp_proxy_settings = g_settings_new_full(schema, NULL, NULL);
58
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
59
+
+ g_autoptr(GSettingsSchema) schema;
60
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
61
+
+ g_settings_schema_source_get_default(),
63
+
+ schema = g_settings_schema_source_lookup(schema_source,
64
+
+ "org.gnome.system.proxy.socks",
66
+
+ self->socks_proxy_settings = g_settings_new_full(schema, NULL, NULL);
71
+
diff --git a/tests/config-gnome-test.c b/tests/config-gnome-test.c
72
+
index f80914a..118d429 100644
73
+
--- a/tests/config-gnome-test.c
74
+
+++ b/tests/config-gnome-test.c
75
+
@@ -60,11 +60,60 @@ static void
76
+
fixture_setup (Fixture *self,
79
+
- self->proxy_settings = g_settings_new ("org.gnome.system.proxy");
80
+
- self->http_proxy_settings = g_settings_new ("org.gnome.system.proxy.http");
81
+
- self->https_proxy_settings = g_settings_new ("org.gnome.system.proxy.https");
82
+
- self->ftp_proxy_settings = g_settings_new ("org.gnome.system.proxy.ftp");
83
+
- self->socks_proxy_settings = g_settings_new ("org.gnome.system.proxy.socks");
85
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
86
+
+ g_autoptr(GSettingsSchema) schema;
87
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
88
+
+ g_settings_schema_source_get_default(),
90
+
+ schema = g_settings_schema_source_lookup(schema_source,
91
+
+ "org.gnome.system.proxy", FALSE);
92
+
+ self->proxy_settings = g_settings_new_full(schema, NULL, NULL);
95
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
96
+
+ g_autoptr(GSettingsSchema) schema;
97
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
98
+
+ g_settings_schema_source_get_default(),
100
+
+ schema = g_settings_schema_source_lookup(schema_source,
101
+
+ "org.gnome.system.proxy.http",
103
+
+ self->http_proxy_settings = g_settings_new_full(schema, NULL, NULL);
106
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
107
+
+ g_autoptr(GSettingsSchema) schema;
108
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
109
+
+ g_settings_schema_source_get_default(),
111
+
+ schema = g_settings_schema_source_lookup(schema_source,
112
+
+ "org.gnome.system.proxy.https",
114
+
+ self->https_proxy_settings = g_settings_new_full(schema, NULL, NULL);
117
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
118
+
+ g_autoptr(GSettingsSchema) schema;
119
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
120
+
+ g_settings_schema_source_get_default(),
122
+
+ schema = g_settings_schema_source_lookup(schema_source,
123
+
+ "org.gnome.system.proxy.ftp",
125
+
+ self->ftp_proxy_settings = g_settings_new_full(schema, NULL, NULL);
128
+
+ g_autoptr(GSettingsSchemaSource) schema_source;
129
+
+ g_autoptr(GSettingsSchema) schema;
130
+
+ schema_source = g_settings_schema_source_new_from_directory("@gds@",
131
+
+ g_settings_schema_source_get_default(),
133
+
+ schema = g_settings_schema_source_lookup(schema_source,
134
+
+ "org.gnome.system.proxy.socks",
136
+
+ self->socks_proxy_settings = g_settings_new_full(schema, NULL, NULL);