diff options
author | fvogel <fvogel@noemail.net> | 2015-11-08 21:50:06 (GMT) |
---|---|---|
committer | fvogel <fvogel@noemail.net> | 2015-11-08 21:50:06 (GMT) |
commit | a04e4798aa60275ce5228d3b2d61157911569e07 (patch) | |
tree | eb001f13d086e69bab191048fdc73f97cc539967 | |
parent | baca8e59e8bf1a13418ca466024e477f03259a44 (diff) | |
parent | 05dfb89eeaef347b9d8d188513a96160743bc1b9 (diff) | |
download | tk-a04e4798aa60275ce5228d3b2d61157911569e07.zip tk-a04e4798aa60275ce5228d3b2d61157911569e07.tar.gz tk-a04e4798aa60275ce5228d3b2d61157911569e07.tar.bz2 |
Fixed entry (and final) part of bug [542199fff] - Double click on a lone character in an entry does not work
FossilOrigin-Name: 2cf8afea8c90d75e0bacc3493c7cd4a526deb2a7
-rw-r--r-- | library/entry.tcl | 10 | ||||
-rw-r--r-- | tests/event.test | 6 |
2 files changed, 10 insertions, 6 deletions
diff --git a/library/entry.tcl b/library/entry.tcl index f7170f7..6243d26 100644 --- a/library/entry.tcl +++ b/library/entry.tcl @@ -357,12 +357,18 @@ proc ::tk::EntryMouseSelect {w x} { } } word { - if {$cur < [$w index anchor]} { + if {$cur < $anchor} { set before [tcl_wordBreakBefore [$w get] $cur] set after [tcl_wordBreakAfter [$w get] [expr {$anchor-1}]] - } else { + } elseif {$cur > $anchor} { set before [tcl_wordBreakBefore [$w get] $anchor] set after [tcl_wordBreakAfter [$w get] [expr {$cur - 1}]] + } else { + if {[$w index @$Priv(pressX)] < $anchor} { + incr anchor -1 + } + set before [tcl_wordBreakBefore [$w get] $anchor] + set after [tcl_wordBreakAfter [$w get] $anchor] } if {$before < 0} { set before 0 diff --git a/tests/event.test b/tests/event.test index 1548467..756dbe5 100644 --- a/tests/event.test +++ b/tests/event.test @@ -756,9 +756,7 @@ test event-7.1(double-click) {A double click on a lone character deleteWindows } -result {1.3 A 1.3 A} test event-7.2(double-click) {A double click on a lone character - in an entry widget should select that character} -constraints { - knownBug -} -setup { + in an entry widget should select that character} -setup { deleteWindows } -body { set t [toplevel .t] @@ -822,7 +820,7 @@ test event-7.2(double-click) {A double click on a lone character return $result } -cleanup { deleteWindows -} -result {3 A 4 A} +} -result {4 A 4 A} # cleanup unset -nocomplain keypress_lookup |