Use proper mouse wheel routing
In the year 2011, maybe it's finally time to handle WM_MOUSEWHEEL by the window under the cursor, rather than using the backward way of handling them in the window with focus?
Chris Beach commented
This is a good idea, but for the Windows OS not this specific app. This should be an OS level option and all apps should follow the OS.
Andrew McDonald commented
This seems to have been implemented in VS2012 RC. The idea should be closed and the votes returned to users.
Mouse wheel scroll - on the grid where you point the mouse - works very well in Outlook - without problems. Why not make it easy for the programmer to decide where to use this function in VB-programs, without the need to change the focus...
At the moment if the window scrolls when it's got focus it's following the principles of working as the text cursor. If we change this, surely we'd need to change both to keep it consistent?
Personally I like this as is. That, to me, is a lot of the point of window focus. Otherwise window focus is just where the mouse is. I tried installing an app that made the focus where the mouse was automatically, and it was a horrible way of working. What happens if you just want to move the mouse out of the way of something?
I use three screens + a laptop tied together using MouseWithoutBorders (MWB). I alt-tab and use keyboard shortcuts and a scroll wheel on my keyboard. I understand that MWB kinda needs the "focus where the mouse is" way of operating, but I really don't want my apps that are on the same box to need me to move the mouse all the time so my keyboard scroll wheel works.
I guess a way to accommodate everyone would be to have this as user configurable.
This change would also disadvantage some disabled users, btw.
Mouse wheel should scroll the list/grid/(and optionally other) control in which you currently point the mouse - like in Outlook.
(You can make this happen by activate these contols with mousemove event - with the cost of other unwanted effects - so Microsoft please make a simple way to do this without the need to change which contol is in focus.)
Christopher Zahrobsky commented
Cursor or pointer?
try the utility
it fixes the issue in all apps
Bryan Porter commented
Technically, Windows implements view scrolling for the foreground window. I believe Visual Studio just inherits this behavior. Office behaves differently, and has for ages, by handing the scrolling themselves. Raymond Chen actually has a blog posting on this somewhere (I looked but couldn't find it).
Cory J. Geesaman commented
It's not an OS issue, the OS provides the ability to hook, proper handling has been around since at least VB6 via windows hooks and having implemented it several times in different applications it is a pain that it isn't implemented correctly in the IDE.
Unfortunately this isn't just a problem with Visual Studio. It's more of an operating system issue.
I strongly agree.