Cristian Stoica wrote:

So instead of adding scroll to every canvas and then removing the wrong ones, one by one, I prefer to know exactly what bindings there are.
I agree, this is certainly better.

Two ideas:
- ttk_bindMouseWheel (preferable ttk::bindMouseWheel
for transparency) could make use of a "break" optional argument that defaults to no.
Replacing library functions is very error prone. A new developer should not need to read all the code to contribute to the project and he should be able to assume that standard functions behave normally. We can call it scidBindMouseWheel or consistentBindMouseWheel or nofocusBindMouseWheel, etc..

- If you know about other classes used in scid that fire under MouseWheel, those should also be disabled

I believe the best thing to proceed is:
1) start from scratch, that is with a patch that remove the focus stealing and all the mousewheel bind
2) test and list all the unwanted behaviors
3) adapt and change the name of ttk_bindMouseWheel so that we can call ttk_bindMouseWheel .main somecallback to allow the use of mousewheel to change the position of a game
- ttk_bindMouseWheel to scroll the gamelist
- ttk_bindMouseWheel to change the position of a gbrowser window
- ttk_bindMouseWheel to scroll all the autoscrollframe
4) adapt the ttk_bindMouseWheel to work as we want on Windows (deliver the event to the window under the mouse and not to the windows with the focus)
5) test and list all the unwanted behaviors

If you want to we can split the work: if you can send a patch for point 1) I (and anyone else who wants to help) can start to test it and list all the unwanted behaviors.
Bye,
Fulvio
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
Scid-users mailing list
Scid-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/scid-users

Reply via email to