[gtk/wip/chergert/remove-emit-by-name] texttag: avoid use of g_signal_emit_by_name()
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/wip/chergert/remove-emit-by-name] texttag: avoid use of g_signal_emit_by_name()
- Date: Thu, 5 Sep 2019 02:40:37 +0000 (UTC)
commit cc7ae525efe5432e63cc993bbeadc0bda3daad17
Author: Christian Hergert <chergert redhat com>
Date: Wed Sep 4 19:39:24 2019 -0700
texttag: avoid use of g_signal_emit_by_name()
This avoids looking up the signal by name and instead uses the saved
signal identifier from gtktexttagtable.c
gtk/gtktexttag.c | 6 ++----
gtk/gtktexttagtable.c | 8 ++++++++
gtk/gtktexttagtableprivate.h | 3 +++
3 files changed, 13 insertions(+), 4 deletions(-)
---
diff --git a/gtk/gtktexttag.c b/gtk/gtktexttag.c
index 27fbdff6b7..d04606f463 100644
--- a/gtk/gtktexttag.c
+++ b/gtk/gtktexttag.c
@@ -77,6 +77,7 @@
#include "gtktexttag.h"
#include "gtktexttypes.h"
#include "gtktexttagtable.h"
+#include "gtktexttagtableprivate.h"
#include "gtkintl.h"
#include "gtkmarshalers.h"
#include "gtkprivate.h"
@@ -2029,10 +2030,7 @@ gtk_text_tag_changed (GtkTextTag *tag,
* added, this would increase significantly the number of signal connections.
*/
if (priv->table != NULL)
- g_signal_emit_by_name (priv->table,
- "tag-changed",
- tag,
- size_changed);
+ _gtk_text_tag_table_tag_changed (priv->table, tag, size_changed);
}
static int
diff --git a/gtk/gtktexttagtable.c b/gtk/gtktexttagtable.c
index 0b2e6623c7..81a852ccc3 100644
--- a/gtk/gtktexttagtable.c
+++ b/gtk/gtktexttagtable.c
@@ -484,3 +484,11 @@ _gtk_text_tag_table_remove_buffer (GtkTextTagTable *table,
priv->buffers = g_slist_remove (priv->buffers, buffer);
}
+
+void
+_gtk_text_tag_table_tag_changed (GtkTextTagTable *table,
+ GtkTextTag *tag,
+ gboolean size_changed)
+{
+ g_signal_emit (table, signals[TAG_CHANGED], 0, tag, size_changed);
+}
diff --git a/gtk/gtktexttagtableprivate.h b/gtk/gtktexttagtableprivate.h
index 969cc4e2c8..0a8401e695 100644
--- a/gtk/gtktexttagtableprivate.h
+++ b/gtk/gtktexttagtableprivate.h
@@ -33,6 +33,9 @@ void _gtk_text_tag_table_add_buffer (GtkTextTagTable *table,
gpointer buffer);
void _gtk_text_tag_table_remove_buffer (GtkTextTagTable *table,
gpointer buffer);
+void _gtk_text_tag_table_tag_changed (GtkTextTagTable *table,
+ GtkTextTag *tag,
+ gboolean size_changed);
G_END_DECLS
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]