diff options
Diffstat (limited to 'libmate-panel-applet/mate-panel-applet.c')
-rw-r--r-- | libmate-panel-applet/mate-panel-applet.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/libmate-panel-applet/mate-panel-applet.c b/libmate-panel-applet/mate-panel-applet.c index c83e5671..4f7f430f 100644 --- a/libmate-panel-applet/mate-panel-applet.c +++ b/libmate-panel-applet/mate-panel-applet.c @@ -55,6 +55,8 @@ struct _MatePanelAppletPrivate { GtkWidget *applet; GDBusConnection *connection; + gboolean out_of_process; + char *id; GClosure *closure; char *object_path; @@ -97,6 +99,7 @@ static guint mate_panel_applet_signals[LAST_SIGNAL] = { 0 }; enum { PROP_0, + PROP_OUT_OF_PROCESS, PROP_ID, PROP_CLOSURE, PROP_CONNECTION, @@ -1619,6 +1622,9 @@ mate_panel_applet_get_property (GObject *object, MatePanelApplet *applet = MATE_PANEL_APPLET (object); switch (prop_id) { + case PROP_OUT_OF_PROCESS: + g_value_set_boolean (value, applet->priv->out_of_process); + break; case PROP_ID: g_value_set_string (value, applet->priv->id); break; @@ -1677,6 +1683,9 @@ mate_panel_applet_set_property (GObject *object, MatePanelApplet *applet = MATE_PANEL_APPLET (object); switch (prop_id) { + case PROP_OUT_OF_PROCESS: + applet->priv->out_of_process = g_value_get_boolean (value); + break; case PROP_ID: applet->priv->id = g_value_dup_string (value); break; @@ -1923,6 +1932,14 @@ mate_panel_applet_class_init (MatePanelAppletClass *klass) g_type_class_add_private (klass, sizeof (MatePanelAppletPrivate)); g_object_class_install_property (gobject_class, + PROP_OUT_OF_PROCESS, + g_param_spec_boolean ("out-of-process", + "out-of-process", + "out-of-process", + TRUE, + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_READWRITE)); + g_object_class_install_property (gobject_class, PROP_ID, g_param_spec_string ("id", "Id", @@ -2311,7 +2328,7 @@ _mate_panel_applet_factory_main_internal (const gchar *factory_id, } closure = g_cclosure_new(G_CALLBACK(callback), user_data, NULL); - factory = mate_panel_applet_factory_new(factory_id, applet_type, closure); + factory = mate_panel_applet_factory_new(factory_id, out_process, applet_type, closure); g_closure_unref(closure); if (mate_panel_applet_factory_register_service(factory)) |