Отключение контекстного меню Flash Player по умолчанию в приложениях OpenLaszlo
Можно ли полностью отключить контекстное меню Flash Player на настольных компьютерах при развертывании приложения OpenLaszlo с использованием среды выполнения SWF10 / 11?
1 ответ
Это возможно только начиная с Flash Player 11.2. Я провел тестовый запуск с модифицированной версией OpenLaszlo на основе ветви flex4.6, добавив поддержку Flash 11.2+ в компилятор OpenLaszlo. С помощью следующего кода LZX мне удалось полностью удалить стандартное контекстное меню Flash Player:
<canvas width="100%" height="800" proxied="false">
<passthrough when="$as3">
import flash.events.MouseEvent;
</passthrough>
<handler name="oninit">
if ($as3) {
Debug.info(MouseEvent.RIGHT_CLICK);
var sprite = this.getDisplayObject();
sprite.addEventListener(MouseEvent.RIGHT_CLICK, doSomething);
}
</handler>
<method name="doSomething" args="p">
Debug.inspect(p);
</method>
</canvas>
На данный момент я не хочу больше вносить код в OpenLaszlo, потому что Laszlo и Critical Path не уважают сообщество в течение последних 2 лет. Я мог бы создать частную ветку OpenLaszlo, где я буду добавлять новые функции и исправления ошибок, и, возможно, это можно превратить в версию, поддерживаемую сообществом.
Поэтому нет никакого способа использовать этот пример кода с выпущенной версией или сборкой OpenLaszlo.