diff options
author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2016-01-08 11:38:16 (GMT) |
---|---|---|
committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2016-01-08 11:38:16 (GMT) |
commit | 53100bbaa986eb70a8c1337bd65b096d93bf4ac4 (patch) | |
tree | 921cdb1c3709017c3931d3b8b2177c304a085229 | |
parent | 36db175996d43acf3e378e3ddb71d1977f04e4e3 (diff) | |
parent | 8e521a94152cd4546be53ea626f09f96f1f102d4 (diff) | |
download | tk-53100bbaa986eb70a8c1337bd65b096d93bf4ac4.zip tk-53100bbaa986eb70a8c1337bd65b096d93bf4ac4.tar.gz tk-53100bbaa986eb70a8c1337bd65b096d93bf4ac4.tar.bz2 |
Fixed bug [1927212] - MouseWheel unbound for non-aqua scrollbars
-rw-r--r-- | library/scrlbar.tcl | 4 | ||||
-rw-r--r-- | tests/scrollbar.test | 15 |
2 files changed, 19 insertions, 0 deletions
diff --git a/library/scrlbar.tcl b/library/scrlbar.tcl index e17442f..2a70b97 100644 --- a/library/scrlbar.tcl +++ b/library/scrlbar.tcl @@ -157,6 +157,10 @@ switch [tk windowingsystem] { bind Scrollbar <Shift-4> {tk::ScrollByUnits %W h -5} bind Scrollbar <Shift-5> {tk::ScrollByUnits %W h 5} } +} else { + bind Scrollbar <MouseWheel> { + tk::ScrollByUnits %W v [expr {- (%D/120)}] + } } # tk::ScrollButtonDown -- # This procedure is invoked when a button is pressed in a scrollbar. diff --git a/tests/scrollbar.test b/tests/scrollbar.test index c6a5a90..8f92c93 100644 --- a/tests/scrollbar.test +++ b/tests/scrollbar.test @@ -632,6 +632,21 @@ test scrollbar-9.1 {scrollbar widget vs hidden commands} { list [winfo children .] [interp hidden] } [list {} $l] +test scrollbar-10.1 {<MouseWheel> event on scrollbar} -constraints win -setup { + destroy .t .s +} -body { + pack [text .t -yscrollcommand {.s set}] -side left + for {set i 1} {$i < 100} {incr i} {.t insert end "Line $i\n"} + pack [scrollbar .s -command {.t yview}] -fill y -expand 1 -side left + update + focus -force .s + event generate .s <MouseWheel> -delta -120 + after 200 {set eventprocessed 1} ; vwait eventprocessed + .t index @0,0 +} -cleanup { + destroy .t .s +} -result {2.0} + catch {destroy .s} catch {destroy .t} |