Comment 385 for bug 263435

Revision history for this message
In , Igor-levicki (igor-levicki) wrote :

Hahaha, a "top 100" bug open for like 9 (NINE) years :D

Seriously, a few points are being missed here:

1. Full page applications written in Flash or Java should not take all events by default

Rationale:
There is this thing called "tabbed browsing", and people want to be able to use Ctrl+Tab and other shortcuts to switch from your "application" to another tab or Alt+D to give focus to the address bar. Using your "application" is not a guarantee that people want their PC's I/O devices abducted by it.

2. No plugin should ever get the focus initially when the page loads

Rationale:
You should not have to "unfocus" the plugin to begin browsing the page.

3. No plugin should ever get Ctrl/Alt/Command keys

Rationale:
Ctrl/Alt/Command are modifier keys used for accessing menus and other shortcuts in the host application. Regardless of how much some developers would like to call their flash movie an "application", those keys should be always handled by the host application in much the same way your operating system always handles Ctrl+Alt+Del key combination.

Unless you want to break all GUI and accessibility design rules?

From the above it is obvious that Ctrl/Alt/Command+<anykey> should also never be received by plugins. If people want to write a full-fledged application with access to all control/modifier keys, then they should write a standalone application in a real programming language -- they should not expect from the host application to compromise its own functionality for the sake of plugins.

In my opinion, part of the main problem that has to be solved for this bug to ever get fixed is how to allow user to click on a play button on a flash video player without giving focus to the flash player plugin itself?

That should be doable even if it means giving and then immediately taking away the focus after sending the event so that the focus doesn't stay with the plugin.

Of course, there should still be a way to give focus when you want to -- for example clicking with right mouse button could give the focus to the plugin until you click outside of it with any mouse button.

Single keystrokes (arrows, letters, numbers, space, etc) should always go to the plugin when it has focus so that other things such as games and text input would still work.

Finally, the only exception to the control/modifier keys which plugins should be able to receive _when they have focus_ are CUA keys for text editing.

Hope this helps a bit.