diff options
author | Balló György <[email protected]> | 2013-11-30 13:02:57 +0100 |
---|---|---|
committer | Balló György <[email protected]> | 2013-11-30 13:02:57 +0100 |
commit | 052e043ea3ebfd7551707dcc229389f1b91e783c (patch) | |
tree | 8ef74e22a8fe2a2f24f8430150c0d219c3b80aba | |
parent | 7ceb8fe98bdaf81e3e9a638f0abbfa657aa00ab2 (diff) | |
download | pluma-052e043ea3ebfd7551707dcc229389f1b91e783c.tar.bz2 pluma-052e043ea3ebfd7551707dcc229389f1b91e783c.tar.xz |
Use Caja GSettings schema optionally
This makes Caja dependency optional.
-rw-r--r-- | plugins/filebrowser/pluma-file-browser-plugin.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/plugins/filebrowser/pluma-file-browser-plugin.c b/plugins/filebrowser/pluma-file-browser-plugin.c index 69b1e185..030ab783 100644 --- a/plugins/filebrowser/pluma-file-browser-plugin.c +++ b/plugins/filebrowser/pluma-file-browser-plugin.c @@ -623,6 +623,7 @@ impl_activate (PlumaPlugin * plugin, PlumaWindow * window) GdkPixbuf * pixbuf; PlumaFileBrowserStore * store; gchar *data_dir; + GSettingsSchemaSource *schema_source; data = g_new0 (PlumaFileBrowserPluginData, 1); @@ -632,7 +633,6 @@ impl_activate (PlumaPlugin * plugin, PlumaWindow * window) data->settings = g_settings_new (FILE_BROWSER_SCHEMA); data->onload_settings = g_settings_new (FILE_BROWSER_ONLOAD_SCHEMA); - data->caja_settings = g_settings_new (CAJA_SCHEMA); data->terminal_settings = g_settings_new (TERMINAL_SCHEMA); g_signal_connect (data->tree_widget, @@ -689,7 +689,11 @@ impl_activate (PlumaPlugin * plugin, PlumaWindow * window) restore_filter (data); /* Install caja preferences */ - install_caja_prefs (data); + schema_source = g_settings_schema_source_get_default(); + if (g_settings_schema_source_lookup (schema_source, CAJA_SCHEMA, FALSE)) { + data->caja_settings = g_settings_new (CAJA_SCHEMA); + install_caja_prefs (data); + } /* Connect signals to store the last visited location */ g_signal_connect (pluma_file_browser_widget_get_browser_view (data->tree_widget), @@ -742,9 +746,11 @@ impl_deactivate (PlumaPlugin * plugin, PlumaWindow * window) g_object_unref (data->settings); g_object_unref (data->onload_settings); - g_object_unref (data->caja_settings); g_object_unref (data->terminal_settings); + if (data->caja_settings) + g_object_unref (data->caja_settings); + remove_popup_ui (window); panel = pluma_window_get_side_panel (window); |