aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/text/e-text.c
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/text/e-text.c')
-rw-r--r--widgets/text/e-text.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/widgets/text/e-text.c b/widgets/text/e-text.c
index b57cec835d..d7afd1df5d 100644
--- a/widgets/text/e-text.c
+++ b/widgets/text/e-text.c
@@ -174,7 +174,16 @@ static gboolean e_text_delete_surrounding_cb (GtkIMContext *context,
static GdkAtom clipboard_atom = GDK_NONE;
-
+static void
+disconnect_im_context (EText *text)
+{
+ if (!text || !text->im_context)
+ return;
+
+ g_signal_handlers_disconnect_matched (
+ text->im_context, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, text);
+ text->im_context_signals_registered = FALSE;
+}
static void
disconnect_im_context (EText *text)