My favorites | Sign in
Project Home Issues Source
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 135: Mouseover plugin will bring the window containing plugin on foreground
1 person starred this issue and may be notified of changes. Back to list
Status:  Fixed
Owner:  ----


Sign in to add a comment
 
Reported by l.bartol...@gmail.com, Jan 31, 2011
What steps will reproduce the problem?
1. open on Firefox or Chrome or Safari (not IE) a plugin made on Firebreath
2. open another window in the same browser, resize it so that you can see the plugin on background
3. move mouse pointer over the plugin area.

What is the expected output? What do you see instead?

the window containing plugin is brought on front, hiding the one which was on the front before that. This is particularly annoying if, for example, the window which is on front were to be a message box completely surrounded by plugin area.

What version of FireBreath are you using? On what operating system and
browsers?

tested on FireBreath 1.3.2a, windows platform

What version of your compiler or IDE are you using?

Please provide any additional information below.
Issue is caused by SetFocus(m_hwnd) in the mouseover event handling function (https://github.com/firebreath/FireBreath/tree/master/src/PluginAuto/Win#L117). Comment says "get key focus, as the mouse is over our region" but on my opinion this is also bad behaviour, for an explanation imagine this scenario: user is filling a form in a page containing our plugin, he need to fill in a date and hover the mouse on Windows clock to see the date tooltip, by doing so the mouse pointer passes over the plugin which takes key focus. He now has to move the mouse back to the textbox and click it again to continue editing. Or while scrolling with arrow keys the plugin moves under the mouse position, the plugin will intercept following key events and the scrolling would stop. 
Jan 31, 2011
Project Member #1 taxilian
Interesting point.  I've never experienced the issue you're mentioning, but you're right; the mousemove event should definitely not be setting focus.

Since you bring it up, what would you think about setting focus on mousedown as a default?  Or do we need to make setfocus a method on PluginWindow?  Mainly I just don't know how to do that (or if it's possible) on Mac and Linux...
Status: Accepted
Jan 31, 2011
#2 l.bartol...@gmail.com
I don't know how it works for Mac and Linux too, since I haven't started working on these platforms yet. I guess having focus on mousedown is pretty standard behaviour, though would be nice if developer would be allowed to configure that (for example to simulate a partially transparent plugin one could want to set focus only when click is done in a non-transparent area), but I don't know if it would be too much work for such a rarely used functionality.
Feb 7, 2011
Project Member #3 richarda...@gmail.com
I've done a little research on how this works on other platforms and it sounds like mousedown normally causes the keyboard focus to be captured. This being the case I have changed it to work the same way in PluginWindowWin.

Thanks for bringing this up!  Fixed in 1.4b4
Status: Fixed
Sign in to add a comment

Powered by Google Project Hosting