-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi,
I just noticed a strange/wrong behavour in awful.menu and investigated a bit. Repro: - - Fire up awful.menu (you need a real one not the client menu, because this is created and destroyed everytime) and - - move your mouse about a certain entry in the menu. Note: Since my .bg_image is not applied yet, every entry has probably an icon, a textbox and probably an arrow. So point over one of these widgets and keep it in mind. - - Now destroy the menu: There are two ways of doing this: Rightclick or click on it if it is no submenu. - - Open the menu again and point over the widget you were over in the moment the menu gets killed. You should now notice the menu entry wont get the normal highlight background color. If you move the pointer around and back to the element the hover_color will be there however. Background: awesome calls the internal mouse-over-hook when you hover over the element. the internal function will call the lua hook and the entry gets a nice background. The internal pointer will be set to the widget you pointed over. If you leave the entry/widget the internal mouse-leave-hook will be called (this will invoke the external lua function) and the internal pointer will be set to the new widget your pointer is over (or probably NULL if there is no widget). Problem: If we point over an entry and call the mouse-over-function the internal pointer will be set to the current widget. but if we close the menu, the widget hides but we do not leave it actually, so the leave hook wont be called. if we hover the element again the function checks if the internal pointer is set. since it is still set, the external lua function wont be called (no shiny cool background for the entry). unfortunately the mouse-leave hook will be called if we leave the object again and "cleans up" the problem. If we point over the element it will behave normally again. Now there are different approaches to fix this issue. a) add the ability to unset the mouse-over pointer from lua b) patch the C side to check for mouse-over/leave events if menus/widgets hide c) everything you could imagine Since this is more a concept issue, I have no patch for you :P Regards, Leon Winter p.s. Gregor could repro, so this issue is real -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAklKZqEACgkQ3qn9m9SfDYfoGgCfcgYm2cDyxEfXWh5gnJ7k1EnV sSYAoJP2/gPG8iyj8VdlghpW1g3h5WjI =jK2p -----END PGP SIGNATURE----- -- To unsubscribe, send mail to [email protected].
