summaryrefslogtreecommitdiffstats
path: root/input.c
diff options
context:
space:
mode:
authorTiago Cunha <tcunha@gmx.com>2009-08-20 11:54:58 +0000
committerTiago Cunha <tcunha@gmx.com>2009-08-20 11:54:58 +0000
commitcc2c06128988bc39e7f6f879ab958711bde2bcdf (patch)
tree69b647fe23c4864a86a0398ad99d80b225650e2c /input.c
parent9d33b3f72afd838e1fcb920d3510f59287069d93 (diff)
Sync OpenBSD patchset 280:
Handle the device attributes (DA) escape sequence.
Diffstat (limited to 'input.c')
-rw-r--r--input.c23
1 files changed, 22 insertions, 1 deletions
diff --git a/input.c b/input.c
index 6fb213a4..cbe59d95 100644
--- a/input.c
+++ b/input.c
@@ -1,4 +1,4 @@
-/* $Id: input.c,v 1.93 2009-08-20 11:48:01 tcunha Exp $ */
+/* $Id: input.c,v 1.94 2009-08-20 11:54:58 tcunha Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -68,6 +68,7 @@ void input_handle_sequence_cuf(struct input_ctx *);
void input_handle_sequence_cub(struct input_ctx *);
void input_handle_sequence_dch(struct input_ctx *);
void input_handle_sequence_cbt(struct input_ctx *);
+void input_handle_sequence_da(struct input_ctx *);
void input_handle_sequence_dl(struct input_ctx *);
void input_handle_sequence_ich(struct input_ctx *);
void input_handle_sequence_il(struct input_ctx *);
@@ -104,6 +105,7 @@ const struct input_sequence_entry input_sequence_table[] = {
{ 'M', input_handle_sequence_dl },
{ 'P', input_handle_sequence_dch },
{ 'Z', input_handle_sequence_cbt },
+ { 'c', input_handle_sequence_da },
{ 'd', input_handle_sequence_vpa },
{ 'f', input_handle_sequence_cup },
{ 'g', input_handle_sequence_tbc },
@@ -952,6 +954,25 @@ input_handle_sequence_cbt(struct input_ctx *ictx)
}
void
+input_handle_sequence_da(struct input_ctx *ictx)
+{
+ struct screen *s = ictx->ctx.s;
+ uint16_t n;
+
+ if (ictx->private != '\0')
+ return;
+
+ if (ARRAY_LENGTH(&ictx->args) > 1)
+ return;
+ if (input_get_argument(ictx, 0, &n, 0) != 0)
+ return;
+ if (n != 0)
+ return;
+
+ buffer_write(ictx->wp->out, "\033[?1;2c", (sizeof "\033[?1;2c") - 1);
+}
+
+void
input_handle_sequence_dl(struct input_ctx *ictx)
{
uint16_t n;