diff options
| author | Luke Schierer <lschiere@pidgin.im> | 2007-10-24 15:00:33 +0000 |
|---|---|---|
| committer | Luke Schierer <lschiere@pidgin.im> | 2007-10-24 15:00:33 +0000 |
| commit | 3e4debd65db27ef176ba9567a8d115e523fce787 (patch) | |
| tree | 6a7a5a7422f50382a5d1375e0ef32fb0bf57ab05 | |
| parent | 3eb9373c5913687614c78a25a650bb591c4a4179 (diff) | |
| download | pidgin-release-2.2.2.tar.gz | |
applied changes from 267f2e22b77cc35309c41a034169f74faaa46e1frelease-2.2.2
through 7793ae5b4dd75b3c2f62c2502dbd08c76dbe7b1c
| -rw-r--r-- | ChangeLog | 4 | ||||
| -rw-r--r-- | pidgin/gtkconv.c | 10 |
2 files changed, 13 insertions, 1 deletions
@@ -1,5 +1,9 @@ Pidgin and Finch: The Pimpin' Penguin IM Clients That're Good for the Soul +version 2.2.3: + Pidgin: + * Attempt to avoid focusing windows prompted by external events + version 2.2.2 (10/23/2007): http://developer.pidgin.im/query?status=closed&milestone=2.2.2 NOTE: Due to the way this release was made, it is possible that diff --git a/pidgin/gtkconv.c b/pidgin/gtkconv.c index 92bb8eef22..ec17017800 100644 --- a/pidgin/gtkconv.c +++ b/pidgin/gtkconv.c @@ -8696,6 +8696,9 @@ pidgin_conv_window_new() GtkPositionType pos; GtkWidget *testidea; GtkWidget *menubar; +#if GTK_CHECK_VERSION(2,6,0) + GdkModifierType state; +#endif win = g_malloc0(sizeof(PidginWindow)); @@ -8703,6 +8706,10 @@ pidgin_conv_window_new() /* Create the window. */ win->window = pidgin_create_window(NULL, 0, "conversation", TRUE); +#if GTK_CHECK_VERSION(2,6,0) + if (!gtk_get_current_event_state(&state)) + gtk_window_set_focus_on_map(GTK_WINDOW(win->window), FALSE); +#endif pidgin_conv_restore_position(win); if (available_list == NULL) { @@ -8775,7 +8782,8 @@ pidgin_conv_window_new() g_signal_connect(G_OBJECT(win->window), "show", G_CALLBACK(winpidgin_ensure_onscreen), win->window); - if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/win32/minimize_new_convs")) + if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/win32/minimize_new_convs") + && !gtk_get_current_event_state(&state)) gtk_window_iconify(GTK_WINDOW(win->window)); #endif |
