I'd like to make a small request if possible to enable the Checkbox widget to be triple-state (true,false,null). This seems to be the standard for most rich client widget sets so that the control can support notions of nullability for database apps.
I'm currently building a database search utility using your toolset (great work BTW) and this would help in communicating with the database. Thanks for all your hard work. Mike -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Sebastian Werner Sent: Sunday, February 12, 2006 3:43 AM To: qooxdoo Subject: [qooxdoo-devel] Memory Leaks: Part II Hi All! I have detected that a basic Index.html of the qooxdoo examples does not leak, even not in the public version (using a combined qooxdoo.js file). The first thing I thought some days ago was, that it simply depends on the file size of the included JavaScript files. This does not seems to be the complete truth anymore. I have made some tests inside our _modifyElement implementation in QxWidget. The memory leak seems to be not detectable if the modifier is completely empty. So I begun to add one line after line. It seems to break at this code: leaks: this._isCreated = QxUtil.isValidObject(propValue); I have tried some alternatives: does not leak: this._isCreated = propValue ? true : false; leaks: var foo = QxUtil.isValidObject(propValue); leaks: var foo = typeof propValue === QxConst.TYPEOF_OBJECT && propValue !== null && !(propValue instanceof Array); does not leak: var foo = typeof propValue === QxConst.TYPEOF_OBJECT; does not leak: var foo = propValue !== null; leaks: var foo = !(propValue instanceof Array); does not leak: this._isCreated = QxUtil.isValidElement(propValue); The method QxUtil.isValidElement (and QxUtil.isInvalidElement) are new helper methods which try to detect if a incoming variable is a DOM element node (nodeType == 1). I have replaced the old "isValidObject" in the element modifier with the new "isValidElement". This have fixed our last memory leak. I'm not already sure what the exact reason for this misbehavior is. The IE seems to have a problem if we use the "instanceof" operator on DOM nodes. It seems to be enough to have this part only once in your code. As it shows this leak creates the +2MB increase of memory after each reload (the exact leak size depends on the size of the included javascript file). And the interesting thing is, that it does not depend on the number of calls you do on this "instanceof" operator with DOM nodes as test value. A single usage is enough. Please be sure to not use QxUtil.isValidObject in your code to detect valid HTML nodes. Also please don't use the instanceof operator. After some more hours the memory consumption of IE seems to be quite stable. Sebastian ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642 _______________________________________________ Qooxdoo-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid3432&bid#0486&dat1642 _______________________________________________ Qooxdoo-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
