From b740c48ee8505f93662065384d84b449d5e33438 Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Fri, 26 Jul 2024 16:01:16 +0200 Subject: Wayland: restore support of Fl_Tile with subwindow widget --- src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/drivers') diff --git a/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx b/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx index 3c9fb3c65..7aeb717a5 100644 --- a/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx +++ b/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx @@ -1831,7 +1831,7 @@ void Fl_Wayland_Window_Driver::resize(int X, int Y, int W, int H) { // When moving or resizing a non-GL subwindow independently from its parent, this condition // delays application of X,Y,W,H values until the compositor signals // it's ready for a new frame using the frame callback mechanism. - if (depth > 1 || pWindow->as_gl_window() || !parent_xid || wait_for_expose_value || (parent_xid->frame_cb && !xid_rect)) { + if (in_tile_intersection_drag() || depth > 1 || pWindow->as_gl_window() || !parent_xid || wait_for_expose_value || (parent_xid->frame_cb && !xid_rect)) { if (is_a_resize) { if (pWindow->parent()) { if (W < 1) W = 1; @@ -1909,7 +1909,7 @@ void Fl_Wayland_Window_Driver::resize(int X, int Y, int W, int H) { } Fl_Wayland_Graphics_Driver::buffer_commit(parent_xid); } else { - if (!parent_xid->frame_cb) { + if (!in_tile_intersection_drag() && !parent_xid->frame_cb) { // use the frame callback mechanism and memorize current X,Y,W,H values xid_rect = new xid_and_rect; xid_rect->xid = parent_xid; -- cgit v1.2.3