aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Levedahl <mlevedahl@gmail.com>2024-07-06 13:12:01 -0400
committerMark Levedahl <mlevedahl@gmail.com>2025-07-16 23:01:51 -0400
commit3489ff17e2861d83407e215224f8654cd8671135 (patch)
treedc19cea87b818aea538b3d9a1f9e4611c17ed63f
parentgitk: remove non-ttk support code (diff)
downloadgit-3489ff17e2861d83407e215224f8654cd8671135.tar.gz
git-3489ff17e2861d83407e215224f8654cd8671135.zip
gitk: separate x11 / win32 / aqua Mouse bindings
Tk through 8.6 has different approaches for handling mouse wheel / touchpad scrolling events on the different platforms, and gitk has separate code for these. But, some x11 bindings are applied on aqua as we do not have these in a clean if / then / else tree based upon platform. Let's split these bindings apart. Signed-off-by: Mark Levedahl <mlevedahl@gmail.com>
-rwxr-xr-xgitk21
1 files changed, 11 insertions, 10 deletions
diff --git a/gitk b/gitk
index a80aea9a48..8b3476c516 100755
--- a/gitk
+++ b/gitk
@@ -2698,7 +2698,7 @@ proc makewindow {} {
if {[tk windowingsystem] == "win32"} {
bind . <MouseWheel> { windows_mousewheel_redirector %W %X %Y %D }
bind $ctext <MouseWheel> { windows_mousewheel_redirector %W %X %Y %D ; break }
- } else {
+ } elseif {[tk windowingsystem] == "x11"} {
bindall <ButtonRelease-4> "allcanvs yview scroll -5 units"
bindall <ButtonRelease-5> "allcanvs yview scroll 5 units"
bind $ctext <Button> {
@@ -2708,16 +2708,17 @@ proc makewindow {} {
$ctext xview scroll 5 units
}
}
- if {[tk windowingsystem] eq "aqua"} {
- bindall <MouseWheel> {
- set delta [expr {- (%D)}]
- allcanvs yview scroll $delta units
- }
- bindall <Shift-MouseWheel> {
- set delta [expr {- (%D)}]
- $canv xview scroll $delta units
- }
+ } elseif {[tk windowingsystem] == "aqua"} {
+ bindall <MouseWheel> {
+ set delta [expr {- (%D)}]
+ allcanvs yview scroll $delta units
}
+ bindall <Shift-MouseWheel> {
+ set delta [expr {- (%D)}]
+ $canv xview scroll $delta units
+ }
+ } else {
+ puts stderr [mc "Unknown windowing system, cannot bind mouse"]
}
bindall <$::BM> "canvscan mark %W %x %y"
bindall <B$::BM-Motion> "canvscan dragto %W %x %y"