Improvement to mouse navigation

This commit is contained in:
krzosa
2025-12-29 13:00:17 +01:00
parent 97ba82ab7d
commit c1828a51c4
2 changed files with 5 additions and 3 deletions

View File

@@ -307,7 +307,7 @@ API Int GetWordEnd(Buffer *buffer, Int pos) {
} }
API bool IsLoadWord(char16_t w) { API bool IsLoadWord(char16_t w) {
bool result = w == u'(' || w == u')' || w == u'/' || w == u'\\' || w == u':' || w == u'$' || w == u'_' || w == u'.' || w == u'@' || w == u','; bool result = w == u'(' || w == u')' || w == u'/' || w == u'\\' || w == u':' || w == u'$' || w == u'_' || w == u'.' || w == u'!' || w == u'@' || w == u',';
if (!result) { if (!result) {
result = !(IsSymbol(w) || IsWhitespace(w)); result = !(IsSymbol(w) || IsWhitespace(w));
} }

View File

@@ -581,10 +581,10 @@ BSet Open(Window *window, String path, String meta, bool set_active = true) {
NextActiveWindowID = set.window->id; NextActiveWindowID = set.window->id;
} }
JumpTempBuffer(&set); JumpTempBuffer(&set);
Exec(set.view->id, true, o.path, GetMainDir()); Exec(set.view->id, false, o.path, GetMainDir());
} else if (o.kind == OpenKind_BackgroundExec) { } else if (o.kind == OpenKind_BackgroundExec) {
// this shouldn't change the focus/window/view // this shouldn't change the focus/window/view
Exec(NullViewID, true, o.path, GetMainDir()); Exec(NullViewID, false, o.path, GetMainDir());
} else if (o.kind == OpenKind_Command) { } else if (o.kind == OpenKind_Command) {
EvalCommand(o.path); EvalCommand(o.path);
} else if (o.kind == OpenKind_Skip) { } else if (o.kind == OpenKind_Skip) {
@@ -883,12 +883,14 @@ void Command_Prev() {
BSet main = GetBSet(LastActiveLayoutWindowID); BSet main = GetBSet(LastActiveLayoutWindowID);
main.window->skip_checkpoint = true; main.window->skip_checkpoint = true;
JumpBack(main.window); JumpBack(main.window);
NextActiveWindowID = main.window->id;
} RegisterCommand(Command_Prev, "alt-q | mousex1"); } RegisterCommand(Command_Prev, "alt-q | mousex1");
void Command_Next() { void Command_Next() {
BSet main = GetBSet(LastActiveLayoutWindowID); BSet main = GetBSet(LastActiveLayoutWindowID);
main.window->skip_checkpoint = true; main.window->skip_checkpoint = true;
JumpForward(main.window); JumpForward(main.window);
NextActiveWindowID = main.window->id;
} RegisterCommand(Command_Next, "alt-shift-q | mousex2"); } RegisterCommand(Command_Next, "alt-shift-q | mousex2");
void Command_OpenUpFolder() { void Command_OpenUpFolder() {