hgk: enable selected patch text on Windows
Port a patch from gitk. Original description:
On windows, mouse input follows the keyboard focus, so to allow selecting
text from the patch canvas we must not shift focus back to the top level.
This change has no negative impact on X, so we don't explicitly test
for Win32 on this change. This provides similar selection capability
as already available using X-Windows.
Signed-off-by: Mark Levedahl <mdl123@verizon.net>
Signed-off-by: Paul Mackerras <paulus@samba.org>
--- a/contrib/hgk Sat Mar 15 15:33:50 2014 +0100
+++ b/contrib/hgk Sat Mar 15 15:44:51 2014 +0100
@@ -795,8 +795,8 @@
# set the focus back to the toplevel for any click outside
# the entry widgets
proc click {w} {
- global entries
- foreach e $entries {
+ global ctext entries
+ foreach e [concat $entries $ctext] {
if {$w == $e} return
}
focus .
@@ -2546,6 +2546,7 @@
proc selnextline {dir} {
global selectedline
+ focus .
if {![info exists selectedline]} return
set l [expr $selectedline + $dir]
unmarkmatches
@@ -2583,6 +2584,7 @@
proc goback {} {
global history historyindex
+ focus .
if {$historyindex > 1} {
incr historyindex -1
@@ -2597,6 +2599,7 @@
proc goforw {} {
global history historyindex
+ focus .
if {$historyindex < [llength $history]} {
set cmd [lindex $history $historyindex]