im.pidgin.pidgin.2.2.2: 6eb9d70596f75e6d69aa71408632a5bc08aca65b

lschiere at pidgin.im lschiere at pidgin.im
Wed Oct 24 12:01:30 EDT 2007


-----------------------------------------------------------------
Revision: 6eb9d70596f75e6d69aa71408632a5bc08aca65b
Ancestor: fe8468d91b46c3c88ad8f60a6499b16e3fa5f327
Author: lschiere at pidgin.im
Date: 2007-10-24T15:00:33
Branch: im.pidgin.pidgin.2.2.2

Modified files:
        ChangeLog pidgin/gtkconv.c

ChangeLog: 

applied changes from 267f2e22b77cc35309c41a034169f74faaa46e1f
             through 7793ae5b4dd75b3c2f62c2502dbd08c76dbe7b1c

-------------- next part --------------
============================================================
--- ChangeLog	cf37c315a25ae36b48645f5953b8fce4836e03f8
+++ ChangeLog	5f2ae687eaafdf4ff2d8f523595cad597c47b9fc
@@ -1,5 +1,9 @@ Pidgin and Finch: The Pimpin' Penguin IM
 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
============================================================
--- pidgin/gtkconv.c	4404c77be6e6e05f3d30b5e988d0b1846390858e
+++ pidgin/gtkconv.c	cfe5d7f1f518ecd540d4fd55c9e7ed1ba225a9b7
@@ -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
 


More information about the Commits mailing list