pidgin/gtkutils.c

branch
cpw.rekkanoryo.prefs_window
changeset 28878
ad51dac11c42
parent 28711
cd5b5427ae6f
child 28908
d8538334b167
equal deleted inserted replaced
28877:1ec9f377bd78 28878:ad51dac11c42
103 }; 103 };
104 104
105 void 105 void
106 pidgin_setup_imhtml(GtkWidget *imhtml) 106 pidgin_setup_imhtml(GtkWidget *imhtml)
107 { 107 {
108 PangoFontDescription *desc = NULL;
109 g_return_if_fail(imhtml != NULL); 108 g_return_if_fail(imhtml != NULL);
110 g_return_if_fail(GTK_IS_IMHTML(imhtml)); 109 g_return_if_fail(GTK_IS_IMHTML(imhtml));
111 110
112 pidgin_themes_smiley_themeize(imhtml); 111 pidgin_themes_smiley_themeize(imhtml);
113 112
114 gtk_imhtml_set_funcs(GTK_IMHTML(imhtml), &gtkimhtml_cbs); 113 gtk_imhtml_set_funcs(GTK_IMHTML(imhtml), &gtkimhtml_cbs);
115 114
116 if (!purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/conversations/use_theme_font")) {
117 const char *font = purple_prefs_get_string(PIDGIN_PREFS_ROOT "/conversations/custom_font");
118 desc = pango_font_description_from_string(font);
119 } else if (purple_running_gnome()) {
120 /* Use the GNOME "document" font, if applicable */
121 char *path;
122
123 if ((path = g_find_program_in_path("gconftool-2"))) {
124 char *font = NULL;
125 char *err = NULL;
126 g_free(path);
127 if (g_spawn_command_line_sync(
128 "gconftool-2 -g /desktop/gnome/interface/document_font_name",
129 &font, &err, NULL, NULL)) {
130 desc = pango_font_description_from_string(font);
131 }
132 g_free(err);
133 g_free(font);
134 }
135 }
136
137 if (desc) {
138 gtk_widget_modify_font(imhtml, desc);
139 pango_font_description_free(desc);
140 }
141 } 115 }
142 116
143 static 117 static
144 void pidgin_window_init(GtkWindow *wnd, const char *title, guint border_width, const char *role, gboolean resizable) 118 void pidgin_window_init(GtkWindow *wnd, const char *title, guint border_width, const char *role, gboolean resizable)
145 { 119 {

mercurial