diff options
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/telescope/actions/init.lua | 7 | ||||
| -rw-r--r-- | lua/telescope/config.lua | 4 | ||||
| -rw-r--r-- | lua/telescope/pickers.lua | 38 |
3 files changed, 28 insertions, 21 deletions
diff --git a/lua/telescope/actions/init.lua b/lua/telescope/actions/init.lua index bafa914..0da521b 100644 --- a/lua/telescope/actions/init.lua +++ b/lua/telescope/actions/init.lua @@ -144,13 +144,6 @@ function actions.toggle_all(prompt_bufnr) end) end ---- Toggle preview window. ---- - Note: preview window can be toggled even if preview is set to false. ----@param prompt_bufnr number: The prompt bufnr -function actions.toggle_preview(prompt_bufnr) - action_state.get_current_picker(prompt_bufnr):toggle_preview() -end - function actions.preview_scrolling_up(prompt_bufnr) action_set.scroll_previewer(prompt_bufnr, -1) end diff --git a/lua/telescope/config.lua b/lua/telescope/config.lua index a96bc0b..a57ec7f 100644 --- a/lua/telescope/config.lua +++ b/lua/telescope/config.lua @@ -191,7 +191,7 @@ append("layout_config", layout_config_defaults, layout_config_description) append( "cycle_layout_list", - { "horizontal", "vertical", { layout_strategy = "horizontal", previewer = false } }, + { "horizontal", "vertical" }, [[ Determines the layouts to cycle through when using `actions.cycle_layout_next` and `actions.cycle_layout_prev`. @@ -202,7 +202,7 @@ append( 2. table <br> A table with possible keys `layout_strategy`, `layout_config` and `previewer` - Default: TODO + Default: { "horizontal", "vertical" } ]] ) diff --git a/lua/telescope/pickers.lua b/lua/telescope/pickers.lua index b626c46..6b850e9 100644 --- a/lua/telescope/pickers.lua +++ b/lua/telescope/pickers.lua @@ -533,11 +533,12 @@ function Picker:recalculate_layout() local results_win = status.results_win local preview_win = status.preview_win - popup.move(results_win, popup_opts.results) - local preview_opts, preview_border_win if popup_opts.preview then if preview_win ~= nil then + -- Move all popups at the same time + popup.move(prompt_win, popup_opts.prompt) + popup.move(results_win, popup_opts.results) popup.move(preview_win, popup_opts.preview) else popup_opts.preview.highlight = "TelescopePreviewNormal" @@ -555,20 +556,33 @@ function Picker:recalculate_layout() self.preview_win = preview_win self.preview_border_win = preview_border_win self.preview_border = preview_opts and preview_opts.border + + -- Move prompt and results after preview created + vim.defer_fn(function() + popup.move(prompt_win, popup_opts.prompt) + popup.move(results_win, popup_opts.results) + end, 0) end elseif preview_win ~= nil then - utils.win_delete("preview_win", preview_win, true) - utils.win_delete("preview_win", status.preview_border_win, true) - status.preview_win = nil - status.preview_border_win = nil - state.set_status(prompt_win, status) - self.preview_win = nil - self.preview_border_win = nil - self.preview_border = nil + popup.move(prompt_win, popup_opts.prompt) + popup.move(results_win, popup_opts.results) + + -- Remove preview after the prompt and results are moved + vim.defer_fn(function() + utils.win_delete("preview_win", preview_win, true) + utils.win_delete("preview_win", status.preview_border_win, true) + status.preview_win = nil + status.preview_border_win = nil + state.set_status(prompt_win, status) + self.preview_win = nil + self.preview_border_win = nil + self.preview_border = nil + end, 0) + else + popup.move(prompt_win, popup_opts.prompt) + popup.move(results_win, popup_opts.results) end - popup.move(prompt_win, popup_opts.prompt) - -- Temporarily disabled: Draw the screen ASAP. This makes things feel speedier. -- vim.cmd [[redraw]] |
