diff --git a/src/text_editor/commands.cpp b/src/text_editor/commands.cpp index 2cd0653..dfd847f 100644 --- a/src/text_editor/commands.cpp +++ b/src/text_editor/commands.cpp @@ -443,13 +443,13 @@ BSet Open(Window *window, String path, ResolveOpenMeta meta, bool set_active = t #if PLUGIN_DIRECTORY_NAVIGATION OpenDirectoryNavigation(view); #endif - } else { - Buffer *buffer = GetBuffer(view->active_buffer); - if (o.line != -1) { - if (o.col == -1) o.col = 1; - Int pos = XYToPos(buffer, {o.col - 1, o.line - 1}); - SelectRange(view, MakeCaret(pos)); - } + } + + Buffer *buffer = GetBuffer(view->active_buffer); + if (o.line != -1) { + if (o.col == -1) o.col = 1; + Int pos = XYToPos(buffer, {o.col - 1, o.line - 1}); + SelectRange(view, MakeCaret(pos)); } CenterView(window->id); } else if (o.kind == OpenKind_Exec) { diff --git a/src/text_editor/plugin_search_open_buffers.cpp b/src/text_editor/plugin_search_open_buffers.cpp index ec8c746..d608f6c 100644 --- a/src/text_editor/plugin_search_open_buffers.cpp +++ b/src/text_editor/plugin_search_open_buffers.cpp @@ -1,5 +1,3 @@ -BufferID SearchOpenBuffersBufferID; - struct SearchOpenBuffersParams { String16 needle; BufferID buffer; @@ -78,10 +76,8 @@ void CMD_SearchOpenBuffers() { } NextActiveWindowID = main.window->id; - Buffer *search_project_buffer = GetBuffer(SearchOpenBuffersBufferID); - View *view = WindowOpenBufferView(main.window, search_project_buffer->name); - view->special = true; - AddCommand(&view->commands, "Open", "ctrl-q | enter | f12", []() { + JumpTempBuffer(&main); + AddCommand(&main.view->commands, "Open", "ctrl-q | enter | f12", []() { BSet active = GetBSet(ActiveWindowID); BSet main = GetBSet(PrimaryWindowID); NextActiveWindowID = main.window->id; @@ -90,10 +86,10 @@ void CMD_SearchOpenBuffers() { main.window->goto_list_pos = active.view->carets[0].range.min; Open(string); }); - view->update_hook = UpdateSearchOpenBuffersView; + main.view->update_hook = UpdateSearchOpenBuffersView; if (string.len) { - SelectRange(view, GetLineRangeWithoutNL(search_project_buffer, 0)); - Replace(view, string); + SelectRange(main.view, GetLineRangeWithoutNL(main.buffer, 0)); + Replace(main.view, string); } - SelectRange(view, GetLineRangeWithoutNL(search_project_buffer, 0)); + SelectRange(main.view, GetLineRangeWithoutNL(main.buffer, 0)); } RegisterCommand(CMD_SearchOpenBuffers, "ctrl-shift-f", "Interactive search over the entire project in a new buffer view"); diff --git a/src/text_editor/text_editor.cpp b/src/text_editor/text_editor.cpp index 261867b..18ecee6 100644 --- a/src/text_editor/text_editor.cpp +++ b/src/text_editor/text_editor.cpp @@ -962,13 +962,6 @@ int main(int argc, char **argv) EventBuffer->no_history = true; EventBuffer->special = true; #endif - -#if PLUGIN_SEARCH_OPEN_BUFFERS - Buffer *search_project = CreateBuffer(sys_allocator, GetUniqueBufferName(ProjectDirectory, "search_project")); - search_project->no_history = true; - search_project->special = true; - SearchOpenBuffersBufferID = search_project->id; -#endif } InitRender();