=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/window-copy.c,v retrieving revision 1.64 retrieving revision 1.65 diff -u -r1.64 -r1.65 --- src/usr.bin/tmux/window-copy.c 2010/12/11 17:56:01 1.64 +++ src/usr.bin/tmux/window-copy.c 2010/12/29 21:49:06 1.65 @@ -1,4 +1,4 @@ -/* $OpenBSD: window-copy.c,v 1.64 2010/12/11 17:56:01 nicm Exp $ */ +/* $OpenBSD: window-copy.c,v 1.65 2010/12/29 21:49:06 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -180,7 +180,7 @@ s = &data->screen; screen_init(s, screen_size_x(&wp->base), screen_size_y(&wp->base), 0); if (options_get_number(&wp->window->options, "mode-mouse")) - s->mode |= MODE_MOUSE; + s->mode |= MODE_MOUSE_STANDARD; keys = options_get_number(&wp->window->options, "mode-keys"); if (keys == MODEKEY_EMACS) @@ -787,13 +787,14 @@ * If already reading motion, move the cursor while buttons are still * pressed, or stop the selection on their release. */ - if (s->mode & MODE_MOUSEMOTION) { + if (s->mode & MODE_MOUSE_ANY) { if ((m->b & MOUSE_BUTTON) != MOUSE_UP) { window_copy_update_cursor(wp, m->x, m->y); if (window_copy_update_selection(wp)) window_copy_redraw_screen(wp); } else { - s->mode &= ~MODE_MOUSEMOTION; + s->mode &= ~MODE_MOUSE_ANY; + s->mode |= MODE_MOUSE_STANDARD; if (sess != NULL) { window_copy_copy_selection(wp, sess); window_pane_reset_mode(wp); @@ -802,9 +803,10 @@ return; } - /* Otherwise i other buttons pressed, start selection and motion. */ + /* Otherwise if other buttons pressed, start selection and motion. */ if ((m->b & MOUSE_BUTTON) != MOUSE_UP) { - s->mode |= MODE_MOUSEMOTION; + s->mode &= ~MODE_MOUSE_STANDARD; + s->mode |= MODE_MOUSE_ANY; window_copy_update_cursor(wp, m->x, m->y); window_copy_start_selection(wp);