diff options
author | zeertzjq <zeertzjq@outlook.com> | 2023-09-19 18:45:11 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-19 18:45:11 +0800 |
commit | c5abf487f19e45fe96a001b28b9e7981f43eed7d (patch) | |
tree | 925a0fe21f642091f307b7f8f1ff33083a73ca41 /src/nvim/window.c | |
parent | 1db45a9c1fd68e57611829a9363212a39f3c55d6 (diff) | |
download | rneovim-c5abf487f19e45fe96a001b28b9e7981f43eed7d.tar.gz rneovim-c5abf487f19e45fe96a001b28b9e7981f43eed7d.tar.bz2 rneovim-c5abf487f19e45fe96a001b28b9e7981f43eed7d.zip |
fix(float): make "fixed" work with relative=win (#25243)
Diffstat (limited to 'src/nvim/window.c')
-rw-r--r-- | src/nvim/window.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/src/nvim/window.c b/src/nvim/window.c index 10334083ce..1208494eaf 100644 --- a/src/nvim/window.c +++ b/src/nvim/window.c @@ -1009,10 +1009,8 @@ void ui_ext_win_position(win_T *wp, bool validate) comp_row += grid->comp_row; comp_col += grid->comp_col; comp_row = MAX(MIN(comp_row, Rows - wp->w_height_outer - (p_ch > 0 ? 1 : 0)), 0); - comp_col = MAX(MIN(comp_col, Columns - wp->w_width_outer), 0); - int right_extra = Columns - (int)c.col - wp->w_width - (c.border_chars[2][0] != 0); - if (!(c.anchor & kFloatAnchorEast) && c.fixed && right_extra < 0) { - comp_col = (int)c.col; + if (!c.fixed || east) { + comp_col = MAX(MIN(comp_col, Columns - wp->w_width_outer), 0); } wp->w_winrow = comp_row; wp->w_wincol = comp_col; |