Breaking changes: - When using the Memory::popup state, it's now required to call keep_popup_open each frame or the popup will close. - Usually handled by the `Popup` struct, but required for custom popups using the state in `Memory` directly ----- If a popup is abandoned `Memory::popup` would remain `Some`. This is problematic if, for example, you have logic that checks `is_any_popup_open`. This PR adds a new requirement for popups keeping their open state in `Memory::popup`. They must call `Memory::keep_popup_open` as long as they are being rendered. The recent changes in #5716 make this easy to implement. Supersedes #4697 which had an awkward implementation These two videos show a case where a context menu was open when the underlying widget got removed. Before (`any_popup_open` remains `true`)  After  * Closes https://github.com/emilk/egui/issues/3657 * [x] I have followed the instructions in the PR template |
||
|---|---|---|
| .. | ||
| ecolor | ||
| eframe | ||
| egui | ||
| egui-wgpu | ||
| egui-winit | ||
| egui_demo_app | ||
| egui_demo_lib | ||
| egui_extras | ||
| egui_glow | ||
| egui_kittest | ||
| egui_plot | ||
| egui_web | ||
| emath | ||
| epaint | ||
| epaint_default_fonts | ||