2626#include "eggsmclient-private.h"
2727
2828static void egg_sm_client_debug_handler (const char * log_domain ,
29- GLogLevelFlags log_level ,
30- const char * message ,
31- gpointer user_data );
29+ GLogLevelFlags log_level ,
30+ const char * message ,
31+ gpointer user_data );
3232
3333enum {
3434 SAVE_STATE ,
@@ -40,13 +40,11 @@ enum {
4040
4141static guint signals [LAST_SIGNAL ] = { 0 };
4242
43- struct _EggSMClientPrivate {
43+ typedef struct {
4444 GKeyFile * state_file ;
45- };
46-
47- #define EGG_SM_CLIENT_GET_PRIVATE (o ) (G_TYPE_INSTANCE_GET_PRIVATE ((o), EGG_TYPE_SM_CLIENT, EggSMClientPrivate))
45+ }EggSMClientPrivate ;
4846
49- G_DEFINE_TYPE (EggSMClient , egg_sm_client , G_TYPE_OBJECT )
47+ G_DEFINE_TYPE_WITH_PRIVATE (EggSMClient , egg_sm_client , G_TYPE_OBJECT )
5048
5149static EggSMClient * global_client ;
5250static EggSMClientMode global_client_mode = EGG_SM_CLIENT_MODE_NORMAL ;
@@ -62,8 +60,6 @@ egg_sm_client_class_init (EggSMClientClass *klass)
6260{
6361 GObjectClass * object_class = G_OBJECT_CLASS (klass );
6462
65- g_type_class_add_private (klass , sizeof (EggSMClientPrivate ));
66-
6763 /**
6864 * EggSMClient::save_state:
6965 * @client: the client
@@ -182,9 +178,9 @@ static char *sm_config_prefix = NULL;
182178
183179static gboolean
184180sm_client_post_parse_func (GOptionContext * context ,
185- GOptionGroup * group ,
186- gpointer data ,
187- GError * * error )
181+ GOptionGroup * group ,
182+ gpointer data ,
183+ GError * * error )
188184{
189185 EggSMClient * client = egg_sm_client_get ();
190186
@@ -246,12 +242,12 @@ egg_sm_client_get_option_group (void)
246242
247243 /* Use our own debug handler for the "EggSMClient" domain. */
248244 g_log_set_handler (G_LOG_DOMAIN , G_LOG_LEVEL_DEBUG ,
249- egg_sm_client_debug_handler , NULL );
245+ egg_sm_client_debug_handler , NULL );
250246
251247 group = g_option_group_new ("sm-client" ,
252- _ ("Session management options:" ),
253- _ ("Show session management options" ),
254- NULL , NULL );
248+ _ ("Session management options:" ),
249+ _ ("Show session management options" ),
250+ NULL , NULL );
255251 g_option_group_add_entries (group , entries );
256252 g_option_group_set_parse_hooks (group , NULL , sm_client_post_parse_func );
257253
@@ -316,36 +312,36 @@ EggSMClient *
316312egg_sm_client_get (void )
317313{
318314 if (!global_client )
315+ {
316+ if (global_client_mode != EGG_SM_CLIENT_MODE_DISABLED &&
317+ !sm_client_disable )
319318 {
320- if (global_client_mode != EGG_SM_CLIENT_MODE_DISABLED &&
321- !sm_client_disable )
322- {
323319#if defined (GDK_WINDOWING_WIN32 )
324- global_client = egg_sm_client_win32_new ();
320+ global_client = egg_sm_client_win32_new ();
325321#elif defined (GDK_WINDOWING_QUARTZ )
326- global_client = egg_sm_client_osx_new ();
322+ global_client = egg_sm_client_osx_new ();
327323#else
328- /* If both D-Bus and XSMP are compiled in, try XSMP first
329- * (since it supports state saving) and fall back to D-Bus
330- * if XSMP isn't available.
331- */
324+ /* If both D-Bus and XSMP are compiled in, try XSMP first
325+ * (since it supports state saving) and fall back to D-Bus
326+ * if XSMP isn't available.
327+ */
332328# ifdef EGG_SM_CLIENT_BACKEND_XSMP
333- global_client = egg_sm_client_xsmp_new ();
329+ global_client = egg_sm_client_xsmp_new ();
334330# endif
335331# ifdef EGG_SM_CLIENT_BACKEND_DBUS
336- if (!global_client )
337- global_client = egg_sm_client_dbus_new ();
332+ if (!global_client )
333+ global_client = egg_sm_client_dbus_new ();
338334# endif
339335#endif
340- }
341-
342- /* Fallback: create a dummy client, so that callers don't have
343- * to worry about a %NULL return value.
344- */
345- if (!global_client )
346- global_client = g_object_new (EGG_TYPE_SM_CLIENT , NULL );
347336 }
348337
338+ /* Fallback: create a dummy client, so that callers don't have
339+ * to worry about a %NULL return value.
340+ */
341+ if (!global_client )
342+ global_client = g_object_new (EGG_TYPE_SM_CLIENT , NULL );
343+ }
344+
349345 return global_client ;
350346}
351347
@@ -390,7 +386,8 @@ egg_sm_client_is_resumed (EggSMClient *client)
390386GKeyFile *
391387egg_sm_client_get_state_file (EggSMClient * client )
392388{
393- EggSMClientPrivate * priv = EGG_SM_CLIENT_GET_PRIVATE (client );
389+ EggSMClientPrivate * priv = egg_sm_client_get_instance_private (client );
390+
394391 char * state_file_path ;
395392 GError * err = NULL ;
396393
@@ -410,7 +407,7 @@ egg_sm_client_get_state_file (EggSMClient *client)
410407 if (!g_key_file_load_from_file (priv -> state_file , state_file_path , 0 , & err ))
411408 {
412409 g_warning ("Could not load SM state file '%s': %s" ,
413- sm_client_state_file , err -> message );
410+ sm_client_state_file , err -> message );
414411 g_clear_error (& err );
415412 g_key_file_free (priv -> state_file );
416413 priv -> state_file = NULL ;
@@ -435,8 +432,8 @@ egg_sm_client_get_state_file (EggSMClient *client)
435432 **/
436433void
437434egg_sm_client_set_restart_command (EggSMClient * client ,
438- int argc ,
439- const char * * argv )
435+ int argc ,
436+ const char * * argv )
440437{
441438 g_return_if_fail (EGG_IS_SM_CLIENT (client ));
442439
@@ -464,7 +461,7 @@ egg_sm_client_set_restart_command (EggSMClient *client,
464461 **/
465462void
466463egg_sm_client_will_quit (EggSMClient * client ,
467- gboolean will_quit )
464+ gboolean will_quit )
468465{
469466 g_return_if_fail (EGG_IS_SM_CLIENT (client ));
470467
@@ -490,7 +487,7 @@ egg_sm_client_will_quit (EggSMClient *client,
490487 **/
491488gboolean
492489egg_sm_client_end_session (EggSMClientEndStyle style ,
493- gboolean request_confirmation )
490+ gboolean request_confirmation )
494491{
495492 EggSMClient * client = egg_sm_client_get ();
496493
@@ -499,7 +496,7 @@ egg_sm_client_end_session (EggSMClientEndStyle style,
499496 if (EGG_SM_CLIENT_GET_CLASS (client )-> end_session )
500497 {
501498 return EGG_SM_CLIENT_GET_CLASS (client )-> end_session (client , style ,
502- request_confirmation );
499+ request_confirmation );
503500 }
504501 else
505502 return FALSE;
@@ -575,9 +572,9 @@ egg_sm_client_quit (EggSMClient *client)
575572
576573static void
577574egg_sm_client_debug_handler (const char * log_domain ,
578- GLogLevelFlags log_level ,
579- const char * message ,
580- gpointer user_data )
575+ GLogLevelFlags log_level ,
576+ const char * message ,
577+ gpointer user_data )
581578{
582579 static int debug = -1 ;
583580
0 commit comments