editor: Support shift-left/right for selecting text
If the shift modifier is active then we don't make the cursor and the
anchor the same and as a result we develop a selection in the direction
that the arrow key gets pressed in.
https://bugs.freedesktop.org/show_bug.cgi?id=66802
diff --git a/clients/editor.c b/clients/editor.c
index 7e69403..1300ccf 100644
--- a/clients/editor.c
+++ b/clients/editor.c
@@ -1141,7 +1141,8 @@
new_char = utf8_prev_char(entry->text, entry->text + entry->cursor);
if (new_char != NULL) {
entry->cursor = new_char - entry->text;
- entry->anchor = entry->cursor;
+ if (!(input_get_modifiers(input) & MOD_SHIFT_MASK))
+ entry->anchor = entry->cursor;
widget_schedule_redraw(entry->widget);
}
break;
@@ -1151,7 +1152,8 @@
new_char = utf8_next_char(entry->text + entry->cursor);
if (new_char != NULL) {
entry->cursor = new_char - entry->text;
- entry->anchor = entry->cursor;
+ if (!(input_get_modifiers(input) & MOD_SHIFT_MASK))
+ entry->anchor = entry->cursor;
widget_schedule_redraw(entry->widget);
}
break;