if (term->ldisc)
ldisc_send(term->ldisc,
is_iconic(term->frontend) ?
- "\033[1t" : "\033[2t", 4, 0);
+ "\033[2t" : "\033[1t", 4, 0);
break;
case 13:
if (term->ldisc) {
case 14:
if (term->ldisc) {
get_window_pixels(term->frontend, &x, &y);
- len = sprintf(buf, "\033[4;%d;%dt", x, y);
+ len = sprintf(buf, "\033[4;%d;%dt", y, x);
ldisc_send(term->ldisc, buf, len, 0);
}
break;
set = (uc & CSET_MASK);
c = (uc & ~CSET_MASK);
- cbuf[0] = uc;
- cbuf[1] = 0;
+#ifdef PLATFORM_IS_UTF16
+ if (uc > 0x10000 && uc < 0x110000) {
+ cbuf[0] = 0xD800 | ((uc - 0x10000) >> 10);
+ cbuf[1] = 0xDC00 | ((uc - 0x10000) & 0x3FF);
+ cbuf[2] = 0;
+ } else
+#endif
+ {
+ cbuf[0] = uc;
+ cbuf[1] = 0;
+ }
if (DIRECT_FONT(uc)) {
if (c >= ' ' && c != 0x7F) {
if (modifiers & PKM_CONTROL)
c &= 0x1f;
else if (modifiers & PKM_SHIFT)
- c = toupper(c);
+ c = toupper((unsigned char)c);
}
*p++ = c;
goto done;