gnome-session r5358 - in trunk: . gnome-session



Author: vuntz
Date: Tue Mar 24 23:14:40 2009
New Revision: 5358
URL: http://svn.gnome.org/viewvc/gnome-session?rev=5358&view=rev

Log:
2009-03-25  Vincent Untz  <vuntz gnome org>

	Actually allow XSMP clients to interact during the logout. It works
	quite well with the inhibitor infrastructure since a JIT inhibitor will
	be created.
	Note that the user will get two dialogs: eg, when gedit has an unsaved
	document, the user will see the gedit save/cancel dialog and the
	inhibit dialog. That's actually a good thing since the save/cancel
	dialog from gedit might be in another workspace, and so the inhibit
	dialog makes sure the user knows what's going on.

	* gnome-session/gsm-xsmp-client.c: (xsmp_interact): uncomment
	(interact_request_callback): stop cancelling the session when a client
	wants to interact, and allow the client to interact.


Modified:
   trunk/ChangeLog
   trunk/gnome-session/gsm-xsmp-client.c

Modified: trunk/gnome-session/gsm-xsmp-client.c
==============================================================================
--- trunk/gnome-session/gsm-xsmp-client.c	(original)
+++ trunk/gnome-session/gsm-xsmp-client.c	Tue Mar 24 23:14:40 2009
@@ -480,6 +480,7 @@
 
         SmsSaveYourselfPhase2 (xsmp->priv->conn);
 }
+#endif
 
 static void
 xsmp_interact (GsmClient *client)
@@ -490,7 +491,6 @@
 
         SmsInteract (xsmp->priv->conn);
 }
-#endif
 
 static gboolean
 xsmp_cancel_end_session (GsmClient *client,
@@ -1165,8 +1165,10 @@
                            int       dialog_type)
 {
         GsmXSMPClient *client = manager_data;
+#if 0
         gboolean       res;
         GError        *error;
+#endif
 
         g_debug ("GsmXSMPClient: Client '%s' received InteractRequest(%s)",
                  client->priv->description,
@@ -1176,6 +1178,7 @@
                                          FALSE,
                                          _("This program is blocking log out."));
 
+#if 0
         /* Can't just call back with Interact because session client
            grabs the keyboard!  So, we try to get it to release
            grabs by telling it we've cancelled the shutdown.
@@ -1187,6 +1190,8 @@
                 g_warning ("Unable to cancel end session: %s", error->message);
                 g_error_free (error);
         }
+#endif
+        xsmp_interact (GSM_CLIENT (client));
 }
 
 static void



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]