Update the upstream changelog

Add missing information to the upstream changelog that ships with imwheel -
namely, the changes in the most recent releases, as described on the imwheel
homepage. Also standardize the formatting for readability.
Last-Update: 2010-02-20

Gbp-Pq: Name changelog-format
This commit is contained in:
Christopher Martin 2022-05-14 03:32:58 +08:00 committed by openKylinBot
parent 1523a9d589
commit 09deb62674
1 changed files with 455 additions and 377 deletions

832
ChangeLog
View File

@ -1,398 +1,476 @@
1.0.0pre12:
deprecate -p to do nothing, except print a message.
scan /proc/[0-9]*/stat for imwheel process to kill on -k
(* Security Fix *)
http://www.caughq.org/advisories/CAU-2004-0002.txt
fixed make distcheck
1.0.0pre11:
avoid bad events that cause an infinite loop!
1.0.0pre10:
fix @Exclude (argh)
this allows xv->grab to function normally again, with the right config.
when configuring, error when we can't link to X11
apparently too many idiots can't read warnings.
at this point all bugs are fixed and all acceptable additions to functionality
are finished...
if there are no reports within a few weeks, 1.0.0 will be released with
full documentation updates, and imwheel itself will be put to rest,
except for bug fixes.
(until I decided to do a total rewrite in a simpler, yet more powerful, manner.)
1.0.0pre9:
default action is now @Repeat,
so wheel-active applications get the right stuff
imwheel is meant for OLD apps...so in keeping with that
now that most modern apps can handle the wheel for real
it's time to remove the builtin keys...
however the old method of default keys is still available
via the -K option
-K now uses doWA routine, just like user configured actions do
1.0.0pre8:
added Button# syntax for input filter in imwheelrc
like Up can now be called Button4, Down can be Button5, etc...
(Left=6, Right=7, Thumb1=8, Thumb2=9, like always...)
squashed a segfault
fixed UNGRAB window name, class, and resource name resolution (used to get "(null)"s)
gpm is no longer built by default
gpm's docs are no longer built by default
1.0.0pre7:
search parent windows for a name, this should remove the need for -f.
1.0.0pre6:
fix -b
With some help from Malte S. Stretz <mss AT msquadrat.de>
example: -b 4589
will use button 4 and 5 as Up and Down like normal
will use button 8 and 9 as Left and Right, remapped
button 6 and 7 are ignored.
all imwheel entries that are Thumb1 and Thumb2 events will ne discarded
fix window name lookup, now uses XAtoms
Thanks Mark Baker <homer1 AT adelphia.net>
first tries _NET_WM_NAME(UTF8_STRING) if these Atoms are present
- whether UTF8 works in the imwheelrc...I do not know.
if that's NULL then it tries WM_NAME(STRING) if these Atoms are present
if that's still NULL then then it tries the old method...
avoid a possible segfault...dunno if it happens in the real world
1.0.0pre5:
added --auto-repeat inspired by a debian patch from
Thanks Darren Salt <linux AT youmustbejoking.demon.co.uk>
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=173964&msg=1
the code is untested, so all you stick users out there better test the stuff
and help debug it too!
if you set a repeat number to 0 for an action in the rc file,
then it will do autorepeat for as long as that button is held, I hope.
hid some warnings/infos/perrors behind -d debugging mode.
moved the system imwheelrc to /etc/X11/imwheel/imwheelrc
1.0.0.pre4: 1.0.0.pre4:
"\(root\)" works for non-wheel-fifos, as long as @Exclude isn't used. "\(root\)" works for non-wheel-fifos, as long as @Exclude isn't used.
instead use : instead use :
"\(root\)" "\(root\)"
,Up,Button4 ,Up,Button4
,Down,Button5 ,Down,Button5
etc... in your imwheelrc. etc... in your imwheelrc.
added mid-sequence keyups, put a - befreo the keysym for a keyup like this: added mid-sequence keyups, put a - befreo the keysym for a keyup like this:
".*" ".*"
,Up,Shift_L|R|-R|-Shift_L|O|-O|F|-F|L|-L|Return ,Up,Shift_L|R|-R|-Shift_L|O|-O|F|-F|L|-L|Return
this will type "Rofl" and press return, in all apps, on wheel up. this will type "Rofl" and press return, in all apps, on wheel up.
make sure not to press something twice in a row without releasing it. make sure not to press something twice in a row without releasing it.
1.0.0.pre3: 1.0.0.pre3:
added the --root-window (-r) option, for WM wheeling in the root of the added the --root-window (-r) option, for WM wheeling in the root of the
XServer. use pattern "\(root\)" in the imwheelrc file. XServer. use pattern "\(root\)" in the imwheelrc file.
1.0.0pre2: 1.0.0pre2:
added --config (-c) option, open config window at start added --config (-c) option, open config window at start
added Button sending via XTest, use Button# as keysym in imwheelrc. added Button sending via XTest, use Button# as keysym in imwheelrc.
one less error on failing to open an empty filename one less error on failing to open an empty filename
Thumb1 and Thumb2 (two thumb buttons) (Thumb == Thumb1) Thumb1 and Thumb2 (two thumb buttons) (Thumb == Thumb1)
README is no longer going to be updated, use the manpage after installation. README is no longer going to be updated, use the manpage after installation.
1.0.0pre1: 1.0.0pre1:
updated for gcc3.0 updated for gcc3.0
fixed configure dialog for XServer depth >16bits. fixed configure dialog for XServer depth >16bits.
(please report if the configure dialog still fails for you now) (please report if the configure dialog still fails for you now)
removed ye olde Makefile.unix removed ye olde Makefile.unix
-------------------------------------------------------------------------------
0.9.9: 0.9.9:
Documentation needs updating with the features from this release...argh! Documentation needs updating with the features from this release...argh!
Made some more comments in the stderr output...plus hints. Made some more comments in the stderr output...plus hints.
Fixed a segfault on freeing a few strings that were not allocated. Fixed a segfault on freeing a few strings that were not allocated.
Added -g option for focus event tracking, so we at least try to regrab Added -g option for focus event tracking, so we at least try to regrab
whenever the focused (ungrabbed) window is left. whenever the focused (ungrabbed) window is left.
this was code from Patrick Reinelt <preinelt@kullen.rwth-aachen.de> this was code from Patrick Reinelt <preinelt@kullen.rwth-aachen.de>
-g toggles it on an off, but it is on by default, as it may help some -g toggles it on an off, but it is on by default, as it may help some
people out there. people out there.
pre6
This may be the last update to the 0.9.9, pending any bugs. pre6
CVS dirs removed in make dist process... This may be the last update to the 0.9.9, pending any bugs.
Upgraded GPM to version 1.19.3 and generated the patch as usual. CVS dirs removed in make dist process...
Added Artec UM530P driver (-t um530p) to gpm. Upgraded GPM to version 1.19.3 and generated the patch as usual.
This is the imps2 init code without the second half. Added Artec UM530P driver (-t um530p) to gpm.
Thanks to: Vicente Aguilar <vaguilar@linuxfreak.com> This is the imps2 init code without the second half.
Fixed some references to O_SYNC for FreeBSD users, who don't have it! Thanks to: Vicente Aguilar <vaguilar@linuxfreak.com>
Reduced the fontspec in cfg.c to be more forgiving, may avert a SegFault! Fixed some references to O_SYNC for FreeBSD users, who don't have it!
Added an RPM Source spec file...it might work, I dunno! Reduced the fontspec in cfg.c to be more forgiving, may avert a SegFault!
imwheelrc now installs into /etc for "make install" Added an RPM Source spec file...it might work, I dunno!
Added -Igetopt for when included getopt is used. imwheelrc now installs into /etc for "make install"
Added a transpose (-x) option to swap the X/Y axis. Added -Igetopt for when included getopt is used.
Useful for S-48 OEM gpm driver, also use -b 54 option... Added a transpose (-x) option to swap the X/Y axis.
This is for fifo use only, which is working fine in XFree86 4.0.1 Useful for S-48 OEM gpm driver, also use -b 54 option...
Added more sanity checks in configure.in This is for fifo use only, which is working fine in XFree86 4.0.1
getopt.h missing causes the included one to be used Added more sanity checks in configure.in
XFree86 only checked for Linux systems getopt.h missing causes the included one to be used
Added Linux Touch Panel Drivers for the Fujitsu Lifebook B112/B142 XFree86 only checked for Linux systems
GPM driver to imwheel's gpm (-t b112) Added Linux Touch Panel Drivers for the Fujitsu Lifebook B112/B142
Thanks to Harald Hoyer <Harald.Hoyer@Parzelle.De> <HarryH@Royal.Net> GPM driver to imwheel's gpm (-t b112)
who had the patches for gpm on his site http://parzelle.de/ Thanks to Harald Hoyer <Harald.Hoyer@Parzelle.De> <HarryH@Royal.Net>
Added Logitech OEM S-48 & Firstmouse+ to gpm (-t zilog) who had the patches for gpm on his site http://parzelle.de/
This works for a Logitech OEM S-48 that I received as a donation Added Logitech OEM S-48 & Firstmouse+ to gpm (-t zilog)
Thanks to A. Norman <norman@physics.wm.edu> posting his sourcecode! This works for a Logitech OEM S-48 that I received as a donation
His site is at: Thanks to A. Norman <norman@physics.wm.edu> posting his sourcecode!
http://www.physics.wm.edu/~norman/Mouse_Diag/index.html His site is at:
Added a script to convert the Right-handedly oriented imwheelrc file to http://www.physics.wm.edu/~norman/Mouse_Diag/index.html
Left handed (converts _L to _R in the imwheelrc) Added a script to convert the Right-handedly oriented imwheelrc file to
It's simple so patterns matching the _L string will be changed to _R Left handed (converts _L to _R in the imwheelrc)
watch out for that I suppose...but I haven't seen anything like It's simple so patterns matching the _L string will be changed to _R
that in other places of the rc file. watch out for that I suppose...but I haven't seen anything like
The script is called lefty.sh, execute it before "make install" if you that in other places of the rc file.
are a left handed person or you prefer the right side control keys. The script is called lefty.sh, execute it before "make install" if you
pre5 are a left handed person or you prefer the right side control keys.
Replaced strsep usage for intel solaris people.
Fixed the fact that a missing "(null)" section would cause a segfault.
Fixed an UNGRAB(Exclude) handling code error.
Optimized the UNGRAB/GRAB search, now we don't go looking for a reason not
to UNGRAB all the time!
Added --buttons or -b option, whichs allows you to set the button mapping.
Default mapping looks like this: "45678"
You can limit it to just 4 and 5 by doing: imwheel -b 45
This also allows some people to fix the mapping for weirdo mice ;)
Here's a reference table for what the numbers mean:
index default button action in imwheel pre5
1 4 Wheel/Stick Up Replaced strsep usage for intel solaris people.
2 5 Wheel/Stick Down Fixed the fact that a missing "(null)" section would cause a segfault.
3 6 Wheel/Stick Left Fixed an UNGRAB(Exclude) handling code error.
4 7 Wheel/Stick Right Optimized the UNGRAB/GRAB search, now we don't go looking for a reason not
5 8 Thumb Button to UNGRAB all the time!
Added --buttons or -b option, whichs allows you to set the button mapping.
Default mapping looks like this: "45678"
You can limit it to just 4 and 5 by doing: imwheel -b 45
This also allows some people to fix the mapping for weirdo mice ;)
Here's a reference table for what the numbers mean:
So that "imwheel -b 86754" does the following: index default button action in imwheel
Button 8 is Wheel/Stick Up to imwheel 1 4 Wheel/Stick Up
Button 6 is Wheel/Stick Down to imwheel 2 5 Wheel/Stick Down
Button 7 is Wheel/Stick Left to imwheel 3 6 Wheel/Stick Left
Button 5 is Wheel/Stick Right to imwheel 4 7 Wheel/Stick Right
Button 4 is Thumb Button to imwheel 5 8 Thumb Button
Use xev while NOT running imwheel (run "imwheel -kq" first) to find out
what buttons are what on your mouse! So that "imwheel -b 86754" does the following:
Fixed the non-functional Configure Dialog (XGrabButton wasn't working right) Button 8 is Wheel/Stick Up to imwheel
pre4 Button 6 is Wheel/Stick Down to imwheel
Fixed == tests to = in configure.in, per many complaints. (worked for me ;) Button 7 is Wheel/Stick Left to imwheel
Updated gpm to version 1.19.2, people kept asking... Button 5 is Wheel/Stick Right to imwheel
pre3 Button 4 is Thumb Button to imwheel
Fixed security bug, where a user may symlink to a file they cannot open as Use xev while NOT running imwheel (run "imwheel -kq" first) to find out
themselves, then get the first line of that file using the debug mode. what buttons are what on your mouse!
This could allow the root password of the shadow to be exposed for any Fixed the non-functional Configure Dialog (XGrabButton wasn't working right)
user who has access to a set-uid-root imwheel.
Apparently Mandrake (and others perhaps) use a suid-root perl script to pre4
execute the imwheel program, perhaps meaning to be more safe. In Fixed == tests to = in configure.in, per many complaints. (worked for me ;)
reality I do not install imwheel as root, nor do I actively support it, Updated gpm to version 1.19.2, people kept asking...
nor take any responsibility for those who do install it as a suid-root
or suid any other user, and who then have a security breach. I'm also pre3
happy that my friend, Rob C. Ludwick, pointed the hole out to me, as Fixed security bug, where a user may symlink to a file they cannot open as
no-one on the mailing list he saw this being discussed on bothered to themselves, then get the first line of that file using the debug mode.
write me! Also, about the distros suid perl script jazz...this is the This could allow the root password of the shadow to be exposed for any
second time you've caused me pain, and I'm bitter, and I have no remorse user who has access to a set-uid-root imwheel.
for you if you shall perish one million deaths through your foolishness Apparently Mandrake (and others perhaps) use a suid-root perl script to
of suid-root wrappers. execute the imwheel program, perhaps meaning to be more safe. In
One other note, imwheel already DOES check that any process it is looking reality I do not install imwheel as root, nor do I actively support it,
to kill is actually an imwheel process. If this needs improvement nor take any responsibility for those who do install it as a suid-root
then somebody send in a patch. I currently consider the possibility or suid any other user, and who then have a security breach. I'm also
impossible. (Yes, I like English!) happy that my friend, Rob C. Ludwick, pointed the hole out to me, as
pre2 no-one on the mailing list he saw this being discussed on bothered to
Added @Priority to allow for people who want visible control over what is write me! Also, about the distros suid perl script jazz...this is the
more important than whatever else. See imwheelrc for more. (tested) second time you've caused me pain, and I'm bitter, and I have no remorse
Fixed the @Exclude bug, where if @Exclude was used with a ".*" regex then for you if you shall perish one million deaths through your foolishness
all windows were excluded, even those defined in the imwheelrc. of suid-root wrappers.
The new priority command can help users tell imwheel how much they'd One other note, imwheel already DOES check that any process it is looking
really like to exclude and what doesn't need to be, otherwise position to kill is actually an imwheel process. If this needs improvement
in the imwheelrc is all that makes the difference now. (tested) then somebody send in a patch. I currently consider the possibility
Fixed the configuration errors, where variables were unquoted and spaces impossible. (Yes, I like English!)
may have freaked m4 and the shell out!
pre1 pre2
fixed getenv("HOME") type security hole. (tested) Added @Priority to allow for people who want visible control over what is
inclusion of imwheelrc, but no "make install" installation yet. more important than whatever else. See imwheelrc for more. (tested)
-------------------------------------------------------------------------------- Fixed the @Exclude bug, where if @Exclude was used with a ".*" regex then
all windows were excluded, even those defined in the imwheelrc.
The new priority command can help users tell imwheel how much they'd
really like to exclude and what doesn't need to be, otherwise position
in the imwheelrc is all that makes the difference now. (tested)
Fixed the configuration errors, where variables were unquoted and spaces
may have freaked m4 and the shell out!
pre1
fixed getenv("HOME") type security hole. (tested)
inclusion of imwheelrc, but no "make install" installation yet.
-------------------------------------------------------------------------------
0.9.8 0.9.8
finished configure "make dist" handling of unselected stuff. finished configure "make dist" handling of unselected stuff.
seems to work well for all beta testers (at least 5 people wrote back) seems to work well for all beta testers (at least 5 people wrote back)
pre4
fixed @Exclude (tested myself of course, waiting for feedback) pre4
fixed PIDFILE crap from making the configure.in wrongly... fixed @Exclude (tested myself of course, waiting for feedback)
hey - I'm still learning autoconfig and friends... ;) fixed PIDFILE crap from making the configure.in wrongly...
pre3 hey - I'm still learning autoconfig and friends... ;)
configure (full autoconf, automake, autoheader dealie)
updated gpm to version 1.19.0 pre3
added -v and --version option, for just the version header of the help configure (full autoconf, automake, autoheader dealie)
there will be NO MORE none gpm releases until gpm includes my patch in the updated gpm to version 1.19.0
main distribution! configure doesn't play nice doing dual distros... added -v and --version option, for just the version header of the help
pre2 there will be NO MORE none gpm releases until gpm includes my patch in the
updated gpm to version 1.18.1 main distribution! configure doesn't play nice doing dual distros...
pre1
tfxmms - in gpm - the Serial Trackman FX marble button 4 as stick motion pre2
toggle and complete mouse driver. updated gpm to version 1.18.1
sensitivity option in imwheel - uses a summation of motion after
thresholding, to determine when to go! pre1
@Repeat command (like @Exclude) in imwheelrc files - resends the button to X tfxmms - in gpm - the Serial Trackman FX marble button 4 as stick motion
this may not work for non-gpm wheelfifo users, who should rather use toggle and complete mouse driver.
@Exclude for now. sensitivity option in imwheel - uses a summation of motion after
minor code cleanups - no bugfixes there! just making code better looking. thresholding, to determine when to go!
-------------------------------------------------------------------------------- @Repeat command (like @Exclude) in imwheelrc files - resends the button to X
0.9.7 this may not work for non-gpm wheelfifo users, who should rather use
Added --force option to force usage of event data instead of looking for @Exclude for now.
the focused window using XGetInputFocus. This may work better for some minor code cleanups - no bugfixes there! just making code better looking.
window managers than others. In fvwm2 I do not use the force option, -------------------------------------------------------------------------------
whereas in window maker it may be mandatory. I know it's silly but when 0.9.7
you use the force option you are using the ICCCM method of grabbing the Added --force option to force usage of event data instead of looking for
current client window, whereas the deffault operation uses the original the focused window using XGetInputFocus. This may work better for some
XGetInputFocus method. All you need to know is that if the debug output window managers than others. In fvwm2 I do not use the force option,
keeps showing the the window title as null, then toggle this option and whereas in window maker it may be mandatory. I know it's silly but when
it may work correctly. Please report back to me on window managers and you use the force option you are using the ICCCM method of grabbing the
whether the force option was required or not to work correctly with current client window, whereas the deffault operation uses the original
imwheel. This method was sparked by Brian Craft <bcboy@cisco.com>. XGetInputFocus method. All you need to know is that if the debug output
Fixed a bug where if the winid was not being copied into a correctly sized keeps showing the the window title as null, then toggle this option and
space, therefore causing segfaults when reading an rc like this... it may work correctly. Please report back to me on window managers and
whether the force option was required or not to work correctly with
".*\.[pP][dD][fF]" imwheel. This method was sparked by Brian Craft <bcboy@cisco.com>.
Alt_L,Up,Up Fixed a bug where if the winid was not being copied into a correctly sized
space, therefore causing segfaults when reading an rc like this...
".*\.[pP][dD][fF]"
Alt_L,Up,Up
Note that the window match string is longer than the keydef line. This
is when this bug would rear it's ugly head. It was a dead-in-the-head
bug that I'm sorry I ever caused to anyone who suffered while making a
customized rc file. I'm just amazed that I never ran into it in my time!
This bug was noted by Karoly Segesdi <vrm@scene-hu.com> if not
by others as well! (But he got me closest to finding the problem by
giving me an imwheelrc file that consistently caused a segfault)
Fixed a bug where imwheel whould exit when the fifo it was reading for the
wheel-fifo method was closed and reopened and then written from the other
side (from gpm or jam restarting).
Upgraded to gpm-1.18.0
Added marblefx support to gpm from Ric Klaren <klaren@cs.utwente.nl>,
untested as I don't have a marblefx. It looked good though!
Added Primax CyberNavigator [1] mouse to gpm from Alexios Chouchoulas
<alexios@vennea.demon.co.uk>. This is also untested for the same reason.
Added left handers Method#1 xmodmap config sent in from
Marc-Aurèle DARCHE <ma.darche@stellarx.com> to README and manpage.
And of course other misc. bugfixes, etc...that I've forgotten over time!
Note that the window match string is longer than the keydef line. This
is when this bug would rear it's ugly head. It was a dead-in-the-head
bug that I'm sorry I ever caused to anyone who suffered while making a
customized rc file. I'm just amazed that I never ran into it in my time!
This bug was noted by Karoly Segesdi <vrm@scene-hu.com> if not
by others as well! (But he got me closest to finding the problem by
giving me an imwheelrc file that consistently caused a segfault)
Fixed a bug where imwheel whould exit when the fifo it was reading for the
wheel-fifo method was closed and reopened and then written from the other
side (from gpm or jam restarting).
Upgraded to gpm-1.18.0
Added marblefx support to gpm from Ric Klaren <klaren@cs.utwente.nl>,
untested as I don't have a marblefx. It looked good though!
Added Primax CyberNavigator [1] mouse to gpm from Alexios Chouchoulas
<alexios@vennea.demon.co.uk>. This is also untested for the same reason.
Added left handers Method#1 xmodmap config sent in from
Marc-Aurèle DARCHE <ma.darche@stellarx.com> to README and manpage.
And of course other misc. bugfixes, etc...that I've forgotten over time!
--------------------------------------------------------------------------------
0.9.6 0.9.6
Initial support & drivers (gpm & imwheel) for IBM ScrollPoint Mouse Initial support & drivers (gpm & imwheel) for IBM ScrollPoint Mouse
It is the mm+ps2 mouse type in gpm It is the mm+ps2 mouse type in gpm
the IBM ScrollPoint PS/2 mouse uses the MouseManPlus Protocol in XFree86 the IBM ScrollPoint PS/2 mouse uses the MouseManPlus Protocol in XFree86
Support for up and down only for now...I must do a bit before other Support for up and down only for now...I must do a bit before other
directions are considered! (for stick type mice thingers.) directions are considered! (for stick type mice thingers.)
Pressing continuously will only result in one action. Release and press Pressing continuously will only result in one action. Release and press
again to scroll another notch. (the regular scroll events come in too again to scroll another notch. (the regular scroll events come in too
fast to be useful yet...) fast to be useful yet...)
THANKS!!!!! TO Felix Klock for the ScrollPoint Mouse he MAILED ME!!! THANKS!!!!! TO Felix Klock for the ScrollPoint Mouse he MAILED ME!!!
This driver is due to the initiative and sacrifice of a few bucks to get This driver is due to the initiative and sacrifice of a few bucks to get
support for a mouse this guy loves...and from what I've read on newgroups support for a mouse this guy loves...and from what I've read on newgroups
many others also love! Well you owe the possibility of this driver to many others also love! Well you owe the possibility of this driver to
Bryan for mailing me a mouse to be able to actually hack on the real Bryan for mailing me a mouse to be able to actually hack on the real
thing. Now continued support is guaranteed as well! thing. Now continued support is guaranteed as well!
mail your appreciation to Felix S Klock at pnkfelix@mit.edu mail your appreciation to Felix S Klock at pnkfelix@mit.edu
He paid $23 or so for the mouse plus shipping to me (with normal 32cent He paid $23 or so for the mouse plus shipping to me (with normal 32cent
stamps no less...due to the effects of the 1cent price increase in stamps stamps no less...due to the effects of the 1cent price increase in stamps
I'm sure he was kinda glad to be rid of some of his 32cent stash to make I'm sure he was kinda glad to be rid of some of his 32cent stash to make
room for the 33cent ones!) Please consider sending him a dollar for his room for the 33cent ones!) Please consider sending him a dollar for his
effort since you are reaping the rewards... (and hey send me a dollar! :) effort since you are reaping the rewards... (and hey send me a dollar! :)
Added mdump, a program to dump the mouse port, and anything else you want Added mdump, a program to dump the mouse port, and anything else you want
with a bitwise breakdown and a 3 byte per line dump. Other interpretation with a bitwise breakdown and a 3 byte per line dump. Other interpretation
is added for assumptions of what may be happening with mouse motions. is added for assumptions of what may be happening with mouse motions.
I used this program to create the mm+ps2 driver for gpm. It is not I used this program to create the mm+ps2 driver for gpm. It is not
installed by 'make install' so copy it yourself if you're interested. installed by 'make install' so copy it yourself if you're interested.
the first arg on the command-line is taken to be the path of the mouse the first arg on the command-line is taken to be the path of the mouse
device, which defaults to /dev/mouse. The second arg is how many bytes device, which defaults to /dev/mouse. The second arg is how many bytes
to dump per grab. This defaults to 3 but 4 is another common value to try. to dump per grab. This defaults to 3 but 4 is another common value to try.
The third arg is not parsed but if present the first byte will be bit The third arg is not parsed but if present the first byte will be bit
dumped like the rest of the bytes in a packet. dumped like the rest of the bytes in a packet.
You can also use this program to see the MHz speed for your mouse! You can also use this program to see the MHz speed for your mouse!
e.g.: mdump /dev/psaux 4 1 (for imps2 mouse device type) e.g.: mdump /dev/psaux 4 1 (for imps2 mouse device type)
mdump /dev/psaux 3 1 (for ps2/mouseman+ mouse device types) mdump /dev/psaux 3 1 (for ps2/mouseman+ mouse device types)
Added to mouse-mode setup programs for the intellimouse and mouseman plus. Added to mouse-mode setup programs for the intellimouse and mouseman plus.
running these programs sends the right control codes to the mouse to running these programs sends the right control codes to the mouse to
activate the intellimouse or mouseman plus protocol. The intellimouse and activate the intellimouse or mouseman plus protocol. The intellimouse and
mouseman plus both default to ps2 mode. the intellimouse and mouse man mouseman plus both default to ps2 mode. the intellimouse and mouse man
plus both support the imps2 protocol. some mouse man plus type mice may plus both support the imps2 protocol. some mouse man plus type mice may
not be intellimouse capable, but the IBM scrollpoint was capable of this not be intellimouse capable, but the IBM scrollpoint was capable of this
mode, restricting it to up and down wheel emulation on it's stick. To mode, restricting it to up and down wheel emulation on it's stick. To
reset mouse run setps2. setimps2 is for the intellimouse protocol. reset mouse run setps2. setimps2 is for the intellimouse protocol.
setmmplus is for the mouseman plus protocol. us getmdt to see the mouse's setmmplus is for the mouseman plus protocol. us getmdt to see the mouse's
reponse to the mouse device type probe. The codes I've seen are as reponse to the mouse device type probe. The codes I've seen are as
follows (<nn> is in hex format): follows (<nn> is in hex format):
<00> mouseman plus (3 byte packets) <00> mouseman plus (3 byte packets)
<03> intellimouse (4 byte packets) <03> intellimouse (4 byte packets)
<00> plain ps2 (3 byte packets) <00> plain ps2 (3 byte packets)
when mouse is this, <AA> is received also after an <FA> when mouse is this, <AA> is received also after an <FA>
Any <FA> type codes are ignored mouse responses, usually confirmation of Any <FA> type codes are ignored mouse responses, usually confirmation of
the mouse receiving the controls the program sends it. the mouse receiving the controls the program sends it.
All these debugging programs default to the /dev/mouse device node unless a All these debugging programs default to the /dev/mouse device node unless a
path is passed in as the first argument. path is passed in as the first argument.
None of the debugging programs have been tested with serial mice. None of the debugging programs have been tested with serial mice.
Fixed a missed regrab of the mouse after the configurator is closed. Fixed a missed regrab of the mouse after the configurator is closed.
Pid file is only used if user is using the /dev/gpmwheel FIFO. (Method #2) Pid file is only used if user is using the /dev/gpmwheel FIFO. (Method #2)
Killing pids according to pidfile now checks to make sure the process is Killing pids according to pidfile now checks to make sure the process is
truely an imwheel process, and only kills it if it is an imwheel process. truely an imwheel process, and only kills it if it is an imwheel process.
It also will only kill if using the /dev/gpmwheel FIFO. It also will only kill if using the /dev/gpmwheel FIFO.
Imwheel funtions correctly on multiple displays by using the -display Imwheel funtions correctly on multiple displays by using the -display
option or setting the DISPLAY environment variable (use export/setenv!) option or setting the DISPLAY environment variable (use export/setenv!)
Thanks to Arnd Bergmann <arnd@uni.de> we now have gpm support for the Thanks to Arnd Bergmann <arnd@uni.de> we now have gpm support for the
Knopex Wineasy 4D mouse. And due to his patches and them prompting me to Knopex Wineasy 4D mouse. And due to his patches and them prompting me to
update lotsa code we have support for intellimouse serial, as well as update lotsa code we have support for intellimouse serial, as well as
support for sideways actions. This is only available through the FIFO. support for sideways actions. This is only available through the FIFO.
You must use Method#2 (a variant of which that is) that uses the wheel You must use Method#2 (a variant of which that is) that uses the wheel
FIFO as set up by gpm. XWindows cannot handle the 7 buttons correctly, FIFO as set up by gpm. XWindows cannot handle the 7 buttons correctly,
it can only handle 5, which means only up and down will work with it can only handle 5, which means only up and down will work with
Method #1! Method #1!
Added FreeBSD support, see the FREEBSD file for more. It requires no Added FreeBSD support, see the FREEBSD file for more. It requires no
changes to compile and install. changes to compile and install.
Added threshhold option for stick users of method #2 (it requires gpm) Added threshhold option for stick users of method #2 (it requires gpm)
Use the -t or --threshhold option to set a threshhold from 0-7. Use the -t or --threshhold option to set a threshhold from 0-7.
The default is 2, it works well. The default is 2, it works well.
Added no-middle-button option (-n) to gpm. Use this if you have trouble Added no-middle-button option (-n) to gpm. Use this if you have trouble
with unintentional middle button clicks while wheeling/sticking, and you with unintentional middle button clicks while wheeling/sticking, and you
would rather use Emulate3Buttons chording in X (XFree86 at least...) would rather use Emulate3Buttons chording in X (XFree86 at least...)
Added conditional compile for gpm-imwheel directory. Added conditional compile for gpm-imwheel directory.
Added a full manpage. Added a full manpage.
--------------------------------------------------------------------------------
0.9.5 0.9.5
Finished off configure dialog to spec, it's just a helper, not an editor! Finished off configure dialog to spec, it's just a helper, not an editor!
Updated gpm to version 1.16.0, now sticking with stable versions. Updated gpm to version 1.16.0, now sticking with stable versions.
- hopefully I'll get a patch and send it to the gpm team for some - hopefully I'll get a patch and send it to the gpm team for some
integration, thus releasing me from this task... integration, thus releasing me from this task...
- the gpm library is still untested in the console...should work though! - the gpm library is still untested in the console...should work though!
see note in version 0.8 below. see note in version 0.8 below.
Added suid option to "make install" for users other than root to be able Added suid option to "make install" for users other than root to be able
to run with a pid file. The default action is yes if nothing is entered to run with a pid file. The default action is yes if nothing is entered
at the prompt. I felt that 'yes' had to be the default action to avoid a at the prompt. I felt that 'yes' had to be the default action to avoid a
bunch of newbie email. This doesn't allow users to install imwheel as bunch of newbie email. This doesn't allow users to install imwheel as
root, and it's not a security risk. this is for sys-admins, or at least root, and it's not a security risk. this is for sys-admins, or at least
root users to be able to get all their users using the pid file for the root users to be able to get all their users using the pid file for the
daemon and also for them to be able to kill off old daemons started by daemon and also for them to be able to kill off old daemons started by
other users before. other users before.
Added -p option for no pidfile stuff, be careful though, this allows any Added -p option for no pidfile stuff, be careful though, this allows any
user to start imwheel regardless of a previous imwheel process! user to start imwheel regardless of a previous imwheel process!
Added -D for debug output anytime (no recompiling for those bug reports!) Added -D for debug output anytime (no recompiling for those bug reports!)
- use the -d option to avoid backgrounding the process! - use the -d option to avoid backgrounding the process!
Fixed silly free(NULL) crap...(heh, betchyall loved that one!) Fixed silly free(NULL) crap...(heh, betchyall loved that one!)
added rxvt stuff to imwheelrc file. added rxvt stuff to imwheelrc file.
added EMACS file (an email from an avid wheeler! oh, and it's about emacs!) added EMACS file (an email from an avid wheeler! oh, and it's about emacs!)
--------------------------------------------------------------------------------
0.9: 0.9:
Configuration helper almost done. (still need to sample wheel actions!) Configuration helper almost done. (still need to sample wheel actions!)
- use up,down,up in the root window to activate! - use up,down,up in the root window to activate!
- all functions in window are fully functional. - all functions in window are fully functional.
- restart does restart imwheel and thus reread the rc files - restart does restart imwheel and thus reread the rc files
- grab windows by clicking the snapshot and then on the desired window - grab windows by clicking the snapshot and then on the desired window
- more to come! - more to come!
More options and abilities: More options and abilities:
- daemon mode - daemon mode
-d to NOT detach and daemonize! -d to NOT detach and daemonize!
- kill any existing imwheel - kill any existing imwheel
-k to kill any existing imwheel as a restart -k to kill any existing imwheel as a restart
- quit after rc files - quit after rc files
-q, used best with -k to kill any imwheel process and quit -q, used best with -k to kill any imwheel process and quit
More configuration options: More configuration options:
- added 2 separately configurable delays - added 2 separately configurable delays
fixes netscape dropping keys! (it must queue only one key...) fixes netscape dropping keys! (it must queue only one key...)
first delay is the delay between repetitions (keyup->keydown) first delay is the delay between repetitions (keyup->keydown)
second delay is the delay between pressing and releasing second delay is the delay between pressing and releasing
(keydown->keyup) (keydown->keyup)
see the new imwheelrc for the netscape values that work for me! see the new imwheelrc for the netscape values that work for me!
--------------------------------------------------------------------------------
0.8: 0.8:
Modified gpm 1.15 beta2 for wheel support. I dunno about the gpm user Modified gpm 1.15 beta2 for wheel support. I dunno about the gpm user
library and wheel stuff, but it may work with GPM_B_UP and GPM_B_DOWN. library and wheel stuff, but it may work with GPM_B_UP and GPM_B_DOWN.
use the -W (and -w for non-IM mice) for use with "imwheel --wheel-fifo" use the -W (and -w for non-IM mice) for use with "imwheel --wheel-fifo"
IMWheel interfaces with /dev/gpmwheel, use the "--wheel-fifo" option, or IMWheel interfaces with /dev/gpmwheel, use the "--wheel-fifo" option, or
"-W /dev/gpmwheel", the -- option has /dev/gpmwheel as the default. "-W /dev/gpmwheel", the -- option has /dev/gpmwheel as the default.
Don't forget to reconfigure your mouse pointer in XConfig... Don't forget to reconfigure your mouse pointer in XConfig...
--------------------------------------------------------------------------------
0.7: 0.7:
No segfaults! Thank God! New functionality! No segfaults! Thank God! New functionality!
New Command structure started, and Exclude command added. New Command structure started, and Exclude command added.
- Exclude ungrabs mouse for selected windows. - Exclude ungrabs mouse for selected windows.
More commands may now be added as needed! More commands may now be added as needed!
XV's window grabber was dying because it needed to grab all buttons... XV's window grabber was dying because it needed to grab all buttons...
- use the line "@Exclude" in an "xv grab" window section. See imwheelrc - use the line "@Exclude" in an "xv grab" window section. See imwheelrc
--------------------------------------------------------------------------------
0.6: 0.6:
Argh...another bugfix for segfaults...now you don't need an rc file. Argh...another bugfix for segfaults...now you don't need an rc file.
--------------------------------------------------------------------------------
0.5: 0.5:
Argh...a bugfix for segfaults...this time it doesn't care about windows that Argh...a bugfix for segfaults...this time it doesn't care about windows that
don't have either title, resource, or class names set (leaving them NULL) don't have either title, resource, or class names set (leaving them NULL)
Thanks for all the positive response and encouragement. Thanks for all the positive response and encouragement.
Multi-rep scrolling actions can cause less then you expected to happen. Multi-rep scrolling actions can cause less then you expected to happen.
- Be patient, it works most of the time. There is no way I can find to fix - Be patient, it works most of the time. There is no way I can find to fix
this, so help may be needed! You will find XSync in use, but I believe this, so help may be needed! You will find XSync in use, but I believe
that has a minimal effectiveness...makes it work better than before though that has a minimal effectiveness...makes it work better than before though
Moving out of windows and losing focus may cause weird things to happen! Moving out of windows and losing focus may cause weird things to happen!
- Press and release all modifier keys (alt,ctrl,shift,etc.) to reset input. - Press and release all modifier keys (alt,ctrl,shift,etc.) to reset input.
--------------------------------------------------------------------------------
0.4: 0.4:
finally! Config file support is added, completing the keyboard config setup. finally! Config file support is added, completing the keyboard config setup.
/etc/imwheelrc and/or $HOME/.imwheelrc files are used for configuration. /etc/imwheelrc and/or $HOME/.imwheelrc files are used for configuration.
built-ins are still available for unconfigured windows. built-ins are still available for unconfigured windows.
anybody want to make a client to make configuration a breeze? Contact me! anybody want to make a client to make configuration a breeze? Contact me!
all clients that have keyboard input can be used with configuration! all clients that have keyboard input can be used with configuration!
no new options. no new options.
more code moving, now two files, whopee you say! but it made development more code moving, now two files, whopee you say! but it made development
easier! easier!
got reports that KDE compatabilty has been achieved by v0.3 got reports that KDE compatabilty has been achieved by v0.3
--------------------------------------------------------------------------------
0.3: 0.3:
added options engine. added options engine.
added -f or --flip-buttons option to flip behavior, useful for 4 button mice added -f or --flip-buttons option to flip behavior, useful for 4 button mice
changed engine, now using XTest extension instead of XSendEvent crap. changed engine, now using XTest extension instead of XSendEvent crap.
- still grabbing buttons which may be part of the incompatibility with KDE. - still grabbing buttons which may be part of the incompatibility with KDE.
added other mice that should work as well, according to XFree86 docs. added other mice that should work as well, according to XFree86 docs.
added a grab reset sequence, but it seems to be a nop... added a grab reset sequence, but it seems to be a nop...
- run imwheel again if it dies and leaves your server going funky... - run imwheel again if it dies and leaves your server going funky...
cleaned out junk from old engine, new code is cleaner...I think so anyways! cleaned out junk from old engine, new code is cleaner...I think so anyways!
XTest extension now required (not checked in code...I may do that) XTest extension now required (not checked in code...I may do that)
More clients work than ever! More clients work than ever!
Reps for sideways motion (alt-wheel actions) now work in netscape... Reps for sideways motion (alt-wheel actions) now work in netscape...
- only when there are sideways scrollbars - only when there are sideways scrollbars
- May work everywhere, i dunno! - May work everywhere, i dunno!
- It works in all tested clients that use cursor left/right keys for actions - It works in all tested clients that use cursor left/right keys for actions
--------------------------------------------------------------------------------
0.2: 0.2:
cleaned up exit on bad display opening. cleaned up exit on bad display opening.
changed library directory to X11R6 instead of X11 changed library directory to X11R6 instead of X11
received confirmation of compatability with Logitech MouseMan+ from: received confirmation of compatability with Logitech MouseMan+ from:
"Markus Martensson" <mortis@acc.umu.se> "Markus Martensson" <mortis@acc.umu.se>
modifier combinations of Shift,Control, and Alt(Meta) changes behavior. modifier combinations of Shift,Control, and Alt(Meta) changes behavior.
repetition of keystrokes repetition of keystrokes
still no setup files... still no setup files...
still no change in clients... still no change in clients...
--------------------------------------------------------------------------------
0.1: 0.1:
first release first release
streamlined version, unused code is compiled out. streamlined version, unused code is compiled out.
no setup, hardcoded page up and page down! no setup, hardcoded page up and page down!
no exclusion for specific windows either. no exclusion for specific windows either.