diff options
Diffstat (limited to 'src/nvim/window.c')
-rw-r--r-- | src/nvim/window.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/nvim/window.c b/src/nvim/window.c index c0d399c4c4..10334083ce 100644 --- a/src/nvim/window.c +++ b/src/nvim/window.c @@ -1010,6 +1010,10 @@ void ui_ext_win_position(win_T *wp, bool validate) 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; + } wp->w_winrow = comp_row; wp->w_wincol = comp_col; ui_comp_put_grid(&wp->w_grid_alloc, comp_row, comp_col, |