changed geometry display stuff
[wmaker-crm.git] / NEWS
blob23a7f8c616c5925dacebcd4060d30d8b47777b24
2 NEWS for veteran Window Maker users
3 -----------------------------------
5 --- 0.61.2
8 Patches, po files, bug fixes etc
9 --------------------------------
11 I am very sorry, but I think I lost the folder I kept all the
12 patches and contributions I received since the last release :(
13 If you have sent something to me, but it's not included in this
14 release, please resend it.
15 My sincere apologies.
16         -Alfredo
19 Removed "Keep Attracted Icons" option from Clip's menu
20 ------------------------------------------------------
22 Since this option brought more confusion than usefulness among users, and
23 since it was usable only in a very limited context, being able to fill up
24 the Clip very easily, it was removed.
25 An alternative way of gaining the same functionality is to use the "Keep icon"
26 entry in the Clip's main menu. Or select multiple icons before calling that
27 entry, to make it apply to more than one icon.
29 Note: "Keep icon", as the obsoleted "Keep Attracted Icons" had nothing to do
30       with holding icons in Clip, while the application is running. Once they
31       are attracted, they are kept until the application close. Using
32       "Keep icon", will only assure that the icon will be kept, even after the
33       application is closed.
35 Please don't ask for this option back. It's error prone, and very unintuitive.
36 Considering it's very restrictive usability, and it's very ambiguous topic, it
37 does not need a special entry in the Clip's menu, taking in count that there
38 are already better alternative ways of gaining the same functionality.
41 --- 0.61.1
43 New libPropList
44 ---------------
46 new libPropList-0.9.1 is REQUIRED to build Window Maker 0.61.1.
47 go grab it and install it first.
50 --- 0.60.1
53 Window Edge Attraction
54 ----------------------
56 Window edge attraction was now added.
58 Attraction = YES/NO;
60 will enable/disable gravity to edge's boder.
61 The strength of gravity can be controled by modify `EdgeResistance' value
62 in WindowMaker configuration file.
65 Titlebar Draw String Plugin
66 ---------------------------
68 FTitleColor, UTitleColor, PTitleColor, MenuTitleColor can be assigend with
69 drawstring plugin instead of plain color. For example:
71     FTitleColor = (
72         function,
73         libwmfun.so,
74         drawPlainString,
75         gold,
76         black,
77         gray49
78     );
80 will invoke function drawplainstring from libwmfun.so and pass 3 colors for
81 arguments. To code new plugin, please see plugin.h for more informations.
84 --- 0.60.0
87 User Menu
88 ---------
90 The user menu is now a compile time option disabled by default. 
91 Supply --enable-usermenu to configure to enable it.
94 root menu INCOMPATIBLE changes
95 ------------------------------
97 EXEC <program> will execute the named program
99 SHEXEC <command> will execute the shell command.
101 If you want to execute something like blabla > /dev/null, then use SHEXEC
103 Dont forget to update your menus.
106 New Option For setstyle
107 -----------------------
109 The --ignore flag will tell setstyle to not change the option that is
110 specified, when modifying the Window Maker configurations. For example:
112 setstyle --ignore MenuStyle sometheme.themed will cause the MenuStyle
113 option to not be changed.
115 setstyle --ignore FTitleBack --ignore UTitleBack --ignore PTitleBack bla.themed
116 will load the theme, but keep the titlebar background related options as
117 before.
120 MultiByte Text Support Changes
121 ------------------------------
123 The --enable-kanji configure option is not needed anymore and was removed.
124 To enable support for multibyte text, you must:
125 - set the LANG environment variable to the appropriate value
126 - change the font configurations to contain font sets in the appropriate
127   encodings in both ~/G/D/WindowMaker and ~/G/D/WMGLOBAL (for WPrefs)
128 - set the MultiByteText option to YES in both of the above files
131 New Options
132 -----------
134 WorkspaceNameDisplayPosition =
135 none/center/top/bottom/topleft/topright/bottomleft/bottomright
138 SmoothWorkspaceBack = YES/NO
140 will enable smoothing of scaled workspace background images.
144 Application User Menu Path Changes
145 ----------------------------------
147 Default configuration for user specific menus installed in
148 /usr/local/share/WindowMaker/UserMenus or $(datadir)/WindowMaker/UserMenus
149 and ~/GNUstep/Library/WindowMaker/UserMenus.
152 Omnipresent icons in Clip
153 -------------------------
155 Added ability to set icons docked in Clip to be omnipresent on all workspaces.
156 To set/reset this flag use the clip menu.
157 The Clip menu changed in the following way:
158  - if you bring up the menu from the Clip's main icon, it will contain as
159    before the "Rename Workspace" entry in the second position.
160  - however, if you bring up the menu from any other icon in clip, the
161    "Rename Workspace" menu entry is replaced by "Omnipresent" or
162    "Toggle Omnipresent" depending on the context.
164 This entry will work in the following way, depending on the context:
166 1. If there is no icon selected in the clip, then the menu will contain the
167    entry named "Omnipresent" which will be checked accordingly to the current
168    state of the icon (omnipresent or not), and will let you change the
169    omnipresent state of the icon you brought the menu from.
170 2. If one or more icons are already selected when the Clip menu is called, the
171    entry will be named "Toggle Omnipresent" and will apply to all selected
172    icons trying to toggle their omnipresent state. The icons which will be
173    succesfully changed to their new state as requested, will be unselected,
174    while the ones that will fail for some reason to gain their new state,
175    will remain selected.
177 In both cases if there is no success in setting what user requested a panel
178 will inform user of the failure.
179 (Note: trying to set an icon to not-omnipresent will never fail. Failures can
180        be met only when trying to set omnipresent for an icon).
182 The icons set to omnipresent will be marked with a triangle in the upper left
183 corner, having the color of the IconTitleColor.
185 An icon can be set to omnipresent, only if its position is free in all the
186 workspaces, else you will be informed of the problem and asked to fix it first.
187 Also when dragging an omnipresent icon around in Clip, all the icons docked in
188 all the workspaces are shown while the dragging is done, to let one easily see
189 where are free slots in all workspaces.
191 For advanced users, there is also a shortcut to set/reset the omnipresent
192 state of an icon: just use "Shift+MiddleButton" (button2) on the icon you want
193 to change.
194 In this case only the mark in the upper left corner will appear in case of
195 success, or nothing will happen if icon cannot be made omnipresent (advanced
196 users are expected to know why the icon failed to be made omnipresent, so they
197 don't need a panel to explain them why ;) ).
199 Now before you load your gun to start a flame war because this is against your
200 principles you love so much, please sit down and think that this is a feature,
201 which, if you don't use, the old behaviour of the Clip is totally preserved.
202 It just adds some extra capabilities to the Clip for people who think that this
203 is useful.
206 XDND drop on dock support
207 -------------------------
209 Support for XDE on dock is now replaced by XDND.
210 To enable, edit src/wconfig.h
214 --- 0.53.0
216 New Options
217 -----------
219 ** MenuStyle
221 MenuStyle=<style>; will change the menu texture style.
223 <style> can be:
224 normal (default): for the traditional one texture per item, with bevels in 
225 each
227 singleTexture: for a single texture that spans the whole menu, with bevels
228 in each item
230 flat: singleTexture without the bevels
233 ** ResizebarBack
235 ResizebarBack=<texture>;
237 where <texture> is any of the textures you normally use in titlebars and
238 other places.
240 If the style file/theme does not contain a ResizebarBack option, setstyle
241 will automatically hack it so that wmaker will make the theme work like 
242 before.
245 New crash dialog panel
246 ----------------------
248 From now on, whenever a fatal situation appears, Window Maker will display a
249 dialog panel to the user and let him choose what to do.
250 The options are:
251 - Abort and leave a core file (usefull for debugging and getting backtraces)
252 - Restart Window Maker (default behaviour)
253 - Start alternate window manager (the one defined as fallback, or if not
254   possible fvwm or twm in this order).
256 If it will not be able to restart or start the alternate window manager, it
257 will abort and leave the core file.
260 Application User Menu
261 ---------------------
263 Applications with an appicon can have a user defined menu.
265 This menu will emulate keyboard events, and will be sent to the applications'
266 window(s), thus the application must accept key combinations (CTRL+N for
267 instance).
269 To enable this feature, #define USER_MENU in src/wconfig.h and place menu
270 files in ~/GNUstep/Defaults/UserMenus (/usr/local/etc/WindowMaker/UserMenus
271 globally).
273 The user menu is in PropList format and the filename is in:
274 <instance name>.<class name>.menu or application's main window.
275 (Example: the menu for xcalc would be - xcalc.XCalc.menu)
277 Example user menu syntax:
280   "Calculator",
281   ("Put 1", SHORTCUT, "2"),
282   ("Functions",
283     ("Put 2", SHORTCUT, "2"),
284     ("Put 3,4 and 5", SHORTCUT, (3,4,5))
285   ),
286   ("Exit", SHORTCUT, "Control+q")
291 --- 0.52.0
294 Appearance Editing in WPrefs
295 ----------------------------
297 Added Appearance/Texture editing capability in WPrefs. Workspace background
298 selection is not yet finished.
301 Themes
302 ------
304 Removed all themes from the source tree, and moved them in a separate package.
305 You can download the new package from the same place as this package:
306 ftp://ftp.windowmaker.org/pub/beta/srcs/
307 Look after WindowMaker-extra-<version-number>.tar.gz
308 Also WindowMaker-extra pack include the old WindowMaker-data.tar.gz which only
309 contained icons.
310 Look for the greatest version number when you download this package.
313 get-wraster-flags script change
314 -------------------------------
316 The name of the options passed to get-wraster-flags changed, to allow a better
317 name compatibility with the naming conventions used by other software.
318 The name change was as follows:
319 --lflags was changed in --ldflags
320 To allow backward compatibility, with already written software, the old
321 --lflags option is still recognized, but you are encouraged to move the the
322 new --ldflags.
326 --- 0.51.2
329 New Themes
330 ----------
332 Added 2 new cool themes (actually I added in 0.51.1, but forgot
333 to put it here...) from largo (LeetWM) and BadlandZ (STEP2000).
336 Full Screen Maximization
337 ------------------------
339 The FullMaximize window attribute will allow the window to
340 be maximized to the full size of the screen (ignoring anything
341 like titlebar, resizebar, dock, panels etc). It should be usefull
342 for programs that must use the whole screen, like games or things 
343 like presentation programs.
346 --- 0.51.1
348 KDE Application Menu script
349 ---------------------------
351 wkdemenu.pl is a converter from KDE application menu structures to wmaker 
352 menu that can be used as a piped menu. Look wkdemenu.sh for how to use it.
355 Window Edge Resistance
356 ----------------------
358 Window edge resistance was now added. No, feature freeze hasn't been
359 removed. Its just part of the edge resistance rewrite ;)
362 New Theme
363 ---------
365 Added SteelBlueSilk theme
367 Installation Path Changes
368 -------------------------
370 Default configuration data installed in /usr/local/etc/WindowMaker
371 or $(sysconfdir)/WindowMaker
374 --- 0.51.0
376 Window Maker has become a GNU program (part of the GNU Project).
378 Title text drop shadow
379 ----------------------
381 drop shadow option added for titlebar text. This is a compile time 
382 option which needs to be defined in src/wconfig.h after you run
383 configure and before you run make.
385 New options and syntax for your WindowMaker domain file are:
387   Shadow = yes/no;
388   FShadowColor = <color>;  
389   PShadowColor = <color>;
390   UShadowColor = <color>;
391   MShadowColor = <color>;
393 The shadow option is dynamic (no need for a restart).
394 MShadowColor is for the menu title text.
396 libPropList
397 -----------
399 WARNING!!! libPropList was removed from the Window Maker distribution
400 and is being distributed separately. If you dont have it installed yet,
401 get it from ftp.windowmaker.org/pub/libs and install before building
402 Window Maker.
405 signal handling change
406 ----------------------
407 SIGHUP will exit wmaker instead of restarting it!!! This is because
408 GNOME expects the window manager to exit instead of restarting...
409 Complaints should go to gnome people. SIGUSR1 will restart wmaker now.
412 script change
413 -------------
414 WINGs-flags was removed, and replaced by get-wraster-flags.
415 Please remove WINGs-flags from your system, since it was obsoloted by
416 get-wraster-flags.
417 Continuing to use WINGs-flags can lead to hazardous effects, since is no
418 longer updated.
421 docklib
422 -------
424 docklib is a little library for making dock applets. It's in the
425 docklib-0.0.tar.gz file. Unpack it and read the README file there.
428 Option Changes
429 --------------
431 Removed OnTopTransients option
433 Added OpenTransientOnOwnerWorkspace
436 Olwm Hint Support
437 -----------------
439 OPEN LOOK(tm)/olwm hints support was added.
441 Read the appropriate section in the README file.
445 --- 0.50.1
447 New option for WorkspaceBack. mpixmap is the same as spixmap, but
448 it will scale the pixmap by keeping the aspect ratio (maximize or maxpect).
449 The option only works for workspace backgrounds.
451 Also added IGNORE_PPOSITION compile time flag, which is equivalent
452 to NoPPosition from fvwm. 
457 --- 0.50.0
460 KDE and GNOME
461 -------------
463 Added full support for GNOME and KWM hints. 
464 Read the INSTALL file to see how enable them.
466 Everything in the so called GNOME window manager bla bla bla pseudo-spec is
467 implemented.
469 As for KDE stuff, it implements 90% of everything kwm does, adds some
470 Window Maker specific extensions to it and still uses half of the memory
471 kwm does, which should be enough to let you dump kwm ;) For details on what
472 exactly is implemented, see comments in src/kwm.c Read the README.KDE file 
473 for more information.
476 WARNING: Some KDE hints are badly designed, so doing things like using
477 kpanel's desktop switcher/pager and Window Maker's internal workspace
478 management functions to create, destroy and rename workspaces at the same 
479 time might cause unknown effects. To be on the safe side, only
480 use either of them to manage workspaces. Switching workspaces is hopefully,
481 safe, so you can switch workspaces from wherever you want.
485 Workspace Specific Background Images
486 ------------------------------------
488 Use the WorkspaceSpecificBack to set background images for specific
489 workspaces. The WorkspaceBack is used as the default background image.
491 Example:
493 WorkspaceSpecificBack = ((solid, red), (cpixmap, ship.jpg, gray), (), 
494                                 (dgradient, red, blue))
496 This will set the background image of workspace 1 to (solid, 0),
497 2 to ship.jpg and 4 to a gradient. Workspace 3 and other workspaces
498 will have the image defined by WorkspaceBack.
500 Note that this uses quite some memory...
503 setstyle/getstyle
504 -----------------
506 setstyle now accepts the -nofonts flag, which will load the style
507 file ignoring all font related options.
509 Example:
511 setstyle -nofonts Blabla.style
514 getstyle can be used to create theme packs. See the usage in the
515 WindowMaker/README.themes file.
519 New Texture Type
520 ----------------
522 Textured gradients will tile a texture pixmap and combine it with a gradient, 
523 using an arbitrary opaqueness. 
525 Syntax is (thgradient, <file>, <opaqueness>, <color1>, <color2>)
526           (tvgradient, <file>, <opaqueness>, <color1>, <color2>)
527           (tdgradient, <file>, <opaqueness>, <color1>, <color2>)
528 where:
529 <color1> and <color2> are the colors for the gradient,
530 <file> is the texture file and
531 <opaqueness> is the opaqueness to merge the texture witht the gradient,
532 ranging from 0 to 255.
534 Example:
536 (thgradient, "BlueImage.jpeg", 120, white, black)
538 The BlackTexture style and Checker theme are examples.
540 Hints:
542 You can use any type of pixmap file for this, but small (like 64x32)
543 grayscale pixmap files should get the best results (fast and low memory
544 usage). You can use color pixmaps, but it is harder to get the desired effect
545 with them.
547 Be warned that this texture type is the slowest.
551 New Options
552 -----------
554 IconTitleBack and IconTitleColor control the color of the
555 miniwindow title. Both of them are colors.
557 Example:
558 IconTitleColor=white;
559 IconTitleBack=black;
562 Since this introduces an incompatibility in themes and getting flamed by the
563 themes ppl isn't the most pleasant thing ("Whaddafuk you're thinking!? You
564 just broke 500 themes!!!" ;) the setstyle command was hacked so that it will
565 make old themes work as before, by trying to automatically set the above
566 options. Note that in some cases it will not have exactly the same results as
567 before.
570 StartMaximized window attribute. Will maximize the window when it
571 is mapped.
574 AutoRaiseLower option for the Clip. This allows automatic Raise/Lower of the
575 Clip icons when the mouse pointer enter/leave the Clip. To avoid unwanted
576 raising/lowering there is a time threshold before raising/lowering.
577 The thresholds can be changed in wconfig.h by changing one or both of
578 AUTO_LOWER_DELAY and AUTO_RAISE_DELAY (expressed in miliseconds).
579 For example if you set AUTO_RAISE_DELAY to 0, then the Clip will be raised as
580 soon as the mouse pointer enters it's area. Setting AUTO_RAISE_DELAY to a very
581 big value, will make the Clip to practically do not auto raise unless clicked,
582 but to be automatically lowered after AUTO_LOWER_DELAY (ms) when leaved.
585 New ThemePack Format
586 --------------------
588 Starting with this version, a new format of themes is being supported.
589 Before you open pine and start composing your flame, rest assured that
590 the old format is still supported. The new format is documented
591 in the WindowMaker/README.themes file.
594 Root Menu 
595 ---------
597 The -noext option for OPEN_MENU will strip whatever is after the last .
598 in file names that appear on the opened directory. So,
600 OPEN_MENU ~/bg WITH xv -root -quit
602 will create a menu with all the images in ~/bg without the extension.
606 --- 0.20.3
609 Icon (miniwindow) stacking
610 --------------------------
612 If you want miniwindows to reside under normal windows, edit
613 wconfig.h and change WNormalLevel (just grep for it) to
614 WDesktopLevel
617 5 Button Mouse
618 --------------
620 If you have a 5 button mouse and want to give some utility for
621 the extra 2 buttons, edit the appropriate line in src/wconfig.h
622 Clicking Button4 in the root window will switch you to the previous 
623 workspace and Button5 will do that for the next.
626 Option Changes
627 --------------
629 put NoWindowOverDock back
631 KeepOnBottom window attribute
634 -static command line option
635 ---------------------------
637 wmaker -static will start Window Maker in static mode. This will
638 prevent wmaker from checking or making any configuration changes.
639 That makes it possible to run wmaker before running wmaker.inst
642 Hysteresis for menu item selection
643 ----------------------------------
645 Hopefully it's intelligent enough, so you won't notice it.
647 In case you want to know what's it, it's equivalent to that
648 (insanely long) 2 second delay present in that Windoze95 menu, 
649 but more usefull than annoying (I hope :). To see it, do the following
650 with your current wmaker version and later with 0.20.3:
652 - open the apps menu and stick it
653 - click in the item for the "Workspaces" submenu and hold
654 - drag the mouse to the 4th or bigger entry (like "Workspace 4") in a
655 straight line, trying to select the target item before the submenu
656 is unmapped when you dragged over other items in the main menu
660 Window Shortcuts
661 ----------------
663 Window shortcuts are shortcuts to arbitrary windows. You can make up to 4
664 shortcuts. To assign a previously bound shortcut to a window use the "Select
665 Shortcut" submenu in the window commands menu. If the shortcut is not yet
666 assigned for any window, you can hit the shortcut to assign it to the active
667 window. The shortcut will do the same as clicking in an entry in the window
668 list menu. The keys for the shortcuts are defined in the ~/G/D/WindowMaker
669 file or in WPrefs.app
671 Option names are:
673 WindowShortcut1Key through WindowShortcut4Key
676 --- 0.20.2
679 The name of WindowMaker was changed to Window Maker.
681 Window creation animation disabled by default.
683 xdaliclock -shape
684 -----------------
686 If you use it edit src/wconfig.h and #define OPTIMIZE_SHAPE or disable the
687 titlebar and resizebar for the window. OPTIMIZE_SHAPE will remove the
688 flickering for xdaliclock and other programs that change their shapes often,
689 but will increase network traffic considerably. So, if you use xdaliclock
690 from a remote machine it can get slow.
693 Applications Menu
694 -----------------
696 The applications menu will now use the shell in the SHELL environment
697 variable to execute EXEC menu commands. If it is unset (I think it's always
698 automatically set by the shell program) it will use /bin/sh
701 Extra fancy icon kaboom :)
702 --------------------------
704 Edit src/wconfig.h and #define ICON_KABOOM_EXTRA to get
705 more effects for the icon undocking animation.
707 Options for superfluous stuff are even more superfluous, so this
708 will not become runtime.
711 XDE drag and drop support
712 -------------------------
714 Support for XDE drag and drop was added (by "]d" <id@maliwan.org>).
715 To enable, edit src/wconfig.h
716 The support works with gtk 1.1.2
719 libPropList
720 -----------
722 libPropList will now be built automatically by wmaker. Wich means
723 the (simplified) building process is now:
725 ./configure
726 make
727 make install
729 instead of:
731 tar xzf libPropList.tar.gz
732 (cd libPropList; make)
733 make
734 make install
736 You also don't need to worry about GNOME libPropList incompatibilities
737 anymore. 
740 Bug with focus lost in sloppy focus fixed
741 -----------------------------------------
743 The bug only occurs in sloppy or auto focus modes, with AutoFocus disabled
744 and Superfluous enabled. There is no easy/clean way to fix this, so Window
745 Maker will disable the animation of window creation if the focus mode is
746 either sloppy or auto AND AutoFocus=NO.
748 If you want the animation, enable AutoFocus or use manual focus mode
749 (prefered). 
752 The NoWindowUnderDock option was removed
753 ----------------------------------------
754 To obtain the same result, use the "Keep Dock On Top" option in the dock menu.
757 Persistent Program Suplied Icons
758 --------------------------------
760 Application supplied icons are now stored, so that the dock will keep
761 showing them after the app is exited. The icons are stored at
762 ~/GNUstep/.AppInfo/WindowMaker/
765 Sound support
766 -------------
768 Sound support is now on by default. Even if you don't use sound the overhead
769 is very small, and has no impact on performance. If you still want to
770 optimize it and remove a few hundred of bytes, then use --disable-sound or
771 --enable-sound=no options when you configure Window Maker.
774 --- 0.20.0
776   
777 Multihead support. wmaker will now manage all screens that are attached to the
778 display. 
779 ------------------------------------------------------------------------------
780   
782 It does so from a single process (instead of spawning a new process for each
783 screen, like fvwm does). This keeps memory usage a lot lower than fvwm.
785 State files have a suffix .n, where n is the number of the screen.
787 Since I don't have a real multiheaded machine, it probably has bugs.
789 Superfluous
790 -----------
792 Yet another useless superfluous animation. Find out what exactly it is
793 by yourself :)
796 exitscript
797 ----------
799 ~/G/L/W/exitscript will be called automatically when wmaker is exited.
802 New runtime options
803 -------------------
805 1. Miniaturization animation is now selectable by a runtime option
806 Add a line with
808 IconificationStyle = <style>;
810 to your WindowMaker configuration file.
811 <style> can be one of: Zoom, Twist, Flip or None
812 Case doesn't matter, and default is Zoom.
815 2. Edge resistance.
816 This can be controlled by setting:
818 EdgeResistance = xxx;
820 in your WindowMaker configuration file.
821 xxx is an integer greater than 0 and represents the number of pixels of edge
822 resistance. Setting it to 0 (default) will disable this feature.
824 New theme
825 ---------
827 A new theme named Night, is available in this distribution.
831 --- 0.19.3
833 GIF support was added. You will need libgif 2.2 to use it.
835 cpixmap added. Syntax is the same as tpixmap or spixmap
838 --- 0.19.2
840 getstyle will include IconBack info in Style files.
842 --- 0.19.0
844 libPropList was updated. If you have it installed, you must upgrade or
845 WPrefs will crash because of bugs in libPropList.
847 New options
848 -----------
850 Balloons!
851 ---------
853 WindowTitleBalloons = YES;
854 will enable balloons for window titles that are not fully visible.
856 MiniwindowTitleBalloons = YES;
857 will enable balloons for miniwindow titles.
859 AppIconBalloons = YES;
860 for application icons (docked or not)
863 IconPosition
864 ------------
866 IconPosition (the position of the icons) is specified as:
868 IconPosition = c1c2c3;
870 where:
872 c1 can be t or b (meaning top or bottom)
873 c2 can be l or r (meaning left or right)
874 c3 can be v or h (meaning vertical or horizontal)
876 case is insensitive.
878 For example, 
879 IconPosition = blh;
881 is the old iconPosition position.
883 IconPosition = trv;
885 will place the icons over the Dock.
887 New window attribute
888 --------------------
890 EmulateAppIcon = YES; will make the window have an application icon.
891 Only use this option for fully specified windows (like rxvt.Rxvt).
892 NEVER use in generic window specifications (like * or rxvt).
893 You must restart the application for the attribute to take effect.
896 WPrefs.app
897 ----------
899 Read WPrefs/README
902 --- 0.18.1
904 Boolean balues have changed!!! YES, Y and any non-zero integer will
905 mean TRUE and anything else (including True) will mean FALSE. This
906 is to conform to the OpenStep values used for booleans and
907 not cause headaches later, when GNUstep apps also starts using
908 defaults and users will try using True wich won't get recognized.
911 --- 0.18.0
913 Clip
914 ----
916 Clip button layout was changed. IT IS TEMPORARY AND THE DEFINITIVE LOOK
917 WILL BE DIFFERENT!!!
920 libPropList
921 -----------
923 More bugs were fixed in it. Upgrade the library if you have an older version
924 installed, with the one included.
927 Property list menus
928 -------------------
930 Format for property list menus has changed! The redundant array for
931 submenus was removed, so a menu that looked like:
933 ( Applications,
934   ("Xterm", EXEC, "xterm"),
935   ( 
936     (Paint,
937         ("Gimp", EXEC, "gimp"),
938         ("XV", EXEC, "xv")
939     )
940   )
943 must be changed to:
945 ( Applications,
946   ("Xterm", EXEC, "xterm"),
947   (Paint,
948         ("Gimp", EXEC, "gimp"),
949         ("XV", EXEC, "xv")
950   )
955 Misc
956 ----
958 NUMLOCK_HACK is back. This time it works and is enabled by default.
959 If you think you don't need it and promise me that you won't send 
960 "bug" reports saying that shortcuts stop working after a while, you can
961 disable it ;) It will save some memory and CPU.
964 Configuration
965 -------------
967 Removed the SwapMenuButton option and added 3 finer grained options:
969 SelectWindowsMouseButton
970 WindowListMouseButton
971 ApplicationMenuMouseButton
973 Values that can be used are Left, Middle, Right and Button1 through Button5
974 Left is equivalent to Button1, Middle to Button2 and Right to Button3
977 Removed the WorkspaceChangeDelay option and corresponding action.
978 Removed AClipColor and IClipColor
981 Added the SelectKey back
984 Changed default binding of Window commands menu from F10 to Control+Escape
986 --- 0.17.4
988 Misc
989 -----
991 libPropList has changed! Upgrade it before compiling wmaker.
993 Hopefully the bugs that caused wmaker to crash if an error is found
994 in the config files is fixed. If you do crash wmaker with a bad
995 file, please try to find out the smallest possible portion of the file
996 that still crashes wmaker and send it to me.
999 New Options
1000 -----------
1002 PixmapPath was split to PixmapPath and IconPath. PixmapPath is the path
1003 for the pixmaps used as textures and IconPath is for the icons. 
1004 Don't forget to add IconPath to your current configuration file.
1006 There's also a new library in ~/GNUstep/Library/Icons. You should place
1007 your icons there, since icons are not a WindowMaker specific resource.
1010 DontConfirmKill=YES; will disable the confirmation panel for Kill
1013 --- 0.17.3
1015 Interface Changes
1016 -----------------
1018 Unhide Here in the appicon menu was changed to be the first entry.
1019 This way you can unhide the appicon with a single click without
1020 even moving the pointer.
1023 Clip Commands
1024 -------------
1026 The collect icons commands was renamed to attract icons and
1027 the attract icons options was renamed to Auto attract icons.
1029 The Remove Selected Icons was renamed to Remove Icon(s). It will
1030 act as before if some icon is selected and will remove the clicked
1031 icon (without confirmation) if it is not.
1033 Added a Keep Icon(s) command that will keep the selected icons if
1034 any is selected and the current one if none.
1036 The Move To command was renamed to Move Icon(s) To.
1039 --- 0.17.0
1041 If you have libPropList installed, you might want to reinstall it,
1042 replacing with the included libPropList. It has a small bug fix.
1044 Misc. Changes
1045 -------------
1047 Removed --with-gnome and made MWM_HINTS defined by default.
1048 This means that "GNOME support" will work with no additional
1049 flags passed to configure. 
1051 Added support for KDE, by adding a DisableWorkspaceMouseActions option.
1052 Set it to YES and run krootwm to be able to use everything in kfm.
1055 Shortcuts for Root Menu
1056 -----------------------
1058 There is now a new SHORTCUT optional keyword for the menus.
1059 For example, you can bind Control-F1 to xterm with:
1061 "XTerm" SHORTCUT Control+F1 EXEC xterm
1063 or F2 to ARRANGE_ICONS with:
1065 "Arrange Icons" SHORTCUT F2 ARRANGE_ICONS
1068 All commands allowed in the menu file accept the keyword, except for
1069 MENU and OPEN_MENU
1072 Interface Changes
1073 -----------------
1075 ** Configuration of docked applications is now done in a panel instead of
1076 in the menu. 
1078 ** Added a command menu for application icons
1080 ** Shift double-click on the application icon will unhide the app
1081 in the current workspace.
1084 Option Changes
1085 --------------
1087 NotMiniaturizable option changed to NoMiniaturizeButton
1088 NotClosable option changed to NoCloseButton
1091 Speed options values are now UltraFast, Fast, Medium, Slow or UltraSlow
1092                                               ^^^^^^
1094 Removed the Select keyboard binding. You can access it in the window
1095 commands menu.
1097 Removed the ClipMaxIcons option and made it a compile time option.
1099 Removed the ConstrainWindowSize option
1101 Renamed NoSound to DisableSound
1103 Renamed NoAutowrap to DontLinkWorkspaces
1105 Renamed NoDithering to DisableDithering
1107 Renamed NoAnimations to DisableAnimations
1109 Removed the LeftHanded option and added a SwapMenuButton option.
1110 SwapMenuButton will make the rubberband selection in the root window
1111 be bound to the right button and the root menu to the left button.
1114 New way to display temporary icons
1115 ----------------------------------
1117 The icons that are attracted by Clip, but will not be kept after the
1118 application close, are now using a different color for shading, unlike previous
1119 version that always used white. This will improve look for very different color
1120 combinations, and allow the user to control the look of the shaded icon.
1121 The color used for shading the icons is computed as follows:
1123 First a color is computed depending on the IconBack type:
1124  - for solid the color is the solid color itself.
1125  - for simple gradients the color is (from_color + to_color)/2.
1126  - for multiple gradients, the color is the first color in list.
1127  - for pixmaps, the color is the solid color specified for that pixmap.
1129 Then the color is made lighter by multiplying each red/green/blue filed with
1130 1.7 and limiting each field to 0xff in case they exceed this value.
1131 Then this new color will be used by superposing it with the icon we want to
1132 shade, using a proper alpha value.
1134 To control the color for shading is simple:
1136 - In case of multi gradients you just need to put the first color, as the color
1137 you like. WindowMaker do not use the first color in the list to directly build
1138 the gradient, but only when it needs a solid color for something (like in this
1139 case).
1141 - For pixmaps, put the needed color as the solid color the syntax for pixmaps
1142 require. This color is also not used when displaying normal icons, just when
1143 solid colors are needed (like this case).
1145 - For solid color, or simple gradients, in case the color it uses after
1146 computing is not good enough, you can always convert the solid or simple
1147 gradient to a multi gradient with the same look, and use that one. In this
1148 case is simple, just put the needed color as first color in list.
1150 Please note that this will not slow down WindowMaker, because the IconBack is
1151 read only once at startup, and then only if it is changed. After reading it WM
1152 will construct the image of the tile, and use the image instead of recomputing
1153 the gradient every time.
1155 Here are 2 examples of converting solid or simple gradient to a same looking
1156 multi gradient:
1158 IconBack = (solid, Blue);
1159 will become
1160 IconBack = (mhgradient , LightBlue, Blue, Blue);
1161 using LightBlue as color for shading.
1163 IconBack = (dgradient, "#284569", "#082420");
1164 will become
1165 IconBack = (mdgradient, "#183454", "#284569", "#082420");
1166 looking the same, but using #183454 for shading.
1169 New Sound Server Location
1170 -------------------------
1172 The sound server new URL is http://www.frontiernet.net/~southgat/wmsound
1173 Also it seems to be running on FreeBSD too (with little changes maybe).
1176 --- 0.16.1
1178 WINGs
1179 -----
1181 The path for the WINGs resource files was changed. If you don't
1182 do make install, you must move /usr/local/share/WindowMaker/Resources to
1183 /usr/local/share/WINGs
1186 New Options
1187 -----------
1189 The following new options are available:
1190 NewStyle = Yes/No; (static) Replaces --enable-newstyle
1191 DisableDock = Yes/No; (static) Same as -nodock command line option.
1192 DisableClip = Yes/No; (static) Same as -noclip.
1193 Superfluous = Yes/No; (dynamic) Replaces --enable-superfluous.
1195 NOTES.
1196 - The static options are only read at startup. Changing them, needs to restart,
1197   so they will be accounted.
1198 - DisableDock and DisableClip have lower precedence than -nodock -noclip
1199   command line options. If both option/command line option are given, then the
1200   command line option will be accounted.
1203 Start Hidden option
1204 -------------------
1206 The start hidden option was fixed, and made to be an application wide option.
1207 It will apply to every window the application owns. Also its place in the
1208 Attribute Inspector panel, changed accordingly, to reflect this.
1209 The start miniaturized is however still applying to particular windows of an
1210 application, unless the option is set for the class.
1211 Start miniaturized, will override start hidden if both set.
1213 IMPORTANT NOTE.
1214 Because of the way Netscape Communicator is implemented, it is NOT possible
1215 to set the start hidden or miniatirized flags for it. This is because Netscape
1216 chooses to send a second map event to the window it maps. This makes the
1217 window to receive a second map request and to be unhidden or maximized back,
1218 immediately after it was hidden or miniaturized by WindowMaker at startup.
1222 --- 0.16.0
1224 Misc. Changes
1225 -------------
1227 The NextMenuBehaviour option was renamed to WrapMenus
1228 The WorkspaceTiedMiniwindows option was renamed to StickyIcons
1230 The .tif files were renamed to .tiff
1233 Selecting Mini Windows
1234 ----------------------
1236 Now miniaturized windows can be selected as well as normal windows.
1237 You can do this by Shift-Click-ing them. They will be marked, and will follow
1238 you through workspaces like normal selected windows do.
1239 Miniaturizing a window will no longer deselect the window, but will place the
1240 icon and mark it as selected.
1241 The only difference between miniaturized and normal window selection is that
1242 for the moment the rubber-band selecting method works only for normal windows.
1245 Icon Selection Panel in Attributes Editor
1246 -----------------------------------------
1248 Now, selecting icons is as easy as clicking in the file name in a list.
1251 Simplified Options
1252 ------------------
1254 IconSlideStep, IconSlideSlowDown and IconSlideDelay were merged to 
1255 IconSlideSpeed
1257 MenuScrollStep and MenuScrollDelay were merged to MenuScrollSpeed
1259 ShadeStep and ShadeDelay were merged to ShadeSpeed
1262 Valid values for them are: Fast, Normal, Slow or UltraSlow
1264 If you want to fine tune the values, they can be changed in wconfig.h
1265 Send me your set of values with an indication of how fast is your hardware,
1266 so that I can make the default values more adequate.
1269 New Window Attributes
1270 ---------------------
1272 Added StartMiniaturized and StartHidden as window attributes and
1273 removed the previous implementation. Also removed the dock menu entries.
1274 They are now settable in the Attributes Panel.
1276 Also added DontSaveSession attribute. This way, you won't end up with multiple
1277 unwanted copies of the same app after the previous session is restored.
1278 I start X with a xterm in .xinitrc instead of wmaker, wich will cause the
1279 xterm restored by wmaker be duplicate. Just add -name something to the
1280 xterm started form .xinitrc and mark DontSaveSession=YES for that window.
1284 User Specifiable Visual IDs
1285 ---------------------------
1287 wmaker now supports different visuals than the default one. It isn't of much
1288 use for most people, but can be usefull for lucky SGI users who want it
1289 to use TrueColor instead of the default PseudoColor.
1291 wmaker -visualid VISUAL_ID
1293 where VISUAL_ID is the hex code for the visual you want.
1295 Note: I don't have an SGI box and haven't tested it...
1299 Starting Workspace
1300 ------------------
1302 The starting workspace is identified in the following order:
1303 1. If the app is omnipresent will be mapped on the current workspace.
1304 2. Else if the application have a StartWorkspace option set as attribute
1305    then this one will be used.
1306 3. Else, if the application was started from Clip, the workspace on which
1307    the Clip from where it was started is used.
1308 4. Else the current workspace is used.
1310 Restoring saved sessions will always use the saved workspace, no matter
1311 what other options are, except onmipresent.
1315 --- 0.15.1
1317 Workspace specific mini windows
1318 -------------------------------
1320 The minimized windows can be workspace specific, being more consistent with
1321 the rest. This is because minimized window represents just another state of a
1322 window (like normal or shaded), which all are workspace specific.
1323 This (or the old "present anywhere") behavior can be set using an option in
1324 the WindowMaker database: WorkspaceTiedMiniWindows = Yes/No;
1326 New way to animate the blowing icons
1327 ------------------------------------
1329 There is now a compile time option that allows one to set how the icons are
1330 animated when detaching from dock/clip in superfluous mode.
1331 By default the classic "Falling pieces" animation is used.
1332 If SPREAD_ICON is #define-ed in wconfig.h, then a "Spread in four directions"
1333 animation is used instead. Take a look at the section where this is described
1334 in src/wconfig.h
1335 By default there is #undef SPREAD_ICON to select "Falling pieces" animation.
1337 Auto Colapse for Clip
1338 ---------------------
1340 The clip now supports an option named "Auto Collapse" which can be set from
1341 the clip main menu. When set, clip will stay collapsed, and will show itself
1342 when the mouse moves over it. While the mouse is over it, or over any of the
1343 icons attached to the clip, the clip will stay uncollapsed, letting you to
1344 access the attached icons. This is not true for applications like asclock, or
1345 applets of that kind, because the icon window do not belongs to WindowMaker,
1346 but to the application itself. For such icons you must keep the mouse over the
1347 icon groundplate, else it will collapse back. But usually these type of icons
1348 will not stay in a collapsed clip, since one needs to see what they show.
1349 When the clip is leaved it will collapse back after a delay of 1 second, unless
1350 the mouse is moved back to the clip area. The delay can be set modifying
1351 AUTO_COLLAPSE_DELAY in wconfig.h. Default is 1000 (ms) which means 1 second.
1356 --- 0.15.0
1358 Changed name from Fiend to Clip
1359 -----------------------------------
1361 All occurrences of word Fiend with or without capital F were replaced with
1362 the corresponding Clip (same capital).
1363 This affects all configuration files under ~/GNUstep that contain this word.
1364 It can be refered as "Workspace Dock" too.
1367 New option in Clip menu, and extended Clip behavior
1368 ---------------------------------------------------
1370 The following new items are available in the dock menu:
1372 1. Attract Icons
1373 2. Keep Attracted Icons
1374 3. Collect Icons
1375 4. (Un)select All Icons
1376 5. Remove Selected Icons
1377 6. Move To
1378 7. Start miniaturized    (also available for regular dock)
1379 8. Start hidden          (also available for regular dock)
1380 9. Selected
1381 10. Set icon...          (also available for regular dock)
1384 Here is what they do:
1386 1. "Attract Icons" will let the Clip to attract and attach any new appicon that
1387    is created when an application starts. It will not do this if the Clip is
1388    full. If the Clip is Collapsed then the appicon will be hidden after it is
1389    attached.
1390 2. "Keep Attracted Icons" will tell the Clip to keep the attracted appicons,
1391    after the application is closed. Without this the appicons will vanish,
1392    leaving the Clip in the original state. If you move an appicon that was
1393    attracted from Clip to regular Dock, it will be kept when closed, no matter
1394    what "Keep Attracted Icons" is set to in Clip.
1395 3. "Collect Icons" will collect all appicons that are not yet attached to Dock
1396    or Clip, and attach them to the current workspace Clip. The value of
1397    "Keep Attracted Icons" will apply when applications close. If Clip is
1398    collapsed, the appicons will be hidden.
1399 4. "(Un)select All Icons" will select all icons in the clip if none is
1400    selected, or it will deselect all selected ones. The selected icons are
1401    marked using a small triangle in the bottom right corner of the appicon.
1402    The color of the mark is set using SClipColor in WindowMaker domain
1403    database.
1404 5. "Remove Selected Icons" will remove from Clip all selected icons. The ones
1405    that still run, will be detached, all the others will vanish.
1406 6. "Move To" will transfer all selected icons to another workspace and attach
1407    them to the Clip in that workspace. If none is selected, only the one the
1408    mouse was pressed on will be moved.
1409 7. "Start miniaturized" will launch (or autolaunch if set) the application in
1410    a miniaturized state.
1411 8. "Start hidden" will launch (or autolaunch if set) the application in a
1412    hidden state. Note that only one of the two can be set at a time.
1413 9. "Selected" can be used to toggle the selected state of the appicon
1414    individually. The same can be achieved using Shift-LeftClick on the appicon.
1415    In fact the intended way of toggling the selected state is by using
1416    the Shift-LeftClick on icon. The menu entry is just another way to do the
1417    same.
1418 10. "Set icon..." will allow one to set the image for the appicon. The image
1419    will be updated without restart, and also all appicons in the same
1420    instance.class as the one we set for, will be updated.
1422 So a simple way of avoiding the screen to be filled up with appicons is to set
1423 the "Attract Icons" in the Clip. Also the "Keep Attracted Icons" can be set to
1424 No, so the attracted icons will be deleted when application exits, thus leaving
1425 the Clip clean. If also one to not want to see the appicons that keep filling
1426 the Clip, he can set the Clip to be Collapsed.
1428 Getting rid of unneeded icons in Clip is as simple as selecting them
1429 individually using Shift-LeftClick, and then using the "Remove selected Icons"
1430 entry in menu.
1433 Support for different visuals.
1434 ------------------------------
1436 WindowMaker is now able to support any visual, except DirectColor, in any
1437 depth from 1bpp to 32bpp.
1439 One can start the X server with different visuals, by passing the X server the
1440 right option. For XFree 3.3.x is -cc <id>.
1441 WindowMaker is not yet able to choose a different visual from the Default one
1442 on a given screen, but can use any default visual it finds, except the direct
1443 color visual.
1444 For example starting X like (for XFree 3.3.x, and if the driver for the
1445 card supports this. Read the man page for your X server):
1446 startx -- -bpp 8 -cc 0 will give you the StaticGray visual.
1447 startx -- -bpp 8 -cc 1 will give the GrayScale visual
1448 and so on.
1450 Wrlib code is now generic, and will support any visual except DirectColor in
1451 any depth. Programs written with wrlib can work on different visuals from
1452 the default visual for a given screen.
1453 Behavior in different visuals can be tested using the testgrad program in
1454 wrlib subdirectory in distribution.
1455 testgrad -h will show the usage.
1457 Multidiagonal gradients are also implemented now in wrlib, and a new algorithm
1458 is used to speed up the generation of diagonal gradients.
1461 New arrangement of the directory structure under ~/GNUstep/
1462 ---------------------------------------------------------------
1464 To better adapt to theme support the directory structure changed under
1465 ~/GNUstep/Library/WindowMaker
1467 1. Style directory moved to Styles.
1468 2. Added the following directories: Backgrounds, IconSets, Pixmaps, Sounds and
1469    Themes.
1470 3. The .style files no longer get copied in the user's Styles directory.
1471    Instead they are read from the global /usr/local/share/WindowMaker/Styles
1472    directory.
1474 Under ~/GNUstep/Defaults the following changes occurred:
1476 1. A default WMState is installed by wmaker.inst.
1477    It contains the dockit program assigned to the top icon of the dock, and
1478    the wmsetbg program assigned for the drop command on both dock's and clip's
1479    main icon.
1480    Double clicking the dock's main icon will bring up dockit that will let you
1481    dock any application that do not have an application icon.
1482    Dropping an image on dock's or clip's main icon, from an Offix DND aware
1483    application, will put the image on the background tiled, and will update
1484    WindowMaker domain database file.
1485 2. Syntax of WMState changed a little. The old position will not be restored
1486    when you will first start the new version, but after that it will be
1487    normally remembered. This is because now the main clip icons is only saved
1488    once, not for every workspace.
1489    You should replace Fiend with Clip in any place where it appears, if you
1490    want to keep the old WMState file, else it will not work.
1491 3. At compile time, it will detect if you have support for tif, and will
1492    install a WMWindowAttributes with corresponding image name extension
1493    (.tif or .xpm). This is true only for pixmaps that come with the source
1494    distribution and get installed under /usr/local/share/WindowMaker/Pixmaps
1496 The menu file changed a lot. Old menu file will *not* work with new theme
1497 support, so please upgrade.
1500 New behavior of OPEN_MENU command
1501 ---------------------------------
1503 The OPEN_MENU command now supports the following syntax:
1504 1. File menu handling.
1505    // opens file.menu which must contain a valid menu file and inserts
1506    // it in current position
1507    OPEN_MENU file.menu
1508 2. Pipe menu handling.
1509    // opens command and uses it's stdout to construct menu.
1510    // Command's output must be a valid menu description.
1511    OPEN_MENU | command
1512 3. Directory handling.
1513    // Opens one or more directories and construct a menu with all
1514    // the subdirectories and executable files in them sorted alphabetically.
1515    OPEN_MENU /some/dir [/some/other/dir ...]
1516 4. Directory handling with command.
1517    // Opens one or more directories and construct menu with all
1518    // subdirectories and readable files in them sorted alphabetically,
1519    // preceding each of them with command.
1520    // WITH is a required keyword!!!
1521    OPEN_MENU /some/dir [/some/other/dir ...] WITH command -options
1523 Please note that because of the 'WITH' keyword old menu files no longer work
1524 for the OPEN_MENU with a command.
1527 Theme support
1528 -------------
1530 Theme support is now as easy as untar-ing a tarball in the right place.
1531 Because of the way OPEN_MENU works, they can be installed on a global
1532 shareable basis, or for personal user use.
1533 Themes installed under ~/GNUstep will be available only for a user, but
1534 if if they are installed under /usr/local/share/WindowMaker they will be seen
1535 by all users. This is also true for style files, background images, pixmaps,
1536 etc that get installed under /usr/local/share/WindowMaker.
1537 Themes can be saved or loaded using the Appereance menu.
1539 Also support for different IconSets is available. You can save or load a new
1540 IconSet using the Appereance menu.
1542 Setting background images is now as simple as putting the images in the right
1543 place (~/GNUstep/Library/WindowMaker/Backgrounds or
1544 /usr/local/share/WindowMaker/Backgrounds, or any other place in your
1545 PixmapPath). Then use the Appereance menu. They will be instantly available
1546 since they are opened by a OPEN_MENU command. Also the image do not need to
1547 have a .jpg or any other extension. It will be recognized anyhow.
1548 As an example please see the OpenStep theme supplied with WindowMaker.
1549 The OpenStep image is a jpeg file without extension.
1551 Please keep in mind that anything under /usr/local/share/WindowMaker will be
1552 available for all users.
1555 New options for wmsetbg and getstyle
1556 ------------------------------------
1558 wmsetbg now accepts the following options:
1559 usage: wmsetbg [-options] image
1560 options:
1561  -d             dither image
1562  -m             match  colors
1563  -t             tile   image
1564  -s             scale  image (default)
1565  -u             update WindowMaker domain database
1566  -D <domain>    update <domain> database
1567  -c <cpc>       colors per channel to use
1569 By default, it will try to guess if dithering is needed or not and proceed
1570 accordingly.
1571 Using -d or -m will force it to dither or match colors.
1573 Dithering for more than 15bpp is generally not needed, and will only result
1574 in a slower processing.
1575 Don't use dithering except when needed, because it is slower. Else rely on
1576 wmsetbg which will detect if dithering is needed and use it.
1578 -u will update the WorkspaceBack in the default database domain file in
1579    ~/GNUstep/Defaults/WindowMaker, and let WindowMaker refresh the screen.
1580    Please note that this option only works under WindowMaker, and will have no
1581    effect under other window managers, since it rely on WindowMaker to update
1582    the image after it reads the updated defaults database.
1584 -D <domain> is same as above, but will update the domain <domain> instead of
1585    the default WindowMaker domain.
1587 -c <cpc> will set the color per channel to use. Only needed for PseudoColor
1588    visuals. WindowMaker will automatically pass the value read from the
1589    WindowMaker domain database.
1592 getstyle now have the -t option, that instructs it to read all options
1593 related to theme. Without -t getstyle will read only style options that
1594 means it will not read WorkspaceBack and IconBack.
1595 Use -t when you want to make a theme and need all theme options to be saved.
1596 Else it will extract just a style file.
1599 Session management support
1600 --------------------------
1602 Two new commands are available for use in menus:
1604 SAVE_SESSION and CLEAR_SESSION.
1606 SAVE_SESSION:
1607 will take a snapshot of all running applications, and their current hints
1608 (shaded, hidden, minimized, geometry and workspace they are on),
1609 and save it inside the WMState file. Also the current workspace we are on is
1610 saved. The applications that are running and were started from dock or clip are
1611 marked, so they will be attached to the corresponding dock/clip when restored.
1612 This state is restored every next session, until a new one is saved or
1613 CLEAR_SESSION is used.
1615 CLEAR_SESSION:
1616 will clear any previous saved session.
1618 There is also a run time option named SaveSessionOnExit = Yes/No; that allows
1619 one to automatically save the state of desktop when leaving WindowMaker.
1620 This way next session, the state of the desktop before last exit is restored.
1622 Please note that if this option is set to Yes, than any manual saving of the
1623 state, or any clearing of the state will be overridden when exiting
1624 WindowMaker.
1626 These options are available under the "Workspace" menu.
1629 User WindowMaker configuration files are now merged with global ones
1630 --------------------------------------------------------------------
1632 When starts WindowMaker will look for database domain files under
1633 $GNUSTEP_USER_ROOT/Defaults or ~/GNUstep/Deafults to be read. (In this order).
1635 If they are not available then it will scan for them in
1636 $GNUSTEP_LOCAL_ROOT/Defaults, $GNUSTEP_SYSTEM_ROOT/Defaults or
1637 /usr/local/GNUstep/Defaults (in this order).
1639 Even if the file was found or not, it will always load the corresponding domain
1640 file under /usr/local/share/WindowMaker/Defaults.
1642 Then if the user file was found it will merge it over the global file, else
1643 the global file will be used.
1645 This way any settings that are set by the system administrator in the shared
1646 file will be available for users that do not have them in their config files.
1647 Any option the user have in his config file will override the one in the
1648 shared domain file.
1650 So any new runtime options that appear in WindowMaker domain, do not need to
1651 be set in all user files, except the ones the user wants a different behavior
1652 from the default set for all users in the shared file.
1654 Also it is possible for the user to not have any personal domain databases, and
1655 the global shared ones will be used, but it still needs to have the directory
1656 structure, so WMState gets written on session exit.
1657 So all it needs to have is ~/GNUstep/Defaults directory available.
1660 New behavior of the Slide Icons
1661 -------------------------------
1663 Animation constants are now runtime.
1664 They are:
1665 IconSlideDelay = 0;
1666 IconSlideStep = 5;
1667 IconSlideSlowDown = 50;
1669 To better adapt both slow and fast machines the behavior of sliding icons
1670 changed in the following manner:
1672 Old one was to keep moving the icon with a constant step (default 5 pixels)
1673 until it reached the destination.
1675 Now it will use a new parameter named IconSlideSlowDown to speed up or slow
1676 down the moving.
1678 Instead of moving it with a constant step it will use IconSlideSlowDown to
1679 divide the distance to the destination, and use this value as the first step.
1680 Then is will compute the remaining distance and will again use
1681 IconSlideSlowDown to divide it and get the new step. And so on.
1682 When the step to move becomes smaller than IconSlideStep, IconSlideStep will
1683 be used further until the destination is reached.
1685 This way a nice deceleration effect is achieved, since while the icon
1686 approaches destination, it will use smaller steps, gibing the illusion that
1687 the icons is moving slower.
1689 IconSlideDelay will give the pause between steps, and is expressed in ms.
1691 Giving large values to IconSlideSlowDown (>1024 for 1024x768 screen) will
1692 result in the old "constant step advance" behavior, since the computed step
1693 will always be smaller than IconSlideStep, and the last will be used instead.
1695 Making IconSlideSlowDown = 0 or 1, will result in an instant jump to the
1696 destination without any animation.
1699 Attribute editor
1700 ----------------
1702 Because the icon images on screen automatically update after any change in
1703 WMWindowAttributes domain file, the use of both Save and Apply buttons is no
1704 longer needed. If one wants to just apply the setting to the current window
1705 only, he will only use the Apply button.
1706 If he wants them saved for all applications in the same instance and/or class
1707 the using the Save button will write them to disk, and automatically
1708 WindowMaker will update all the icons that need to be updated on screen.
1711 Sound support
1712 -------------
1714 Some basic sound support is now part of WindowMaker. The sound server is not
1715 yet part of WindowMaker distribution, so you need to download it separately.
1716 This is because is linux specific, and need some changes before it can be
1717 included.
1718 Until them if you have a linux system and want to use sound, use the
1719 wmsound-0.5 available at http://www.geocities.com/SiliconValley/Bay/7874
1720 Download that package, and only build the sound server there.
1721 DO NO APPLY ANY PATCHES FROM THERE!, because they are already applied.
1722 Just build the sound and copy the executable in /usr/local/bin
1723 Follow the rest of the install steps described there, except the patch-ing
1724 procedure.
1726 To enable sound for WindowMaker pass --enable-sound to configure.
1728 Also use NoSound = Yes/No; to enable/disable sound at runtime without killing
1729 the sound server.
1731 If you cannot set the sound to work yet, then is not for you.
1732 Wait until the sound server will be fixed and will be part of WindowMaker.
1735 New entries in WindowMaker domain database
1736 ------------------------------------------
1738 The following entries have been added to the runtime options:
1740   SaveSessionOnExit = No;
1742 will autosave (or not) the session state on exit.
1744   WindowPlaceOrigin = "64, 64";
1746 will offset all windows in auto or cascade placement mode with the value
1747 (in pixels) before placing them on screen. First is horizontal direction and
1748 second is vertical.
1749 This do not apply to windows that request a specific position on screen.
1750 This is useful if you want your Clip on the top left corner to not be
1751 overlapped by mapping windows.
1752 It will let it to have a row and a column of docked appicons near the screen
1753 edge, that will not be overlapped by windows.
1754 If you set it to "128, 128" it will have 2 rows and 2 columns not overlapped.
1757   NoSound = No;
1759 Enable/disable sound at runtime without the need of killing the sound server.
1762   MenuScrollDelay = 10;
1763   MenuScrollStep = 5;
1765 Constants for the menu scrolling animation.
1767   IconSlideDelay = 0;
1768   IconSlideStep = 5;
1769   IconSlideSlowDown = 50;
1771 Constants for the icons sliding on screen. Explained above.
1773   ShadeDelay = 0;
1774   ShadeSteps = 15;
1776 Animation parameters for shading a window. How many steps it will take, and the
1777 delay between steps in ms.
1779   DoubleClickTime = 250;
1781 The time for the double click to be considered so. Expressed in ms.
1783   SClipColor = "#6f8ae2";
1785 Color for selected icons in Clip.
1787 All delays are expressed in ms.
1791 --- 0.14.1
1794 *** Enhanced fiend clone.
1796 Here are the new fiend features:
1797 1. Keys for raising/lowering the fiend, and their default values:
1798    FiendLowerKey = None;
1799    FiendRaiseKey = None;
1800    FiendRaiseLowerKey = None;
1802    All reside in WindowMaker configuration file.
1804 2. Added posibility to launch the workspace menu with button1 click on the
1805    idle indicator of fiend, or with button3 click on workspace name on the
1806    fiend.
1808 3. Added Control-button1-click on fiend's idle indicator, to create a new
1809    workspace and move to it. Same action as New item in Workspace menu.
1811 4. Fiend's idle indicator do have a color that reflects its normal/collapsed
1812    state.
1814 5. The delay between changing workspaces from fiend is now a runtime option:
1816    WorkspaceChangeDelay = 700;
1818    in WindowMaker configuration file.
1820 6. Application icons can be moved between dock and fiend now.
1822 7. The way workspaces are changed is controlled now by two runtime options:
1824    AdvanceToNewWorkspace=Yes/No;
1825    CycleWorkspaces=Yes/No;
1827    Both apply to either fiend navigating buttons or to next/prev worksapace
1828    keybindings. Both default to No, and are in WindowMaker configuration file.
1830 8. Also added posibility to advance to new workspace, no matter what value
1831    AdvanceToNewWorkspace have, with Control-button1-click on "next workspace"
1832    fiend button.
1835 *** Theme support ***
1837 Spixmap and tpixmap now work. Their syntax is:
1839 SomeStyleOption = (spixmap, file, color);
1840 SomeStyleOption = (tpixmap, file, color);
1842 - spixmap means scaled pixmap, so the image in the file will be scaled to
1843 adapt to the destination's size.
1844 - tpixmap means tiled pixmap, and the image from file will be tiled in the
1845 destination.
1847 file is searched in the PixmapPath, but can be a full path name.
1849 Color is used depending on which Style option is applied.
1850 For example in case of titlebars, color is used for miniwindows titles color.
1851 You are not restricted in selecting that color, but is better to put one
1852 that matches the overall color of the image.
1854 Currently they apply to all the options that accept (solid, color), or any
1855 type of gradient.
1856 This means they also apply to WorkspaceBack and IconBack, which allows theme
1857 support with the simple use of the setstyle and getstyle utilities.
1858 There is no need for an extra theme manager, just to include the needed
1859 options in the style files.
1861 In case of WorkspaceBack, color is used to be set in the background until
1862 the image gets loaded and displayed. This is to avoid the stippled screen
1863 the X server shows, in case the image is big and loads slow.
1864 There is a small utility in the util directory, named wmsetbg which is
1865 used to set the background image. This is needed for windowmaker not to
1866 freeze while loading and scaling the image.
1867 Currently it is hardcoded in windowmaker to use wmsetbg to set the background
1868 image, and is better to use it since is smaller that other image manipulation
1869 programs, and it is compiled with support for same image types as windowmaker.
1870 Since it comes and is installed with WindowMaker, there will be no need to
1871 download and use an external app, which also may not have support for the same
1872 image types as windowmaker.
1876 --- 0.14.0
1878 *** Fiend clone.
1880 The fiend clone is a dock extender, that lets you dock more than the default
1881 10-12 icons in the dock. It actually lets you dock how many icons you like,
1882 with a current default of 25 per workspace. The fiend have different docked
1883 icons on every workspace. Also the fiend main icon shows you the workspace
1884 you're on and lets you navigate through the workspaces with the small green
1885 buttons on the low right corner.
1886 To save screen space the fiend can be collapsed to the main icon either
1887 from the fiend menu (available with right click on the fiend icons), or
1888 with a double left click on the main fiend icon, which is a toggle for
1889 the collapsed/uncollapsed state.
1890 Collapsed state is marked by a different title color.
1891 Pressing on the small buttons on the low right corner, the workspaces are
1892 changed in increments of 1 to the left or right, but keeping the button
1893 pressed over them will continuously advance through workspaces until the
1894 mouse is moved away from the buttons or the button is released.
1895 The delay between workspace changes is set by FIEND_WKS_CHANGE_DELAY in
1896 src/wconfig.h, and defaults to 700 ms.
1897 Unlike the dock, fiend can hold icons in any directions, and can be placed
1898 in any position on screen.
1900 When an icons is to be docked, but the position can be either in the dock
1901 or in the fiend, the dock will be used first, and the icon will be docked
1902 there.
1904 Here are the new runtime options introduced by the fiend:
1905 Files are located in ~/GNUstep/Defaults/
1907 In WMWindowAttributes:
1908        "Logo.WMFiend" = {Icon = "Cone.xpm";};  - icon for the fiend
1910 In Windowmaker:
1911         FiendMaxIcons = 25;           - the max number of icons in fiend per
1912                                         workspace
1913         FiendTitleFont = "-*-helvetica-bold-r-normal-*-10-*-*-*-*-*-*-*";
1914                                       - the font used to show the current
1915                                         workspace
1916         FiendTitleColor = black;      - color for the uncollapsed fiend title
1917         CFiendTitleColor = "#616161"; - color for the collapsed fiend title
1918         AFiendColor = "#00ba70";      - color for the workspace changing
1919                                         buttons, when active
1920         IFiendColor = "#008000";      - color for the workspace changing
1921                                         buttons, when idle
1923 For the ones who don't want to use fiend, there is a option to wmaker named
1924 -nofiend that can be feed to the command line when starting wmaker.
1925 (This is the equivalent for -nodock, but removes fiend clone).
1927 The syntax of WMState file have changed, but you don't have to worry because
1928 WindowMaker will know to read the old format and will save it and further
1929 will use the new one. You do not need to change your file, for the new version
1930 to work.
1933 --- 0.13.1
1935 *** Enhanced Attribute editor.
1937 Now you can save defaults for all windows.
1938 Please note that only Icon, KeepInsideScree, and sometimes NoAppIcon
1939 can be useful in a normal environment. But others may have other opinion ;)
1940 If you set AlwaysUserIcon default for all windows, note that apps like
1941 asclock, wmload, wmmail, wmrack, will show that icon instead of their
1942 window.
1944 Now Attribute editor also counts for defaults saved for all windows,
1945 (not only the default "No" for all options hardcoded in WindowMaker),
1946 when saving options for some instance.class specification. This is to
1947 save disk space by saving only the options that differs from global defaults
1948 (either defaults for all windows or the hardcoded valued in WindowMaker).
1950 Attribute Editor now updates on the fly the appicon image or creates/deletes
1951 the appicon if you set that options in the Inspector panel and Apply them.
1952 Modifying Icon file, NoAppIcon or AlwaysUserIcon and Applying them will
1953 result in the image update for the app-icon.
1955 Note that if you apply but not save these options, the miniwindow image will
1956 not be updated. This is because app-icon is always on screen so it can be
1957 updated, but miniwindow image is read from the defaults database and from disk
1958 every time you minimize the window and is destroyed when you restore.
1961 --- 0.13.0
1963 *** Atribute editor is working ;).
1965 How it works is quite obvious.
1966 Anyway, here is a short description.
1968 Save   - only save the configuration in defaults database and updates
1969          WMWindowAttributes
1970 Apply  - only applies the values to the current window
1971 Revert - reverts the values from the defaults database
1973 Note that Save and Revert count for the window specification
1974 (instance & class), that are selected, and save/use the values for/from
1975 that.
1977  The Update button will show the icon who's name was typed in the textfield
1978 If the textfield is empty, will try to use the default icon.
1979 Also saving with and empty textfield for icon, uses the default icon.
1981  The Default button will use the icon in the textfield as default icon
1982 and save that value in WMWindowAttributes (Note that in this case is no
1983 need to press the Save button!). Also if the textfield is empty it will
1984 try to use the old default icon, if available.
1986 *** Now menus are saved between sessions, or over a restart.
1988  Just stick them to the desktop, and you will find them over sessions
1989 until you close them.
1990  Please note that only the root_menu, the window switch_menu and the
1991 workspaces_menu can be saved this way.
1993 *** Changed the lousy Windoze menu behaviour.
1995 This applies to 'NextMenuBehaviour = NO;'
1997  Now the items are no more automatically selected if you launch the menu
1998 and the mouse is over some item, if you use a short click to launch the
1999 menu (shorter than the default DBL click time).
2000  If you use a longer click or keep the mouse pressed, the item under mouse
2001 will be selected after that delay, and launched when you will release the
2002 mouse button.
2003  If the click was short, a second one is needed to launch the item.
2005 *** Autoarrange icons is now a runtime option
2008 AutoArrangeIcons = YES/NO;
2009 in 'WindowMaker'.
2011 *** Added configurable horizontal resize threshold
2014   HorizontalResizeThreshold = <n>;
2016 This will make the n pixels at the exterior side of the corner handle
2017 of the resize bar to restrict to horizontal only resize.
2018 Also you can use Shift-click&drag anywhere on the corner handle to
2019 restrict the resize only to horizontal.
2020 Note that the Shift-click&drag does not depend of the configured threshold
2021 and works completely independent.
2023 *** New option for OPEN_MENU (pipe from command)
2025 OPEN_MENU | /foo/bar/script
2027 will make a menu that is dinamically constructed by /foo/bar/script
2030 --- 0.12.0
2032 *** New option for OPEN_MENU
2034 OPEN_MENU /foo/bar/pics xv -root -quit
2036 will make a menu with all files in /foo/bar/pics and precede them
2037 with EXEC xv -root -quit
2039 thus, making a menu with entries like:
2042 "marble.gif" EXEC xv -root -quit marble.gif
2043 "water.jpg" EXEC xv -root -quit water.jpg
2047 *** Multicolor gradients
2049 (mhgradient, colorX, color1, color2, color3, ..., colorn)
2050 (mvgradient, colorX, color1, color2, color3, ..., colorn)
2052 You can put any number of colors >= 2. 
2054 colorX is a special color that is used as the solid color of the
2055 texture when wmaker needs a solid color (like in miniwindow title and
2056 resizebar)
2058 *** PixmapPath format changed
2060 What used to be
2062 PixmapPath = "/usr/local/share/pixmaps:~/foobar";
2064 must now be
2066 PixmapPath = ("/usr/local/share/pixmaps", "~/foobar");
2069 *** Added OffiX DND in dock
2071 Use the "Set drop arguments..." command in the menu and put a %d
2072 where the dropped object string should be substituted, like:
2074 xedit %d
2076 *** Escape thingies for menu and dock commands:
2078 %w - substitute with current selected X window ID
2079 %s - substitute with current selection
2080 %d - substitute with last dropped object
2081 %a(some text) - opens a input box with "some text" as a title. Then,
2082 the text typed will be substituted there
2084 \r, \n - substitute with corresponding characters
2087 *** The WMState file format has changed a little.
2088 The Command field for the dock application list is now a normal string,
2089 instead of a list. So, remove the parentheses and the commas for the command
2090 and join all the parts. Example:
2092 if it used to be
2094 Command = ( xterm," -geometry", "+10+10" );
2096 then make it
2098 Command = "xterm -geometry +10+10";
2101 --- 0.10.2
2103 AutoFocus = NO; disables automatic focusing of windows
2104 when they are first mapped
2107 --- 0.10.1
2109 titlebar gradients are in a single piece now
2111 the WMDock file was merged into the WMState file. You can insert this
2112 file in WMState and set it's key to Dock. For example, if your WMDock
2113 contains:
2116         Applications = { {Command = (); }};
2117         Position = "-64,0";
2118         Lowered = NO;
2121 and WMState contains:
2124         Workspaces = ( "Workspace 1" );
2127 then you can merge both and have:
2130         Workspaces = ( "Workspace 1" );
2131         Dock = {
2132                 Applications = { {Command = (); }};
2133                 Position = "-64,0";
2134                 Lowered = NO;
2135         };
2140 The configuration format has changed!! Forget everything about the old
2141 format.
2143 dockapp was removed and the old version will not work anymore. 
2145 the dialogs require tcl/tk. they will be rewritten in plain C
2148 These are some tips for people upgrading from older versions and don't want
2149 too many unused files around. There is no problem if you decide to keep 
2150 them for a while.
2152         you can  rm -r ~/gnustep if you don't want anything from there
2154         remove the files in /usr/local/share/WindowMaker before installation
2156         the /usr/local/share/pixmaps directory can be removed