#594 closed bug (fixed)
[BMenu] doesn't close on focus lost
Reported by: | diver | Owned by: | jackburton |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | - General | Version: | |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
Click attribute menu in tracker window and then click in container window, attribute menu should close, but it won't.
Change History (11)
comment:1 by , 19 years ago
Owner: | changed from | to
---|
comment:2 by , 19 years ago
Status: | new → assigned |
---|
comment:3 by , 19 years ago
comment:4 by , 19 years ago
By the way... can you tell/remember if it's a problem introduced only recently ? Have you got the chance to try a revision older than 15876 or 15877 ?
comment:5 by , 19 years ago
Cc: | added |
---|
comment:6 by , 19 years ago
Axel, I noticed that BPoseView::MouseDown() also uses a synchronous loop to check mouse buttons, but with a delay which is much smaller than the one used in BMenu. Since both use the GetMouse() variation which checks the message queue, I think PoseView "steals" the B_MOUSE_DOWN message, and bmenu never gets the clicked state.
Should I use the other variation of GetMouse(), the one which only gets the current mouse state ? Couldn't that lose clicks as well, if the menu tracking loop doesn't execute fast enough ?
Does what I wrote make sense ?
comment:8 by , 19 years ago
Apparently this bug is fixed, but I introduced a new problem: closing menus this way makes them open again when you move the cursor over the menubar.
comment:9 by , 19 years ago
Status: | assigned → closed |
---|
comment:11 by , 19 years ago
Resolution: | → fixed |
---|
That's weird. Especially because it only happens inside tracker. It happens, though, so something might be wrong indeed.