diff options
Diffstat (limited to 'gtk')
-rw-r--r-- | gtk/PlatGTK.cxx | 6 | ||||
-rw-r--r-- | gtk/ScintillaGTK.cxx | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gtk/PlatGTK.cxx b/gtk/PlatGTK.cxx index 055a318a4..f0377d238 100644 --- a/gtk/PlatGTK.cxx +++ b/gtk/PlatGTK.cxx @@ -1401,7 +1401,7 @@ static void StyleSet(GtkWidget *w, GtkStyle*, void*) { #endif } -void ListBoxX::Create(Window &, int, Point, int, bool, int) { +void ListBoxX::Create(Window &parent, int, Point, int, bool, int) { if (widCached != 0) { wid = widCached; return; @@ -1475,6 +1475,10 @@ void ListBoxX::Create(Window &, int, Point, int, bool, int) { gtk_widget_show(widget); g_signal_connect(G_OBJECT(widget), "button_press_event", G_CALLBACK(ButtonPress), this); + + GtkWidget *top = gtk_widget_get_toplevel(static_cast<GtkWidget *>(parent.GetID())); + gtk_window_set_transient_for(GTK_WINDOW(static_cast<GtkWidget *>(wid)), + GTK_WINDOW(top)); } void ListBoxX::SetFont(Font &scint_font) { diff --git a/gtk/ScintillaGTK.cxx b/gtk/ScintillaGTK.cxx index ae7ff7a16..e6bafc938 100644 --- a/gtk/ScintillaGTK.cxx +++ b/gtk/ScintillaGTK.cxx @@ -1301,6 +1301,9 @@ void ScintillaGTK::CreateCallTipWindow(PRectangle rc) { G_CALLBACK(ScintillaGTK::PressCT), static_cast<void *>(this)); gtk_widget_set_events(widcdrw, GDK_EXPOSURE_MASK | GDK_BUTTON_PRESS_MASK); + GtkWidget *top = gtk_widget_get_toplevel(static_cast<GtkWidget *>(wMain.GetID())); + gtk_window_set_transient_for(GTK_WINDOW(static_cast<GtkWidget *>(PWidget(ct.wCallTip))), + GTK_WINDOW(top)); } gtk_widget_set_size_request(PWidget(ct.wDraw), rc.Width(), rc.Height()); ct.wDraw.Show(); |