Use vt_to_slave() instead of calling write(term->ptmx, ...) everywhere

This commit is contained in:
Daniel Eklöf 2019-07-15 15:42:21 +02:00
parent 2f6b8d232f
commit 7379198f4a
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
4 changed files with 16 additions and 13 deletions

6
csi.c
View file

@ -335,7 +335,7 @@ csi_dispatch(struct terminal *term, uint8_t final)
case 0: { case 0: {
switch (final) { switch (final) {
case 'c': case 'c':
write(term->ptmx, "\033[?6c", 5); vt_to_slave(term, "\033[?6c", 5);
break; break;
case 'd': { case 'd': {
@ -598,7 +598,7 @@ csi_dispatch(struct terminal *term, uint8_t final)
snprintf(reply, sizeof(reply), "\x1b[%d;%dR", snprintf(reply, sizeof(reply), "\x1b[%d;%dR",
term->cursor.row + 1, term->cursor.row + 1,
term->cursor.col + 1); term->cursor.col + 1);
write(term->ptmx, reply, strlen(reply)); vt_to_slave(term, reply, strlen(reply));
break; break;
} }
@ -833,7 +833,7 @@ csi_dispatch(struct terminal *term, uint8_t final)
break; break;
} }
write(term->ptmx, "\033[?6c", 5); vt_to_slave(term, "\033[?6c", 5);
break; break;
} }

View file

@ -21,6 +21,7 @@
#include "keymap.h" #include "keymap.h"
#include "commands.h" #include "commands.h"
#include "selection.h" #include "selection.h"
#include "vt.h"
static void static void
keyboard_keymap(void *data, struct wl_keyboard *wl_keyboard, keyboard_keymap(void *data, struct wl_keyboard *wl_keyboard,
@ -186,7 +187,7 @@ keyboard_key(void *data, struct wl_keyboard *wl_keyboard, uint32_t serial,
info->keypad_keys_mode != term->keypad_keys_mode) info->keypad_keys_mode != term->keypad_keys_mode)
continue; continue;
write(term->ptmx, info->seq, strlen(info->seq)); vt_to_slave(term, info->seq, strlen(info->seq));
found_map = true; found_map = true;
if (term->grid->view != term->grid->offset) { if (term->grid->view != term->grid->offset) {
@ -214,9 +215,9 @@ keyboard_key(void *data, struct wl_keyboard *wl_keyboard, uint32_t serial,
if (count > 0) { if (count > 0) {
if (effective_mods & alt) if (effective_mods & alt)
write(term->ptmx, "\x1b", 1); vt_to_slave(term, "\x1b", 1);
write(term->ptmx, buf, count); vt_to_slave(term, buf, count);
if (term->grid->view != term->grid->offset) { if (term->grid->view != term->grid->offset) {
term->grid->view = term->grid->offset; term->grid->view = term->grid->offset;

View file

@ -10,6 +10,7 @@
#include "log.h" #include "log.h"
#include "render.h" #include "render.h"
#include "grid.h" #include "grid.h"
#include "vt.h"
#define min(x, y) ((x) < (y) ? (x) : (y)) #define min(x, y) ((x) < (y) ? (x) : (y))
#define max(x, y) ((x) > (y) ? (x) : (y)) #define max(x, y) ((x) > (y) ? (x) : (y))
@ -400,7 +401,7 @@ selection_from_clipboard(struct terminal *term, uint32_t serial)
close(write_fd); close(write_fd);
if (term->bracketed_paste) if (term->bracketed_paste)
write(term->ptmx, "\033[200~", 6); vt_to_slave(term, "\033[200~", 6);
/* Read until EOF */ /* Read until EOF */
while (true) { while (true) {
@ -413,11 +414,11 @@ selection_from_clipboard(struct terminal *term, uint32_t serial)
} else if (amount == 0) } else if (amount == 0)
break; break;
write(term->ptmx, text, amount); vt_to_slave(term, text, amount);
} }
if (term->bracketed_paste) if (term->bracketed_paste)
write(term->ptmx, "\033[201~", 6); vt_to_slave(term, "\033[201~", 6);
close(read_fd); close(read_fd);
} }
@ -448,7 +449,7 @@ selection_from_primary(struct terminal *term)
close(write_fd); close(write_fd);
if (term->bracketed_paste) if (term->bracketed_paste)
write(term->ptmx, "\033[200~", 6); vt_to_slave(term, "\033[200~", 6);
/* Read until EOF */ /* Read until EOF */
while (true) { while (true) {
@ -461,11 +462,11 @@ selection_from_primary(struct terminal *term)
} else if (amount == 0) } else if (amount == 0)
break; break;
write(term->ptmx, text, amount); vt_to_slave(term, text, amount);
} }
if (term->bracketed_paste) if (term->bracketed_paste)
write(term->ptmx, "\033[201~", 6); vt_to_slave(term, "\033[201~", 6);
close(read_fd); close(read_fd);
} }

View file

@ -10,6 +10,7 @@
#define LOG_ENABLE_DBG 0 #define LOG_ENABLE_DBG 0
#include "log.h" #include "log.h"
#include "grid.h" #include "grid.h"
#include "vt.h"
#define min(x, y) ((x) < (y) ? (x) : (y)) #define min(x, y) ((x) < (y) ? (x) : (y))
#define max(x, y) ((x) > (y) ? (x) : (y)) #define max(x, y) ((x) > (y) ? (x) : (y))
@ -337,7 +338,7 @@ report_mouse_click(struct terminal *term, int encoded_button, int row, int col,
return; return;
} }
write(term->ptmx, response, strlen(response)); vt_to_slave(term, response, strlen(response));
} }
static void static void