Session Management Proposal

Ray Strode halfline at hawaii.rr.com
Mon Dec 29 05:54:53 EET 2003


Hi,

Mark Finlay wrote:

>I would just like to draw attention to the following bug
>because AFAIK it was problematical due to the limitiation of the XSMP
>spec and so might be relevant:
>
>http://bugzilla.gnome.org/show_bug.cgi?id=70710
>
>  
>
Okay, so I've added a section to attempt to cover the problem mentioned 
in the bug.
One thing that doesn't get handled is the fact that on some systems the 
session manager
may not have sufficient rights to perform shutdowns or reboots.  Would 
it be a good idea
to add a mechanism for clients to be able to ask the session manager if 
it is capable of
rebooting or shutting down?

--Ray

--- dsme-spec-0.5.xml   2003-12-28 16:36:37.000000000 -1000
+++ dsme-spec-0.6.xml   2003-12-28 17:39:45.000000000 -1000
@@ -3,8 +3,8 @@
 <article id="index">
   <articleinfo>
     <title>Desktop Session Management Extensions</title>
-    <releaseinfo>Version 0.5</releaseinfo>
-    <date>28 December 2003</date>
+    <releaseinfo>Version 0.6</releaseinfo>
+    <date>29 December 2003</date>
     <authorgroup>
       <author>
            <firstname>Ray</firstname>
@@ -329,7 +329,7 @@
     </sect2>
   </sect1>
   <sect1 id="session_saving">
-  <title>Session Saving</title>
+  <title>Session Saving and Logging Out</title>
   <para>
     Often individual application instances in desktop
     environments will have two distinct types of state.  The
@@ -413,14 +413,60 @@
       "SaveYourself" message was the result of a
       "SaveYourselfRequest" message with global set to "False"
       then the only relevent client is the client that initiated
-      the "SaveYourselfRequest" method.  In all other cases, the
+      the "SaveYourselfRequest" message.  In all other cases, the
       "DiscardCommand" command of every client should be run.
     </para>
+    <formalpara>
+      <title>Session Shutdown</title>
+      <para>
+        A client that wishes to terminate the active session
+        should set the "_NET_ShutdownMode" property with the
+        value of the requested method of session termination and
+        then immediately send a "SavedYourselfRequest" with
+        shutdown set to "True".  "_NET_ShutdownMode" is a CARD8
+        property, which can be set to one of several possible
+        values:
+        <itemizedlist>
+            <listitem>
+                <para>
+                    _NET_ShutdownModeLogOut (0).  The session
+                    manager should log out of the active session.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    _NET_ShutdownModeReboot (1).  The session
+                    manager should reboot the computer.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    _NET_ShutdownModeHalt (2).  The session
+                    manager should halt the computer.
+                </para>
+            </listitem>
+        </itemizedlist>
+      When the session manager recieves a "SaveYourselfRequest"
+      with shutdown set to "True" it should terminate the session
+      in the manner specified by initiating client's
+      "_NET_ShutdownMode" property.  If the initiating client did
+      not set the "_NET_ShutdownMode" property, then the session
+      manager should assume an implied shutdown mode of
+      "_NET_ShutdownModeLogOut".
+      </para>
+    </formalpara>
   </sect2>
   </sect1>
   <appendix id="changes">
     <title>Change History</title>
     <formalpara>
+      <title>Version 0.6, 29 December 2003, Ray Strode</title>
+      <para>
+      Added section about client initiated session termination.
+      Fixed Typos.
+      </para>
+    </formalpara>
+    <formalpara>
       <title>Version 0.5, 28 December 2003, Ray Strode</title>
       <para>
       Initial Draft.




More information about the xdg mailing list