Fixed by removing a really ancient hack. Please check & apply.
Andre'
--- ../../../lyx-devel-latest/src/mathed/math_nestinset.C 2005-01-29 08:22:39.000000000 +0100 +++ math_nestinset.C 2005-02-26 20:54:19.000000000 +0100 @@ -63,18 +63,6 @@ using std::istringstream; - -namespace { - -// local global -int first_x; -int first_y; - -} // namespace anon - - - - MathNestInset::MathNestInset(idx_type nargs) : cells_(nargs), lock_(false) {} @@ -952,11 +940,9 @@ void MathNestInset::lfunMousePress(LCursor & cur, FuncRequest & cmd) { - lyxerr << "lfunMousePress: buttons: " << cmd.button() << endl; + //lyxerr << "## lfunMousePress: buttons: " << cmd.button() << endl; if (cmd.button() == mouse_button::button1) { - first_x = cmd.x; - first_y = cmd.y; - lyxerr << "lfunMousePress: setting cursor to: " << cur << endl; + //lyxerr << "## lfunMousePress: setting cursor to: " << cur << endl; cur.resetAnchor(); cur.bv().cursor() = cur; } @@ -972,22 +958,22 @@ // only select with button 1 if (cmd.button() == mouse_button::button1) { LCursor & bvcur = cur.bv().cursor(); - if (abs(cmd.x - first_x) + abs(cmd.y - first_y) > 4 - && bvcur.anchor_.hasPart(cur)) { - first_x = cmd.x; - first_y = cmd.y; - + if (bvcur.anchor_.hasPart(cur)) { + //lyxerr << "## lfunMouseMotion: cursor: " << cur << endl; bvcur.setCursor(cur); bvcur.selection() = true; - } else + //lyxerr << "MOTION " << bvcur << endl; + } + else { cur.undispatched(); + } } } void MathNestInset::lfunMouseRelease(LCursor & cur, FuncRequest & cmd) { - lyxerr << "lfunMouseRelease: buttons: " << cmd.button() << endl; + //lyxerr << "## lfunMouseRelease: buttons: " << cmd.button() << endl; if (cmd.button() == mouse_button::button1) { //cur.bv().stuffClipboard(cur.grabSelection());