Es sabido que en Flash Player no se puede utilizar el botón derecho del mouse de forma “propietaria”. Con dicho botón se activa el menú contextual, y aunque se puede modificar, como mínimo encontramos las opciones Configuración y Acerca de Adobe Flash Player 9…
Pues navegando por Google Code me he encontrado un proyecto llamado Custom-context-menu que nos permite utilizar a nuestro antojo el botón derecho. Para ello combina javascript y flash de una manera muy ingeniosa. Básicamente el hack consiste en:
- Con javascript, capturar el click derecho en HTML antes que llegue al swf
- Una vez capturado el evento, informar al swf mediante ExternalInterface
- Crear una función en ActionScript que responda a la llamada de ExternalInterface
Se puede ver un ejemplo aquí.
Aunque puede ser un recurso muy útil, hay que tener en cuenta los siguientes inconvenientes:
- Funciona en la mayoría de navegadores/so, pero no en todos
- Antes de tener el evento en AS, recorre un ciclo de llamadas entre el swf y el html, con lo que el rendimiento es mucho peor que una llamada nativa
- En el menú contextual se encuentran las opciones de configuración del Flash Player, y estaríamos quitándoselas al usuario
Aún así, en casos específicos en los que sería muy importante tener este botón habilitado, es una gran solución y no está de más conocerla.