[gedit] Make the metadata-manager reusable for other apps
- From: Sébastien Wilmet <swilmet src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gedit] Make the metadata-manager reusable for other apps
- Date: Wed, 29 Apr 2015 11:40:07 +0000 (UTC)
commit 4fc4c5d72a233e38aa96ce1e2e073c7f7b5240e6
Author: Sébastien Wilmet <swilmet gnome org>
Date: Wed Apr 29 13:34:35 2015 +0200
Make the metadata-manager reusable for other apps
By giving the metadata_filename as a parameter to the init() function.
gedit/gedit-app.c | 9 ++++++++-
gedit/gedit-metadata-manager.c | 14 +++++---------
gedit/gedit-metadata-manager.h | 2 +-
3 files changed, 14 insertions(+), 11 deletions(-)
---
diff --git a/gedit/gedit-app.c b/gedit/gedit-app.c
index ed292ce..c95a507 100644
--- a/gedit/gedit-app.c
+++ b/gedit/gedit-app.c
@@ -736,6 +736,10 @@ gedit_app_startup (GApplication *application)
GtkSourceStyleSchemeManager *manager;
const gchar *dir;
gchar *icon_dir;
+#ifndef ENABLE_GVFS_METADATA
+ const gchar *cache_dir;
+ gchar *metadata_filename;
+#endif
priv = gedit_app_get_instance_private (GEDIT_APP (application));
@@ -756,7 +760,10 @@ gedit_app_startup (GApplication *application)
setup_theme_extensions (GEDIT_APP (application));
#ifndef ENABLE_GVFS_METADATA
- gedit_metadata_manager_init ();
+ cache_dir = gedit_dirs_get_user_cache_dir ();
+ metadata_filename = g_build_filename (cache_dir, "gedit-metadata.xml", NULL);
+ gedit_metadata_manager_init (metadata_filename);
+ g_free (metadata_filename);
#endif
/* Load settings */
diff --git a/gedit/gedit-metadata-manager.c b/gedit/gedit-metadata-manager.c
index 9316ad4..199a9a9 100644
--- a/gedit/gedit-metadata-manager.c
+++ b/gedit/gedit-metadata-manager.c
@@ -20,18 +20,14 @@
*/
#include "gedit-metadata-manager.h"
-
#include <libxml/xmlreader.h>
-
#include "gedit-debug.h"
-#include "gedit-dirs.h"
/*
#define GEDIT_METADATA_VERBOSE_DEBUG 1
*/
#define MAX_ITEMS 50
-#define METADATA_FILE "gedit-metadata.xml"
typedef struct _GeditMetadataManager GeditMetadataManager;
@@ -96,19 +92,20 @@ gedit_metadata_manager_arm_timeout (void)
/**
* gedit_metadata_manager_init:
+ * @metadata_filename: the filename where the metadata is stored.
*
* This function initializes the metadata manager.
* See also gedit_metadata_manager_shutdown().
*/
void
-gedit_metadata_manager_init (void)
+gedit_metadata_manager_init (const gchar *metadata_filename)
{
- const gchar *cache_dir;
-
gedit_debug (DEBUG_METADATA);
if (gedit_metadata_manager != NULL)
+ {
return;
+ }
gedit_metadata_manager = g_new0 (GeditMetadataManager, 1);
@@ -120,8 +117,7 @@ gedit_metadata_manager_init (void)
g_free,
item_free);
- cache_dir = gedit_dirs_get_user_cache_dir ();
- gedit_metadata_manager->metadata_filename = g_build_filename (cache_dir, METADATA_FILE, NULL);
+ gedit_metadata_manager->metadata_filename = g_strdup (metadata_filename);
}
/**
diff --git a/gedit/gedit-metadata-manager.h b/gedit/gedit-metadata-manager.h
index 455c77c..07eac78 100644
--- a/gedit/gedit-metadata-manager.h
+++ b/gedit/gedit-metadata-manager.h
@@ -26,7 +26,7 @@
G_BEGIN_DECLS
-void gedit_metadata_manager_init (void);
+void gedit_metadata_manager_init (const gchar *metadata_filename);
void gedit_metadata_manager_shutdown (void);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]