From: Jonathan del Strother Date: Sat, 13 Oct 2007 17:33:07 GMT Subject: [PATCH] gitk: Added support for OS X mouse wheel Message-ID: <193EA1A3-1BE3-42E4-8A47-0F025E0D3645@steelskies.com> (Väinö Järvelä supplied this patch a while ago for 1.5.2. It no longer applied cleanly, so I'm reposting it.) MacBook doesn't seem to recognize MouseRelease-4 and -5 events, at all. So i added a support for the MouseWheel event, which i limited to Tcl/tk aqua, as i couldn't test it neither on Linux or Windows. Tcl/tk needs to be updated from the version that is shipped with OS X 10.4 Tiger, for this patch to work. Signed-off-by: Jonathan del Strother --- gitk | 14 ++++++++++---- 1 files changed, 10 insertions(+), 4 deletions(-) diff --git a/gitk b/gitk index 300fdce..9b3e627 100755 --- a/gitk +++ b/gitk @@ -838,11 +838,17 @@ proc makewindow {} { bindall <1> {selcanvline %W %x %y} #bindall {selcanvline %W %x %y} if {[tk windowingsystem] == "win32"} { - bind . { windows_mousewheel_redirector %W %X %Y %D } - bind $ctext { windows_mousewheel_redirector %W %X %Y % D ; break } + bind . { windows_mousewheel_redirector %W %X %Y %D } + bind $ctext { windows_mousewheel_redirector %W % X %Y %D ; break } } else { - bindall "allcanvs yview scroll -5 units" - bindall "allcanvs yview scroll 5 units" + bindall "allcanvs yview scroll -5 units" + bindall "allcanvs yview scroll 5 units" + if {[tk windowingsystem] eq "aqua"} { + bindall { + set delta [expr {- (%D)}] + allcanvs yview scroll $delta units + } + } } bindall <2> "canvscan mark %W %x %y" bindall "canvscan dragto %W %x %y" -- 1.5.3.1