# ***************************************************************************** # Name: FvwmTaskBar-plugins.patch.README # Athr: Michael D. Beynon (mdb) - beynon@acm.org # Date: 07/21/1997 : mdb - Created. # Desc: Mods to FvwmTaskBar with plugins. # ftp://mitac11.uia.ac.be/pub/FvwmTaskBar-with-plugins-970416.tgz # was used as the basis. # Note: I am using Solaris 2.5 on a Sparc 10. Since most people that # are looking at this are using Linux, there may be incompatibilities. # Let me know if any are found. # # To compile on Solaris, the plugins were a little delicate. # Compile the plugin source with -shared -fPIC flags. Leaving these # off will result in the plugins now working, but no error msgs! # # I used: CC=gcc272 -Wall -g -R/usr/imports/lib/X11R6.3 # LD.so=ld -r -R/usr/imports/lib/X11R6.3 # The -R... flag is for runtime shared object lib linking, and # the directory shown is particular to our setup. # ***************************************************************************** To apply patches ... % cd fvwm95-2.0.43a-Autoconf % cd modules/FvwmTaskBar % patch < WHEREVER_YOU_PUT_IT/FvwmTaskBar-plugins.patch I am assuming you rename the FvwmTaskBar that comes with fvwm95-2.0.43a to be something like FvwmTaskBar.orig, and put the taskbar with plugins in its place. Now run make distclean, configure and build as you normally would. Be sure to do the distclean, since the changes I made to Makefile.in will only be seen if the Makefiles are re-created. 07/21/1997 : mdb - Bug in FvwmTaskBar. I also fixed a couple small existing bugs in the task bar. The checking for .fvwm95rc options was not correct for anything starting with Auto, due to an incorrect length when checking for "AutoHide". LoopOnEvents made the assumption that all the X Event structures had a time field in the same place. Since this is obviously wrong, I made a change to fix this. The list of buttons used in ButtonArray.{c,h} does not include the id of the window. It seems, iconized and sticky windows were in the windows list and also fvwm messages caused them to be added twice. I tried to hack a quick fix, but it needs to be done like FvwmWinList current code does. Also, I ran gcc with -Wall, and this revealed many unused variables, so I went through and cleaned all this up. 07/21/1997 : mdb - Finished changes to FvwmTaskBar. I have made some changes FvwmTaskBar (and the plugins) to optionally see new unread mail on the taskbar. See the man page for FvwmTaskBar for more details. I modified the Tip window to be able to handle multiple lines. Then I used this to show entries from the users mail spool file. The location of this file is the same as for the mail fcn the taskbar had before. I also made a mod to allow an arbitrary command to be run on the hour. I use this to play sounds indicating that another hour of my life has slipped away. :^) Note that I needed to change the interface for a GoodyModule to include the loadable module's integer id in the init call. This allows me to decide if the AutoMailTip window is still open when the mail file becomes empty, and the tip needs to be removed. All provided goody modules have been changed. There is a small problem with the AutoMailTips as it stands now. If the screen is xlock'ed when the mail tip is displayed, it seems to "fight" with xlock for control. This shows my lack of knowledge in programming X, but I think it has to do with responding to the unmap call from xlock. This is not fatal, and is acutally a nice way to see if I have mail w/o unlocking the screen. (Yeah, I know I am just trying to justify it to myself) There was also a problem with FvwmTaskBar needing a line in ~/.fvwm95rc to find the icon files (specifically for the start menu). I changed the Makefile to pass the default FVWM_ICONDIR as it does for fvwm. (I also changed all the Makefiles to support installing not in /usr/lib/... since I don't have root access where I am -- these changes are not in any diffs) Now icons do not have to be fully qualified pathnames, and can just use the same icon directory as every other part of fvwm. 07/21/1997 : mdb - Details and sample .fvwm95rc *FvwmTaskBarMailCheckModuleAutoMailTip [type] This option controls the auto-display of new mail in a multi-line tip window. Three possible values are allowed for the optional type argument: Mail- FileTouched, MailFileBigger, or MailFileAnyChange. MailFileTouched means the mail spool file has been modified since the last access, MailFileBigger is when the mail spool file gets larger in size, and Mail- FileAnyChange is when the mail spool file gets larger or smaller. These conditions control when the AutoMailTip window is displayed. The default is Mail- FileAnyChange. *FvwmTaskBarMailCheckModuleMailTipUnblankScreen If set, the screen will be un-blanked when the mail tip is drawn. *FvwmTaskBarShowDateModuleHourlyCommand command Executes the command every hour. # .fvwm95rc taskbar section - this is an excerpt from my init # file to illustrate how to use my changes. # TaskBar module Style "FvwmTaskBar" NoTitle,BorderWidth 4,HandleWidth 4,Sticky,StaysOnTop,Circul ateSkip,ClickToFocus,Icon *FvwmTaskBarDeskOnly *FvwmTaskBarUseSkipList #*FvwmTaskBarUseIconNames *FvwmTaskBarGeometry +0-0 *FvwmTaskBarFore Black *FvwmTaskBarBack #c0c0c0 *FvwmTaskBarTipsFore black *FvwmTaskBarTipsBack bisque *FvwmTaskBarFont -adobe-helvetica-medium-r-*-*-*-120-*-*-*-*-*-* *FvwmTaskBarSelFont -adobe-helvetica-bold-r-*-*-*-120-*-*-*-*-*-* *FvwmTaskBarAction Click1 Iconify -1,Raise,Focus *FvwmTaskBarAction Click2 Iconify *FvwmTaskBarAction Click3 Module "FvwmIdent" FvwmIdent *FvwmTaskBarAutoStick *FvwmTaskBarStartName Start *FvwmTaskBarStartMenu menuStart *FvwmTaskBarStartIcon mini-startmenu.xpm *FvwmTaskBarShowTips #*FvwmTaskBarShowTransients #*FvwmTaskBarHighlightFocus #*FvwmTaskBarAutoHide #*FvwmTaskBarGoodyLoadableQuiet #*FvwmTaskBarGoodyLoadablePlugins /fs/unsupported/fvwm95-2.0.43a/lib/solaris-tes t #------------------------------------------------------------------- # Core dump # *FvwmTaskBarGoodyLoadableSymbol CheckLockModuleSymbol *FvwmTaskBarGoodyLoadableId .CORE *FvwmTaskBarCheckLockModuleIcon.CORE mini-bomb.xpm *FvwmTaskBarCheckLockModuleTip.CORE Core Dump #*FvwmTaskBarCheckLockModuleCommand.CORE Popup menuApplications *FvwmTaskBarCheckLockModuleLockFile.CORE $HOME/core #------------------------------------------------------------------- # Sound Control # *FvwmTaskBarGoodyLoadableSymbol GoodyModuleSymbol *FvwmTaskBarGoodyLoadableId .SPEAKER *FvwmTaskBarGoodyModuleIcon.SPEAKER mini-speaker.xpm *FvwmTaskBarGoodyModuleTip.SPEAKER Audio Control Panel *FvwmTaskBarGoodyModuleCommand.SPEAKER Exec /usr/demo/SOUND/bin/gaintool -Wp 845 738 #------------------------------------------------------------------- # Date Control # *FvwmTaskBarGoodyLoadableSymbol ShowDateModuleSymbol *FvwmTaskBarGoodyLoadableId .DATE *FvwmTaskBarShowDateModuleTip.DATE Date *FvwmTaskBarShowDateModuleCommand.DATE Function fcnFindOrRun "Calendar" Exec ical & *FvwmTaskBarShowDateModuleClockFormat.DATE %m/%d %I:%M%p *FvwmTaskBarShowDateModuleHourlyCommand.DATE Exec play /usr/demo/SOUND/sounds/cuckoo.au #------------------------------------------------------------------- # MailCheck Control # *FvwmTaskBarGoodyLoadableSymbol MailCheckModuleSymbol *FvwmTaskBarGoodyLoadableId .MAIL *FvwmTaskBarMailCheckModuleMailIcon.MAIL mini-mail.xpm *FvwmTaskBarMailCheckModuleTip.MAIL You have mail *FvwmTaskBarMailCheckModuleCommand.MAIL Exec xterm -T Mail -e XtermReadMail.csh *FvwmTaskBarMailCheckModuleNewMailIcon.MAIL mini-newmail.xpm *FvwmTaskBarMailCheckModuleNewMailTip.MAIL You have new mail *FvwmTaskBarMailCheckModuleNewMailCommand.MAIL Exec play /usr/demo/SOUND/sounds/doorbell.au *FvwmTaskBarMailCheckModuleUnreadMailIcon.MAIL mini-unreadmail.xpm *FvwmTaskBarMailCheckModuleUnreadMailTip.MAIL You have unread mail *FvwmTaskBarMailCheckModuleMailFile.MAIL /var/spool/mail/$USER *FvwmTaskBarMailCheckModuleAutoMailTip.MAIL *FvwmTaskBarMailCheckModuleMailTipUnblankScreen.MAIL # *****************************************************************************