&xwp; 0.9.0 (November 28, 1999)
Obviously, I've renamed the whole thing. This version was never released
as a binary version, but only uploaded in source to the Netlabs CVS server.
New features (lots of major ones):
- "&xwp; Setup" object with more general settings.
- Extended association mechanism.
- &xwp; trash can.
- New &xwp; PM hook for mouse and keyboard
features (object hotkeys, sliding focus, screen corner objects).
- The "WPS Class List" has been greatly enhanced.
This is now in a separate object, with a split view for a more lucid display.
We now have a new "Create object" context menu item for each installed class,
and method information can be displayed.
- New "Sound" object replacement (by replacing the WPSound class).
This has much better sound selections now, with full sound scheme support, even on Warp 3.
- "System paths" page in "OS/2 Kernel".
- "Drivers" page in "OS/2 Kernel".
- "File" pages in file-system object settings notebooks can be replaced
with a new, single page.
- "Details" page in disk objects can also be replaced.
- All-new "Module" page in program file settings objects, which retrieves
additional information from the executable direcly.
- "Select by name" dialog
now has a history of the last 10 file masks which were entered.
- Status bars can now dereference shadows (new setting in "Workplace Shell").
- New "Menu bar" setting in Warp 4's "View" context submenu.
- New "&xwp; panic" dialog when Shift key is held down during Desktop startup,
which allows you to selectively disable &xwp; features.
- New "Startup" and "Shutdown" pages in Desktop's settings notebook. Startup
page allows you to configure the boot logo now.
There are now two boot logo styles,
for many people preferred the old blow-up style over the transparent boot logos.
- XFldDesktop can now switch between several shutdown menu styles. Also,
"Sort" and "Arrange" can be disabled for the Desktop only.
- New "Partitions" button in user-reboot items dialog to automatically add
BootManager partitions.
- Per popular request, exception handler beeping can be disabled now
("&xwp; Setup", "Paranoia" page).
- Treesize: is now NLS enabled and dynamically updates the directory sizes even
while collecting files (instead of just displaying "working...").
Miscellaneous changes:
- I've finally found the time to rework all the functions in
the linklist.* files. This should speed up a number of internal
functions significantly.
- The code for building folder context menus from the Configuration Folder
contents has been mostly rewritten. This now uses less memory and implements
a cache for the objects in the contents folder so that they need not be rebuilt
every time a context menu is opened, but only if the .ICONPOS EAs changed.
Lots of new function in menus.c for this.
- Restructured settings pages all over the place.
- Raised default "variable menu item ID offset" to 700 for
Object Desktop compatibility.
- Included Christian Langanke's new TMF functions for message handling.
&xwp; message files are now plain text; MKMSGF.EXE is no longer needed
to translate message files.
- Removed the "default class title" for the XFolder class. Folder default
titles are no longer changed.
- Improved multithreading all over the place. Introduced new "File" thread
with regular priority which takes over some functionality from the Worker thread.
- Also, "Refresh now" now operates in the "File" thread (which blocked
the user interface previously).
- "File exists" dialog now displays file sizes in bytes, not KB.
- &xshutdown; now writes time information into the XSHUTDWN.LOG file with each
line.
Bugfixes:
- Fixed a minor problem when NLS strings were not found (cmnLoadString).
- Fixed the ancient check box double-click bug. ;-) Double-clicks on
check boxes are no longer ignored (fnwpNotebookCommon, notebook.c).
- Some users reported that the Configuration Folder was no longer found
with certain configurations when it was moved away from the location where the install
program creates it. Fixed; since the WPS method which has been defined for this doesn't
seem to be working with all Warp versions and fixpak levels (esp. not on Aurora), I
have written my own (wpshQueryObjectFromID).
- When folder auto-sort was off but status bars enabled, folder contents
would keep scrolling up when opened in Icon view, adding ugly scroll bars to
the folder window even if not necessary. Fixed (now zeroing SUBCLASSEDLISTITEM
properly, cmnSubclassFolderFrame, common.c).
- Folder content menus would sometimes crash with titles > 100 chars.
- "View" pulldown in Warp 4 folder menu bars lacked the additional items.
I'm not sure if this was broken in V0.85 already or if I broke this since then,
but it's working now anyway. ;-)
- Right-click on status bars opened the closed-view context menu (open-view
items were missing). Fixed (fnwpStatusBar, xfldr.c).
- The "Select by name" dialog had problems finding files according to
wildcards like "*html" (without dots). Fixed (new function strhMatch, stringh.c).
- The boot logo would remain on the screen forever if startup folder processing
was cancelled or errors occurred during startup. Fixed.
- Fixed a few small memory leaks (XFldObject "Object" settings page,
"Auto-close items" and "User reboot" dialogs).
- For drives > 4 GB, XFolder still returned garbage status bar information.
Fixed, thanks to Rdiger Ihle who found the bug in the sources.
- Error message 99 when opening a disk object had a "%1" string in there. Fixed;
this now displays the drive letter.
- The WPS class list produced an exception every time a class was deregistered
using the context menus. Fixed; container record cores are now freed before the
corresponding data is freed.
- Previous versions sometimes forgot to process the contents of the &xwp;
startup folder upon first bootup. This has been completely reworked, now using the
&xwp; daemon (XWPDAEMN.EXE).
- &xshutdown; would crash when the INI file names were specified in lower case
in &cfgsys;. Fixed.
- &xshutdown; sent WM_CLOSE to some applications instead of just WM_QUIT. For
example, Program Commander didn't like this too much. Fixed; all PM apps get
WM_QUIT now.
- For some reason, XFldObject::wpObjectReady does not get called for WPFolder
instances (at least on my Warp 4 FP 10), so that the Worker thread was unable to
track awake folders.Fixed; we now override XFolder::wpObjectReady also.
- Finally made the global and kernel settings thread-safe in really all possible
situations (hopefully). This fixes a number of problems with folder windows which
are not running on thread 1, which happens sometimes (e.g. folders opened from REXX
or TREESIZE.EXE).
- Reworked exception handlers once again. This fixes hangs in the Worker thread
when PMSHELL.EXE got killed or trapped somewhere, which used to require a system reboot.
- I have reorganized large portions of the &xshutdown; code, which should help
with some hung systems during &xshutdown;.