[gimp] app: properly disconnect from the old shell in gimp_tool_dialog_set_shell()
- From: Michael Natterer <mitch src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gimp] app: properly disconnect from the old shell in gimp_tool_dialog_set_shell()
- Date: Thu, 5 Jun 2014 20:21:55 +0000 (UTC)
commit 8e948d29e0e44608e3cfb47d37f289434d7e36a2
Author: Michael Natterer <mitch gimp org>
Date: Thu Jun 5 22:19:23 2014 +0200
app: properly disconnect from the old shell in gimp_tool_dialog_set_shell()
Also clean up the function a bit.
app/display/gimptooldialog.c | 13 ++++++-------
1 files changed, 6 insertions(+), 7 deletions(-)
---
diff --git a/app/display/gimptooldialog.c b/app/display/gimptooldialog.c
index 214c9ac..9adefbb 100644
--- a/app/display/gimptooldialog.c
+++ b/app/display/gimptooldialog.c
@@ -162,25 +162,24 @@ gimp_tool_dialog_set_shell (GimpToolDialog *tool_dialog,
g_signal_handlers_disconnect_by_func (private->shell,
gimp_tool_dialog_shell_unmap,
tool_dialog);
- private->shell = NULL;
+
+ gtk_window_set_transient_for (GTK_WINDOW (tool_dialog), NULL);
}
private->shell = shell;
if (private->shell)
{
- GtkWidget *toplevel;
+ GtkWidget *toplevel = gtk_widget_get_toplevel (GTK_WIDGET (shell));
+
+ gtk_window_set_transient_for (GTK_WINDOW (tool_dialog),
+ GTK_WINDOW (toplevel));
g_signal_connect_object (private->shell, "unmap",
G_CALLBACK (gimp_tool_dialog_shell_unmap),
tool_dialog, 0);
-
g_object_add_weak_pointer (G_OBJECT (private->shell),
(gpointer) &private->shell);
- toplevel = gtk_widget_get_toplevel (GTK_WIDGET (shell));
-
- gtk_window_set_transient_for (GTK_WINDOW (tool_dialog),
- GTK_WINDOW (toplevel));
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]