The list of new ChangeLog entries is long time time, but I'm finally
starting to get to what I started working on almost two years ago. Yes,
there is *experimental* support for PWM-like "floating frame" workspaces.
A lot of the functionality is still missing -- no need to complain of
such at the time -- but there floatws.so module and basic functionality
is there. Most notably perhaps a menu module is not yet implemented.
(Porting the PWM menu code should a nice little task for whomever
interested... *wink*.) To create some PWM workspaces, load the floatw.so
module (should be loaded by default) and in query_workspace (Mod1+F9)
prefix workspace name with 'WFloatWS:' (or load the module before
ionws.so). 

This release is also finally fully modularised: In addition to the
ion core binary that can not function alone, there are the modules
ionws.so, floatws.so and query.so. It is also possible statically
compile the modules in the core binary if the system doesn't support
libdl.

There's also *experimental* UTF8 support that must be specifically
enabled from system.mk. You must have XFree86 (4.x?) and C99 wide
char support available (either libc directly or maybe libutf8+libiconv).
Thanks to bugs (?) in some of the XFree86 Xutf8 functions, your locales
must be properly set up or else X will stop drawing strings at non-ascii
characters instead of ignoring them. See my earlier rants on the mailing
list for reasons on not using the more standard Xmb functions.
To actually see any special characters, you must load the necessary fonts
by specifying a comma-separated list of fonts to the font and tab_font
draw.conf options. Multiple font loading does not work when Xft support
is enabled at the time being.

There has been a lot of changes in the config files, again, and I can
promise there's still more to come. See the ChangeLog for details.
If you want to use your old workspaces configurations, move them to
~/.ion-devel/saves and replace the strings "WFrame" and "WWorkspace"
with "WIonFrame" and "WIonWS", respectively.


New ChangeLog entries:

2003-03-11:
  * Function lookup order changed from region->parent to
    region->manager.

2003-03-10:
  * Added the compile time option CF_UNDERSCORED_MODULE_SYMBOLS for
    some strange systems whose libdl insists on the calling program
    prefixing module symbol names with an underscore.
  * Tabs can now be dropped on WFloatWS workspaces to create a new
    frames containing the region corresponding to the dragged tab.

2003-03-09:
  * Updated default configuration files. Binding configuration is now
    divided into multiple module-specific files with some common
    bindings in common-frame-bindins.conf. Some look configuration
    files were added and the rest were also changed to reflect
    changes in the order frame border colours and sizes are
    specified.
  * Very preliminary and experimental (a lot is still missing)
    support for PWM-like workspaces and frames: the floatws module.
  * Renamed wmcore ioncore.
  * Main configuration file name changed to 'ioncore.conf'.
  * Added to ioncore generic workspace and frame classes (WGenWS,
    WGenFrame) on which modules' implementations are to be based.
  * Module initialization and deinitialization functions are now
    named modulename_module_init and -deinit.
  * Added module version checking. Modules are now supposed to
    contain the variable 'char
    modulename_module_ion_version[]=ION_VERSION;', where ION_VERSION
    can be found in the top-level directory version.h. Ioncore will
    refuse to load modules which have not set this variable or the
    version is incorrect.
  * Resize size calculation should be fixed now.
  * The 'region_register_load_create_fn' interface was removed and
    replaced with 'region_register_class'.
  * Region create and reparent functions now have parent type WWindow
    because everything expected that anyway.
  * Workspace setups are now saved in ~/.ion-devel/saves/ to remove
    clutter from ~/.ion-devel.
  * Some minor bugs were fixed.
  * Tiled workspace and frame code (WIonWS, WIonFrame) modularised
    (ionws.so) and generic frame and worksapce code moved to Ioncore.
    Dependencies on the query module were also removed.
  * The query module was removed of dependencies to WIonFrame code
    and is now a loadable module (query.so).
  * The 'query_workspace' command by default creates workspaces of
    the first registered (module loaded) kind. Other kinds of
    workspaces can be created by prefixing workspace name with the
    class name (WIonWS, WFloatWS) and a colon, e.g. 'WFloatWS:foo'.
  * Support for compiling modules statically in the Ion core binary
  * Resize size hint handling properly (?) implemented.

2003-03-08:
  * 'make install' code moved from the toplevel Makefile to Makefiles
    in subdirectories (etc, man, scripts)
  * 'make install' code moved from the toplevel Makefile to Makefiles
    in subdirectories (etc, man, scripts).

2003-03-06:
  * Don't grab buttons that are only bound to an area (border, tab)
    of the frame instead of the whole frame.
  * Fixed a bug in do_fit_clientwin

2003-03-02:
  * Some clean-up
  * Some renamings that will break configuration files again.

2003-03-01:
  * Use iconv instead of libunicode
  * Added some locale checks

2003-02-28:
  * Maybe focusing would work this time...
  * Preliminary support for UTF8. XFree86 (4.x) and libunicode are   
    required.
  * The 'transparent_background' draw.conf option now only applies to
    empty frames. For client windows with a transparent background
    the 'transparent' winprop should be set to true for transparent
    frame background.

2003-02-26:
  * do_fit_clientwin fixed

-- 
Tuomo

Reply via email to