From: Jean-Marc Lasgouttes Date: Sat, 15 Jul 2017 15:23:22 +0000 (+0200) Subject: Handle properly top/bottom of inset with mac-like cursor movement X-Git-Tag: 2.3.1~133^2~97 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=5f6c681b76b7137107be20b52fb3200883a4faa9;p=features.git Handle properly top/bottom of inset with mac-like cursor movement The correct behavior is to go to position 0 going up from first row, and to end of row when going down on last row. The targetx value of the cursor is not updated, which makes cursor movement more natural. Fixes bug #10701. (cherry picked from commit 34285cc6830b061c18998bff8385092a311170a8) --- diff --git a/src/Text3.cpp b/src/Text3.cpp index 36739a8e1e..adeb80b88f 100644 --- a/src/Text3.cpp +++ b/src/Text3.cpp @@ -860,6 +860,18 @@ void Text::dispatch(Cursor & cur, FuncRequest & cmd) cur.upDownInText(up, needsUpdate); needsUpdate |= cur.beforeDispatchCursor().inMathed(); } else { + pos_type newpos = up ? 0 : cur.lastpos(); + if (lyxrc.mac_like_cursor_movement && cur.pos() != newpos) { + needsUpdate |= cur.selHandle(select); + // we do not reset the targetx of the cursor + cur.pos() = newpos; + needsUpdate |= bv->checkDepm(cur, bv->cursor()); + cur.updateTextTargetOffset(); + if (needsUpdate) + cur.forceBufferUpdate(); + break; + } + // if the cursor cannot be moved up or down do not remove // the selection right now, but wait for the next dispatch. if (select) diff --git a/status.23x b/status.23x new file mode 100644 index 0000000000..30eff6cbc0 --- /dev/null +++ b/status.23x @@ -0,0 +1,68 @@ +-*- text -*- + +This file describes what has been done in the preparation of LyX 2.3.2. +All comments are welcome. + +We try to group things by topic and in decreasing order of importance. +Please feel free to re-arrange if that seems like a good idea. + + +What's new +========== + +** Updates: +*********** + +* DOCUMENT INPUT/OUTPUT + + + +* TEX2LYX IMPROVEMENTS + + + +* USER INTERFACE + +- Handle properly top/bottom of inset with mac-like cursor movement + (bug 10701). + +* DOCUMENTATION AND LOCALIZATION + + + +* BUILD/INSTALLATION + + +** Bug fixes: +************* + +* DOCUMENT INPUT/OUTPUT + + +* LYX2LYX + + +* USER INTERFACE + + + +* INTERNALS + + + +* DOCUMENTATION AND LOCALIZATION + + +* LYXHTML + + + +* TEX2LYX + + + +* ADVANCED FIND AND REPLACE + + +* BUILD/INSTALLATION +