Change 20100803-maxcarlson-W by maxcarl...@friendly on 2010-08-03 16:26:24 PDT
in /Users/maxcarlson/openlaszlo/trunk2
for http://svn.openlaszlo.org/openlaszlo/trunk
Summary: Add fix for SWF creating duplicate iframes when tab is torn off in
Firefox
New Features: The default wrapper HTML now shows the load progress for Flash
applications.
Bugs Fixed: LPP-9106 - Firefox - Making a tab into a new window duplicates HTML
component iframes
Technical Reviewer: promanik
QA Reviewer: dwheeler
Details: LzPreloader,SWF9Writer - Add immediate call to set the loadpercentage
to 0. Add try/catch blocks to prevent potential warnings when running where
ExternalInterface is not available, e.g. in standalone Flash players.
lzpreloader - Add immediate call to set the loadpercentage to 0.
embed-body.xslt - Add load indicators for Flash.
html.lzx - Break iframe initialization into two parts - create, then set the
iframe's id on the instance. Use a callback in create() to store a reference
to the iframe owner. Rework __gotMouseEvent() to use __iframecallback(), move
logic to __handleMouseEvent().
embednew - Update comments in loadJSLib(). Delay calling _sendAllKeysUp() for
onfocus to ensure the app is really loaded. In _sendPercLoad, if the
percentage is less than 100 and we think we're already loaded, set loaded to
false and call lz.embed.resetloaded() to allow iframes to be cleared. Add
resetloaded() which checks to see if there is an iframemanager loaded, and
calls __reset()
iframemanagerstub - Always generate iframe ids. Move setiframeid to
iframemanager.js.
iframemanager - For __reset(), track iframes by app id. Explicitly call
__setiframeid() when the iframe is created. Use
embed.iframemanager.asyncCallback() to send mouse events in Flash. Add
__reset() which finds iframes owned by the app being reset and destroys them.
Tests: See testcase from LPP-9106 in flash 10 and flash 8
Files:
M WEB-INF/lps/lfc/kernel/swf9/LzPreloader.as
M WEB-INF/lps/lfc/lzpreloader.as
M WEB-INF/lps/server/src/org/openlaszlo/compiler/SWF9Writer.java
M WEB-INF/lps/templates/embed-body_jp.xslt
M WEB-INF/lps/templates/embed-body.xslt
M lps/components/extensions/html.lzx
M lps/includes/source/embednew.js
M lps/includes/source/iframemanagerstub.js
M lps/includes/source/iframemanager.js
Changeset:
http://svn.openlaszlo.org/openlaszlo/patches/20100803-maxcarlson-W.tar