diff options
author | zeertzjq <zeertzjq@outlook.com> | 2021-10-27 19:22:00 +0800 |
---|---|---|
committer | zeertzjq <zeertzjq@outlook.com> | 2021-10-28 06:32:36 +0800 |
commit | 7ff1bc18a978d30f70db157be6f5fb2fb52b4215 (patch) | |
tree | 69a9aaa76e0293ca501861c91d338aa49adbd379 | |
parent | de670f380914e71d16b3357b609bdd3d0d30d95b (diff) | |
download | rneovim-7ff1bc18a978d30f70db157be6f5fb2fb52b4215.tar.gz rneovim-7ff1bc18a978d30f70db157be6f5fb2fb52b4215.tar.bz2 rneovim-7ff1bc18a978d30f70db157be6f5fb2fb52b4215.zip |
fix(float): redraw if w_border_adj changed
-rw-r--r-- | src/nvim/window.c | 7 | ||||
-rw-r--r-- | test/functional/ui/float_spec.lua | 1 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/nvim/window.c b/src/nvim/window.c index 4a21c2eee5..67bad9f8cf 100644 --- a/src/nvim/window.c +++ b/src/nvim/window.c @@ -725,8 +725,11 @@ void win_config_float(win_T *wp, FloatConfig fconfig) bool has_border = wp->w_floating && wp->w_float_config.border; for (int i = 0; i < 4; i++) { - wp->w_border_adj[i] = - has_border && wp->w_float_config.border_chars[2 * i+1][0]; + int new_adj = has_border && wp->w_float_config.border_chars[2 * i + 1][0]; + if (new_adj != wp->w_border_adj[i]) { + change_border = true; + wp->w_border_adj[i] = new_adj; + } } if (!ui_has(kUIMultigrid)) { diff --git a/test/functional/ui/float_spec.lua b/test/functional/ui/float_spec.lua index 64b0cbcbfb..b6d80616b4 100644 --- a/test/functional/ui/float_spec.lua +++ b/test/functional/ui/float_spec.lua @@ -1196,7 +1196,6 @@ describe('float window', function() meths.win_set_config(win, {border={"", "_", "", "", "", "-", "", ""}}) if multigrid then - command('redraw!') -- TODO: without a redraw this test fails, which should be fixed screen:expect{grid=[[ ## grid 1 [2:----------------------------------------]| |