diff options
-rw-r--r-- | library/scrlbar.tcl | 14 | ||||
-rw-r--r-- | library/ttk/notebook.tcl | 9 | ||||
-rw-r--r-- | tests/scrollbar.test | 3 |
3 files changed, 12 insertions, 14 deletions
diff --git a/library/scrlbar.tcl b/library/scrlbar.tcl index fa3af8e..35ff251 100644 --- a/library/scrlbar.tcl +++ b/library/scrlbar.tcl @@ -327,14 +327,12 @@ proc ::tk::ScrollByUnits {w orient amount {factor 1.0}} { # events, and ignore the non-dominant ones variable ::tk::Priv - if {[info exists Priv(xEvents)] && [info exists Priv(yEvents)]} { - set axis [expr {[string index $orient 0] eq "h" ? "x" : "y"}] - incr Priv(${axis}Events) - if {($Priv(xEvents) + $Priv(yEvents) > 10) && - ($axis eq "x" && $Priv(xEvents) < $Priv(yEvents) || - $axis eq "y" && $Priv(yEvents) < $Priv(xEvents))} { - return - } + set axis [expr {[string index $orient 0] eq "h" ? "x" : "y"}] + incr Priv(${axis}Events) + if {($Priv(xEvents) + $Priv(yEvents) > 10) && + ($axis eq "x" && $Priv(xEvents) < $Priv(yEvents) || + $axis eq "y" && $Priv(yEvents) < $Priv(xEvents))} { + return } } diff --git a/library/ttk/notebook.tcl b/library/ttk/notebook.tcl index 3d277a4..d8ed23b 100644 --- a/library/ttk/notebook.tcl +++ b/library/ttk/notebook.tcl @@ -98,13 +98,10 @@ proc ttk::notebook::CondCycleTab {w axis dir {factor 1.0}} { variable ::tk::Priv incr Priv(${axis}Events) - if {[info exists Priv(xEvents)] && [info exists Priv(yEvents)]} { - - if {($Priv(xEvents) + $Priv(yEvents) > 10) && - ($axis eq "x" && $Priv(xEvents) < $Priv(yEvents) || - $axis eq "y" && $Priv(yEvents) < $Priv(xEvents))} { + if {($Priv(xEvents) + $Priv(yEvents) > 10) && + ($axis eq "x" && $Priv(xEvents) < $Priv(yEvents) || + $axis eq "y" && $Priv(yEvents) < $Priv(xEvents))} { return - } } CycleTab $w $dir $factor diff --git a/tests/scrollbar.test b/tests/scrollbar.test index c84ce58..48eb734 100644 --- a/tests/scrollbar.test +++ b/tests/scrollbar.test @@ -677,6 +677,7 @@ test scrollbar-10.1 {<MouseWheel> event on scrollbar} -setup { pack [scrollbar .s -command {.t yview}] -fill y -expand 1 -side left update focus -force .s + event generate .s <Enter> event generate .s <MouseWheel> -delta -120 after 200 {set eventprocessed 1} ; vwait eventprocessed .t index @0,0 @@ -692,6 +693,7 @@ test scrollbar-10.2 {<MouseWheel> event on scrollbar} -setup { pack [scrollbar .s -command {.t xview} -orient horizontal] -fill x -expand 1 -side top update focus -force .s + event generate .s <Enter> event generate .s <Shift-MouseWheel> -delta -120 after 200 {set eventprocessed 1} ; vwait eventprocessed .t index @0,0 @@ -706,6 +708,7 @@ test scrollbar-10.3 {<MouseWheel> event on horizontal scrollbar} -setup { pack [scrollbar .s -command {.t xview} -orient horizontal] -fill x -expand 1 -side top update focus -force .s + event generate .s <Enter> event generate .s <MouseWheel> -delta -120 after 200 {set eventprocessed 1} ; vwait eventprocessed .t index @0,0 |