1.7.172 released --- 1.7.164 patch 8 (mihm) o (sasha) added Makefile adjustment to add gnome AfterStep.desktop file o created AfterStep.dektop file for gnome control center intergration o update base directory documentation o update man pages o replaced CirculateUp with ChangeWindowUp in all feel. files 1.7.164 patch 7 (allanon) o set more Cursors in all feels to avoid the default (skull & crossbones) cursor o Wharf: update subfolder transparency on background change o WinList: no longer delete balloons twice (this could cause crashes!) o WinList: general cleanup of memory usage 1.7.164 patch 6 (allanon) o correctly handle BGR mode and MSBFirst modes o WinList: free up more memory at exit when --enable-audit is on 1.7.164 patch 5 (sasha) o Fixed bug when if focused window is iconized or destroyed, Warp does not do anything; o Hopefully Fixed bug when colors are swapped while loading images on Solaris. 1.7.164 patch 4 (Pitr) o Fixed bug in Pager when it dies if clicked on desk title right after startink up; o Added check for shadink steps number, so not to go into infinite loop, DA !? o am thinkink asetroot must be startink good now and don't leavink windows behind; o removed --enable-makemenusonboot from configure; 1.7.164 patch 3 (allanon) o as_jpeg.c compiles with --with-jpeg=no o added include of Xutil.h in src/afterstep/configure.c, needed for the XSizeHints in afterstep.h o determine the location of perl in the configure script o updated menu tree and default Form config file to reflect theme.handler changes (see below) o theme.handler: makeastheme.pl now creates a tarfile version of the changes (see below) o theme.handler: makeastheme.pl now creates a tarfile version of the theme in themes/ instead of putting the theme files in a subdir of desktop/themes o theme.handler: installastheme.pl now takes either a theme name or a tarfile argument, and installs the tarfile as astheme.sh did o theme.handler: removed astheme.sh and asthemecreate.sh as they are no longer necessary 1.7.164 patch 2 (sasha) o Fixed bug in Pager when if window was shaded/iconized on Pager startup it would not be shown this way, until it is moved/resized. o Finally performed `make indent` - hence the big size of the patch. 1.7.164 patch 1 (sasha) o fixed size of the shaded windows with vertical titlebar, shown in Pager. o disallowed SHADE function on windows with no titlebar. o fixed Segfaulting when titlebar button has no funtions and balloons are enabled. 1.7.164 released --- 1.7.142 patch 22 (mihm) o removed previous two patches (20 and 21) o included updated FAQ (as-faq-devel.2000-1-10) o moved to snapshot 1.7.142 patch 21 (allanon) o fixed astheme.sh (was broken in patch 20, oops!!) 1.7.142 patch 20 (allanon) o turn off titlebutton balloons before loading look file o EdgeResistance no longer affects windows being moved along a the border of a screen unless there is another page to move to o fixed crash (due to titlebutton balloons) when a titlebar button has a defined pixmap but no defined actions o added error message to audit code to complain when attempting to free() a NULL pointer o astheme.sh: allows use of themes with "." in their names o Form: added check for unknown form name o Pager: no longer crashes when a desk title is clicked immediately after startup o Wharf: restart-on-buttonpress of dead swallowed apps now works for Wharf buttons which do not have an action 1.7.142 patch 19 (sasha) o Fixed mode 128 in WinList, broken after previous patch o Fixed mode 128 inPager broken in prev patch o Fixed Pager update on look change for modes other then transparent (129,130). 1.7.142 patch 18 (mihm+sasha) o fixed version number in AfterStep.spec and updated internal changelog o removed some of the old looks and associated pixmaps, as themes are the way of the future! :) o removed extraneous files that are created from .in files o (Sasha) changed x_pager.c; unused desk no longer shown o (Sasha) enabled mode 130 in Pager: (x_pager.c:GetMyStylePixmap()). o (Sasha) fixed old bug when transparent Pager won't become transparent on startup in 50% cases: (x_pager.c:HandleExpose()). o (Sasha) fixed bug to update transparency on look change. (Pager.c:ApplyLook()). o (Sasha) enabled mode 130 in WinList: (WinList.c:update_winlist_background()). o (Sasha) added handling of removed MyStyle for WinList: (WinList.c:update_look()). 1.7.142 patch 17 (sasha) o fixed window functions o fixed titlebarbutton balloon text . o added delay to asetroot AfterStep notification code - should work for now. o updated Pager to better show very large windows. o fixed error in theme installer (ish). 1.7.142 patch 16 (allanon) o BACKED OUT PATCHES 9, 11, 12, 13, 14, and 15 in preparation for a stable release o removed look.MacOS8 and associated pixmaps; it should be a theme instead, but patch doesn't handle tarballs :) o added new .include option, "extension", to strip prefixes/suffixes from included filenames; used option on Look/Feel menus o changed "include" and "command" .include options to allow arguments to the AS command o QuickRestart("all") now updates the desktop background o added new QuickRestart target, "background", to update the desktop background o theme-related changes: o added new menu, Desktop->Theme to contain themes o added new directory in share dir, themes, to contain themes o added form to create themes o theme.handler (makeastheme.pl, installastheme.pl, astheme.sh, asthemecreate.sh) is now installed by make install 1.7.142 patch 15 (allanon) o AS_ASSERT now works with --enable-audit o included string.h in audit.c to fix compile-time warning o windows no longer "disappear" from other desks when restarting AS 1.7.142 patch 14 (allanon) o RandomPlacement works; titlebar geometry was not being set before calling PlaceWindow() o fixed off-by-one error with shaped windows o TexturedHandle works again 1.7.142 patch 13 (sasha) o TitleButtonStyle now works as before patch 9. In addition TitleButtonStyle 2, allows to specify exact offsets of the Titlebar buttons from the edges of the titlebar ( see TitleButtonX/YOffset). o removed hi/lorcolor crap from configure - it's not used anyways and was allowing for buffer overrun bugs. o removed unised flags XPM_ICON and something else . o removed TitleStyle stuff as it was not used. o when shading windows we no longer unmap/remap client window - it was dangerous and useless anyways( suggested by allanon). o Titlebar is now a Parent of all title button windows. ( it was main frame window before ). o Minor Cleanup of Iconify, DeIconify, HandleUnmapNotify, HandleMapNotify, MapIt, UnmapIt. The idea was to use MapIt and UnmapIt as much as possible. also removed unneeded SetBorder calls. That should fix aterm disappearing off the screen, at least I could not get it to disappear :). o Added AS_ASSERT macro to audit.c and audit.h. To facilitate better checking for NULL pointers passed as the function argument. Only a few functions changed to use it thou. We should use it as much as possible. 1.7.142 patch 12 (allanon) o shaped client windows work well again o changing images in xv no longer causes xv to "walk" across the screen 1.7.142 patch 11 (sasha) o Added RestoreWindow to borders.c to forcefully resize and update frame even if size did not change. o Updated Shade(), Maximaze() to use this function. o Simplyfied Stick() to not redraw border hundred times. o rewrote DeIconify() o added flag DIRTY to indicate that configuration was changed while window was inocifyed and it needs to be resized when uniconifyed. o hopefully fixed gamma correction in PNG code. o All of that fixed bunch of bugs reported by David Mihm, and possibly create a new :). 1.7.142 patch 10 (allanon) o added #include in safemalloc.c to fix a compiler warning with --enable-audit o shaded windows obey AvoidCover o if Maximize'ing to a percentage of full-screen, use full-screen minus AvoidCover windows 1.7.142 patch 9 (sasha) o rewrite of borders.c frame window management code o cleanup of the ASWindow structure o cleanup of the ScreenInfo structure o minor cleanup of AddWindow() o cleanup of LoadASConfig o minor fixes for Pager to beter handle very large windows - need more work o UpdateAll now also applies some stuff from database against existing windows. o TitleButtonStyle now specifyes exact distance of the buttons from the titlebar borders o frames cleanup o rewrite of titlebutton code o with vertical title sidebar now is on the side - not on the bottom o sidebar transparency gets updated correctly o No more double reparenting o More stuff that I don't remember :) o This Patch is dangerous - use it at your own risk !!!!!!! 1.7.142 patch 8 (sasha) o finally applyed fix for colors on Solaris and some other X servers that use BGR instead og RGB. ( suggested from ML ) o applied Tigr's module patch, converting AnimateCascade and Banner to use new ASModule stuff. o some more memory savings in menu processing code. dirtree now points to actuall function term, vs. having the copy of the text. o fixed bug when space in filenames will get mistreated in look,feel and background commands. o major cleanup of function execution code. ChangeWindowUp now does cursor warping. o fixed PNG loading bug. o added Gamma correction to JPEG images. Value of gamma correction can be adjusted by SCREEN_GAMMA env var. Default gamma value changed to 1.0 from 2.2. o minor improvements in JPEG loading code for colormapped images. o ascolor.h containing all rthe ASCLOR macros branched off stepgfx.h o functions.h branched off parse.h and moved into src/afterstep o function codes are now enumerations vs. macros. Two functions where added to obtain function definition term out of function text or code, to menuitem.c o fixed minor memory leak in asetroot o Pager now supports "*PagerDesk" MyStyle definitions, which duplicates functionality of *PagerDeskStyle option. *PagerDeskStyle has higher priority. The reason for addition was to enable easy theme creation. o Fixed window moving in Pager so it allows to move window off the screen, and when cursor goes off the Pager - desk will be changedfor the window that is being moved. o man pages updated for Pager, asetroot and afterstep to reflect changes. 1.7.142 patch 7 (sasha) o type of the func_val members in Menu* structures changed back to long as it appears that it is used to store pointers and window ids in some functions. o fixed windowlist to not add 1& in front of items o added support for more complicated syntax in parsing stuff for things like: Function "name" another-name o fixed support for sign infront of the number in parse_func(). 1.7.142 patch 6 (sasha) o afterstep/menuitem.c spawned from configure.c and module.c to include all menu and function parsing functionality. o all function parsing is now done by parse_func() instead of having several different versions of the same code. o TermDef and hashing from lib/parser.c moved to lib/termhash.c to allow for better modularity when static libraries are used. o function parsing now using TermDef stuff to parse function and describe function's syntax. (see menuitem.c) o menus.h moved from include/ to src/afterstep as it is only used in afterstep. All the modules are modifyed respectevely. o menu parsing stuff is greately reworked, streamlined and simplyfied. o added CreateMenuItem, DeleteMenuItem, CreateRootMenu; removed ParseMenuItem, added MenuItemFromFunc instead; removed AddToMenu as not needed. o MenuItem removed from MouseButton struct as it was not needed. o type of the func_val members in Menu* structures changed to short to save up some memory, as it is not likely that we'll ever get screen dimentions as big as 32Kx32K o FuncKeyRoot member of ScreenInfo changed to pointer. o windows.c updated to use new menu item handling stuff. o added string_from_int() to parse.c. o UloadImage,UnloadMask,mystrdup,mystrndup changed to enable tracking of where it was called from if need arises. o possible buffer overrun fixed in functions.c o tiny-winny memory leak in Pager fixed (in MovePage()). *WARNING* o this patch can break some things due to vaste amount of changes. o functions.c still needs some work as well as afterstep man page. 1.7.142 patch 5 (allanon) o set _WIN_DESK property on root on startup, and delete it when quitting (not on restart); else InitFunction was being used on restart o Wharf: add extra check to make sure that swallowed windows get placed properly 1.7.142 patch 4 (allanon) o added support for XFree, XGetWindowProperty, XQueryTree, XGetWMHints, XGetWMProtocols, XGetWMName, XGetClassHint, XGetAtomName, and XStringListToTextProperty to audit code o reworked the window desktop placement code; the following describes how the new code should work: 1. if sticky, use current desk 2. _XA_WIN_DESK, if set 3. if the client requested a specific desk on the command line, use that 4. if part of a window group, same desk as another member of the group 5. if a transient, same desk as parent 6. use StartsOnDesk from database, if set 7. the current desk o removed redundant SaveDesktopState() function o added note in afterstep man page mentioning requirements for using transparency modes 129 and 130 o iconified windows may now be shaped again, in much the same way that Wharf buttons can be shaped; to get a completely transparent background, use a completely transparent pixmap as the ButtonPixmap o removed redundant aswindow_get_size() function in favor of get_window_geometry() o fixed MyStyle bug that would cause crashes when reading a style in a module which had F_BACKTRANSPIXMAP set and not F_BACKPIXMAP (this is an invariant violation, btw, and should never happen, but was happening in rare cases involving MyStyle inheritance) o Wharf: if a swallowed window dies, Wharf waits for a click on the button, then relaunches and swallows the app o Wharf: MaxSwallow'ing a 64x64 window puts the window in the right place again 1.7.142 patch 3 (allanon) o fixed UnloadImage() and UnloadMask() to work properly when pixmap reference counting is on o updated FAQ question on backgrounds to say that asetroot (not Pager) controls the root background o icon title windows are placed properly when there is no corresponding icon pixmap window o icons are generated when KeepIconWindows is off and an app provides its own icon o Wharf: fixed ForceSize o Wharf: fixed bug that caused Wharf to place itself in a corner o Wharf: clicking on buttons works again (broken in patch 2 by me, not tildouf; oops!!) o Jordi Mallach Perez updated README.es 1.7.142 patch 2 (tildouf) o bug fix for audio module, Delay is take into account now. o new feature for Wharf: transient. It allow a button to be not pushabled and no balloon is displayed with. Use: *Wharf Label pixmap transient. o TO DO: update the man page for Audio, since new events can be associated with sounds in Audio config file. -> Sorry ! 1.7.142 patch 1 (sasha) o fixed libasimage to compile when ther are no libpng or libjpg or libxpm o fixed warning in mystyle_property.c o removed startmenu.in from configure 1.7.142 released --- 1.7.126 patch 16 (allanon+mihm+sasha) o added docs for SeparateButtonTitle and ButtonSize to NEW and man page o updated the looks for the new snapshot o fixes from sasha :) : fixed window placement code to correctly restore windows desks upon AS restart; fixed feel parsing code to correctly process +/- in command parameters; o adjusted README's for the removal of enable-iconbackground 1.7.126 patch 15 (sasha) o removed SetTransparency from AddWindow() as it gets called again from SetupFrame. o allanon's bugfix in configure.c causing as to crash. o fixed forecolor being screwed up in modules. o config line cleanup from comments and whitespaces moved into parse.c:stripcomments(char*). o added parse.c:parse_token() to extract space separeted tokens from any config line. o rewrote mystrcasecmp() - it should be faster now, and checks for NULL pointers. o fixed window moving in Pager so windows stays where you put them, when releasing mouse button. o somemore cleanup in afterstep/configure.c and afterstep/modules.c primarily in AS command parsing/processing code, it should also fix some bugs in menu parsing code from patch 12. o added log_call to audit.c to enable easy tracing of library calls. So far it is implemented only for load/unload_font(). but can be used on any function, if need arises. o added ifdef DONT_GRAB_SERVER to allow disabling of XGrabServer calls while debugging afterstep. o removed ifneq/endif from makefiles to possibly fix compilation with ANSI make. 1.7.126 patch 14 (allanon) o removed --enable-iconbackground configure option (and the corresponding define, NO_ICON_BACKGROUND), and replaced it with the following: o floating icon titles are now DISABLED by "SeparateButtonTitle 0" in the look file; they are on by default o fixed-size icons may be specified by the ButtonSize option o icon background color/gradient/pixmap is set by ButtonPixmap MyStyle o no longer shape iconified windows at all; with icon backgrounds, shaping doesn't make sense unless the background has a mask (which is not yet allowed) o added four new MyStyles to handle iconified windows: ButtonPixmap, ButtonTitleFocus, ButtonTitleSticky, ButtonTitleUnfocus; see NEW file and afterstep man page for more details o rewrote half of icons.c :) o new property _WIN_DESK set on all client windows; this allows AS to put windows back on the correct desk when restarting o fixed memory leak in fill_with_darkened_background(); thanks VERY MUCH to sasha for doing most of the work to find this; mode 129 transparency should no longer eat up memory in insane fashions o Wharf: ignore a second SIGPIPE while shutting down; this was (rarely) causing segfaults o Wharf: AnimateDelay is now in milliseconds as the man page says, instead of microseconds (oops) 1.7.126 patch 13 (sasha) o restored XGrabServer/XUngrabServer. o fixed bug in replaceEnvVar causing unpredictable results. 1.7.126 patch 12 (sasha and allanon) o cleanup and rewrite of lib/homeanddirs.c and lib/findicon.c CreateDir moved into afterstep, added CopyFile. o somewhat simplifyed MakeMenus and changed it into LoadASConfig. o improved is_executable_in_path to cache serach information. o increased allocations limit to 30000 in memory audit code. o includes some changes from allanon - refresh of menu background, and LoadSAConfig improvements. o removed buffer overrun bugs in ParseMouseAction. o Cleaned up MeltMainMenu. 1.7.126 patch 11 (allanon) o added BackPixmap 130, which averages a pixmap and the root background; see NEW and afterstep man page for details 1.7.126 patch 10 (sasha and allanon and Tigr) o New Pager mouse handling code: Windows movement fixed, page switching now supports mose dragging. If mouse button released outside of the Pager - movement gets canceled. o Hopefully fixed problems with color allocation on big endian systems (PUT_ASCOLOR macro in stepgfx.h) o Fixed bug in gradient drawing algorithm causing wrong gradients in 32bpp. o SendInfo moved from sendinfo.c to ASModule.c o Added DestroyASMessage to free up memory allocated for ASMessage (ASmodule.c) o Fixed blueish artifact problem in 16bpp (reported by Tigr). o Fixed compile problems when Icon background is used (allanon) o Fixed memory leak problem in Auto (Tigr) o Fixed ChangeLog for patch 6 (Tigr) 1.7.126 patch 9 (sasha and allanon) o new gradient code! features follow: o dithers (using a random dither) if necessary and possible, to improve smoothness of gradients in less than 24bpp; this is actually faster than the old method (sometimes much faster) o new truecolor gradient code looks much better when it can be used; also much faster than the dithering technique above o multi-point gradients have been added to MyStyles; see NEW file and afterstep man page for more information 1.7.126 patch 8 (allanon) o memory auditing code now keeps track of maximum total normal and X memory allocations o Wharf: fixed problem with multiple rows/columns when the number of buttons is not evenly divisible by the rows (or columns) 1.7.126 patch 7 (tildouf and allanon) o icon title background is now the same as the titlebar background, except that tinted transparency is just transparent (not tinted) 1.7.126 patch 6 (Tigr) o Animate: now uses aslib module code o Auto: now uses aslib module code o Audio: now uses aslib module code 1.7.126 patch 5 (Jan Fedak ) o fixes menu keyboard shortcuts 1.7.126 patch 4 (allanon) o shading is no longer reset when restarting, and windows will be re-shaded after restart 1.7.126 patch 3 (allanon) o added new define for AfterStep-specific library dependencies in Makefiles; was getting "No rule to make `-ljpeg'." before o removed suggestion to use 'Wait "I" asetroot' from autoexec; since asetroot doesn't make a window, this would cause afterstep to hang o fixed call to asetroot in RestartFunction 1.7.126 patch 2 (allanon) o iconified windows are no longer treated as open while moving around an AvoidCover window o moved Tigr's iconified windows patch; ICONIFIED should take precedence over SHADED o module socket is now mode 0700 for better security 1.7.126 patch 1 (sasha) o CheckASMessage changed to CheckASMessageFine, allowing for timeouts of milliseconds. CheckASMessage is now macro calling this function. o added check for endiannes, and respective byte swapping code in XImage access macros in stepgfx.h. That should produce correct colors in > 8bpp on SUN. o added make dep; target, that should produce dependancy list in .depend file, that gets included in Makefile and allows fopr atomagical recompilation in headers or libraries has changed. o Minor cleanup in most of the modules, removing includes for broken sun headers - it is not used anyways. 1.7.126 released --- 1.7.111 patch 15 (sasha+Tigr) o applyed Tigr's patch for better handling of iconifyed windows with no icon associated with them. o Fixed bug in asetroot, causing it not to change background if you just started it and have not had a chance to change current desk yet. Reported by Tigr. o Added importasmenu script in to tools dir, to help GNOME and KDE users import their menus into AfterStep menu. o Completed base gradients code, now MyStyles code and other stuff needs to be converted to use it, and old code needs to be dropped. New code has same size as old one, works twice as fast when dithering is not needed, and allows for 8 different gradients and 2 modes ( ditheringand no dithering ). 1.7.111 patch 14 (sasha) o Fixed Pager to reload root backgrounds only if current desk is serviced by this instance of Pager. o Fixed several bugs in asetroot causing all sorts of trouble while changing backgrounds. o Fixed bug in asetroot when Wait would never detect asetroot -k. o Fixed autoexec file for asetroot. o added code for diagonal gradients. Still it's not yet connected to the main code, as it needs more work. o added src/test to configure, so that Makefile gets created. 1.7.111 patch 13 (sasha) o Fixed bug in WinList causing corrupted background when transprency is used. o Fixed bug in MyAllocColor causing it to wrongfully allocate colors in depth higher 24bpp (red component in particular ). o Added code to work on color as a single 32bit value (ASCOLOR), vs. 3 8 bit components. That allows for most operations (sum, averaging, etc. ) to be done as single arithmetic operation combined with masking of unused bits. In particular it allows to get rid of all the floating point calculations in gradient drawing, resulting in 100% improvements in speed. o Completely rewrote color allocation functionality to employ new ASCOLOR technique. o Changed code for image loading from file, to employ new ASCOLOR technique. o Implemented Gradient drawing with dithering, utilizing ASCOLOR technique. ( Diagonal gradients are yet to be done ). It is using old drawing techinque, when there are enough colors available and dithering is not needed. As dithering is about 10 times slower as conventional gradient drawing (still yelding satisfying performance thou). Additional parameter was added to gradient drawing function - finess. It sagnificantly speeds things up, allowing for only several lines of gradient to be calculated, vs. every single line. It could one of the several things : - finess = -1 - default finess of 20 is used. - finess = 0 - highes quality of gradient - finess > 0 - defines number of lines that needs to be calculated and then repeated with finess period. It is always limited to the length of the gradient. o Mentioned gradient drawing stuff was not yet used anywhere else, as I think, it needs some more testing on different architectures and color depthes, and diagonal gradients are yet to be done. o src/test directory added to provide with ready to use general purpose code for testing of the development stuff. I think it'd be good to keep it at least untill stable release, as it is not taking alot of space, and is not compiled by default. Right now it is used for gradients testing. 1.7.111 patch 12 (allanon) o AutoReverse no longer ignores windows with both NoTitle and NoHandles; instead it ignores windows with WindowListSkip or NoFocus o xv windows should no longer creep upward while looking through the list of loaded images (oops!) o Wharf: left-clicking the withdrawn wharf when the top button is a folder now works as expected; ie, the wharf remains withdrawn, and the folder is opened; un-withdrawing wharf closes the folder if necesary 1.7.111 patch 11 (sasha) o completed asetroot o removed background loading from Pager o fixed --disable-pagerbackground o updated man pages for asetroot and Pager o fixes to lib/ASModule.c o made pixmap caching in libasimage optional -it's turned off in asetroot o updated WinList to use new module stuff o updated Zharf to use new module stuff, and support JPEG and PNG. o partly fixed balloons in Zharf - need to add code to actually attach /detach balloons to buttons. o updated config files pager.in, asetroot.in, autoexec.in. It is expected that things will stop working after all that. 1.7.111 patch 10 (sasha) o added lib/asproperty.c for general X property reading/writing. include/asproperty.h - header for it. mystyle_property.c changed accordingly. o completed asetroot to set X property with information about all root backgrounds loaded. Now it's time to remove background stuff from Pager. o implemented temporary memory storage to prevent memory fragmentation tests with asetroot did not show any improvements.May need some more researching - posibly can improve memory consumption while loading small images. o simplifyed stuff in module.h 1.7.111 patch 9 (allanon) o change desks before placing new windows, allowing interactive placement to work better 1.7.111 patch 8 (allanon) o fixed ConfigureNotify event handling; xv windows no longer creep down and across the screen o SmartPlacement + StartsOnDesk now works o WinList: added check for negative width/height before making pixmap 1.7.111 patch 7 ( sasha ) o rewritten asetroot to provide for richer background configuration options. o afterstep/asetroot sample config updtaed accordingly and has some description of new config options. o asetroot config changed to use unifyed parser. ASetRoot.c added to src/Config o added include/background.h to provide with set of root background functionality that can be used in other modules/apps from libasimage. It is planned to implement backgrounds info storage in X property (single), similar to MyStyles. So it can be accesses from several modules/apps. When it's done src/asetroot/background.c will be moved into libasimage. o Functionality to parse module command line, init X connection, init AfterStep connection, construct coinfig file name and load config, X and AS image checking was moved into libafterstep, to eliminate duplicate code in modules. lib/module.c split into lib/ASmodule.c (holding basic functionality without X connection) and lib/Xmodule.c additional functionality to be used by modules that use X. All the modules will need to be modifyed accordingly if this change will be agreed by development team. o added CheckASMessage function to enable AfterStep message checking to skip duplicate messages. TODO : o Enable backgrounds info storage as X property o Remove background loading from Pager, leaving optional background switching functionality. o Update asetroot man page o Update every module to use new libafterstep functionality. 1.7.111 patch 6 (various people) o make install.data now removes .include.in files from the installed start/ tree (Frederick Bruckman ) o one or three pixel high Wharf-style gradients should no longer cause a crash (allanon) o the lowbar corners are now in the frame context, as the afterstep man page claims (allanon) o afterstep now pays attention to the window field of commands sent from a module (Frederick Bruckman ) o Audio: now plays correct sounds for events, including startup and shutdown (tildouf) 1.7.111 patch 5 (allanon) o changed "cp -R" to "cp -r"; solaris 2.3's cp doesn't have the -R option o changed check for STDC_HEADERS to _SC_OPEN_MAX in GetFdWidth; solaris 2.3 doesn't define STDC_HEADERS, and doesn't have getdtablesize() o fixed crash when a menu item name is null (eg, Exec "" echo) o module pipes are now non-blocking all the time o HandleModuleInput() now keeps a buffer of input from a given module until a command is complete o rewrote AutoReverse (0 and 1), and Circulate(); WarpFore no longer hangs AfterStep when CirculateSkipIcons is set, all windows are iconified, and an icon has focus o fixed icon placement bug; xv window's full size was being used for determining placement 1.7.111 patch 4 (sashav) o fixed bug in Pager causing it not to update background when selected from the menu. o if Pager crashes for you with this patch please send me your pager config file !!! o more logical data structures are now used in parser. o added functionality to the parser so it can now automagically handle nested constructs, like MyStyle or PagerDecoration. It can now handle unlimited number of nested semantics. FreeStorage now is tree like structure vs. linear. o added flag for atomagical handling of config terminating term, such as ~MyStyle. o changed Pager's and MyStyles parsing code accordingly. 1.7.111 patch 3 (tildouf) o fixed frame keywords, NE, NW, SE, SW are more clear, in afterstep.man, configure.c and look.nek 1.7.111 patch 2 (allanon) o makeasversion: now updates AfterStep.spec version o heard from Faical Tanarhte , so removed the "NO NEWS OF" from the TEAM file o fixed bug that confused Pager into believing that windows were being iconified when changing views o added check for negative file descriptors when setting non-blocking I/O 1.7.111 patch 1 (allanon) o made sure non-blocking I/O is off for module sockets, unless writing to them; this may help on *BSD systems? o fixed frame keywords in afterstep.man (oops!) o fixed (hopefully) frame pixmap positioning; if it's wrong, i'm sure tildouf will tell me :) o fixed vertical titlebar text positioning when the text is truncated --- 1.7.90 patch 21 (sasha+mihm) o fixed WinList positioning when South/East gravity is desired. o fixed WinList HideGeometry. WinList will display nice little AfterStep version when there are no windows. o fixed WinList moving for South/East gravity and HideGeometry. o included AfterStep.spec and redhat start/ directory for creation of rpm's by using the tarball. o modifications to various README files to explain rpm creation process. 1.7.90 patch 20 (allanon) o fixed crash when DecorateFrames is set, but no frame pixmaps are defined o fixed window positioning code WRT frames o got a little closer to updating frames properly on QuickRestart(look); still need to add/remove frames when value of DecorateFrames changes o added documentation to afterstep.man for DecorateFrames, et al 1.7.90 patch 19 (allanon) o windows are now moved even if only the icon is showing; this fixes a problem with !StickyIcons + StubbornIcons 1.7.90 patch 18 (makoto) o updated README.jp o fixed compilation problems in misc.c with I18N o fixed fontheight o Ident: fixed I18N code 1.7.90 patch 17 (allanon) o added pixmap reference counting; this reduces the time/memory used by often-loaded pixmaps (such pixmaps are now loaded only once) o added note to afterstep.man mentioning the default Maximize options o removed non-configurable/startmenu; this file is no longer parsed; instead, the start directory is always melted 1.7.90 patch 16 (allanon) o Animate: removed hanging else o Pager: replaced alloca() with safemalloc() o Wharf: added new option, WithdrawStyle, to tell Wharf where to grab mouse button 3; 0 == never, 1 == all toplevel buttons, 2 == top/bottom buttons (or left/right, for horizontal Wharfs) 1.7.90 patch 15 (nekked) o changed frames to windows o fixes for WinList geometry o cursors can now be used with frames, see feel.nek for examples 1.7.90 patch 14 (nekked) o option added ShadeAnimationSteps #, as the name suggests it's the number of resizes performed on a window when (un)shaded. o some changes for delt's wmaker outline RubberBand, it takes vertical titlebars and frames into account as well o fix for frames and vertical titlebars o title text will no longer show underneath buttons o fixes for the minsize hint which wasn't properly interpreted by AfterStep, now applications that specify MinSize cannot be made smaller. 1.7.90 patch 13 (delt) o Fixed another minor drawing bug in Wharf, now all texture types should look OK when pushed with no border o Fixed Wharf folder position with MaxSwallow of non-modules o Optimized repeated code in resize.c, slightly more modular approach o Added 6 new rubberband effects: wmaker, tek, tek2, corners, hash, grid. o Changed a few function headers, so that some of the previous can be possible, ie. MoveOutline () needs a pointer to the ASWindow being moved/resized, etc. Changed all calls to these functions appropriately - move.c, resize.c, pager.c, events.c 1.7.90 patch 12 (nekked) o new options added o Look file: DecorateFrames 0|1 - turns the lowbar off and turns window frames on FrameNorth image - image for the topmost part of the border FrameSouth image - bottom border FrameWest image - left border FrameEast image - right border FrameTL image - top left corner FrameTR image - top right corner FrameBL image - bottom left corner FrameBR image - bottom right corner o Feel file: CustomCursor number bitmap mask - specifies custom cursor, refer to the feel file to see what the number is, bitmap is a depth 1 pixmap and so is the mask, examples are included in afterstep/desktop/cursors. Cursors and masks are expected to be located in CursorPath. o Base.#bpp files: CursorPath - specifies the path where cursors are located, the default paths are /usr/local/share/afterstep/desktop/cursors and ~/GNUstep/Library/AfterStep/desktop/cursors o included look.nek and feel.nek that demonstrate these. o included cursors (taken from an E theme, ugh) o included pixmaps for look.nek o added database.nek that demonstrates how I think it should be set up for framed looks o small fix for alt-tab o a fix for a bug in Gnome that caused it to segfault on occasion o fixed a compilation warning in Gnome when --enable-audit not given to configure 1.7.90 patch 11 (allanon) o added to description of IconBox in afterstep man page o ascommand.pl: now version 1.2, and accepts two new options: o ascommand.pl: new option --file; reads commands from file o ascommand.pl: new option --interactive; reads commands from stdin, prompting the user 1.7.90 patch 10 (allanon) o asimagelib: no longer crop images to screen size when loading o asimagelib: added accurate, but extremely slow, scaling algorithm; it is commented out pending optimization and generalization to non- 16bpp truecolor modes o initialize have_xpm_write to 0 in configure script; fixes builds on systems without libXpm o added README.id (Indonesian); a big thanks to Mohammad Nafiri o maximize function now defaults to 100 100 instead of 0 0 1.7.90 patch 9 (allanon) o Wharf: fixed folder positioning when MaxSwallow is used o Zharf: removed extra fopen()'s o added failsafe to prevent obscure crash while restacking windows o fixed stupid mistake (mine) which prevented SmartPlacement from working as advertised WRT placing over StaysOnBack windows 1.7.90 patch 8 (sasha) o fixed WinList broken in patch 7 o added some more parsing code documentation : doc/code/config_issues.html o fixed README versioning 1.7.90 patch 7 (fuf) o fixed reading undefined variables in several files in the source tree o improved WinList stability by changing send_as_mesg() o misc little fixes 1.7.90 patch 6 (sasha) o mystyle_process_definitions moved into src/Config/MyStyle.c to solve compilation problems caused by previous patch. It was renamed to ProcessMyStyleDefinitions to suit style of that file. o declaration of mystyle_process_definitions removed from mystyle.h o ProcessMyStyleDefinitions added to confdefs.h as it makes more sense. o minor fixes to parser code and MyStyles.c code to prevent warnings in egcs. 1.7.90 patch 5 (sasha) o Several bugfixes and improvements in parser code. It now reports statement read from config file as public (non executable specific), private, enabled, disabled and/or foreign(belonging to other executable. Accordingly writer can treat file in desired way - like leave only global statemets, leave comments, etc... o added MyStyle parsing code using parser. It now can be incorporated into any module. o Possible this new stuff has bugs as I did not have enough time to test it well( I'm getting a new PC ), they should not affect anything other then Pager. I apologize for any inconvinience. 1.7.90 patch 4 (allanon) o added description of PutOnTop, PutOnBack, SetLayer to afterstep.man o changed AutoRaise code back to signal(SIGALRM); it's much uglier, but a bug in glibc-2.0.7 causes segfaults with the timer implementation o (nekked) enabled DecorateTransients and disabled PagingDefault in feel.GNOME o (nekked) Gnome: disabled debug output o (nekked) Gnome: fixed memory leak o (nekked) Gnome: fixed bug that caused internal error messages when window count was 0 1.7.90 patch 3 (nyt) o added new function, ToggleLayer, to toggle a window between layers o updated move-or-top function in feels o added description of ToggleLayer to NEW and afterstep man page 1.7.90 patch 2 (allanon) o balloon code now uses MyStyle's for text/background config (note that texture type != 0 does not yet work) o added titlebutton balloon help o moved balloon from libafterstep to libasimage to allow MyStyle config o added mystyle_get_text_geometry() to simplify getting the width and height of MyStyle'd multi-line text o mystyle_draw_text() now obeys newlines in the text to be drawn o added support for malloc() to audit code o added more documentation for Include to afterstep.man o updated pager, wharf, winlist, zharf, and all looks to reflect changes o AutoRaise is now handled by the timer code o Gnome: replaced snprintf() with strcpy(); snprintf() is not portable o Pager: now uses style "*PagerBalloon" for balloons o Wharf: now uses style "*WharfBalloon" for balloons o WinList: now uses style "*WinListBalloon" for balloons o Zharf: removed balloons (they would require adding style support) 1.7.90 patch 1 (nekked) o added more flags to Ident, avoid cover, skipfocus, shaded, maximized, windowlistskip, circulateskip, transient and a check if AS is running with Gnome enabled o removed the annoying alarmalarm debugging fprintf from WinList o Gnome handles the DOCK layer properly now o checks for window id None that we sometimes receive from AS, this caused Internal error messages o comments added to Gnome, described function calls etc. o some changes to feel.GNOME, NoPPosition is off now like it should be --- 1.7.75 patch 15 (nekked) o added NOFOCUS flags to SET_FLAGS o fixed STICKY in Gnome o workspace requests now properly followed o updated feel.GNOME o bugfixes for the Gnome module (flag handling, configure events) o updated modules.c to generate configure events for all flags when SET_FLAGS called 1.7.75 patch 14 (nekked) o improved WinList's clock, the select now times out only when WinList is hidden o WinLists list of windows gets properly updated now when SET_FLAGS + WINDOWLISTSKIP is called o modified afterstep to allow for gnome proxy button events to occur (gnome.c) o added AVOID_COVER to SET_FLAGS o Gnome - initial hints are read properly from apps that set them o added support for gnome virtual paging o more gnome hints are supported, skip windowlist, skip menu, avoid cover o updated the Gnome man page o added feel.GNOME o gnome logo added to icons 1.7.75 patch 13 (sasha) o fixed bug in Pager that would not let it remove sticky windows off the desk, if desk is changed to outside of Pager's limits. o fixed Pager segfaulting when no label is specifyed in config o some improvements to parser code o new code for writing configuration back to file ( or memory buffer ) Config writes is capable of preserving comments and, possibly unknown options. That can be disabled at runtime if needed. o options in config files can be temporary disabled and still remain readable for parser, by embedding "#~~DISABLED~~# signature somewhere in option parameters. o I sure hope I've got all the elements of config reading/writing in place by now. But minor improvements are yet to be made, like: - better handling of options belonging to other executables. - better handling of disabled options ( possible move disable signature in front of option to make config compatible with older AfterStep versions. - more options for writing config. - more datatypes supported. o added WritePagerOptions to src/Config/Pager.c for writing Pager's options to file. 1.7.75 patch 12 (allanon) o added new module-only function, SET_FLAGS; SET_FLAGS changes AS's internal flags for a window; USE WITH CAUTION!! the internal flags are NOT guaranteed to continue to exist, much less stay the same as they are; basically, only AS modules (which can use the defines in module.h) should use this function o ascommand.pl can now be passed several command line options (including --help and --version); one of these is --window-id, which sets the window id passed to AfterStep 1.7.75 patch 11 (nekked) o more GNOME stuff o fixes for WinList, it would crash when a button was clicked on, gradients would show with hide width and height. 1.7.75 patch 10 (allanon) o icons get placed in too-small IconBoxes again (was broken in patch 6) o if an iconbox is closer to the right edge of the screen than the left, it will be scanned from right to left for an open space; similarly for an iconbox which is closer to the bottom than the top o if an icon overflows the iconbox, and the iconbox is closer to the right edge than the left, the icon will align with the right edge of the iconbox; same for bottom o Gnome: replaced snprintf() with strcpy() and strncpy(); snprintf() is not portable; hopefully this works (I don't have Gnome) :) o WinList: replaced snprintf() with strncpy() 1.7.75 patch 9 (sasha) o Fixed Pager's transparency, broken in patch 06. o Fixed WinList placement code - for any gravity now. 1.7.75 patch 8 (Makoto Kato ) o fixed mystyle property of asimagelib since WinList and Pager always crash with I18N 1.7.75 patch 7 (allanon) o the environment variable DESTDIR is prepended to all paths while installing (for Red Hat) o Wharf: fixed Wharf geometry (oops!); thanks to ish for noticing 1.7.75 patch 6 (allanon) o added new configure option, --enable-warn, which turns on lots of extra gcc warnings (list of warnings taken from rxvt) o added prototypes for put_png_scanline() and LoadPNGFile() to as_png.c o fixed prototypes for Reborder, SaveWindowsOpened, SetCirculateSequence o changed some library functions to use the same parameter types as the libc functions they call o Broadcast() and SendPacket() now use the varargs facility, allowing a variable number of arguments; note, however, that this means type casting to unsigned int is no longer optional when passing anything except int, signed int, or unsigned int (or a typedef thereof) o rewrote replaceEnvVar() to handle shell variables of the form ${VAR} o removed redundant function SendText(); SendInfo() is exactly the same o Wharf: strip spaces after Geometry specification if necessary; was causing Wharf to show up in random places o remove borders from bottom to top in Reborder(); restarting AS should no longer reverse the window stacking order o use XMoveResizeWindow instead of XMoveWindow on the client window in SetupBorder; the window was placed wrong if the win_gravity wasn't NorthWestGravity o tried to optimize view changes somewhat; see note in MoveViewport() o added get_window_geometry() to make determining window size (normal, shaded, iconized) easy o rewrote AutoPlace() and SmartPlacement() to use get_window_geometry() 1.7.75 patch 5 (sasha) o Fixed few bugs in parsing code causing segfaults. o Fixed bug in Pager causing it to not display root background on startup. o Fixed bug in WinList causing it to get wierd size on look changes. o Fixed bug in WinList causing it to not display background on startup. o added base.bpp file parsing definition and functions to src/Config. o converted Pager to use those ^^^. o started writing Developer's guide for parsing code - it is usable already see: doc/code/parser_devel_guide.html 1.7.75 patch 4 (sasha) o Fixed bug in parser.h causing Pager to segfault just after startup in some cases. o Fixed WinList hiding code. o Fixed WinList placement code. Note: afterstep is not placing windows correctly - windows are placed at x+2,y+2 if without titlebar, or x,y-8 if with titlebar. 1.7.75 patch 3 (sasha) o Changed WinList LeftJustify option to Justify o Fixed WinList man page o Fixed ( hopefully ) WinList placement code - so winlist no longer floats away o fixed WinList segfaulting when it's vertical and no MaxWidth specifyed 1.7.75 patch 2 (nekked) o more GNOME hints supported o fixes for what was broken in Gnome o man page for Gnome o added entries for GNOME panel and gmc to database o removed the TODO file o config file for GNOME desks 1.7.75 patch 1 (sasha) o fixed bug in WinList causing it to segfault on startup if there are no windows to show. o fixed asetroot image loading to load with better quality (nekked) o finalized parsing code : Parsing is done in 3 steps : 1. parsing source data from file or memory buffer in to the "Free Storage" (suggested by allanon), in which it is stored as a list of combinations of term definition reference and actual data This is done by code in parcer.c. 2. Free Storage is then processed by module specific function to extract actual usefull data and store it in the module-specific structure This is done by code in src/Config/Modulename.c 3. Module-specific config structure is then processed by module itself to initialize it's global variables, and get's deallocated by module as needed. o parser.c moved to lib to make it available for other modules o parser.h moved to include o created src/Config to hold all the module specific configuration definitions and methods. o Moved Pager to use new unifyed parsing code o Updated Pager.man to reflect config changes. -- 1.7.49 patch 26 (mihm) o Patch to 1.7.75! o Patch to Pager (c/o allanon) to fix Pager death on window close caused by patch 15 - the efficiency patch. :) o Update *ALL* look files to the new MyStyles format of all Modules that use them! o Updated the pager.in, wharf and winlist to reflect the MyStyle move as well. o Moved README.new_options to NEW o Removed the obnoxious REALLY.READ.THIS.IF.YOU.CAN.HELP file, and incorporated it into the main README. o Modified doc/code/Patch to reflect the needed use of 'makeasversion'. 1.7.49 patch 25 (sasha) o fixed memory corruption bug in Pager: ParseOptions() causing wierd behavior, and corrupted root pixmaps. o fixed focus change processing in Pager causing it to crash on fast machines. o parser stuff is ready to use, and will be implemented in Pager for testing, shortly. 1.7.49 patch 24 (allanon) o audit: less lenient on what strings are printable ASCII o transparency for all windows is now updated when _XROOTPMAP_ID changes, not just visible ones 1.7.49 patch 23 (muligan) o fixed bug in functions.c, Maximize did not check for 0%. 1.7.49 patch 22 (sasha) o fixed bug in libasimage, that was allocating memory with calloc, but deallocating with XFree o fixed audit.c to correctly deal with XImages allocated by libasimage that should fix memory leaks in all modules when compiled with memory auditing o better memory cleanup in Pager when compiled with memory audit o more parser stuff 1.7.49 patch 21 (allanon) o updated man pages to reflect the fact that modules can be run from the command line, as well as the new -f, --help, and --version options 1.7.49 patch 20 (semyaza) o updated some more theme.handler stuff problems w/ parsing. No version increment. 1.7.49 patch 19 (Rwf) o ChangeLog reformatted and cleaned up, entries now in newest-first order 1.7.49 patch 18 (allanon, MrRaZz.4world , Oskuro Iluna ) o updated doc/languages/README.es (thanks to Oskuro) o added new doc/languages/README.nl (thanks to MrRaZz.4world) o Pager: now compiles :) (allanon) 1.7.49 patch 17 (allanon) o added new database option, Layer ; layers are an extension of StaysOnBack, StaysOnTop; see the afterstep man page for more details o new menu/module command, SetLayer ; sets the layer of the selected window 1.7.49 patch 16 (sasha) o Pager now should update transparency when moved o default style will now work better if PagerActive/InactiveDesk is not specifyed. 1.7.49 patch 15 (sasha) o fixed bug preventing transparent Pager to become transparent in some cases. o Added memory cleanup code for better memory auditing in Pager. o improved command line startup options parsing in Pager. o other minor bug fixes and improvements. o some preliminary code for configuration parsing left in src/Pager 1.7.49 patch 14 (sasha) o fixed random Pager's coreing with SelectionColor and GridColor specifyed. o added DeskBorderColor option to PagerDecoration o moved HideInactiveLabels and LabelBelowDesk to PagerDecoration o Pager will now dynamically resize itself when font size is changed in style. o Better support for 3D fonts o Support for MyStyle definitions in pager file or .steprc file added o minor cleanup o updated pager.in and pager.man 1.7.49 patch 13 (sasha) o fixed Pager's coreing when PagerSmallFont is specifyed in config. o some Pager's optimization, to better handle Page/Desk switching o Updated pager.in, look.DEFAULT, pager.man o fixed Pager's coreing when PagerStyle is not specifyed. 1.7.49 patch 12 (semyaza) o fixed typo in makeastheme.pl and installastheme.pl o theme.handler version incremented by 1 (0.4.2) o made theme.handler scripts print version number when no args given 1.7.49 patch 11 (sasha) o This is the first patch in series of Pager rewrite patches. Work is still in progress, so there might be minor glitches. o Pager now understands MyStyle options. The following styles should be defined : "*PagerUWindowStyle"(defaults to "unfocused_window_style") - unfocused window representation's style. "*PagerFWindowStyle"(defaults to "focused_window_style") - focused window representation's style. "*PagerSWindowStyle"(defaults to "sticky_window_style") - sticky window representation's style. "*PagerActiveDesk" - active (selected) desk's style. BackPixmap 129 is supported for transparency. "*PagerInActiveDesk" - inactive desk's style. BackPixmap 129 is supported for transparency. o New Pager option added : *PagerStyle to define the style of desk's representation window. Transparecncy is supported. o The following options has been dropped : PagerImage - changed to PagerStyle PagerBack,PagerFore,HiBackColor, HiForeColor,PagerFont - moved to Active/InActive Desk style PagerHilightBorders - absolete, can be defined in focused/unfocused window style PagerHilight - moved to PagerDecoration as SelectionColor PagerTransparent - moved to style definition PagerFastBackground - not very usefful - if somebody needs it - give me a call o To disable desk's title - use NoDeskLabel option of PagerDecoration o PagerSmallFont overrides focused/unfocused window styles font definitions More stuff to come ;) 1.7.49 patch 10 (nekked) o new module that will provide Gnome compliancy to AS o supported stuff, most GNOME win_state_hints, all of win_workspace, all of win_client_list. o unsupported or poorly supported, no translation for apps that actually use GNOME hints, win_layers completely not supported. o usage, there are no config files for this module, either run it from commandline or from 'Modules' menu. o bugs, too many updates, supported protocols listed but not supported. 1.7.49 patch 9 (allanon) o module parameters are passed on by AfterStep again (oops!!) o Pager: read .steprc for base options, if using steprc (oops!!) o fixed memory leak when in executeModule() o removed debugging printf() in KillModule() o renamed the install.all rule in Makefiles to install.data o added tools/Makefile.in to take care of installing ascommand.pl o added an INSTALL_SCRIPT define to autoconf/Makefile.defines.in o doc/Makefile.in now uses INSTALL_SCRIPT to install afterstepdoc o added install.script rule to autoconf/Makefile.common.in o added short blurb to doc/code/Patch describing what to do if the patches are not gzipped o modified all Makefile.in's to have a local install and uninstall o abort jpeg decompression if not all scan lines have been read; calling jpeg_finish_decompress() in this case is an error 1.7.49 patch 8 (allanon) o (module) -f ~/.steprc should work now 1.7.49 patch 7 (allanon) o modules now broadcast their name to AfterStep, so KillModuleByName works again; was disabled (as opposed to broken :) in patch 6 o make install installs ascommand.pl so that external programs (such as asWhiskey, asVodka, etc) can rely on its presence 1.7.49 patch 6 (allanon) o new method of module communication, using a UNIX-domain socket in non-configurable; the name of the socket file is stored in the _AS_MODULE_SOCKET X property o modified all modules to use the new method of communication o no longer use xpm_attributes.bitmap_format or the XpmBitmapFormat flag; these are not in my version of libXpm o use the DefaultScreen macro in loadimg.c and stepgfx.c, to help prevent some aterm crashes o added handler for XpmCreateImageFromXpmImage() to audit o all modules now accept the -h, --help, -v, and --version options; modules with a configuration file also accept "-f configfile" o added tools/ascommand.pl, which sends an arbitrary command to AfterStep, just as a module would; in fact, it *is* a module o NOTE: modules can now be run from the command line, with pretty much the same syntax as one would use to run them from within AS 1.7.49 patch 5 (nekked) o removed the transient WinList option o made buttons in vertical mode static o added *WinListHideGeometry for winlist in autohide mode o changed the behaviour of hidden winlist, it now shows a clock, number of clients running, current desk when hidden. The win05-like hide technique didn't work well due to page warping. o handlers for SIGSEGV, SIGQUIT, SIGTERM o substantialy rewrote winlist in an attempt to reduce the number of redraws this is not yet complete. o changes to geometry parsing o changes to event handling o changes to linked list handling o winlist is not stable at this time, large chunks of code have been modified I'm submitting this patch for people who are willing to test this thing out and send me bug reports, if you're not one of them I suggest using an older version. o bugs - when 'h' pressed current balloon is not destroyed (i suggest balloons_off in aslib), sometimes when no apps running winlist will not resize properly, too many redraws, probably a lot more that I dont know about at this moment. 1.7.49 patch 4 (sasha) o Major improvement of libasimage: - direct XImage data access while processing JPEG and PNG files, when possible ( TrueColor and ColorDepth > 8 ), in put_png_scanline and put_jpeg_scanline. Improves performance by 10-15%%. - XPm files are now read fisrt into XpmImage and then into XImage - surprisingly improves performance by 20%. - added image(with mask) loading with scaling capabilities - works much faster then load Image first and then scale it. - other minor improvements and fixes. o temporary fix of Pager to properly place desk windows with afterstep 1.7.51 and higher. 1.7.49 patch 3 (Makoto Kato ) o add fontset support to MyStyle properties o gradient text now supports i18n o Ident: now supports DBCS o Script: now supports DBCS o Zharf: now supports DBCS o (by allanon): fixed WinList WRT new transparency code in asimagelib 1.7.49 patch 2 (allanon) o added new Style options FocusStyle, UnfocusStyle, and StickyStyle to allow setting styles for individual windows; see README.new_options and the afterstep man page for details o misc.h no longer includes aftersteplib.h, menus.h, or mystyle.h; this required including those headers in many *.c files, but gives more control over what headers are included, and their order o mystyle_find() now returns NULL when passed a NULL pointer (instead of crashing) o removed debugging fprintf()'s from mystyle_property.c :) o removed xdiff, ydiff, ReliefPixel, ShadowPixel, TextPixel, and BackPixel from struct ASWindow o added style_focus, style_unfocus, style_sticky to ASWindow; these keep track of the styles to be used for each individual window o removed inclusion of from misc.h o created new header, style.h, to contain name_list (Style) related stuff o rewrote much of style.c to support MyStyle's as Style options o ReadFileName() now returns NULL in fname when no characters are read o matchWildcards() is now const-correct o the system for converting from frame size to client window size and vice versa is now much more flexible, and is concentrated in three new functions, get_client_geometry(), get_parent_geometry(), and get_frame_geometry(); also, titlebar geometry is now calculated in only one place, set_title_geometry() o changed several places which used Scr.MSFWindow.colors to use WhitePixel() and BlackPixel() instead o removed gradient caching; the cache was worse than useless for VerticalTitles o ran indent on borders.c and style.c o Style options Color, ForeColor, and BackColor are gone; probably no one will notice, since they weren't in the man pages, and didn't work anyway :) o resize handle width is now equal to title width or height, whichever is less 1.7.49 patch 1 (sasha) o All aterm imaging/transparency/shading code has been copied into libasimage's: ximage_utils.c - updated scaling code now works 3 times faster on TrueColor; ximage_utils.c - added XShadeImage - to enable shading/tinting on TrueColor. pixmap.c - different pixmap transformation functions - see include/pixmap.h. o fill_with_darkened_background moved into pixmap.c, args changed o src/Wharf/icons.c, src/afterstep/menus.c and src/afterstep/borders.c updated to use new fill_with_darkened_background. o src/Wharf/transparency.c removed, due to all functionality being moved into libasimage. o transparency code from src/afterstep/menus.c removed, due to all functionality being moved into libasimage. o asimagelib/mystyle.c fixed to set tinting color to "white" if it was not specifyed in transparent BG definition, or specifyed color is invalid. -- 1.7.47 patch 2 (nekked) o transient winlist fixes o winlist moved to use _AS_STYLE's o left portion of text is now displayed in the buttons o fixes for disappearing text and garbled pixmaps on startup o the MyStyle "*WinList" structure should now be specified in the look files o updates for the man page o I'm intending to drop the support for transient WinList, any objections? 1.7.47 patch 1 (allanon) o configure now modifies the start menu title to reflect the AS version o fixed the Look, Feel, and Pictures .include's to point to the share dir properly o added asimagelib/mystyle_property.c to handle converting MyStyle's to and from X properties; the recommended property to use for this is _AS_STYLE o added newlines after MyStyle error messages o use mystrdup() instead of strdup() in lib/font.c o Wharf: added support for _AS_STYLE property o Wharf: now updates look dynamically when _AS_STYLE is changed (ie, when the AfterStep look is updated) o yes, IconFont + --enable-iconbackground works; really, it does! -- 1.7.37 pach 10 (mihm) o removed nekked from the TEAM file - just kidding :) o new README.tw o brought to 1.7.47 o updated TEAM o re-ordered the install.script o added new theme.handler o revised look.Transparent to look.Transparent.rev o added the RubberBand item to all looks o added aterm entry to startmenu & dir 1.7.37 patch 9 (nekked) o fixes for AutoHide in WinList o fixes for transparency in WinList o fixes for configure window requests in WinList o fixes for WinList manpage o added myself to the TEAM file as the asetroot maintainer 1.7.37 patch 8 (allanon) o fixed icon text drawing... properly this time (hopefully, maybe) :) o Wharf: BackPixmap 129 without a previous BackPixmap 128 now works 1.7.37 patch 7 (allanon) o windows which attempt to move themselves close to the screen border are now allowed to do so, providing at least one pixel is visible o set titlebar button width & height to zero in InitLook(), fixing a problem with titlebar height when a look with fewer (and smaller) buttons is loaded o added new MyStyle option, DrawTextBackground, which clears an area behind text to the background color o updated look.MacOS8 to use DrawTextBackground o icons redraw themselves when exposed again (oops!) o icon text uses IconFont again (oops!) :) 1.7.37 patch 6 (allanon) o included configure.h in any source files that weren't including it; audit works better now :) o update titlebar buttons in SetTitleBar() instead of SetBorder(); updates to the buttons no longer redraw the lowbar o no longer attempt to free iconPixmap in Destroy() if the pixmap is set by the app (this is the case for xemacs) o create titlebar window after handle windows o ignore expose events for the frame and Parent windows, and compress all other exposures as much as possible o removed unused MakeGradient() from borders.c o create titlebar pixmaps at the proper size for vertical titlebars 1.7.37 patch 5 (nekked) o fixed a bug with autohide and and vertical WinList o removed Mallocs.*, Colors.* from WinList (it's all in aftersteplib anyway) o rewrote WinList to use MyStyles, check the man page for the options, some of the old config options won't work anymore! o added transparency with tinting to WinList o removed unneeded #includes and declarations o updated the config file to reflect the changes 1.7.37 patch 4 (allanon) o removed old look (!NEWLOOK) code o no longer include X11/Xlib.h, X11/Xutil.h, X11/cursorfont.h from afterstep.h and screen.h; these interfered with audit + iconbackground 1.7.37 patch 3 (nekked) o added auditing to WinList o fixed 2 memory leaks in WinList (unload_font and balloons_init (1)) o MyName in asetroot reports the module's name correctly o the array of pixmaps is freed on exit o improvements to the error handler o event handler that listens for changes to the _XROOTPMAP_ID property and aborts the program if another program tries to access it o asetroot will now create ~/g/l/a/asetroot where it will store its configuration if the file doesn't exist o changed all malloc's to safemalloc's o removed all memory leaks o to save CPU time images are just tiled if they're the size of the display o properly grabbing the cursor now 1.7.37 patch 2 (allanon) o Wharf: added new option (NoWithdraw) to turn off the ability to withdraw Wharf to a corner; turns off grabbing button 3 o finally got around to updating README.new_options :) o added section to doc/code/Patch on applying patches o added more memory debugging stuff, and moved it from lib/safemalloc.c to lib/audit.c o added configure option --enable-audit to turn on memory auditing o added quotes around arguments to test in aclocal.m4; this helps with some versions of test o vertical transparent or gradient titlebars now resize properly o fixed memleak in Destroy(); free iconPixmap o Wharf: fixed memleak in ConfigureIconWindow() WRT translucency o Wharf: delete balloons when deleting buttons o fixed memleak in mystyle_parse_member() WRT pixmap paths o fixed memleak in dirtree_fill_from_dir() o removed @X_LIBS@ from LIBS_X in autoconf/Makefile.defines.in; X_LIBS is included in x_libs 1.7.37 patch 1 (nekked) o many bugfixes o compilation fixes o removed the alarm for rereading conf files, not needed anymore o asetroot now saves its configuration on exit o added pointer grabs when loading an image o increased MAXDESKS to 32 o images for *asetrootImage# are now searched for in pixmap path, icon path, ~, and / paths o implemented aspect (scale that keeps the aspect ratio for poster type images, the option is aspect o added XError handler for cases when killing _XROTPMAP_ID generated X errors (X_KillClient) -- 1.7.25 patch 12 (allanon) o removed debugging fprintf() (came from patch 10) o several minor adjustments to titlebar positioning code o fixed ShapeSet() when VerticalTitle is specified o fixed HandleConfigureRequest() when VerticalTitle is specified o resist_move() now knows about shaded windows o fixed PlaceWindow() when VerticalTitle is specified 1.7.25 patch 11 (nekked) o different desktops can have different styles o changed the format of the config file, *asetrootImage1