Sync OpenBSD patchset 941:

Extend the mode-mouse option to add a third choice which means the mouse
does not enter copy mode. Patch from SF bug 3374493.

In future the mode-mouse option is likely to die and be broken into
several smaller options.
This commit is contained in:
Tiago Cunha 2011-08-04 17:05:35 +00:00
parent 2589d117b0
commit 3ce1b91b1b
3 changed files with 15 additions and 4 deletions

View File

@ -203,6 +203,7 @@ input_mouse(struct window_pane *wp, struct mouse_event *m)
{
char buf[10];
size_t len;
int value;
if (wp->screen->mode & ALL_MOUSE_MODES) {
if (wp->screen->mode & MODE_MOUSE_UTF8) {
@ -220,7 +221,8 @@ input_mouse(struct window_pane *wp, struct mouse_event *m)
}
bufferevent_write(wp->event, buf, len);
} else if ((m->b & MOUSE_BUTTON) != MOUSE_2) {
if (options_get_number(&wp->window->options, "mode-mouse") &&
value = options_get_number(&wp->window->options, "mode-mouse");
if (value == 1 &&
window_pane_set_mode(wp, &window_copy_mode) == 0) {
window_copy_init_from_pane(wp);
if (wp->mode->mouse != NULL)

View File

@ -35,6 +35,9 @@
const char *options_table_mode_keys_list[] = {
"emacs", "vi", NULL
};
const char *options_table_mode_mouse_list[] = {
"off", "on", "copy-mode", NULL
};
const char *options_table_clock_mode_style_list[] = {
"12", "24", NULL
};
@ -483,7 +486,8 @@ const struct options_table_entry window_options_table[] = {
},
{ .name = "mode-mouse",
.type = OPTIONS_TABLE_FLAG,
.type = OPTIONS_TABLE_CHOICE,
.choices = options_table_mode_mouse_list,
.default_num = 0
},

9
tmux.1
View File

@ -14,7 +14,7 @@
.\" IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
.\" OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
.Dd $Mdocdate: July 25 2011 $
.Dd $Mdocdate: July 30 2011 $
.Dt TMUX 1
.Os
.Sh NAME
@ -2362,12 +2362,17 @@ contains
.Ql vi .
.Pp
.It Xo Ic mode-mouse
.Op Ic on | off
.Op Ic on | off | copy-mode
.Xc
Mouse state in modes.
If on, the mouse may be used to enter copy mode and copy a selection by
dragging, to enter copy mode and scroll with the mouse wheel, or to select an
option in choice mode.
If set to
.Em
copy-mode ,
the mouse behaves as set to on, but cannot be used to enter copy
mode.
.Pp
.It Xo Ic monitor-activity
.Op Ic on | off