Commit 6f4f1878 authored by Benno Schulenberg's avatar Benno Schulenberg
Browse files

selecting: cancel the softmark upon any attempt to move the cursor

This assumes that all movement functions are located together,
starting with to_first_line() and ending with do_right().

This fixes https://savannah.gnu.org/bugs/?53195

.
Reported-by: default avatarBrand Huntsman <alpha@qzx.com>
No related merge requests found
Showing with 6 additions and 3 deletions
+6 -3
......@@ -1762,9 +1762,12 @@ int do_input(bool allow_funcs)
/* When the marked region changes without Shift being held,
* discard a soft mark. And when the marked region covers a
* different set of lines, reset the "last line too" flag. */
if (openfile->mark && (openfile->current != was_current ||
openfile->current_x != was_x)) {
if (!shift_held && openfile->kind_of_mark == SOFTMARK) {
if (openfile->mark) {
if (!shift_held && openfile->kind_of_mark == SOFTMARK &&
(openfile->current != was_current ||
openfile->current_x != was_x ||
(shortcut->func >= to_first_line &&
shortcut->func <= do_right))) {
openfile->mark = NULL;
refresh_needed = TRUE;
} else if (openfile->current != was_current)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment