Wow, I'm happy today.
The story starts some years ago (around 2001, if I'm not wrong), when I bought a trackball (a Trackman Marble FX from Logitech). This model has 4 buttons, the three usual ones on all mice, and a 4th button that (in Windows) was used to emulate a wheel (pressing that button and moving the ball, allows to have a mouse wheel that can pan freely, horizontally and vertically on documents, which, btw, is really cool when working with images). After some time, I grew tired of having that useless button there and added support for it in XFree86 and Qt. I sent patches everywhere, but the XFree86 patch was sent when they were in a freeze and somehow they lost the patch. Anyway it was working for me so I didn't care much and just waited until I found that they added a patch to support wheel emulation done by another person that I never heard of (credits go to Henry T. So.) His patch was definitely his work since it was different from mine, not worse, not better, but different so I didn't have any problem with that (except for thinking about how many other patches were probably lost like mine). The only problem is that that patch didn't work, so I submitted a small fix and finally linux had working support for wheel emulation.