You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I upgraded my egui version from 0.19.0 to 0.21.0 yesterday, and the widgets in the areas that use Ui::interact() are no longer responding to mouse events.
They do not react in 0.21.0, 0.20.0, but they did in 0.19.0, which is what I was using.
It seems that the mouse events are completely overwritten by ui::interact.
Is this the expected behaviour? To Reproduce
Steps to reproduce the behavior:
Let's create a project from eframe_template.
Add a line ui.interact(ui.min_rect(), egui::Id::new("Some Id"), egui::Sense::click())between line 92 and 93 of app.rs.
0.21.0 and 0.20.0
0.19.0
3. The SidePanel widget responds in 0.19.0, but not in 0.20.0 and 0.21.0. Nothing happens when you click on them, and they do not highlight when you hover over them.
4. Note that the hyperlinks in the CentralPanel works fine as it does not contain interact().
Expected behavior
I was expecting behaviour as in 0.19.0.
Desktop (please complete the following information):
OS: Windows10
The text was updated successfully, but these errors were encountered:
I'm also seeing this when using context_menu on the response from a egui_extras::TableRow::col. For some tables the interaction works, while others it is ignored, even when the tables are in separate windows.
Referring to #2244, this seems like the expected behaviour.
So I would like to ask, how can I know if a certain area is clicked without Responses from Widgets?
In the eframe_template example I showed before, I want to know if "Side Panel" is clicked or not without direct response from Button, Slider, TextEditor (that's why I added ui.interact()).
The reason why I want to do it is that, imagine you have tens or hundreds of widgets in "Side Panel" and you want a "Side Panel has clicked" event besides "each widgets has clicked" event, writing event handling code every time you add a widget is a waste of time.
So I'd like a "global" method to get events of a certain area. Is there a way to do this?
Describe the bug
I upgraded my egui version from 0.19.0 to 0.21.0 yesterday, and the widgets in the areas that use Ui::interact() are no longer responding to mouse events.
They do not react in 0.21.0, 0.20.0, but they did in 0.19.0, which is what I was using.
It seems that the mouse events are completely overwritten by ui::interact.
Is this the expected behaviour?
To Reproduce
Steps to reproduce the behavior:
Add a line
ui.interact(ui.min_rect(), egui::Id::new("Some Id"), egui::Sense::click())
between line 92 and 93 of app.rs.0.21.0 and 0.20.0
0.19.0
3. The SidePanel widget responds in 0.19.0, but not in 0.20.0 and 0.21.0. Nothing happens when you click on them, and they do not highlight when you hover over them.
4. Note that the hyperlinks in the
CentralPanel
works fine as it does not containinteract()
.Expected behavior
I was expecting behaviour as in 0.19.0.
Desktop (please complete the following information):
The text was updated successfully, but these errors were encountered: