Author: max
Date: 2008-02-29 18:28:06 -0800 (Fri, 29 Feb 2008)
New Revision: 8144
Modified:
openlaszlo/trunk/lps/includes/source/embednew.js
openlaszlo/trunk/lps/includes/source/iframemanager.js
Log:
Change 20080229-maxcarlson-Y by [EMAIL PROTECTED] on 2008-02-29 11:45:38 PST
in /Users/maxcarlson/openlaszlo/trunk-clean
for http://svn.openlaszlo.org/openlaszlo/trunk
Summary: Fix html tag for wmode window in IE
New Features:
Bugs Fixed: LPP-5482 - Issue running swf in wmode "window" when using html tag
Technical Reviewer: promanik
QA Reviewer: [EMAIL PROTECTED]
Doc Reviewer: (pending)
Documentation:
Release Notes:
Details: embednew.js - Add Lz[appname]._getSWFDiv() API for use by
iframemanager.
iframemanager.js - Track __topiframe. Call __refresh() when Flash gets the
focus, to ensure the iframe remains visible.
Tests: See LPP-5482.
Modified: openlaszlo/trunk/lps/includes/source/embednew.js
===================================================================
--- openlaszlo/trunk/lps/includes/source/embednew.js 2008-02-29 23:44:56 UTC
(rev 8143)
+++ openlaszlo/trunk/lps/includes/source/embednew.js 2008-03-01 02:28:06 UTC
(rev 8144)
@@ -2,7 +2,7 @@
* @topic Browser
* @subtopic Integration
* @access public
- * @copyright Copyright 2001-2007 Laszlo Systems, Inc. All Rights Reserved.
+ * @copyright Copyright 2001-2008 Laszlo Systems, Inc. All Rights Reserved.
* Use is subject to license terms.
*/
@@ -113,6 +113,7 @@
,_ready: Lz._ready
// List of functions to call when the app is loaded
,_onload: []
+ ,_getSWFDiv: Lz._getSWFDiv
,loaded: false
,_sendMouseWheel: Lz._sendMouseWheel
,_setCanvasAttributeDequeue: Lz._setCanvasAttributeDequeue
@@ -595,6 +596,10 @@
return root;
}
,/** @access private */
+ _getSWFDiv: function() {
+ return dojo.flash.obj.get();
+ }
+ ,/** @access private */
_sendMouseWheel: function(d) {
if (d != null) this.callMethod("LzKeys.__mousewheelEvent(" + d + ")");
}
Modified: openlaszlo/trunk/lps/includes/source/iframemanager.js
===================================================================
--- openlaszlo/trunk/lps/includes/source/iframemanager.js 2008-02-29
23:44:56 UTC (rev 8143)
+++ openlaszlo/trunk/lps/includes/source/iframemanager.js 2008-03-01
02:28:06 UTC (rev 8144)
@@ -1,5 +1,5 @@
/* X_LZ_COPYRIGHT_BEGIN ***************************************************
-* Copyright 2001-2007 Laszlo Systems, Inc. All Rights Reserved. *
+* Copyright 2001-2008 Laszlo Systems, Inc. All Rights Reserved. *
* Use is subject to license terms. *
* X_LZ_COPYRIGHT_END ******************************************************/
Lz.iframemanager = {
@@ -28,11 +28,21 @@
iframe.__gotload = Lz.iframemanager.__gotload;
iframe._defaultz = 99900 + Lz.iframemanager.__highestz;
iframe.style.zIndex = iframe._defaultz;
+
+ Lz.iframemanager.__topiframe = id;
if (document.getElementById && !(document.all) ) {
iframe.style.border = '0';
} else if (document.all) {
+ // IE
Lz.__setAttr(iframe, 'border', '0');
Lz.__setAttr(iframe, 'allowtransparency', 'true');
+
+ var metadata = Lz[iframe.owner]
+ if (metadata.runtime == 'swf') {
+ // register for onfocus event for swf movies - see LPP-5482
+ var div = metadata._getSWFDiv();
+ div.onfocus = Lz.iframemanager.__refresh;
+ }
}
iframe.style.position = 'absolute';
return id + '';
@@ -74,7 +84,6 @@
var iframe = Lz.iframemanager.getFrame(id);
if (! iframe) return;
iframe.style.display = v ? 'block' : 'none';
- this._visible = v;
return true;
}
,bringToFront: function(id) {
@@ -83,6 +92,7 @@
var iframe = Lz.iframemanager.getFrame(id);
if (! iframe) return;
iframe.style.zIndex = 100000 + Lz.iframemanager.__highestz;
+ Lz.iframemanager.__topiframe = id;
return true;
}
,sendToBack: function(id) {
@@ -110,4 +120,14 @@
Lz[iframe.owner].callMethod('Lz.iframemanager.__gotload(\'' + id +
'\')');
}
}
+ ,__refresh: function() {
+ // called in IE for onfocus event in swf - see LPP-5482
+ if (Lz.iframemanager.__topiframe) {
+ var iframe =
Lz.iframemanager.getFrame(Lz.iframemanager.__topiframe);
+ if (iframe.style.display == 'block') {
+ iframe.style.display = 'none';
+ iframe.style.display = 'block';
+ }
+ }
+ }
}
_______________________________________________
Laszlo-checkins mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins