&xwp; 0.9.20 (August 9, 2002)
New features:
- Documented XWPString setup strings. Added XWPString NOSTRINGPAGE setup string.
Added XFldDesktop SHOWHELPPANEL setup string.
- Giant WPS help rework. &xwp; can now replace most default WPS help
panels. This can be disabled on the "Features" page in XWPSetup.
- Extended associations: Added icon sharing. If the icon of a program object
is changed, all data files using that object's icon are finally properly refreshed.
The feature is enabled automatically with extended associations and works only
with them, unfortunately.
To quote Achim Hasenmller: "I've been waiting for that functionality since OS/2 2.0 beta.".
- Extended associations: Added a new setting to "File types" page that allows
you to disable passing the object handle of a data file to the environment of the
associated program.
- File operations: Added replacement "Paste" dialog (from "Edit" menu) because
I finally got sick of the default WPS one. The replacement can be enabled
on the "Features" page as well.
- Folders: Added lazy icon loading for folder populate, which makes folders
show icons much more quickly initially and loads the real object icons asynchronously
on a separate thread. This can be enabled in "Workplace Shell", "Folder Views" page
and should work even if turbo folders or extended associations are disabled.
- &pgr;: Selecting "Properties" from the pager context menu opens the "&pgr;"
page in the "Screen" object directly now.
Miscellaneous changes:
- Common: &xwp; no longer holds all messages from the TMF file in memory,
reducing memory usage.
- Common: Greatly optimized nlsUpper, my helper func for upper-casing a string
that gets called from nearly everywhere.
- Common: Optimized a lot of internal management routines to use less memory
and no longer use the &xwp; heap by moving linked list pointers into object instance
memory. Awake objects management is no longer done by the Worker thread either.
- Common: Optimized my object destruction mechanism to no longer use SOM name
lookup method resolution, since I found a way to handle undocumented WPS methods better.
- Replacement refresh: Tweaked thread priorities a bit to catch more file-system
notifications.
- Turbo folders: Tweaked thread priorities a bit to work better on uni-processor
systems.
- Trash can: Is now smart enough to use DosForceDelete in order not to
move all files to DELDIR (if enabled) on emptying the trash can.
Bugfixes:
- Install: Fixed several problems with installation objects.
- Common: Replaced all strchr and strrchr calls in XWorkplace with a DBCS-enabled
version, of which I do not know whether it actually works. I'd be grateful if Asian
testers could check whether the bugs that have been reported are fixed by this since,
again, I have no way of testing DBCS here.
- Common: Replaced most wpQueryDefaultHelp overrides with wpclsQueryDefaultHelp
overrides for changing a class's default help. The previous implementation broke
instance help assigned via HELPLIBRARY and HELPPANEL.
- Common: Fixed rare synchronization problems when objects were renamed and
views sometimes not updated properly.
- Common: Fixed a nasty object ID problem that would cause CHECKINI to report
lots of bad object IDs when objects were created from the "Create new" folder menu.
- "Icon" page replacement: Fixed excessive rename when page was first opened.
- Program objects: Command line icons were broken (in "Command Prompts" folder),
and batch files and Win-OS/2 full screen objects didn't work at all. Fixed.
- Replacement "File exists" dialog: Never respected the auto-rename or auto-replace
settings on the "Title" page in "Workplace Shell". Fixed.
- Folders: "Batch rename" dialog had problems enabling the start rename button.
Fixed.
- Extended associations: Got rid of the internal types cache that ate up lots
of memory and had synchronization problems anyway, leading to wrong associations
sometimes. Extended assocs are thus slightly slower now when folders are populated,
but it's barely noticeable.
- Extended associations: Fixed a bug in my object handles cache where sometimes
the wrong object got thrown out of the cache.
- Turbo folders: Plugged a few more holes where the WPS succeeded in destroying
object icons that were assigned by &xwp;, leading to blank icons.
- Replacement refresh: Fixed a system deadlock in the rare situation that an
object was made awake from the refresh thread that had an association icon that
was not previously used and thus had to be loaded first.
- Trash can: Had serialization problems when several views were populated
at the same time. Fixed.
- Trash can: Failed on deleting FTP folders. Fixed.
- Fonts folder: Reported "already installed" when installing fonts if a font
was previously deinstalled without rebooting the system. Fixed.
- Fonts folder: Status bar forgot how to count fonts right when
installing/deinstalling fonts. Fixed.
- Fonts folder: Had serialization problems when several views were populated
at the same time. Fixed.
- Sound object: Sound scheme testing was case-sensitive, while sound schemes
in OS2SYS.INI are case-insensitive. Fixed.
- Screen object: Special functions on screen border objects page had funny
titles, fixed.
- Hook: Fixed raise window on MB1 clicks in certain situations. Also fixed
a couple items with Mozilla menus. (Martin Lafaix)
- &pgr;: Fixed a couple of traps when the hook was disabled manually.
(Paul Ratcliffe)
- &pgr;: Removed silly "Pager is disabled" message from "Add sticky window"
dialog.
- &pgr;: Stay on top would never work, fixed.
- &pgr;: While Embellish was running, pager would stop switching. Fixed.
- &xcenter;: Diskfree (WarpCenter style) would never save its width, fixed.