diff options
author | bfredl <bjorn.linse@gmail.com> | 2024-03-29 08:35:08 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-29 08:35:08 +0100 |
commit | b1615a35f08ae3073f7d2e4e8e080907f0d48e92 (patch) | |
tree | 5dc431001eefa5e4dc26651eea1e7c1dcd093f76 /test/functional/ui/screen.lua | |
parent | e2224a7933b6e30ab6efb0b7ad4e3f26da57c226 (diff) | |
parent | 2e4e12756a697d4767ec294e1f268384395e7a7f (diff) | |
download | rneovim-b1615a35f08ae3073f7d2e4e8e080907f0d48e92.tar.gz rneovim-b1615a35f08ae3073f7d2e4e8e080907f0d48e92.tar.bz2 rneovim-b1615a35f08ae3073f7d2e4e8e080907f0d48e92.zip |
Merge pull request #28081 from bfredl/viewport_margin
feature(ui): indicate margins for the area used by win_viewport
Diffstat (limited to 'test/functional/ui/screen.lua')
-rw-r--r-- | test/functional/ui/screen.lua | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/functional/ui/screen.lua b/test/functional/ui/screen.lua index d741b440c5..ee9334a9fe 100644 --- a/test/functional/ui/screen.lua +++ b/test/functional/ui/screen.lua @@ -204,6 +204,7 @@ function Screen.new(width, height) wildmenu_selected = nil, win_position = {}, win_viewport = {}, + win_viewport_margins = {}, float_pos = {}, msg_grid = nil, msg_grid_pos = nil, @@ -337,6 +338,7 @@ local ext_keys = { 'ruler', 'float_pos', 'win_viewport', + 'win_viewport_margins', } local expect_keys = { @@ -621,6 +623,9 @@ screen:redraw_debug() to show all intermediate screen states.]] if expected.win_viewport == nil then extstate.win_viewport = nil end + if expected.win_viewport_margins == nil then + extstate.win_viewport_margins = nil + end if expected.float_pos then expected.float_pos = deepcopy(expected.float_pos) @@ -993,6 +998,7 @@ function Screen:_handle_grid_destroy(grid) if self._options.ext_multigrid then self.win_position[grid] = nil self.win_viewport[grid] = nil + self.win_viewport_margins[grid] = nil end end @@ -1048,6 +1054,16 @@ function Screen:_handle_win_viewport( } end +function Screen:_handle_win_viewport_margins(grid, win, top, bottom, left, right) + self.win_viewport_margins[grid] = { + win = win, + top = top, + bottom = bottom, + left = left, + right = right, + } +end + function Screen:_handle_win_float_pos(grid, ...) self.win_position[grid] = nil self.float_pos[grid] = { ... } @@ -1466,6 +1482,8 @@ function Screen:_extstate_repr(attr_state) end local win_viewport = (next(self.win_viewport) and self.win_viewport) or nil + local win_viewport_margins = (next(self.win_viewport_margins) and self.win_viewport_margins) + or nil return { popupmenu = self.popupmenu, @@ -1480,6 +1498,7 @@ function Screen:_extstate_repr(attr_state) msg_history = msg_history, float_pos = self.float_pos, win_viewport = win_viewport, + win_viewport_margins = win_viewport_margins, } end |