aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2017-01-12 00:01:13 +0000
committerThomas Adam <thomas@xteddy.org>2017-01-12 00:01:13 +0000
commit33ebb9ec39e175197b9a7ba7071aeea472f76e8b (patch)
treef7c2f3683db46a9492939b81a742a959330f11de
parentd87ab0cadf6ee30f253a815ebc80c14d2818391d (diff)
parent74c40d04eadc40c034634d70925355a0751c1433 (diff)
downloadrtmux-33ebb9ec39e175197b9a7ba7071aeea472f76e8b.tar.gz
rtmux-33ebb9ec39e175197b9a7ba7071aeea472f76e8b.tar.bz2
rtmux-33ebb9ec39e175197b9a7ba7071aeea472f76e8b.zip
Merge branch 'obsd-master'
-rw-r--r--key-string.c6
-rw-r--r--server-client.c2
-rw-r--r--tty.c17
3 files changed, 14 insertions, 11 deletions
diff --git a/key-string.c b/key-string.c
index b2fe845f..85841dd2 100644
--- a/key-string.c
+++ b/key-string.c
@@ -247,8 +247,14 @@ key_string_lookup_key(key_code key)
/* Handle special keys. */
if (key == KEYC_UNKNOWN)
return ("Unknown");
+ if (key == KEYC_FOCUS_IN)
+ return ("FocusIn");
+ if (key == KEYC_FOCUS_OUT)
+ return ("FocusOut");
if (key == KEYC_MOUSE)
return ("Mouse");
+ if (key == KEYC_DRAGGING)
+ return ("Dragging");
/*
* Special case: display C-@ as C-Space. Could do this below in
diff --git a/server-client.c b/server-client.c
index 7cfdca07..3d20825c 100644
--- a/server-client.c
+++ b/server-client.c
@@ -756,7 +756,7 @@ server_client_handle_key(struct client *c, key_code key)
wp = w->active;
/* Forward mouse keys if disabled. */
- if (key == KEYC_MOUSE && !options_get_number(s->options, "mouse"))
+ if (KEYC_IS_MOUSE(key) && !options_get_number(s->options, "mouse"))
goto forward;
/* Treat everything as a regular key when pasting is detected. */
diff --git a/tty.c b/tty.c
index 23a74255..d1a72599 100644
--- a/tty.c
+++ b/tty.c
@@ -565,9 +565,7 @@ tty_update_mode(struct tty *tty, int mode, struct screen *s)
if (mode & ALL_MOUSE_MODES) {
/*
* Enable the SGR (1006) extension unconditionally, as
- * this is safe from misinterpretation. Do it in this
- * order, because in some terminals it's the last one
- * that takes effect and SGR is the preferred one.
+ * it is safe from misinterpretation.
*/
tty_puts(tty, "\033[?1006h");
if (mode & MODE_MOUSE_BUTTON)
@@ -1135,13 +1133,12 @@ tty_cmd_cell(struct tty *tty, const struct tty_ctx *ctx)
struct screen *s = wp->screen;
u_int cx, width;
- if (ctx->xoff + ctx->ocx > tty->sx - 1 &&
- ctx->ocy == ctx->orlower &&
- tty_pane_full_width(tty, ctx))
- tty_region_pane(tty, ctx, ctx->orupper, ctx->orlower);
- else
- tty_region_off(tty);
- tty_margin_off(tty);
+ if (ctx->xoff + ctx->ocx > tty->sx - 1 && ctx->ocy == ctx->orlower) {
+ if (tty_pane_full_width(tty, ctx))
+ tty_region_pane(tty, ctx, ctx->orupper, ctx->orlower);
+ else
+ tty_margin_off(tty);
+ }
/* Is the cursor in the very last position? */
width = ctx->cell->data.width;