I used to have an app that would scroll the window your mouse was hovering over instead of scrolling the active window. Unfortunately I lost that app. Does anyone know what that app is called?
5 Answers
I use AutoHotKey for this:
EasyWheel(d)
; if _WHEELAUTOFOCUS if set, check which window is under the mouse and gives it focus if it hasn't already
; then send scroll event to the control under the mouse
; original code from Shimanov: http://www.autohotkey.com/forum/viewtopic.php?t=6772#54821
{
Global _WHEELACC
, _WHEELMAXN
, _WHEELAUTOFOCUS
Static t, s
if ( A_TickCount > 500+t) {
t := A_TickCount
s :=0x780000
}
else if (s < _WHEELMAXN)
s += _WHEELACC
MouseGetPos x, y, hwnd
h := DllCall("WindowFromPoint", "int", x, "int", y)
if _WHEELAUTOFOCUS && (hwnd<>WinExist("A"))
WinActivate, ahk_id %hwnd%
testan:=WinActive("A")
if (testan<>hwnd){
SendMessage, 0x20A, d*s,(y<<16)|x,, ahk_id %h%
}
else if (d=-1){
send {WheelDown}
}else{
send {WheelUp}
}
}
WheelUp:: EasyWheel(1)
WheelDown:: EasyWheel(-1)
-
I adore it. I don't know what I'd do without it, apart from be massively less productive and have less fun.– PhoshiNov 6, 2009 at 21:26
-
Not what I the app I was looking for, but 10x better. BTW, always love your comments on Lifehacker. Nov 6, 2009 at 21:34
-
1Thanks :) That script is slightly edited from the version I took off the official forums, it sends an actual wheel-down message if the window is focussed. No real difference, but certain applications can handle things... differently, and that seemed to maximize compatibility with everything <3– PhoshiNov 6, 2009 at 21:36
-
@Phoshi, do you use this with a dual monitor setup? It works... mostly. I think the problems I see (with windows not scrolling when I expect them to) happen when the active window is on the second monitor. (i.e. perhaps in the coordinate resolution?) Still, great little script. :)– JMDNov 6, 2009 at 21:47
-
1
XMouse Toggle is a stand alone utility to do this on XP, Vista, 7 both 32 and 64 bit.