diff options
| author | ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> | 2023-10-24 19:25:59 +0200 |
|---|---|---|
| committer | ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> | 2023-10-24 19:25:59 +0200 |
| commit | 0636c0b3e69c80a11a385ebb7fa3db5c8ff06a42 (patch) | |
| tree | d89f355f57b0ebe57d2634cb67ec51cbd42770b2 /src/drivers/Wayland | |
| parent | e391dc1bf955cbcb7efe6fc268c0c565328ea5a5 (diff) | |
Wayland: implement scale factor windows as popups - cont'd
Diffstat (limited to 'src/drivers/Wayland')
| -rw-r--r-- | src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx b/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx index 73a8c442d..e844dbb90 100644 --- a/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx +++ b/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx @@ -435,9 +435,11 @@ static void destroy_surface_caution_pointer_focus(struct wl_surface *surface, void Fl_Wayland_Window_Driver::hide() { if (pWindow == Fl_Screen_Driver::transient_scale_parent) { - // Don't hide the parent of a running transient scale window - // because the transient is a popup and MUST be deleted first. - return; + // Delete also the running transient scale window + // because the transient is a popup and MUST be deleted + // before its parent. + Fl::remove_timeout(Fl_Screen_Driver::del_transient_window); + Fl_Screen_Driver::del_transient_window(NULL); } Fl_X* ip = Fl_X::flx(pWindow); if (hide_common()) return; |
