3131#include "eom-window.h"
3232#include "eom-application.h"
3333#include "eom-application-activatable.h"
34+ #include "eom-application-internal.h"
3435#include "eom-util.h"
3536
3637#include <string.h>
@@ -55,7 +56,7 @@ eom_application_activate (GApplication *application)
5556{
5657 eom_application_open_window (EOM_APPLICATION (application ),
5758 GDK_CURRENT_TIME ,
58- EOM_APPLICATION (application )-> flags ,
59+ EOM_APPLICATION (application )-> priv -> flags ,
5960 NULL );
6061}
6162
@@ -72,27 +73,28 @@ eom_application_open (GApplication *application,
7273
7374 eom_application_open_file_list (EOM_APPLICATION (application ),
7475 list , GDK_CURRENT_TIME ,
75- EOM_APPLICATION (application )-> flags ,
76+ EOM_APPLICATION (application )-> priv -> flags ,
7677 NULL );
7778}
7879
7980static void
8081eom_application_finalize (GObject * object )
8182{
8283 EomApplication * application = EOM_APPLICATION (object );
84+ EomApplicationPrivate * priv = application -> priv ;
8385
84- if (application -> toolbars_model ) {
85- g_object_unref (application -> toolbars_model );
86- application -> toolbars_model = NULL ;
87- g_free (application -> toolbars_file );
88- application -> toolbars_file = NULL ;
86+ if (priv -> toolbars_model ) {
87+ g_object_unref (priv -> toolbars_model );
88+ priv -> toolbars_model = NULL ;
89+ g_free (priv -> toolbars_file );
90+ priv -> toolbars_file = NULL ;
8991 }
9092
91- g_clear_object (& application -> extensions );
93+ g_clear_object (& priv -> extensions );
9294
93- if (application -> plugin_engine ) {
94- g_object_unref (application -> plugin_engine );
95- application -> plugin_engine = NULL ;
95+ if (priv -> plugin_engine ) {
96+ g_object_unref (priv -> plugin_engine );
97+ priv -> plugin_engine = NULL ;
9698 }
9799 eom_application_save_accelerators ();
98100}
@@ -106,10 +108,10 @@ eom_application_add_platform_data (GApplication *application,
106108 G_APPLICATION_CLASS (eom_application_parent_class )-> add_platform_data (application ,
107109 builder );
108110
109- if (app -> flags ) {
111+ if (app -> priv -> flags ) {
110112 g_variant_builder_add (builder , "{sv}" ,
111113 "eom-application-startup-flags" ,
112- g_variant_new_byte (app -> flags ));
114+ g_variant_new_byte (app -> priv -> flags ));
113115 }
114116}
115117
@@ -121,11 +123,11 @@ eom_application_before_emit (GApplication *application,
121123 const gchar * key ;
122124 GVariant * value ;
123125
124- EOM_APPLICATION (application )-> flags = 0 ;
126+ EOM_APPLICATION (application )-> priv -> flags = 0 ;
125127 g_variant_iter_init (& iter , platform_data );
126128 while (g_variant_iter_loop (& iter , "{&sv}" , & key , & value )) {
127129 if (strcmp (key , "eom-application-startup-flags" ) == 0 ) {
128- EOM_APPLICATION (application )-> flags = g_variant_get_byte (value );
130+ EOM_APPLICATION (application )-> priv -> flags = g_variant_get_byte (value );
129131 }
130132 }
131133
@@ -139,6 +141,9 @@ eom_application_class_init (EomApplicationClass *eom_application_class)
139141 GApplicationClass * application_class ;
140142 GObjectClass * object_class ;
141143
144+ g_type_class_add_private (eom_application_class ,
145+ sizeof (EomApplicationPrivate ));
146+
142147 application_class = (GApplicationClass * ) eom_application_class ;
143148 object_class = (GObjectClass * ) eom_application_class ;
144149
@@ -171,42 +176,46 @@ on_extension_removed (PeasExtensionSet *set,
171176static void
172177eom_application_init (EomApplication * eom_application )
173178{
179+ EomApplicationPrivate * priv ;
174180 const gchar * dot_dir = eom_util_dot_dir ();
175181
176182 eom_session_init (eom_application );
177183
178- eom_application -> toolbars_model = egg_toolbars_model_new ();
179- eom_application -> plugin_engine = eom_plugin_engine_new ();
180- eom_application -> flags = 0 ;
184+ eom_application -> priv = EOM_APPLICATION_GET_PRIVATE (eom_application );
185+ priv = eom_application -> priv ;
186+
187+ priv -> toolbars_model = egg_toolbars_model_new ();
188+ priv -> plugin_engine = eom_plugin_engine_new ();
189+ priv -> flags = 0 ;
181190
182- egg_toolbars_model_load_names (eom_application -> toolbars_model ,
191+ egg_toolbars_model_load_names (priv -> toolbars_model ,
183192 EOM_DATA_DIR "/eom-toolbar.xml" );
184193
185194 if (G_LIKELY (dot_dir != NULL ))
186- eom_application -> toolbars_file = g_build_filename
195+ priv -> toolbars_file = g_build_filename
187196 (dot_dir , "eom_toolbar.xml" , NULL );
188197
189- if (!dot_dir || !egg_toolbars_model_load_toolbars (eom_application -> toolbars_model ,
190- eom_application -> toolbars_file )) {
198+ if (!dot_dir || !egg_toolbars_model_load_toolbars (priv -> toolbars_model ,
199+ priv -> toolbars_file )) {
191200
192- egg_toolbars_model_load_toolbars (eom_application -> toolbars_model ,
201+ egg_toolbars_model_load_toolbars (priv -> toolbars_model ,
193202 EOM_DATA_DIR "/eom-toolbar.xml" );
194203 }
195204
196- egg_toolbars_model_set_flags (eom_application -> toolbars_model , 0 ,
205+ egg_toolbars_model_set_flags (priv -> toolbars_model , 0 ,
197206 EGG_TB_MODEL_NOT_REMOVABLE );
198207
199208 eom_application_load_accelerators ();
200209
201- eom_application -> extensions = peas_extension_set_new (
202- PEAS_ENGINE (eom_application -> plugin_engine ),
210+ priv -> extensions = peas_extension_set_new (
211+ PEAS_ENGINE (priv -> plugin_engine ),
203212 EOM_TYPE_APPLICATION_ACTIVATABLE ,
204213 "app" , EOM_APPLICATION (eom_application ),
205214 NULL );
206- peas_extension_set_call (eom_application -> extensions , "activate" );
207- g_signal_connect (eom_application -> extensions , "extension-added" ,
215+ peas_extension_set_call (priv -> extensions , "activate" );
216+ g_signal_connect (priv -> extensions , "extension-added" ,
208217 G_CALLBACK (on_extension_added ), eom_application );
209- g_signal_connect (eom_application -> extensions , "extension-removed" ,
218+ g_signal_connect (priv -> extensions , "extension-removed" ,
210219 G_CALLBACK (on_extension_removed ), eom_application );
211220}
212221
@@ -475,7 +484,7 @@ eom_application_get_toolbars_model (EomApplication *application)
475484{
476485 g_return_val_if_fail (EOM_IS_APPLICATION (application ), NULL );
477486
478- return application -> toolbars_model ;
487+ return application -> priv -> toolbars_model ;
479488}
480489
481490/**
@@ -487,9 +496,9 @@ eom_application_get_toolbars_model (EomApplication *application)
487496void
488497eom_application_save_toolbars_model (EomApplication * application )
489498{
490- if (G_LIKELY (application -> toolbars_file != NULL ))
491- egg_toolbars_model_save_toolbars (application -> toolbars_model ,
492- application -> toolbars_file ,
499+ if (G_LIKELY (application -> priv -> toolbars_file != NULL ))
500+ egg_toolbars_model_save_toolbars (application -> priv -> toolbars_model ,
501+ application -> priv -> toolbars_file ,
493502 "1.0" );
494503}
495504
@@ -502,17 +511,20 @@ eom_application_save_toolbars_model (EomApplication *application)
502511void
503512eom_application_reset_toolbars_model (EomApplication * app )
504513{
514+ EomApplicationPrivate * priv ;
505515 g_return_if_fail (EOM_IS_APPLICATION (app ));
506516
507- g_object_unref (app -> toolbars_model );
517+ priv = app -> priv ;
518+
519+ g_object_unref (app -> priv -> toolbars_model );
508520
509- app -> toolbars_model = egg_toolbars_model_new ();
521+ priv -> toolbars_model = egg_toolbars_model_new ();
510522
511- egg_toolbars_model_load_names (app -> toolbars_model ,
523+ egg_toolbars_model_load_names (priv -> toolbars_model ,
512524 EOM_DATA_DIR "/eom-toolbar.xml" );
513- egg_toolbars_model_load_toolbars (app -> toolbars_model ,
525+ egg_toolbars_model_load_toolbars (priv -> toolbars_model ,
514526 EOM_DATA_DIR "/eom-toolbar.xml" );
515- egg_toolbars_model_set_flags (app -> toolbars_model , 0 ,
527+ egg_toolbars_model_set_flags (priv -> toolbars_model , 0 ,
516528 EGG_TB_MODEL_NOT_REMOVABLE );
517529}
518530
0 commit comments