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

Reply via email to