Fix regression on Ctrl on space bar slider

This makes Ctrl+move_cursor the same as before 5123ce5.
This commit is contained in:
Jules Aguillon 2023-08-26 23:44:41 +02:00
parent f4c11d99ed
commit 9b917e79b1

View File

@ -183,14 +183,20 @@ class KeyEventHandler implements Config.IKeyEventHandler
} }
/** Move the cursor right or left, if possible without sending key events. /** Move the cursor right or left, if possible without sending key events.
Unlike arrow keys, the selection is not removed even if shift is not on. */ Unlike arrow keys, the selection is not removed even if shift is not on.
Falls back to sending arrow keys events if the editor do not support
moving the cursor or a modifier other than shift is pressed. */
void move_cursor(int d, Pointers.Modifiers mods) void move_cursor(int d, Pointers.Modifiers mods)
{ {
InputConnection conn = _recv.getCurrentInputConnection(); InputConnection conn = _recv.getCurrentInputConnection();
if (conn == null) if (conn == null)
return; return;
ExtractedText et = get_cursor_pos(conn); ExtractedText et = get_cursor_pos(conn);
if (et == null) // Editor doesn't support moving the cursor // Fallback to sending key events
if (et == null
|| mods.has(KeyValue.Modifier.CTRL)
|| mods.has(KeyValue.Modifier.ALT)
|| mods.has(KeyValue.Modifier.META))
{ {
move_cursor_fallback(d, mods); move_cursor_fallback(d, mods);
return; return;