Merge lp:~macslow/notify-osd/gsettings-port into lp:notify-osd/oneiric
- gsettings-port
- Merge into oneiric
Status: | Merged |
---|---|
Approved by: | Mirco Müller |
Approved revision: | 443 |
Merged at revision: | 442 |
Proposed branch: | lp:~macslow/notify-osd/gsettings-port |
Merge into: | lp:notify-osd/oneiric |
Diff against target: |
570 lines (+73/-355) 4 files modified
configure.in (+1/-7) src/Makefile.am (+0/-2) src/defaults.c (+69/-343) src/defaults.h (+3/-3) |
To merge this branch: | bzr merge lp:~macslow/notify-osd/gsettings-port |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Gord Allott (community) | Approve | ||
Review via email: mp+67926@code.launchpad.net |
Commit message
Description of the change
This is the GConf to GSettings port for NotifyOSD. It covers the pure API-change and also the schema migration. So there's no packaging magic needed to make this work.
Because with the introduction of GNOME 3 and moving away from GConf a lot of NotifyOSD's dynamic nature to adapt to settings-changes of the user had to be dropped, which on the plus-side allowed to get rid of some less-frequent executed code-paths.
NotifyOSD's keys in the GSettings-schema are monitored as is the system-wide key for the font. But the DPI key from GtkSettings can't be monitored.
Mikkel Kamstrup Erlandsen (kamstrup) wrote : | # |
- 443. By Mirco Müller
-
No need for any gconf in the autotools configure.in and src/Makefile.am since we live on GSettings now
Mirco Müller (macslow) wrote : | # |
*cough* got rid of the now superfluous GConf-bits in configure.in and src/Makefile.am
Gord Allott (gordallott) wrote : | # |
+1 looks good to me
Preview Diff
1 | === modified file 'configure.in' | |||
2 | --- configure.in 2011-07-13 10:07:04 +0000 | |||
3 | +++ configure.in 2011-07-14 16:37:32 +0000 | |||
4 | @@ -31,13 +31,7 @@ | |||
5 | 31 | # | 31 | # |
6 | 32 | # glib, we need 2.16.0 for the unit-tests | 32 | # glib, we need 2.16.0 for the unit-tests |
7 | 33 | # | 33 | # |
15 | 34 | PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.16.0 gthread-2.0 gconf-2.0 gio-2.0]) | 34 | PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.16.0 gthread-2.0 gio-2.0]) |
9 | 35 | |||
10 | 36 | # | ||
11 | 37 | # gconf, used by the Defaults class to get system font-face and font-size | ||
12 | 38 | # | ||
13 | 39 | PKG_CHECK_MODULES([GCONF], [gconf-2.0]) | ||
14 | 40 | |||
16 | 41 | 35 | ||
17 | 42 | # | 36 | # |
18 | 43 | # libwnck used by the dnd code | 37 | # libwnck used by the dnd code |
19 | 44 | 38 | ||
20 | === modified file 'src/Makefile.am' | |||
21 | --- src/Makefile.am 2009-08-24 21:33:58 +0000 | |||
22 | +++ src/Makefile.am 2011-07-14 16:37:32 +0000 | |||
23 | @@ -83,7 +83,6 @@ | |||
24 | 83 | notify_osd_LDADD = \ | 83 | notify_osd_LDADD = \ |
25 | 84 | $(X_LIBS) \ | 84 | $(X_LIBS) \ |
26 | 85 | $(GLIB_LIBS) \ | 85 | $(GLIB_LIBS) \ |
27 | 86 | $(GCONF_LIBS) \ | ||
28 | 87 | $(GTK_LIBS) \ | 86 | $(GTK_LIBS) \ |
29 | 88 | $(NOTIFY_OSD_LIBS) \ | 87 | $(NOTIFY_OSD_LIBS) \ |
30 | 89 | $(DBUS_LIBS) \ | 88 | $(DBUS_LIBS) \ |
31 | @@ -95,7 +94,6 @@ | |||
32 | 95 | $(GTK_CFLAGS) \ | 94 | $(GTK_CFLAGS) \ |
33 | 96 | $(NOTIFY_OSD_CFLAGS) \ | 95 | $(NOTIFY_OSD_CFLAGS) \ |
34 | 97 | $(GLIB_CFLAGS) \ | 96 | $(GLIB_CFLAGS) \ |
35 | 98 | $(GCONF_CFLAGS) \ | ||
36 | 99 | $(DBUS_CFLAGS) \ | 97 | $(DBUS_CFLAGS) \ |
37 | 100 | -DWNCK_I_KNOW_THIS_IS_UNSTABLE \ | 98 | -DWNCK_I_KNOW_THIS_IS_UNSTABLE \ |
38 | 101 | $(WNCK_CFLAGS) \ | 99 | $(WNCK_CFLAGS) \ |
39 | 102 | 100 | ||
40 | === modified file 'src/defaults.c' | |||
41 | --- src/defaults.c 2011-07-08 08:34:52 +0000 | |||
42 | +++ src/defaults.c 2011-07-14 16:37:32 +0000 | |||
43 | @@ -34,7 +34,6 @@ | |||
44 | 34 | #include <gdk/gdk.h> | 34 | #include <gdk/gdk.h> |
45 | 35 | #include <gdk/gdkx.h> | 35 | #include <gdk/gdkx.h> |
46 | 36 | #include <gtk/gtk.h> | 36 | #include <gtk/gtk.h> |
47 | 37 | #include <gconf/gconf-client.h> | ||
48 | 38 | #include <libwnck/libwnck.h> | 37 | #include <libwnck/libwnck.h> |
49 | 39 | 38 | ||
50 | 40 | #include "defaults.h" | 39 | #include "defaults.h" |
51 | @@ -146,21 +145,14 @@ | |||
52 | 146 | #define DEFAULT_FADE_OUT_TIMEOUT 1000 | 145 | #define DEFAULT_FADE_OUT_TIMEOUT 1000 |
53 | 147 | #define DEFAULT_ON_SCREEN_TIMEOUT 10000 | 146 | #define DEFAULT_ON_SCREEN_TIMEOUT 10000 |
54 | 148 | 147 | ||
55 | 149 | /* GConf-keys to watch */ | ||
56 | 150 | #define GCONF_UI_FONT_NAME "/desktop/gnome/interface/font_name" | ||
57 | 151 | #define GCONF_FONT_ANTIALIAS "/desktop/gnome/font_rendering/antialiasing" | ||
58 | 152 | #define GCONF_FONT_DPI "/desktop/gnome/font_rendering/dpi" | ||
59 | 153 | #define GCONF_FONT_HINTING "/desktop/gnome/font_rendering/hinting" | ||
60 | 154 | #define GCONF_FONT_SUBPIXEL_ORDER "/desktop/gnome/font_rendering/rgba_order" | ||
61 | 155 | |||
62 | 156 | /* GConf-trees to watch */ | ||
63 | 157 | #define GCONF_UI_TREE "/desktop/gnome/interface" | ||
64 | 158 | #define GCONF_FONT_TREE "/desktop/gnome/font_rendering" | ||
65 | 159 | #define GCONF_NOSD_TREE "/apps/notify-osd" | ||
66 | 160 | |||
67 | 161 | /* notify-osd settings */ | 148 | /* notify-osd settings */ |
70 | 162 | #define GCONF_MULTIHEAD_MODE "/apps/notify-osd/multihead_mode" | 149 | #define NOTIFY_OSD_SCHEMA "com.canonical.notify-osd" |
71 | 163 | #define GCONF_GRAVITY "/apps/notify-osd/gravity" | 150 | #define GSETTINGS_GRAVITY_KEY "gravity" |
72 | 151 | #define GSETTINGS_MULTIHEAD_MODE_KEY "multihead-mode" | ||
73 | 152 | |||
74 | 153 | /* gnome settings */ | ||
75 | 154 | #define GNOME_DESKTOP_SCHEMA "org.gnome.desktop.interface" | ||
76 | 155 | #define GSETTINGS_FONT_KEY "font-name" | ||
77 | 164 | 156 | ||
78 | 165 | static guint g_defaults_signals[LAST_SIGNAL] = { 0 }; | 157 | static guint g_defaults_signals[LAST_SIGNAL] = { 0 }; |
79 | 166 | 158 | ||
80 | @@ -170,32 +162,21 @@ | |||
81 | 170 | _get_font_size_dpi (Defaults* self) | 162 | _get_font_size_dpi (Defaults* self) |
82 | 171 | { | 163 | { |
83 | 172 | GString* string = NULL; | 164 | GString* string = NULL; |
84 | 173 | GError* error = NULL; | ||
85 | 174 | gdouble points = 0.0f; | 165 | gdouble points = 0.0f; |
86 | 175 | GString* font_face = NULL; | 166 | GString* font_face = NULL; |
87 | 176 | gdouble dpi = 0.0f; | 167 | gdouble dpi = 0.0f; |
88 | 177 | gdouble pixels_per_em = 0; | 168 | gdouble pixels_per_em = 0; |
89 | 178 | gchar* font_name = NULL; | 169 | gchar* font_name = NULL; |
90 | 179 | PangoFontDescription* desc = NULL; | 170 | PangoFontDescription* desc = NULL; |
91 | 171 | GtkSettings* gtk_settings = NULL; | ||
92 | 172 | gint value = 0; | ||
93 | 180 | 173 | ||
94 | 181 | if (!IS_DEFAULTS (self)) | 174 | if (!IS_DEFAULTS (self)) |
95 | 182 | return; | 175 | return; |
96 | 183 | 176 | ||
97 | 184 | /* determine current system font-name/size */ | 177 | /* determine current system font-name/size */ |
102 | 185 | error = NULL; | 178 | font_name = g_settings_get_string (self->gnome_settings, GSETTINGS_FONT_KEY); |
99 | 186 | font_name = gconf_client_get_string (self->context, | ||
100 | 187 | GCONF_UI_FONT_NAME, | ||
101 | 188 | &error); | ||
103 | 189 | string = g_string_new (font_name); | 179 | string = g_string_new (font_name); |
104 | 190 | if (error) | ||
105 | 191 | { | ||
106 | 192 | // if something went wrong, assume "Sans 10" and continue | ||
107 | 193 | string = g_string_assign (string, "Sans 10"); | ||
108 | 194 | |||
109 | 195 | g_warning ("_get_font_size_dpi(): Got error \"%s\"\n", | ||
110 | 196 | error->message); | ||
111 | 197 | g_error_free (error); | ||
112 | 198 | } | ||
113 | 199 | 180 | ||
114 | 200 | // extract text point-size | 181 | // extract text point-size |
115 | 201 | desc = pango_font_description_from_string (font_name); | 182 | desc = pango_font_description_from_string (font_name); |
116 | @@ -224,17 +205,9 @@ | |||
117 | 224 | g_object_set (self, "system-font-size", (gdouble) points, NULL); | 205 | g_object_set (self, "system-font-size", (gdouble) points, NULL); |
118 | 225 | 206 | ||
119 | 226 | /* determine current system DPI-setting */ | 207 | /* determine current system DPI-setting */ |
131 | 227 | error = NULL; | 208 | gtk_settings = gtk_settings_get_default (); // not ref'ed |
132 | 228 | dpi = gconf_client_get_float (self->context, GCONF_FONT_DPI, &error); | 209 | g_object_get (gtk_settings, "gtk-xft-dpi", &value, NULL); |
133 | 229 | if (error) | 210 | dpi = (float) value / (float) 1024; |
123 | 230 | { | ||
124 | 231 | // if something went wrong, assume 96 DPI and continue | ||
125 | 232 | dpi = DEFAULT_SCREEN_DPI; | ||
126 | 233 | |||
127 | 234 | g_warning ("_get_font_size_dpi(): Got error \"%s\"\n", | ||
128 | 235 | error->message); | ||
129 | 236 | g_error_free (error); | ||
130 | 237 | } | ||
134 | 238 | 211 | ||
135 | 239 | /* update stored DPI-value */ | 212 | /* update stored DPI-value */ |
136 | 240 | pixels_per_em = points * dpi / 72.0f; | 213 | pixels_per_em = points * dpi / 72.0f; |
137 | @@ -256,25 +229,13 @@ | |||
138 | 256 | static void | 229 | static void |
139 | 257 | _get_gravity (Defaults* self) | 230 | _get_gravity (Defaults* self) |
140 | 258 | { | 231 | { |
143 | 259 | GError* error = NULL; | 232 | Gravity gravity = DEFAULT_GRAVITY; |
142 | 260 | Gravity gravity; | ||
144 | 261 | 233 | ||
145 | 262 | if (!IS_DEFAULTS (self)) | 234 | if (!IS_DEFAULTS (self)) |
146 | 263 | return; | 235 | return; |
147 | 264 | 236 | ||
161 | 265 | // grab current gravity-setting for notify-osd from gconf | 237 | // grab current gravity-setting for notify-osd from GSettings |
162 | 266 | error = NULL; | 238 | gravity = g_settings_get_int (self->nosd_settings, GSETTINGS_GRAVITY_KEY); |
150 | 267 | gravity = gconf_client_get_int (self->context, GCONF_GRAVITY, &error); | ||
151 | 268 | if (error) | ||
152 | 269 | { | ||
153 | 270 | // make sure we use a sane default for the gravity | ||
154 | 271 | gravity = DEFAULT_GRAVITY; | ||
155 | 272 | |||
156 | 273 | g_warning ("%s(): Got error \"%s\"\n", | ||
157 | 274 | G_STRFUNC, | ||
158 | 275 | error->message); | ||
159 | 276 | g_error_free (error); | ||
160 | 277 | } | ||
163 | 278 | 239 | ||
164 | 279 | // protect against out-of-bounds values for gravity | 240 | // protect against out-of-bounds values for gravity |
165 | 280 | if (gravity != GRAVITY_EAST && gravity != GRAVITY_NORTH_EAST) | 241 | if (gravity != GRAVITY_EAST && gravity != GRAVITY_NORTH_EAST) |
166 | @@ -285,123 +246,40 @@ | |||
167 | 285 | } | 246 | } |
168 | 286 | 247 | ||
169 | 287 | static void | 248 | static void |
287 | 288 | _font_changed (GConfClient* client, | 249 | _font_changed (GSettings* settings, |
288 | 289 | guint cnxn_id, | 250 | gchar* key, |
289 | 290 | GConfEntry* entry, | 251 | gpointer data) |
290 | 291 | gpointer data) | 252 | { |
291 | 292 | { | 253 | Defaults* defaults; |
292 | 293 | Defaults* defaults; | 254 | |
293 | 294 | 255 | if (!data) | |
294 | 295 | if (!data) | 256 | return; |
295 | 296 | return; | 257 | |
296 | 297 | 258 | defaults = (Defaults*) data; | |
297 | 298 | defaults = (Defaults*) data; | 259 | if (!IS_DEFAULTS (defaults)) |
298 | 299 | if (!IS_DEFAULTS (defaults)) | 260 | return; |
299 | 300 | return; | 261 | |
300 | 301 | 262 | /* grab system-wide font-face/size and DPI */ | |
301 | 302 | /* grab system-wide font-face/size and DPI */ | 263 | _get_font_size_dpi (defaults); |
302 | 303 | _get_font_size_dpi (defaults); | 264 | |
303 | 304 | 265 | g_signal_emit (defaults, g_defaults_signals[VALUE_CHANGED], 0); | |
304 | 305 | g_signal_emit (defaults, g_defaults_signals[VALUE_CHANGED], 0); | 266 | } |
305 | 306 | } | 267 | |
306 | 307 | 268 | static void | |
307 | 308 | static void | 269 | _gravity_changed (GSettings* settings, |
308 | 309 | _antialias_changed (GConfClient* client, | 270 | gchar* key, |
309 | 310 | guint cnxn_id, | 271 | gpointer data) |
310 | 311 | GConfEntry* entry, | 272 | { |
311 | 312 | gpointer data) | 273 | Defaults* defaults; |
312 | 313 | { | 274 | |
313 | 314 | Defaults* defaults; | 275 | if (!data) |
314 | 315 | 276 | return; | |
315 | 316 | if (!data) | 277 | |
316 | 317 | return; | 278 | defaults = (Defaults*) data; |
317 | 318 | 279 | if (!IS_DEFAULTS (defaults)) | |
318 | 319 | defaults = (Defaults*) data; | 280 | return; |
319 | 320 | if (!IS_DEFAULTS (defaults)) | 281 | |
320 | 321 | return; | 282 | // grab gravity setting for notify-osd from gconf |
204 | 322 | |||
205 | 323 | /* just triggering a redraw by emitting the "value-changed" signal is | ||
206 | 324 | ** enough in this case, no need to update any stored values */ | ||
207 | 325 | g_signal_emit (defaults, g_defaults_signals[VALUE_CHANGED], 0); | ||
208 | 326 | } | ||
209 | 327 | |||
210 | 328 | static void | ||
211 | 329 | _dpi_changed (GConfClient* client, | ||
212 | 330 | guint cnxn_id, | ||
213 | 331 | GConfEntry* entry, | ||
214 | 332 | gpointer data) | ||
215 | 333 | { | ||
216 | 334 | Defaults* defaults; | ||
217 | 335 | |||
218 | 336 | if (!data) | ||
219 | 337 | return; | ||
220 | 338 | |||
221 | 339 | defaults = (Defaults*) data; | ||
222 | 340 | if (!IS_DEFAULTS (defaults)) | ||
223 | 341 | return; | ||
224 | 342 | |||
225 | 343 | /* grab system-wide font-face/size and DPI */ | ||
226 | 344 | _get_font_size_dpi (defaults); | ||
227 | 345 | |||
228 | 346 | g_signal_emit (defaults, g_defaults_signals[VALUE_CHANGED], 0); | ||
229 | 347 | } | ||
230 | 348 | |||
231 | 349 | static void | ||
232 | 350 | _hinting_changed (GConfClient* client, | ||
233 | 351 | guint cnxn_id, | ||
234 | 352 | GConfEntry* entry, | ||
235 | 353 | gpointer data) | ||
236 | 354 | { | ||
237 | 355 | Defaults* defaults; | ||
238 | 356 | |||
239 | 357 | if (!data) | ||
240 | 358 | return; | ||
241 | 359 | |||
242 | 360 | defaults = (Defaults*) data; | ||
243 | 361 | if (!IS_DEFAULTS (defaults)) | ||
244 | 362 | return; | ||
245 | 363 | |||
246 | 364 | /* just triggering a redraw by emitting the "value-changed" signal is | ||
247 | 365 | ** enough in this case, no need to update any stored values */ | ||
248 | 366 | g_signal_emit (defaults, g_defaults_signals[VALUE_CHANGED], 0); | ||
249 | 367 | } | ||
250 | 368 | |||
251 | 369 | static void | ||
252 | 370 | _subpixel_order_changed (GConfClient* client, | ||
253 | 371 | guint cnxn_id, | ||
254 | 372 | GConfEntry* entry, | ||
255 | 373 | gpointer data) | ||
256 | 374 | { | ||
257 | 375 | Defaults* defaults; | ||
258 | 376 | |||
259 | 377 | if (!data) | ||
260 | 378 | return; | ||
261 | 379 | |||
262 | 380 | defaults = (Defaults*) data; | ||
263 | 381 | if (!IS_DEFAULTS (defaults)) | ||
264 | 382 | return; | ||
265 | 383 | |||
266 | 384 | /* just triggering a redraw by emitting the "value-changed" signal is | ||
267 | 385 | ** enough in this case, no need to update any stored values */ | ||
268 | 386 | g_signal_emit (defaults, g_defaults_signals[VALUE_CHANGED], 0); | ||
269 | 387 | } | ||
270 | 388 | |||
271 | 389 | static void | ||
272 | 390 | _gravity_changed (GConfClient* client, | ||
273 | 391 | guint cnxn_id, | ||
274 | 392 | GConfEntry* entry, | ||
275 | 393 | gpointer data) | ||
276 | 394 | { | ||
277 | 395 | Defaults* defaults; | ||
278 | 396 | |||
279 | 397 | if (!data) | ||
280 | 398 | return; | ||
281 | 399 | |||
282 | 400 | defaults = (Defaults*) data; | ||
283 | 401 | if (!IS_DEFAULTS (defaults)) | ||
284 | 402 | return; | ||
285 | 403 | |||
286 | 404 | // grab gravity setting for notify-osd from gconf | ||
321 | 405 | _get_gravity (defaults); | 283 | _get_gravity (defaults); |
322 | 406 | 284 | ||
323 | 407 | g_signal_emit (defaults, g_defaults_signals[GRAVITY_CHANGED], 0); | 285 | g_signal_emit (defaults, g_defaults_signals[GRAVITY_CHANGED], 0); |
324 | @@ -537,16 +415,8 @@ | |||
325 | 537 | 415 | ||
326 | 538 | defaults = DEFAULTS (gobject); | 416 | defaults = DEFAULTS (gobject); |
327 | 539 | 417 | ||
338 | 540 | gconf_client_notify_remove (defaults->context, defaults->notifier[0]); | 418 | g_object_unref (defaults->nosd_settings); |
339 | 541 | gconf_client_notify_remove (defaults->context, defaults->notifier[1]); | 419 | g_object_unref (defaults->gnome_settings); |
330 | 542 | gconf_client_notify_remove (defaults->context, defaults->notifier[2]); | ||
331 | 543 | gconf_client_notify_remove (defaults->context, defaults->notifier[3]); | ||
332 | 544 | gconf_client_notify_remove (defaults->context, defaults->notifier[4]); | ||
333 | 545 | gconf_client_notify_remove (defaults->context, defaults->notifier[5]); | ||
334 | 546 | gconf_client_remove_dir (defaults->context, GCONF_UI_TREE, NULL); | ||
335 | 547 | gconf_client_remove_dir (defaults->context, GCONF_FONT_TREE, NULL); | ||
336 | 548 | gconf_client_remove_dir (defaults->context, GCONF_NOSD_TREE, NULL); | ||
337 | 549 | g_object_unref (defaults->context); | ||
340 | 550 | 420 | ||
341 | 551 | if (defaults->bubble_shadow_color) | 421 | if (defaults->bubble_shadow_color) |
342 | 552 | { | 422 | { |
343 | @@ -608,157 +478,21 @@ | |||
344 | 608 | } | 478 | } |
345 | 609 | 479 | ||
346 | 610 | static void | 480 | static void |
347 | 611 | _handle_error (Defaults* self, | ||
348 | 612 | GError* error) | ||
349 | 613 | { | ||
350 | 614 | // no sanity-checks here | ||
351 | 615 | |||
352 | 616 | gconf_client_notify_remove (self->context, self->notifier[0]); | ||
353 | 617 | gconf_client_notify_remove (self->context, self->notifier[1]); | ||
354 | 618 | gconf_client_notify_remove (self->context, self->notifier[2]); | ||
355 | 619 | gconf_client_notify_remove (self->context, self->notifier[3]); | ||
356 | 620 | gconf_client_notify_remove (self->context, self->notifier[4]); | ||
357 | 621 | gconf_client_notify_remove (self->context, self->notifier[5]); | ||
358 | 622 | gconf_client_remove_dir (self->context, GCONF_UI_TREE, NULL); | ||
359 | 623 | gconf_client_remove_dir (self->context, GCONF_FONT_TREE, NULL); | ||
360 | 624 | gconf_client_remove_dir (self->context, GCONF_NOSD_TREE, NULL); | ||
361 | 625 | g_object_unref (self->context); | ||
362 | 626 | g_warning ("%s(): Got error \"%s\"\n", G_STRFUNC, error->message); | ||
363 | 627 | g_error_free (error); | ||
364 | 628 | } | ||
365 | 629 | |||
366 | 630 | static void | ||
367 | 631 | defaults_init (Defaults* self) | 481 | defaults_init (Defaults* self) |
368 | 632 | { | 482 | { |
498 | 633 | GError* error; | 483 | /* "connect" to the required GSettings schemas */ |
499 | 634 | 484 | self->nosd_settings = g_settings_new (NOTIFY_OSD_SCHEMA); | |
500 | 635 | /* "connect" to the whole gconf-thing */ | 485 | self->gnome_settings = g_settings_new (GNOME_DESKTOP_SCHEMA);; |
501 | 636 | self->context = gconf_client_get_default (); | 486 | |
502 | 637 | if (!self->context) | 487 | g_signal_connect (self->gnome_settings, |
503 | 638 | { | 488 | "changed", |
504 | 639 | g_warning ("Could not get GConf client-context"); | 489 | G_CALLBACK (_font_changed), |
505 | 640 | return; | 490 | self); |
506 | 641 | } | 491 | |
507 | 642 | 492 | g_signal_connect (self->nosd_settings, | |
508 | 643 | /* register watching all relevant GNOME UI-settings */ | 493 | "changed", |
509 | 644 | error = NULL; | 494 | G_CALLBACK (_gravity_changed), |
510 | 645 | gconf_client_add_dir (self->context, | 495 | self); |
382 | 646 | GCONF_UI_TREE, | ||
383 | 647 | GCONF_CLIENT_PRELOAD_NONE, | ||
384 | 648 | &error); | ||
385 | 649 | if (error) | ||
386 | 650 | { | ||
387 | 651 | _handle_error (self, error); | ||
388 | 652 | return; | ||
389 | 653 | } | ||
390 | 654 | |||
391 | 655 | /* register watching all font-settings */ | ||
392 | 656 | error = NULL; | ||
393 | 657 | gconf_client_add_dir (self->context, | ||
394 | 658 | GCONF_FONT_TREE, | ||
395 | 659 | GCONF_CLIENT_PRELOAD_NONE, | ||
396 | 660 | &error); | ||
397 | 661 | if (error) | ||
398 | 662 | { | ||
399 | 663 | _handle_error (self, error); | ||
400 | 664 | return; | ||
401 | 665 | } | ||
402 | 666 | |||
403 | 667 | /* register watching all settings for notify-osd */ | ||
404 | 668 | error = NULL; | ||
405 | 669 | gconf_client_add_dir (self->context, | ||
406 | 670 | GCONF_NOSD_TREE, | ||
407 | 671 | GCONF_CLIENT_PRELOAD_NONE, | ||
408 | 672 | &error); | ||
409 | 673 | if (error) | ||
410 | 674 | { | ||
411 | 675 | _handle_error (self, error); | ||
412 | 676 | return; | ||
413 | 677 | } | ||
414 | 678 | |||
415 | 679 | /* hook up notifier for font-name/size changes */ | ||
416 | 680 | error = NULL; | ||
417 | 681 | self->notifier[0] = gconf_client_notify_add (self->context, | ||
418 | 682 | GCONF_UI_FONT_NAME, | ||
419 | 683 | _font_changed, | ||
420 | 684 | (gpointer) self, | ||
421 | 685 | NULL, | ||
422 | 686 | &error); | ||
423 | 687 | if (error) | ||
424 | 688 | { | ||
425 | 689 | _handle_error (self, error); | ||
426 | 690 | return; | ||
427 | 691 | } | ||
428 | 692 | |||
429 | 693 | /* hook up notifier for antialiasing changes */ | ||
430 | 694 | error = NULL; | ||
431 | 695 | self->notifier[1] = gconf_client_notify_add (self->context, | ||
432 | 696 | GCONF_FONT_ANTIALIAS, | ||
433 | 697 | _antialias_changed, | ||
434 | 698 | (gpointer) self, | ||
435 | 699 | NULL, | ||
436 | 700 | &error); | ||
437 | 701 | if (error) | ||
438 | 702 | { | ||
439 | 703 | _handle_error (self, error); | ||
440 | 704 | return; | ||
441 | 705 | } | ||
442 | 706 | |||
443 | 707 | /* hook up notifier for DPI changes */ | ||
444 | 708 | error = NULL; | ||
445 | 709 | self->notifier[2] = gconf_client_notify_add (self->context, | ||
446 | 710 | GCONF_FONT_DPI, | ||
447 | 711 | _dpi_changed, | ||
448 | 712 | (gpointer) self, | ||
449 | 713 | NULL, | ||
450 | 714 | &error); | ||
451 | 715 | if (error) | ||
452 | 716 | { | ||
453 | 717 | _handle_error (self, error); | ||
454 | 718 | return; | ||
455 | 719 | } | ||
456 | 720 | |||
457 | 721 | /* hook up notifier for hinting changes */ | ||
458 | 722 | error = NULL; | ||
459 | 723 | self->notifier[3] = gconf_client_notify_add (self->context, | ||
460 | 724 | GCONF_FONT_HINTING, | ||
461 | 725 | _hinting_changed, | ||
462 | 726 | (gpointer) self, | ||
463 | 727 | NULL, | ||
464 | 728 | &error); | ||
465 | 729 | if (error) | ||
466 | 730 | { | ||
467 | 731 | _handle_error (self, error); | ||
468 | 732 | return; | ||
469 | 733 | } | ||
470 | 734 | |||
471 | 735 | /* hook up notifier for subpixel-order changes */ | ||
472 | 736 | error = NULL; | ||
473 | 737 | self->notifier[4] = gconf_client_notify_add (self->context, | ||
474 | 738 | GCONF_FONT_SUBPIXEL_ORDER, | ||
475 | 739 | _subpixel_order_changed, | ||
476 | 740 | (gpointer) self, | ||
477 | 741 | NULL, | ||
478 | 742 | &error); | ||
479 | 743 | if (error) | ||
480 | 744 | { | ||
481 | 745 | _handle_error (self, error); | ||
482 | 746 | return; | ||
483 | 747 | } | ||
484 | 748 | |||
485 | 749 | // hook up notifiier for gravity changes | ||
486 | 750 | error = NULL; | ||
487 | 751 | self->notifier[5] = gconf_client_notify_add (self->context, | ||
488 | 752 | GCONF_NOSD_TREE, | ||
489 | 753 | _gravity_changed, | ||
490 | 754 | (gpointer) self, | ||
491 | 755 | NULL, | ||
492 | 756 | &error); | ||
493 | 757 | if (error) | ||
494 | 758 | { | ||
495 | 759 | _handle_error (self, error); | ||
496 | 760 | return; | ||
497 | 761 | } | ||
511 | 762 | 496 | ||
512 | 763 | // use fixed slot-allocation for async. and sync. bubbles | 497 | // use fixed slot-allocation for async. and sync. bubbles |
513 | 764 | self->slot_allocation = SLOT_ALLOCATION_FIXED; | 498 | self->slot_allocation = SLOT_ALLOCATION_FIXED; |
514 | @@ -2326,14 +2060,13 @@ | |||
515 | 2326 | static gboolean | 2060 | static gboolean |
516 | 2327 | defaults_multihead_does_focus_follow (Defaults *self) | 2061 | defaults_multihead_does_focus_follow (Defaults *self) |
517 | 2328 | { | 2062 | { |
520 | 2329 | GError* error = NULL; | 2063 | gboolean mode = FALSE; |
519 | 2330 | gboolean mode = FALSE; | ||
521 | 2331 | 2064 | ||
522 | 2332 | g_return_val_if_fail (self != NULL && IS_DEFAULTS (self), FALSE); | 2065 | g_return_val_if_fail (self != NULL && IS_DEFAULTS (self), FALSE); |
523 | 2333 | 2066 | ||
527 | 2334 | gchar* mode_str = gconf_client_get_string (self->context, | 2067 | gchar* mode_str = g_settings_get_string (self->nosd_settings, |
528 | 2335 | GCONF_MULTIHEAD_MODE, | 2068 | GSETTINGS_MULTIHEAD_MODE_KEY); |
529 | 2336 | &error); | 2069 | |
530 | 2337 | if (mode_str != NULL) | 2070 | if (mode_str != NULL) |
531 | 2338 | { | 2071 | { |
532 | 2339 | if (! g_strcmp0 (mode_str, "focus-follow")) | 2072 | if (! g_strcmp0 (mode_str, "focus-follow")) |
533 | @@ -2341,13 +2074,6 @@ | |||
534 | 2341 | 2074 | ||
535 | 2342 | g_free ((gpointer) mode_str); | 2075 | g_free ((gpointer) mode_str); |
536 | 2343 | } | 2076 | } |
537 | 2344 | else if (error != NULL) | ||
538 | 2345 | { | ||
539 | 2346 | g_warning ("defaults_multihead_does_focus_follow(): " | ||
540 | 2347 | "Got error \"%s\"\n", | ||
541 | 2348 | error->message); | ||
542 | 2349 | g_error_free (error); | ||
543 | 2350 | } | ||
544 | 2351 | 2077 | ||
545 | 2352 | return mode; | 2078 | return mode; |
546 | 2353 | } | 2079 | } |
547 | 2354 | 2080 | ||
548 | === modified file 'src/defaults.h' | |||
549 | --- src/defaults.h 2009-09-10 13:11:32 +0000 | |||
550 | +++ src/defaults.h 2011-07-14 16:37:32 +0000 | |||
551 | @@ -30,7 +30,7 @@ | |||
552 | 30 | #define __DEFAULTS_H | 30 | #define __DEFAULTS_H |
553 | 31 | 31 | ||
554 | 32 | #include <glib-object.h> | 32 | #include <glib-object.h> |
556 | 33 | #include <gconf/gconf-client.h> | 33 | #include <gio/gio.h> |
557 | 34 | 34 | ||
558 | 35 | G_BEGIN_DECLS | 35 | G_BEGIN_DECLS |
559 | 36 | 36 | ||
560 | @@ -74,8 +74,8 @@ | |||
561 | 74 | GObject parent; | 74 | GObject parent; |
562 | 75 | 75 | ||
563 | 76 | /* private */ | 76 | /* private */ |
566 | 77 | GConfClient* context; | 77 | GSettings* nosd_settings; |
567 | 78 | guint notifier[6]; | 78 | GSettings* gnome_settings; |
568 | 79 | gint desktop_width; | 79 | gint desktop_width; |
569 | 80 | gint desktop_height; | 80 | gint desktop_height; |
570 | 81 | gint desktop_top; | 81 | gint desktop_top; |
I don't see any gconf stuff removed from any Makefile.am or
configure.ac - so I guess you still link in libgonf. Is that on
purpose?