aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBjörn Linse <bjorn.linse@gmail.com>2021-04-26 22:11:35 +0200
committerGitHub <noreply@github.com>2021-04-26 22:11:35 +0200
commitecf075eb297e647a552fb12efd00fa5834bc4d61 (patch)
tree5dfe169f08e072d1644210c61df5ee47d9ef7058 /src
parentbb7d3790bf08b5519623d261d8235bad77b5c0dd (diff)
parenteeb1099bc419ce265c03cc82b1b3bc9cfc1ea208 (diff)
downloadrneovim-ecf075eb297e647a552fb12efd00fa5834bc4d61.tar.gz
rneovim-ecf075eb297e647a552fb12efd00fa5834bc4d61.tar.bz2
rneovim-ecf075eb297e647a552fb12efd00fa5834bc4d61.zip
Merge pull request #14416 from bfredl/floatorder
ui_compositior: handle overlapping displayed floats in the same tick
Diffstat (limited to 'src')
-rw-r--r--src/nvim/ui_compositor.c3
-rw-r--r--src/nvim/window.c3
2 files changed, 3 insertions, 3 deletions
diff --git a/src/nvim/ui_compositor.c b/src/nvim/ui_compositor.c
index a2e9266fbb..c1e4a40ef2 100644
--- a/src/nvim/ui_compositor.c
+++ b/src/nvim/ui_compositor.c
@@ -180,7 +180,8 @@ bool ui_comp_put_grid(ScreenGrid *grid, int row, int col, int height, int width,
if (kv_A(layers, insert_at-1) == &pum_grid && (grid != &msg_grid)) {
insert_at--;
}
- if (insert_at > 1 && !on_top) {
+ if (curwin && kv_A(layers, insert_at-1) == &curwin->w_grid_alloc
+ && !on_top) {
insert_at--;
}
// not found: new grid
diff --git a/src/nvim/window.c b/src/nvim/window.c
index c482d265ff..d1163399f5 100644
--- a/src/nvim/window.c
+++ b/src/nvim/window.c
@@ -772,9 +772,8 @@ void ui_ext_win_position(win_T *wp)
wp->w_winrow = comp_row;
wp->w_wincol = comp_col;
bool valid = (wp->w_redr_type == 0);
- bool on_top = (curwin == wp) || !curwin->w_floating;
ui_comp_put_grid(&wp->w_grid_alloc, comp_row, comp_col,
- wp->w_height_outer, wp->w_width_outer, valid, on_top);
+ wp->w_height_outer, wp->w_width_outer, valid, false);
ui_check_cursor_grid(wp->w_grid_alloc.handle);
wp->w_grid_alloc.focusable = wp->w_float_config.focusable;
if (!valid) {