LoadedCamel / MidsReborn

Mids' Reborn : Hero Designer
GNU General Public License v3.0
24 stars 7 forks source link

Right click popup immediately dismissed #99

Closed dauba-dauba closed 2 years ago

dauba-dauba commented 2 years ago

Describe the bug When I right click on a slot to assign an enhancement, the resulting popup window is immediately dismissed about 50% of the time.

To Reproduce Steps to reproduce the behavior:

  1. Create a character; give it powers and slots
  2. Right click on a slot to assign an enhancement

Expected behavior The popup window showing possible enhancement assignments should stay visible until I choose something, or click outside the window to dismiss it.

Actual behavior The popup window shows briefly, but then (about 50% of the time) immediately goes away as if some other click had occurred.

Desktop (please complete the following information):

Additional context This has been a persistent problem since around the v3 release. Prior versions of Mids worked fine.

Crytilis commented 2 years ago

The enhancement picker disappears not just from a click but also when your mouse moves a bit off of it. This may be moved at a later date to an actual window/control. Moving this to a feature request.

dauba-dauba commented 2 years ago

This happens even without moving the mouse. I think it happens if I right click too quickly after assigning some different enhancement - the dismissal coincides with the update of the advanced totals window. My guess is some event is getting handled with latency and the event handling is dismissing any currently displayed popups.

Crytilis commented 2 years ago

Hmmm, I haven't noticed this myself however I will investigate any potential issues. In the meantime changing the flag for this to app-bug. Appreciate the added info, thanks.

zethriller commented 2 years ago

I think i squashed this one: picker won't hide itself if it has been shown for less than a second. To be tested further, due to the randomness of this bug.

zethriller commented 2 years ago

Note that the way it's done will block popup from hiding if it hasn't been shown for less than one second. This means to actually trigger the hiding, mouse will have to go back on it first.

I tried with a mouse move event handler and this is actually worse.