This release again fixes some minor problems and enhances a few
features. Most of the enhancements are related to UTF8 support and
the floatws module. If UTF8 support is enabled, Ion now tries to
load the "fixed" font at startup after setting up locales. If locales
aren't properly set up, this probably fails and Ion will reset locale
back to "POSIX" as this might make fonts loadable although support for
non-ASCII characters will be crippled. It might now be safe for
package maintainers to enable UTF8 support by default
As apps seem to have switched to using _NET_WM_NAME for UTF8 titles
and filling WM_NAME with crap, this property is also preferred over
WM_NAME if set. Support for some other "extended" WM hints might be
added in the future but I have no intentions of moking Ion NetWM-
compliant. I might have thought of attempting to do so a few years
ago when I last read the specification but it seems that since then
they've filled it with lots of pointless bloat that may even be in
opposition to Ion's goals. Take multi-parent transients, for example.
Full error log is also displayed with xmessage on startup whether
it is possible to continue or not.
New ChangeLog entries:
2003-04-12:
* Added collect_errors(fn, params) for Lua code to be able to e.g.
display encountered errors with query_fwarn.
* Full error log is displayed with xmessage after startup whether
it is possible to continue or not.
* The standard modules no longer fail on partially broken
configuration files unless no bindings have been configured
before the error occured.
* Prefer _NET_WM_NAME, if it exists, over WM_NAME as apps no longer
seem to use WM_NAME for UTF-8 titles.
* Yet another attempt at perfecting focus handling (before
resorting to separate displayed and actual activity states and
update delays or similar another kludge in counteracting X's lame
key grab focus policy).
2003-04-11:
* complete_function fixed.
* WFloatFrames can now be shaded.
* If UTF8 support is enabled, Ion will attempt to load
CF_FALLBACK_FONT ("fixed" by default) at startup. If this fails
(or XSupporsLocale() fails, which it seldom seems to do), it will
reset locale back to "POSIX" so that there's a better chance that
some fonts can be loaded although non-ASCII (7-bit) characters
will be crippled. (If UTF8 support is disabled, 8-bit character
sets should usually work.)
* Client windows are unmapped when frames are unmapped. This was an
overlooked (but lame and redundant) requirement of the ICCCM and
fullfilling it might fix some apps. (Ion probably still is far
from ICCCM-compliant, but so are most of the badly behaving
apps.)
* Added placement calculation code to the floatws module. Placement
method can be configured with
'set_floatws_placement_method("method")'. Available methods are
udlr, lrud and random. (Maybe placement methods should be
implemented in Lua?)
* The line editor's copy-paste features should now at least attempt
to support UTF8.
* Inconsistently named 'goto_viewport_id' renamed to
goto_nth_viewport.
--
Tuomo