Flash overrides Firefox keyboard shortcuts -- how to turn that off?

I often cycle through my Firefox tabs using Ctrl+Tab and Ctrl+Shift+Tab. But whenever it reaches a tab that is running a Flash (or similar) plugin, Ctrl+Tab and Ctrl+Shift+Tab won't work anymore, because Flash has the focus and overwrites the general keybindings. I have to stop and click outside of the Flash app to continue the cycling.

Basically, I hate that Flash hijacks the keyboard focus. I never use it anyway, i.e. I never use the keyboard to control certain elements within the Flash app. Can I turn it off, meaning, can I tell Flash not to overwrite Firefox' keyboard bindings?


Solution 1:

Folks, be aware that this is a Flash bug!!! The Flash developers (I mean the developers who build flash) ought to be lined up and shot. This is a programming mistake typical of somebody first-day-in-the-real-world that I can't believe has existed for years now (no mass outrage also shows how few use the keyboard, aka those people who do everything at a snail's pace with the mouse, but don't get me started on that).

When developing a plug-in/etc. you can subscribe to a OS event that gives you EVERY key a user hits. The plug-in/etc can examine the key, and then tell the OS, 1-I don't need that key so process it normally, or 2-I'm doing something with that key so I'll handle it and you ignore it. Most components don't even subscribe to this event, but Flash is super arrogant, and telling the OS "I WANT EVERY KEY". For Windows developers, this is ProcessDialogKey() or something of the like. Again they all ought to be shot, because they're basically saying "hey the browser shortcut keys, I'll eat those and do nothing with them!" Total idiots. Please note that this isn't a FOCUS issue. Most components run just fine with the focus and let the OS process the keys the plug-in/etc doesn't need (which is almost every key, I mean c'mon what keys does Flash need).

The other thing that is sooooo stupid about this, is anybody with any programming experience could walk into Adobe, pull up the code and fix this in 2 minutes.

This is not the only problem like this -- if you have Windows 7 64bit, opening a new window in FireFox that has a flash on the page will set focus back to the first FireFox window. This shows a complete lack of understanding of Windows programming and super-stupid use of Windows API functions like "BringWindowToTop()" etc. Here's a link: Windows 7 FireFox Window Switching with Flash

One last comment: THIS IS NOT A FIREFOX, CHROME, IE PROBLEM!!!

Solution 2:

You can use this add on: Focus Regainer, it solves your issue.

Solution 3:

The whole point of including keyboard shortcuts in Flash (and those ugly yellow borders that appear whenever you hit Tab and Flash has the focus) is accessibility. Everything should be somehow accessible with the keyboard. Letting Flash randomly and unexpectedly steal focus, with no way to go back, completely misses this goal, especially since most Flash apps are mouse-driven anyway.

It doesn't have to be a single-key shortcut to get out--it can be Ctrl+Right Alt+Shift+Super+Left Alt+Up+Down+Up+Down+Asterisk, but it just has to be there somehow.

Apparently, this has been Bug 78414 in Firefox for ten years now.

Solution 4:

It's a known issue and according to this, the fix is accepted and ready to be implemented. No idea what's keeping them from doing so though.

https://wiki.mozilla.org/Plugins:AdvancedKeyHandling

Solution 5:

You have this problem with chrome and ie, too. I do not think its an pc/mac/somegear problem either: That tiny little missbehavior anoys me for years. Finally i just decided to do something. The recently read google hits refered to an osx enviroment. Those guys thought it would be a mac problem.

To those who might read this and have any technical background: my guess is, that this problem with a browser plugin (flash player) is identical to that problem a regular applications (or '') havappse. Best example would be antivir, catching focus to show up the own comercial window after updating. As i use antivar exclusive for private concerns, that keeps minimizing my fullscreen game-'window', which causes game crashes in some case.

In the case of antivir it is not necessarry to catch focus at all. For setting up the plugin within th browser 'sandbox' and keep playing the vid it might be essential. However - i can speak only for regular windows apps - when it were my app stealing the focus, i have no system build in chance to give the focus back to that application the user expect to process his input. Even giving it back to those apps my app stole from is not an easy option.

Even all those browse extensions are called 'add-in', most likly the word in has nothing to do with it. Anyone building an add-in would keep the process-logic capseld outside of the brwoser to work with i.e. the jre and providing only a minimal interface in the code of the add-in for displaying issues. Otherwise you could build seperate versions of process logic for each browser on top to the system issues - just compare watching youtube video on iphone and on android.