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.