diff options
author | Björn Linse <bjorn.linse@gmail.com> | 2019-07-13 14:05:52 +0200 |
---|---|---|
committer | Björn Linse <bjorn.linse@gmail.com> | 2019-07-13 14:27:06 +0200 |
commit | cb9e0a051f7ed36d7f03819f9d71b3000164b826 (patch) | |
tree | 0361bbddb986127fc89ad391e89c26b60aa20fc1 /test/functional/ui/float_spec.lua | |
parent | 4013f670537246826dae738d5cb86fd075f59f82 (diff) | |
download | rneovim-cb9e0a051f7ed36d7f03819f9d71b3000164b826.tar.gz rneovim-cb9e0a051f7ed36d7f03819f9d71b3000164b826.tar.bz2 rneovim-cb9e0a051f7ed36d7f03819f9d71b3000164b826.zip |
floats: fix 'winblend' on top of doublewidth chars.
The interaction between 'winblend' and doublewidth chars in the background
does not look very good. But check no chars get incorrectly placed
at least.
Also check that hidden EndOfBuffer region (from style="minimal") blends
correctly.
Diffstat (limited to 'test/functional/ui/float_spec.lua')
-rw-r--r-- | test/functional/ui/float_spec.lua | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/test/functional/ui/float_spec.lua b/test/functional/ui/float_spec.lua index 68a23db0a2..8a1758c4a0 100644 --- a/test/functional/ui/float_spec.lua +++ b/test/functional/ui/float_spec.lua @@ -4659,6 +4659,96 @@ describe('floating windows', function() | ]]) end + + -- The interaction between 'winblend' and doublewidth chars in the background + -- does not look very good. But check no chars get incorrectly placed + -- at least. Also check invisible EndOfBuffer region blends correctly. + meths.buf_set_lines(buf, 0, -1, true, {" x x x xx", " x x x x"}) + win = meths.open_win(buf, false, {relative='editor', width=12, height=3, row=0, col=11, style='minimal'}) + meths.win_set_option(win, 'winblend', 30) + screen:set_default_attr_ids({ + [1] = {foreground = tonumber('0xb282b2'), background = tonumber('0xffcfff')}, + [2] = {foreground = Screen.colors.Grey0, background = tonumber('0xffcfff')}, + [3] = {bold = true, foreground = Screen.colors.Blue1}, + [4] = {background = tonumber('0xffcfff'), bold = true, foreground = tonumber('0xb282ff')}, + [5] = {background = Screen.colors.LightMagenta}, + }) + if multigrid then + screen:expect{grid=[[ + ## grid 1 + [2:----------------------------------------]| + [2:----------------------------------------]| + [2:----------------------------------------]| + [2:----------------------------------------]| + [2:----------------------------------------]| + [2:----------------------------------------]| + | + ## grid 2 + # TODO: 测试字典信息的准确性 | + # FIXME: 测试字典信息的准确^性 | + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + ## grid 5 + {5: x x x xx}| + {5: x x x x}| + {5: }| + ]], float_pos={ + [5] = { { + id = 1003 + }, "NW", 1, 0, 11, true } + }} + else + screen:expect([[ + # TODO: 测 {2: x x x}{1:息}{2: xx} 确性 | + # FIXME: 测{1:试}{2:x x x}{1:息}{2: x}准确^性 | + {3:~ }{4: }{3: }| + {3:~ }| + {3:~ }| + {3:~ }| + | + ]]) + end + + meths.win_set_config(win, {relative='editor', row=0, col=12}) + if multigrid then + screen:expect{grid=[[ + ## grid 1 + [2:----------------------------------------]| + [2:----------------------------------------]| + [2:----------------------------------------]| + [2:----------------------------------------]| + [2:----------------------------------------]| + [2:----------------------------------------]| + | + ## grid 2 + # TODO: 测试字典信息的准确性 | + # FIXME: 测试字典信息的准确^性 | + {3:~ }| + {3:~ }| + {3:~ }| + {3:~ }| + ## grid 5 + {5: x x x xx}| + {5: x x x x}| + {5: }| + ]], float_pos={ + [5] = { { + id = 1003 + }, "NW", 1, 0, 12, true } + }} + else + screen:expect([[ + # TODO: 测试{2: x x}{1:信}{2:x }{1:的}{2:xx}确性 | + # FIXME: 测 {2: x x}{1:信}{2:x }{1:的}{2:x} 确^性 | + {3:~ }{4: }{3: }| + {3:~ }| + {3:~ }| + {3:~ }| + | + ]]) + end end) end |