Change 20071018-ptw-X by [EMAIL PROTECTED] on 2007-10-18
18:34:57 EDT
in /Users/ptw/OpenLaszlo/ringding-2
for http://svn.openlaszlo.org/openlaszlo/trunk
Summary: Be more careful detecting DOM nodes
Bugs Fixed:
LPP-4739 'Printing LzDataText in Debugger is erronous for "%w"'
Technical Reviewer: [EMAIL PROTECTED] (pending)
QA Reviewer: [EMAIL PROTECTED] (pending)
Details:
LzDebug.lzs: objectOwnProperties: Be more careful detecting
prototypes, simplify test for 'own' properties to be any property
that is different from that same property in the prototype (or all
properties, if there is no prototype). Take care poking at the
prototype, which may be a runtime native object.
LzDebug.js: Tighten up the test for DOM nodes so that we don't
mistake an LZ node for one.
LzRuntime: Eliminate old debugging output that was there just to
verify source warnings were working. Add Debug.ignoringErrors
which can be used on any platform to evaluate a closure without
recursing into the debugger.
Tests:
1. Verified that LzDataText is printed as an LZX object (in SWF,
Firefox, Safari, Opera):
lzx> Debug.write("%#w\n", new LzDataText('test'))
«LzDataText(0)#71| test»
2. Verified that DOM nodes can still be inspected (does not
apply to SWF):
lzx> Debug.inspect(canvas.sprite.__LZdiv)
«HTMLDivElement#22| #document/html/body/div#lzappContainer/
div.lzcanvasdiv[1]» {
align: ''
attributes: [object NamedNodeMap]
...
tagName: 'DIV'
textContent: ''
title: ''
}
#document/html/body/div#lzappContainer/div.lzcanvasdiv[1]
3. Verified that movieclips can still be inspected (only applies to
SWF):
lzx> Debug.inspect(_level0.spriteroot)
«MovieClip#160| _level0.spriteroot» {
_currentframe: 0
_opacity: «undefined»
...
_visible: true
_x: 0
_xscale: 100
_y: 0
_yscale: 100
}«MovieClip#160| _level0.spriteroot»
lzx>
4. Ran smokecheck in swf and dhtml on Firefox
Files:
M WEB-INF/lps/lfc/debugger/LzDebug.lzs
M WEB-INF/lps/lfc/debugger/platform/dhtml/LzDebug.js
M WEB-INF/lps/lfc/compiler/LzRuntime.lzs
Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20071018-ptw-
X.tar