forked from AuroraMiddleware/gtk
New function, copied from gtkpathbar.c.
2004-03-11 Federico Mena Quintero <federico@ximian.com> * gtk/gtkfilechooserdefault.c (remove_settings_signal): New function, copied from gtkpathbar.c. (gtk_file_chooser_default_dispose): Use remove_settings_signal() rather than our own code. (gtk_file_chooser_default_screen_changed): Use remove_settings_signal(); this should handle per-screen settings correctly.
This commit is contained in:
parent
796d15ef8b
commit
df0510a89f
10
ChangeLog
10
ChangeLog
@ -1,3 +1,13 @@
|
||||
2004-03-11 Federico Mena Quintero <federico@ximian.com>
|
||||
|
||||
* gtk/gtkfilechooserdefault.c (remove_settings_signal): New
|
||||
function, copied from gtkpathbar.c.
|
||||
(gtk_file_chooser_default_dispose): Use remove_settings_signal()
|
||||
rather than our own code.
|
||||
(gtk_file_chooser_default_screen_changed): Use
|
||||
remove_settings_signal(); this should handle per-screen settings
|
||||
correctly.
|
||||
|
||||
Thu Mar 11 14:07:18 2004 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gtk/gtklabel.c (gtk_label_focus): Fix a missing return
|
||||
|
@ -1,3 +1,13 @@
|
||||
2004-03-11 Federico Mena Quintero <federico@ximian.com>
|
||||
|
||||
* gtk/gtkfilechooserdefault.c (remove_settings_signal): New
|
||||
function, copied from gtkpathbar.c.
|
||||
(gtk_file_chooser_default_dispose): Use remove_settings_signal()
|
||||
rather than our own code.
|
||||
(gtk_file_chooser_default_screen_changed): Use
|
||||
remove_settings_signal(); this should handle per-screen settings
|
||||
correctly.
|
||||
|
||||
Thu Mar 11 14:07:18 2004 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gtk/gtklabel.c (gtk_label_focus): Fix a missing return
|
||||
|
@ -1,3 +1,13 @@
|
||||
2004-03-11 Federico Mena Quintero <federico@ximian.com>
|
||||
|
||||
* gtk/gtkfilechooserdefault.c (remove_settings_signal): New
|
||||
function, copied from gtkpathbar.c.
|
||||
(gtk_file_chooser_default_dispose): Use remove_settings_signal()
|
||||
rather than our own code.
|
||||
(gtk_file_chooser_default_screen_changed): Use
|
||||
remove_settings_signal(); this should handle per-screen settings
|
||||
correctly.
|
||||
|
||||
Thu Mar 11 14:07:18 2004 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gtk/gtklabel.c (gtk_label_focus): Fix a missing return
|
||||
|
@ -1,3 +1,13 @@
|
||||
2004-03-11 Federico Mena Quintero <federico@ximian.com>
|
||||
|
||||
* gtk/gtkfilechooserdefault.c (remove_settings_signal): New
|
||||
function, copied from gtkpathbar.c.
|
||||
(gtk_file_chooser_default_dispose): Use remove_settings_signal()
|
||||
rather than our own code.
|
||||
(gtk_file_chooser_default_screen_changed): Use
|
||||
remove_settings_signal(); this should handle per-screen settings
|
||||
correctly.
|
||||
|
||||
Thu Mar 11 14:07:18 2004 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gtk/gtklabel.c (gtk_label_focus): Fix a missing return
|
||||
|
@ -1,3 +1,13 @@
|
||||
2004-03-11 Federico Mena Quintero <federico@ximian.com>
|
||||
|
||||
* gtk/gtkfilechooserdefault.c (remove_settings_signal): New
|
||||
function, copied from gtkpathbar.c.
|
||||
(gtk_file_chooser_default_dispose): Use remove_settings_signal()
|
||||
rather than our own code.
|
||||
(gtk_file_chooser_default_screen_changed): Use
|
||||
remove_settings_signal(); this should handle per-screen settings
|
||||
correctly.
|
||||
|
||||
Thu Mar 11 14:07:18 2004 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* gtk/gtklabel.c (gtk_label_focus): Fix a missing return
|
||||
|
@ -3205,6 +3205,21 @@ gtk_file_chooser_default_get_property (GObject *object,
|
||||
}
|
||||
}
|
||||
|
||||
/* Removes the settings signal handler. It's safe to call multiple times */
|
||||
static void
|
||||
remove_settings_signal (GtkFileChooserDefault *impl,
|
||||
GdkScreen *screen)
|
||||
{
|
||||
if (impl->settings_signal_id)
|
||||
{
|
||||
GtkSettings *settings;
|
||||
|
||||
settings = gtk_settings_get_for_screen (screen);
|
||||
g_signal_handler_disconnect (settings,
|
||||
impl->settings_signal_id);
|
||||
impl->settings_signal_id = 0;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
gtk_file_chooser_default_dispose (GObject *object)
|
||||
@ -3217,14 +3232,7 @@ gtk_file_chooser_default_dispose (GObject *object)
|
||||
impl->extra_widget = NULL;
|
||||
}
|
||||
|
||||
if (impl->settings_signal_id)
|
||||
{
|
||||
GtkSettings *settings;
|
||||
|
||||
settings = gtk_settings_get_for_screen (gtk_widget_get_screen (GTK_WIDGET (impl)));
|
||||
g_signal_handler_disconnect (settings, impl->settings_signal_id);
|
||||
impl->settings_signal_id = 0;
|
||||
}
|
||||
remove_settings_signal (impl, gtk_widget_get_screen (GTK_WIDGET (impl)));
|
||||
|
||||
G_OBJECT_CLASS (parent_class)->dispose (object);
|
||||
}
|
||||
@ -3322,6 +3330,7 @@ gtk_file_chooser_default_screen_changed (GtkWidget *widget,
|
||||
if (GTK_WIDGET_CLASS (parent_class)->screen_changed)
|
||||
GTK_WIDGET_CLASS (parent_class)->screen_changed (widget, previous_screen);
|
||||
|
||||
remove_settings_signal (impl, previous_screen);
|
||||
check_icon_theme (impl);
|
||||
|
||||
g_signal_emit_by_name (widget, "default-size-changed");
|
||||
|
Loading…
Reference in New Issue
Block a user