We've been working on usability (dogfood) issues, and have an
updated list of bugs on our dogfood page, http://www.mozilla.org/editor/dogfood.html.
The time is near when the switch will be flipped to turn on
gfx widgets, which means that text fields will use the editor.
Work progresses on making this solid. There's a preference in
the prefs dialog to turn them on now and get a preview.
Key bindings are in a transitional state: we're attempting to
switch to the new XUL key bindings, which are not in a stable
state yet. We'll try to keep keys working as much as possible
while we work on this.
Rules work continues; watch the newsgroup for more information
on how to write rules.
The editor XUL file is being rewritten to reflect the state
of the selection in the toolbars, making use of the recently checked
in broadcaster/command changes (see the xpfe newsgroup).
Mike Ang has just finished
a new revision of the XPIDL Author's Guide.
This should be a big relief to those of us who have had only quick
wits and a keen sense of smell to guide them when writing XPIDL
in the past. Also, please see the faq or let
us know if something's missing.
Completed system for transparently converting JavaScript exceptions
and errors to nsresults and vice versa. This has many facets.
Documents to follow.
Added reflection of interface constants; i.e. constants of nsIFoo
are now properties of Components.interfaces.nsIFoo - where before
they were only properties of an instance of a native nsIFoo reflected
into JavaScript.
Added instanceof supports so that one can detect if an JS object
is a wrapped native of a given type by doing: "foo instanceof
Components.interfaces.nsIFoo".
Working on getting the typelib spec and actual implementation
in sync. And, I'm adding initial support for arrays in xpidl/typelib/xpconnect.
Mike McCabe is continuing
to work on xpidl enhancements and bugs; the most recent news is
that xpidl generates NS_DECL_NSIFOO and NS_FORWARD_NSIFOO macros,
which should make implementing interfaces a little easier. A recent
tree-spam with NS_DECL_NSIFOO replacing explicit interface method
declarations saved 2000 lines of code!
Mike Shaver has the
following news about component loaders - when his work is complete,
it'll be possible to implement first-class XPCOM components in
JavaScript. Java, next?
Work is mostly complete on the factoring of the component manager
to permit alternate component loaders, such as those for components
written in JavaScript or Java. Relative component naming to allow
installed Mozillas to move around on the disk without breaking
the registry is also done, modulo Mac problems. When the Mac problems
are resolved, all that stuff will land.
Next week, John Bandhauer, myself and interested others will
get down to nuts and bolts on JS component loader design and I'll
get that pounded out. Watch for discussion in mozilla.xpcom.