summaryrefslogtreecommitdiffstats
path: root/gnome-session/org.gnome.SessionManager.ClientPrivate.xml
blob: a167065c18247b8ebfc3d47fc7f4732e086cbaff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
  <interface name="org.gnome.SessionManager.ClientPrivate">
    <method name="EndSessionResponse">
      <arg name="is_ok" type="b" direction="in">
        <doc:doc>
          <doc:summary>Whether or not it is OK to preceed</doc:summary>
        </doc:doc>
      </arg>
      <arg name="reason" type="s" direction="in">
        <doc:doc>
          <doc:summary>The reason string</doc:summary>
        </doc:doc>
      </arg>
      <doc:doc>
        <doc:description>
          <doc:para>This method should be used by the client in response to
            the <doc:ref type="signal" to="org.gnome.SessionManager.ClientPrivate::QueryEndSession">QueryEndSession</doc:ref>
            and <doc:ref type="signal" to="org.gnome.SessionManager.ClientPrivate::EndSession">EndSession</doc:ref> signals.
          </doc:para>
        </doc:description>
      </doc:doc>
    </method>

    <signal name="Stop">
      <doc:doc>
        <doc:summary>Stop client</doc:summary>
        <doc:description>
          <doc:para>
            The client should stop and remove itself from the session in
            response to this signal.
          </doc:para>
        </doc:description>
      </doc:doc>
    </signal>

    <signal name="QueryEndSession">
      <arg name="flags" type="u">
        <doc:doc>
          <doc:summary>Flags</doc:summary>
        </doc:doc>
      </arg>
      <doc:doc>
        <doc:description>
          <doc:para>This signal is used to inform the client that the
            session is about to end.  The client must respond by
            calling
            <doc:ref type="method" to="org.gnome.SessionManager.ClientPrivate.EndSessionResponse">EndSessionResponse</doc:ref>
            within one second of the signal emission.
          </doc:para>
          <doc:para>
            The flags may include:
            <doc:list>
              <doc:item>
                <doc:term>1</doc:term>
                <doc:definition>Logout is forced.
                  <doc:ref type="method" to="org.gnome.SessionManager.ClientPrivate.EndSessionResponse">EndSessionResponse</doc:ref>
                reason and any inhibit from client will be
                ignored.</doc:definition>
              </doc:item>
            </doc:list>
          </doc:para>
          <doc:para>
            If the client responds with an EndSessionResponse is-ok
            argument equal to FALSE and a reason then this reason may
            be displayed to the user.
          </doc:para>
          <doc:para>
            The client must not attempt to perform any actions or
            interact with the user in response to this signal.  Any
            actions required for a clean shutdown should take place in
            response to the
            <doc:ref type="signal" to="org.gnome.SessionManager.ClientPrivate::EndSession">EndSession</doc:ref> signal.
          </doc:para>
          <doc:para>
            The client should limit operations until either a
            <doc:ref type="signal" to="org.gnome.SessionManager.ClientPrivate::EndSession">EndSession</doc:ref>
            <doc:ref type="signal" to="org.gnome.SessionManager.ClientPrivate::CancelEndSession">CancelEndSession</doc:ref>
            signal is received.
          </doc:para>
        </doc:description>
      </doc:doc>
    </signal>

    <signal name="EndSession">
      <arg name="flags" type="u">
        <doc:doc>
          <doc:summary>Flags</doc:summary>
        </doc:doc>
      </arg>
      <doc:doc>
        <doc:description>
          <doc:para>This signal is used to inform the client that the
            session is about to end.  The client must respond by
            calling
            <doc:ref type="method" to="org.gnome.SessionManager.ClientPrivate.EndSessionResponse">EndSessionResponse</doc:ref>
            within ten seconds of the signal emission.
          </doc:para>
          <doc:para>
            The client must not attempt to interact with the user in
            response to this signal.  The application will be given a
            maxium of ten seconds to perform any actions required for
            a clean shutdown.
          </doc:para>
        </doc:description>
      </doc:doc>
    </signal>

    <signal name="CancelEndSession">
      <doc:doc>
        <doc:description>
          <doc:para>
            This signal indicates to the client that a previous emission of
            <doc:ref type="signal" to="org.gnome.SessionManager.ClientPrivate::QueryEndSession">QueryEndSession</doc:ref>
            has been cancelled.  The client should resume normal operations.
          </doc:para>
        </doc:description>
      </doc:doc>
    </signal>

  </interface>
</node>