]> Pileus Git - ~andy/gtk/blob - docs/reference/gtk/migrating-smclient-GtkApplication.xml
stylecontext: Do invalidation on first resize container
[~andy/gtk] / docs / reference / gtk / migrating-smclient-GtkApplication.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
3                "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
4 ]>
5 <chapter id="gtk-migrating-smclient-GtkApplication">
6
7   <title>Migrating from EggSMClient to GtkApplication</title>
8
9   <para>
10     EggSMClient provides 'session management' support for applications.
11     This means a number of things:
12     <itemizedlist>
13       <listitem>logout notification and negotiation</listitem>
14       <listitem>application state saving</listitem>
15       <listitem>restarting of applications with saved state</listitem>
16     </itemizedlist>
17     EggSMClient supports this functionality to varying degrees on
18     Windows and OS X, as well as with XSMP and D-Bus based session
19     managers in X11.
20   </para>
21
22   <para>
23     Starting with GTK+ 3.4, #GtkApplication supports logout notification
24     and negotiation similar to EggSMClient.
25   </para>
26   <table>
27     <tgroup cols="2">
28       <title>EggSMClient to GtkApplication</title>
29       <thead>
30         <row><entry>EggSMClient</entry><entry>GtkApplication</entry></row>
31       </thead>
32       <tbody>
33         <row><entry>EggSMClient::quit-requested</entry><entry>instead of calling will_quit (FALSE,...) in response to this signal, install an inhibitor</entry></row>
34         <row><entry>EggSMClient::quit</entry><entry>the #GApplication::shutdown signal</entry></row>
35         <row><entry>EggSMClient::quit-cancelled</entry><entry>-</entry></row>
36         <row><entry>egg_sm_client_will_quit</entry><entry>instead of calling will_quit (FALSE,...), install an inhibitor</entry></row>
37         <row><entry>egg_sm_client_end_session</entry><entry>-</entry></row>
38       </tbody>
39     </tgroup>
40   </table>
41
42   <para>
43     At this point, GtkApplication has no special support for state saving
44     and restarting. Applications can use GSettings or GKeyFile and save as
45     much state as they see fit in response to #GApplication::shutdown or
46     whenever they consider appropriate.
47   </para>
48 </chapter>