qooxdoo 0.8.2 is a solid maintenance/bugfix release. It also includes additional functionality, often as an experimental preview. It is recommended that users upgrade their existing applications to this latest stable version.
Please read the migration notes at the end of this document carefully. A few manual steps may be required for properly upgrading to this release and the latest web browsers.
qx.type has been created to contain qooxdoo classes, which can be used to sub class native JavaScript types like String, Error or Array. The classes prefixed with Base are designed to be used as base classes for custom classes. In addition there is a qx.type.Array class, which is a sub class of the native JavaScript array, but adds convenience functionality found in qx.lang.Array. It is expected to complement this with a additional classes like qx.type.String and qx.type.Number in future releases.qx.lang namespace, got a review and additional methods were added to make them even more convenient. qx.io2.ScriptLoader now works fine in Internet Explorer as well.build version of a qooxdoo application now (again) only consists of a single JavaScript file (not two as in 0.8 and 0.8.1). The separate loader script for the build version is no longer needed. This especially helps to use qooxdoo in low-level applications. DOMContentLoaded event to start up the application, which results in faster startup times especially in inline style applications.body tag in the loader HTML file. Even if the body tag is empty, which is often seen for regular qooxdoo apps. Remember that this body tag has to be added manually to your existing applications in order to support those latest browsers.qx.bom.Collection allows to modify such a set (often the result of a CSS selection), apply new CSS styles, add events or insert content. It also extensively supports a jQuery-like coding style including the chaining concept. It largely builds upon the existing comprehensive low-level layer of qooxdoo (als called "BOM layer"), but offers an alternative or complementary API that is appealing for many web developers. This new collection based API is still experimental and not yet stable. See the preliminary feature comparison to jQuery, feedback is appreciated.getContentWidth() and getContentHeight(), which should be preferred in most cases over the previous simple browser-specific wrappers (like clientWidth() or scrollWidth()), which were deprecated.qx.bom.Cookie. This simple but convenient wrapper was missing in 0.8 and 0.8.1.qx.application.Simple is now deprecated, use qx.application.Native instead.inline application. Also a menu is not closed anymore when the user clicks at a disabled menu item.SelectBox or ComboBox was added to a Scroll container and the view port was moved, the pop-up window was visible at all times, also when the corresponding SelectBox or ComboBox became invisible. To fix this issue, the pop-up window is now closed when the user scrolls the view port. CheckBox had a different background color, if checked with the keyboard. Resolved now.mouseover and mouseout eventsdisabled stateAdd Feed and Settings window will now be loaded on demand, which reduces the amount of code to be loaded at start up.qx.application.Native instead of qx.application.Simple@see tags correctly.index-source.html, to directly open Testrunner with the source version of the tests (use generation target test-source). This nicely supports test-driven development (TDD).Inline skeleton application with the create-application.py python scriptinspector for custom applications (see Inspector further up).fix, pretty and lint now honor class filtering (i.e. "include"/"exclude" settings).-v command line option to generate.py now also reports byte sizes of resulting class code on build jobs.org.qooxdoo.slc).<body> element. Otherwise Webkit-based browsers like Safari and Chrome may fail. Unfortunately there's no workaround available to fix this "on-the-fly", so please make sure to add such a body tag in your application's HTML file.generate.py has been changed to automatically search for the SDK based on the QOOXDOO_PATH defined in the config.json. Since we are not able to migrate the generate.py with the migration script this file must be updated manually. To do this, the file must be overridden with the new version located at qooxdoo-0.8.2-pre-sdk/component/skeleton/gui/generate.tmpl.py before starting the migration task itself.