Merge branch 'terminology-1.1'
This commit is contained in:
commit
854f0a67f2
|
@ -93,6 +93,7 @@ struct _Termpty
|
||||||
int circular_offset2;
|
int circular_offset2;
|
||||||
Eina_Unicode *buf;
|
Eina_Unicode *buf;
|
||||||
size_t buflen;
|
size_t buflen;
|
||||||
|
Eina_Unicode last_char;
|
||||||
unsigned char oldbuf[4];
|
unsigned char oldbuf[4];
|
||||||
Termsave *back;
|
Termsave *back;
|
||||||
size_t backsize, backpos;
|
size_t backsize, backpos;
|
||||||
|
|
|
@ -1004,6 +1004,16 @@ _handle_esc_csi(Termpty *ty, const Eina_Unicode *c, const Eina_Unicode *ce)
|
||||||
case 'm': // color set
|
case 'm': // color set
|
||||||
_handle_esc_csi_color_set(ty, &b);
|
_handle_esc_csi_color_set(ty, &b);
|
||||||
break;
|
break;
|
||||||
|
case 'b': // repeat last char
|
||||||
|
if (ty->last_char)
|
||||||
|
{
|
||||||
|
arg = _csi_arg_get(&b);
|
||||||
|
TERMPTY_RESTRICT_FIELD(arg, 1, ty->w * ty->h);
|
||||||
|
DBG("REP: repeat %d times last char %x", arg, ty->last_char);
|
||||||
|
for (i = 0; i < arg; i++)
|
||||||
|
termpty_text_append(ty, &ty->last_char, 1);
|
||||||
|
}
|
||||||
|
break;
|
||||||
case '@': // insert N blank chars
|
case '@': // insert N blank chars
|
||||||
arg = _csi_arg_get(&b);
|
arg = _csi_arg_get(&b);
|
||||||
TERMPTY_RESTRICT_FIELD(arg, 1, ty->w * ty->h);
|
TERMPTY_RESTRICT_FIELD(arg, 1, ty->w * ty->h);
|
||||||
|
@ -2049,6 +2059,7 @@ int
|
||||||
termpty_handle_seq(Termpty *ty, const Eina_Unicode *c, const Eina_Unicode *ce)
|
termpty_handle_seq(Termpty *ty, const Eina_Unicode *c, const Eina_Unicode *ce)
|
||||||
{
|
{
|
||||||
Eina_Unicode *cc;
|
Eina_Unicode *cc;
|
||||||
|
Eina_Unicode last_char = 0;
|
||||||
int len = 0;
|
int len = 0;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -2163,7 +2174,10 @@ termpty_handle_seq(Termpty *ty, const Eina_Unicode *c, const Eina_Unicode *ce)
|
||||||
}
|
}
|
||||||
DBG("]");
|
DBG("]");
|
||||||
termpty_text_append(ty, c, len);
|
termpty_text_append(ty, c, len);
|
||||||
|
if (len > 0)
|
||||||
|
last_char = c[len-1];
|
||||||
|
|
||||||
end:
|
end:
|
||||||
|
ty->last_char = last_char;
|
||||||
return len;
|
return len;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue