diff options
| author | ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> | 2024-01-21 08:30:49 +0100 |
|---|---|---|
| committer | ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> | 2024-01-21 08:30:49 +0100 |
| commit | 2fbf5bed0db2aec0ef6462d58150a40064f0333b (patch) | |
| tree | 91b35518e8ee3abecf2c11125d3ea28124e576ed /src/drivers | |
| parent | b5b839e4f00f5cb0dde2de165ebb7c4bcbf65c3c (diff) | |
Fix "Wayland: crash with set_menu_window()" (#892)
Fixes also a similar crash occuring after use of set_tooltip_window().
Two bool member variables are added to class Fl_Window_Driver
to indicate true FLTK menu windows (i.e., created by Fl_Menu_Item::pulldown())
and true FLTK tooltip windows (i.e., Fl_Tooltip).
Diffstat (limited to 'src/drivers')
| -rw-r--r-- | src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx b/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx index 9b04779cb..7bdf30f2b 100644 --- a/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx +++ b/src/drivers/Wayland/Fl_Wayland_Window_Driver.cxx @@ -1394,12 +1394,13 @@ void Fl_Wayland_Window_Driver::makeWindow() // put transient scale win at center of top window by making it a tooltip of top Fl_Screen_Driver::transient_scale_parent = Fl::first_window(); pWindow->set_tooltip_window(); + fltk_tooltip_window = true; pWindow->position( (Fl_Screen_Driver::transient_scale_parent->w() - pWindow->w())/2 , (Fl_Screen_Driver::transient_scale_parent->h() - pWindow->h())/2); } - if (pWindow->menu_window() || pWindow->tooltip_window()) { // a menu window or tooltip + if (fltk_menu_window || fltk_tooltip_window) { // a menu window or tooltip is_floatingtitle = process_menu_or_tooltip(new_window); } else if (pWindow->border() && !pWindow->parent() ) { // a decorated window |
