diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/inputdialog.c | 13 | ||||
-rw-r--r-- | src/inputdialog.h | 2 |
2 files changed, 14 insertions, 1 deletions
diff --git a/src/inputdialog.c b/src/inputdialog.c index c0eca91c..9fe0c6e6 100644 --- a/src/inputdialog.c +++ b/src/inputdialog.c @@ -87,6 +87,9 @@ static gboolean key_pressed (GtkWidget *widget, gpointer data); static void entry_activated (GtkEditable *editable); static void combo_activated (GtkEditable *editable); +static gint focus_out (GtkWidget *widget, + GdkEventFocus *event, + gpointer data); gchar *input_dialog(const gchar *title, const gchar *message, @@ -163,6 +166,8 @@ static void input_dialog_create(InputDialogType dialog_type) G_CALLBACK(delete_event), NULL); g_signal_connect(G_OBJECT(dialog), "key_press_event", G_CALLBACK(key_pressed), NULL); + g_signal_connect(G_OBJECT(dialog), "focus_out_event", + G_CALLBACK(focus_out), NULL); MANAGE_WINDOW_SIGNALS_CONNECT(dialog); gtk_widget_realize(dialog); @@ -324,3 +329,11 @@ static void combo_activated(GtkEditable *editable) ack = TRUE; fin = TRUE; } + +static gint focus_out(GtkWidget *widget, GdkEventFocus *event, gpointer data) +{ +#ifdef G_OS_WIN32 + gtk_window_present(GTK_WINDOW(widget)); +#endif + return FALSE; +} diff --git a/src/inputdialog.h b/src/inputdialog.h index 0e9175a8..392f73bb 100644 --- a/src/inputdialog.h +++ b/src/inputdialog.h @@ -1,6 +1,6 @@ /* * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client - * Copyright (C) 1999-2002 Hiroyuki Yamamoto + * Copyright (C) 1999-2005 Hiroyuki Yamamoto * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by |