summaryrefslogtreecommitdiff
path: root/lua/telescope/pickers/window.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/telescope/pickers/window.lua')
-rw-r--r--lua/telescope/pickers/window.lua37
1 files changed, 35 insertions, 2 deletions
diff --git a/lua/telescope/pickers/window.lua b/lua/telescope/pickers/window.lua
index 76c1fe0..533fe30 100644
--- a/lua/telescope/pickers/window.lua
+++ b/lua/telescope/pickers/window.lua
@@ -1,10 +1,10 @@
-local p_layouts = require('telescope.pickers.layout_strategies')
+local resolve = require("telescope.config.resolve")
local p_window = {}
function p_window.get_window_options(picker, max_columns, max_lines)
local layout_strategy = picker.layout_strategy
- local getter = p_layouts[layout_strategy]
+ local getter = require('telescope.pickers.layout_strategies')[layout_strategy]
if not getter then
error("Not a valid layout strategy: " .. layout_strategy)
@@ -13,5 +13,38 @@ function p_window.get_window_options(picker, max_columns, max_lines)
return getter(picker, max_columns, max_lines)
end
+function p_window.get_initial_window_options(picker)
+ local popup_border = resolve.win_option(picker.window.border)
+ local popup_borderchars = resolve.win_option(picker.window.borderchars)
+
+ local preview = {
+ title = picker.preview_title,
+ border = popup_border.preview,
+ borderchars = popup_borderchars.preview,
+ enter = false,
+ highlight = false
+ }
+
+ local results = {
+ title = picker.results_title,
+ border = popup_border.results,
+ borderchars = popup_borderchars.results,
+ enter = false,
+ }
+
+ local prompt = {
+ title = picker.prompt_title,
+ border = popup_border.prompt,
+ borderchars = popup_borderchars.prompt,
+ enter = true
+ }
+
+ return {
+ preview = preview,
+ results = results,
+ prompt = prompt,
+ }
+end
+
return p_window