summaryrefslogtreecommitdiff
path: root/src/nautilus-application.c
diff options
context:
space:
mode:
authorAlexandru Pandelea <alexandru.pandelea@gmail.com>2017-06-28 17:47:41 +0100
committerAlexandru Pandelea <alexandru.pandelea@gmail.com>2017-08-09 10:50:57 +0100
commit5d05180eba0adbabc84b2d9a33f4a3e97f01274b (patch)
treea7fc39f4a88c17d279e7223dabca7a794daa98b3 /src/nautilus-application.c
parentc1eb1d2a70d82e38094c0cf2360cfeb976531cfc (diff)
downloadnautilus-5d05180eba0adbabc84b2d9a33f4a3e97f01274b.tar.gz
implement tagswip/alexpandelea/tags
Diffstat (limited to 'src/nautilus-application.c')
-rw-r--r--src/nautilus-application.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/nautilus-application.c b/src/nautilus-application.c
index 77443f5f6..108319fc6 100644
--- a/src/nautilus-application.c
+++ b/src/nautilus-application.c
@@ -39,6 +39,7 @@
#include "nautilus-window.h"
#include "nautilus-window-slot.h"
#include "nautilus-preferences-window.h"
+#include "nautilus-tag-manager.h"
#include "nautilus-directory-private.h"
#include "nautilus-file-utilities.h"
@@ -80,6 +81,11 @@ typedef struct
GHashTable *notifications;
NautilusFileUndoManager *undo_manager;
+
+ NautilusTagManager *tag_manager;
+ GCancellable *tag_manager_tags_cancellable;
+ GCancellable *tag_manager_notifier_cancellable;
+ GCancellable *tag_manager_favorite_cancellable;
} NautilusApplicationPrivate;
G_DEFINE_TYPE_WITH_PRIVATE (NautilusApplication, nautilus_application, GTK_TYPE_APPLICATION);
@@ -612,6 +618,17 @@ nautilus_application_finalize (GObject *object)
g_clear_object (&priv->undo_manager);
+ g_clear_object (&priv->tag_manager);
+
+ g_cancellable_cancel (priv->tag_manager_tags_cancellable);
+ g_clear_object (&priv->tag_manager_tags_cancellable);
+
+ g_cancellable_cancel (priv->tag_manager_notifier_cancellable);
+ g_clear_object (&priv->tag_manager_notifier_cancellable);
+
+ g_cancellable_cancel (priv->tag_manager_favorite_cancellable);
+ g_clear_object (&priv->tag_manager_favorite_cancellable);
+
G_OBJECT_CLASS (nautilus_application_parent_class)->finalize (object);
}
@@ -1077,6 +1094,14 @@ nautilus_application_init (NautilusApplication *self)
priv->undo_manager = nautilus_file_undo_manager_new ();
+ priv->tag_manager_tags_cancellable = g_cancellable_new ();
+ priv->tag_manager_notifier_cancellable = g_cancellable_new ();
+ priv->tag_manager_favorite_cancellable = g_cancellable_new ();
+
+ priv->tag_manager = nautilus_tag_manager_new (priv->tag_manager_tags_cancellable,
+ priv->tag_manager_notifier_cancellable,
+ priv->tag_manager_favorite_cancellable);
+
g_application_add_main_option_entries (G_APPLICATION (self), options);
nautilus_ensure_extension_points ();