1
0
forked from aniani/vim

updated for version 7.0-067

This commit is contained in:
Bram Moolenaar
2006-08-29 14:07:36 +00:00
parent 2d694603c7
commit 39fecab939
3 changed files with 14 additions and 3 deletions

View File

@@ -8597,7 +8597,12 @@ ins_left()
tpos = curwin->w_cursor;
if (oneleft() == OK)
{
start_arrow(&tpos);
#if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
/* Only call start_arrow() when not busy with preediting, it will
* break undo. K_LEFT is inserted in im_correct_cursor(). */
if (!im_is_preediting())
#endif
start_arrow(&tpos);
#ifdef FEAT_RIGHTLEFT
/* If exit reversed string, position is fixed */
if (revins_scol != -1 && (int)curwin->w_cursor.col >= revins_scol)

View File

@@ -3514,6 +3514,11 @@ im_delete_preedit(void)
add_to_input_buf(delkey, (int)sizeof(delkey));
}
/*
* Move the cursor left by "num_move_back" characters.
* Note that ins_left() checks im_is_preediting() to avoid breaking undo for
* these K_LEFT keys.
*/
static void
im_correct_cursor(int num_move_back)
{
@@ -3741,8 +3746,7 @@ im_preedit_changed_cb(GtkIMContext *context, gpointer data)
}
else if (cursor_index == 0 && preedit_string[0] == '\0')
{
if (preedit_start_col == MAXCOL)
xim_has_preediting = FALSE;
xim_has_preediting = FALSE;
/* If at the start position (after typing backspace)
* preedit_start_col must be reset. */

View File

@@ -666,6 +666,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
67,
/**/
66,
/**/