summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2019-11-18 10:01:25 +0000
committerThomas Adam <thomas@xteddy.org>2019-11-18 10:01:25 +0000
commit0d3f306c8e00465e5ffa7b31b99645c9c3c90c3f (patch)
treeae5108dc89d336423f5740073fa77070b0d7ed65
parentdbdff241b2f01c18cced24833f2acf56a117e72a (diff)
parent350a43493952e1f10173b4e341ff1fbd8ed8440d (diff)
Merge branch 'obsd-master'
-rw-r--r--cmd-join-pane.c13
-rw-r--r--input-keys.c9
-rw-r--r--tmux.12
3 files changed, 14 insertions, 10 deletions
diff --git a/cmd-join-pane.c b/cmd-join-pane.c
index b97e5f8d..67207291 100644
--- a/cmd-join-pane.c
+++ b/cmd-join-pane.c
@@ -35,8 +35,8 @@ const struct cmd_entry cmd_join_pane_entry = {
.name = "join-pane",
.alias = "joinp",
- .args = { "bdhvp:l:s:t:", 0, 0 },
- .usage = "[-bdhv] [-l size] " CMD_SRCDST_PANE_USAGE,
+ .args = { "bdfhvp:l:s:t:", 0, 0 },
+ .usage = "[-bdfhv] [-l size] " CMD_SRCDST_PANE_USAGE,
.source = { 's', CMD_FIND_PANE, CMD_FIND_DEFAULT_MARKED },
.target = { 't', CMD_FIND_PANE, 0 },
@@ -142,10 +142,13 @@ cmd_join_pane_exec(struct cmd *self, struct cmdq_item *item)
else
size = (dst_wp->sx * percentage) / 100;
}
+
+ flags = 0;
if (args_has(args, 'b'))
- flags = SPAWN_BEFORE;
- else
- flags = 0;
+ flags |= SPAWN_BEFORE;
+ if (args_has(args, 'f'))
+ flags |= SPAWN_FULLSIZE;
+
lc = layout_split_pane(dst_wp, type, size, flags);
if (lc == NULL) {
cmdq_error(item, "create pane failed: pane too small");
diff --git a/input-keys.c b/input-keys.c
index 9a00ebef..b0ea5104 100644
--- a/input-keys.c
+++ b/input-keys.c
@@ -156,7 +156,7 @@ input_key(struct window_pane *wp, key_code key, struct mouse_event *m)
u_int i;
size_t dlen;
char *out;
- key_code justkey;
+ key_code justkey, newkey;
struct utf8_data ud;
log_debug("writing key 0x%llx (%s) to %%%u", key,
@@ -178,9 +178,10 @@ input_key(struct window_pane *wp, key_code key, struct mouse_event *m)
/* Is this backspace? */
if ((key & KEYC_MASK_KEY) == KEYC_BSPACE) {
- key = options_get_number(global_options, "backspace");
- if (key >= 0x7f)
- key = '\177';
+ newkey = options_get_number(global_options, "backspace");
+ if (newkey >= 0x7f)
+ newkey = '\177';
+ key = newkey|(key & KEYC_MASK_MOD);
}
/*
diff --git a/tmux.1 b/tmux.1
index 833271a3..eb589e4b 100644
--- a/tmux.1
+++ b/tmux.1
@@ -1895,7 +1895,7 @@ zooms the pane.
.Pp
This command works only if at least one client is attached.
.It Xo Ic join-pane
-.Op Fl bdhv
+.Op Fl bdfhv
.Op Fl l Ar size
.Op Fl s Ar src-pane
.Op Fl t Ar dst-pane