summaryrefslogtreecommitdiff
path: root/src/gui.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui.c')
-rw-r--r--src/gui.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/gui.c b/src/gui.c
index 09c3027cb..8568d33ab 100644
--- a/src/gui.c
+++ b/src/gui.c
@@ -958,7 +958,13 @@ gui_update_cursor(force, clear_selection)
static int iid;
guicolor_T fg, bg;
- if (im_get_status())
+ if (
+# ifdef HAVE_GTK2
+ preedit_get_status()
+# else
+ im_get_status()
+# endif
+ )
{
iid = syn_name2id((char_u *)"CursorIM");
if (iid > 0)
@@ -5124,6 +5130,16 @@ gui_handle_drop(x, y, modifiers, fnames, count)
{
int i;
char_u *p;
+ static int entered = FALSE;
+
+ /*
+ * This function is called by event handlers. Just in case we get a
+ * second event before the first one is handled, ignore the second one.
+ * Not sure if this can ever happen, just in case.
+ */
+ if (entered)
+ return;
+ entered = TRUE;
/*
* When the cursor is at the command line, add the file names to the
@@ -5207,5 +5223,7 @@ gui_handle_drop(x, y, modifiers, fnames, count)
gui_update_cursor(FALSE, FALSE);
gui_mch_flush();
}
+
+ entered = FALSE;
}
#endif