Compare commits

...

3 Commits

Author SHA1 Message Date
Krzosa Karol
2b1eab54b3 Since we are doing column searches, don't skip entries in GoToNext on same line 2026-01-21 09:00:07 +01:00
Krzosa Karol
8128c2932e Fix search anchor with ctrl-f 2026-01-21 08:59:32 +01:00
Krzosa Karol
851eac0ec2 Try open with selection always opening first line 2026-01-21 08:59:21 +01:00
4 changed files with 10 additions and 10 deletions

View File

@@ -103,8 +103,8 @@ String16 FetchFuzzyViewLoadLine(View *view) {
Buffer *buffer = GetBuffer(view->active_buffer);
Range range = view->carets[0].range;
String16 string = GetString(buffer, range);
if (GetSize(range) == 0) {
Int line = PosToLine(buffer, range.min);
if (GetSize(range) == 0 || line == 0) {
if (line == 0) {
line = ClampTop(1ll, buffer->line_starts.len - 1ll);
}

View File

@@ -1,6 +1,7 @@
void CMD_Search() {
BSet main = GetBSet(ActiveWindowID);
String16 string = {};
main.window->search_bar_anchor = main.view->carets[0];
if (main.view->carets.len == 1 && GetSize(main.view->carets[0]) > 0) {
string = GetString(main.buffer, main.view->carets[0].range);
}
@@ -19,7 +20,6 @@ void SearchWindowFindNext(bool forward = true) {
BSet set = GetBSet(SearchWindowID);
String16 seek = GetString(set.buffer, GetRange(set.buffer));
Find(main.view, seek, forward);
main.window->search_bar_anchor = main.view->carets[0];
CenterView(PrimaryWindowID);
}

View File

@@ -142,7 +142,7 @@ struct Window {
double mouse_scroller_offset;
int z;
double weight;
Caret search_bar_anchor;
Caret search_bar_anchor; // maybe move to view @todo
GotoCrumb begin_frame_crumb;
Array<GotoCrumb> goto_history;

View File

@@ -303,12 +303,12 @@ void GotoNextInList(Window *window, Int line_offset = 1) {
continue;
}
if (set.view == active_view) {
Int new_line = PosToLine(set.buffer, set.view->carets[0].range.min);
if (active_view_line == new_line) {
continue;
}
}
// if (set.view == active_view) {
// Int new_line = PosToLine(set.buffer, set.view->carets[0].range.min);
// if (active_view_line == new_line) {
// continue;
// }
// }
opened = true;
break;