[gnome-builder] highlighter: add pause/unpause API
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] highlighter: add pause/unpause API
- Date: Sun, 18 Jun 2017 08:03:50 +0000 (UTC)
commit df4d3accd19c44e4e3e0082a2720a4c5af933803
Author: Christian Hergert <chergert redhat com>
Date: Sun Jun 18 01:00:57 2017 -0700
highlighter: add pause/unpause API
This is useful to disable the highlighter at certain times like when
loading the buffer.
libide/highlighting/ide-highlight-engine.c | 16 ++++++++++++++++
libide/highlighting/ide-highlight-engine.h | 2 ++
2 files changed, 18 insertions(+), 0 deletions(-)
---
diff --git a/libide/highlighting/ide-highlight-engine.c b/libide/highlighting/ide-highlight-engine.c
index f06fd39..3363242 100644
--- a/libide/highlighting/ide-highlight-engine.c
+++ b/libide/highlighting/ide-highlight-engine.c
@@ -1071,3 +1071,19 @@ ide_highlight_engine_get_style (IdeHighlightEngine *self,
{
return get_tag_from_style (self, style_name, FALSE);
}
+
+void
+ide_highlight_engine_pause (IdeHighlightEngine *self)
+{
+ g_return_if_fail (IDE_IS_HIGHLIGHT_ENGINE (self));
+
+ dzl_signal_group_block (self->signal_group);
+}
+
+void
+ide_highlight_engine_unpause (IdeHighlightEngine *self)
+{
+ g_return_if_fail (IDE_IS_HIGHLIGHT_ENGINE (self));
+
+ dzl_signal_group_unblock (self->signal_group);
+}
diff --git a/libide/highlighting/ide-highlight-engine.h b/libide/highlighting/ide-highlight-engine.h
index 6f522a9..5a5a9ad 100644
--- a/libide/highlighting/ide-highlight-engine.h
+++ b/libide/highlighting/ide-highlight-engine.h
@@ -39,6 +39,8 @@ void ide_highlight_engine_invalidate (IdeHighlightEngine *se
const GtkTextIter *end);
GtkTextTag *ide_highlight_engine_get_style (IdeHighlightEngine *self,
const gchar *style_name);
+void ide_highlight_engine_pause (IdeHighlightEngine *self);
+void ide_highlight_engine_unpause (IdeHighlightEngine *self);
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]