Fix tooltip display with multiple monitors on windows.
authorPat Thoyts <patthoyts@users.sourceforge.net>
Mon, 11 Jul 2011 12:55:38 +0000 (13:55 +0100)
committerPat Thoyts <patthoyts@users.sourceforge.net>
Mon, 11 Jul 2011 12:55:38 +0000 (13:55 +0100)
On Windows the position of a window may be negative on a monitor to the
left of the primary display. A plus sign is used as the separator between
the width and height and the positional parts of the geometry so always
include the plus sign even for negative positions on this platform.

Signed-off-by: Pat Thoyts <patthoyts@users.sourceforge.net>
lib/blame.tcl
lib/choose_rev.tcl
index 61e358f960ca949cac5664c67442b82d0afca65f..1f2977d5bb525521e13380e3957708ba4f025473 100644 (file)
@@ -1298,9 +1298,9 @@ method _position_tooltip {} {
        set pos_y [expr {[winfo pointery .] + 10}]
 
        set g "${req_w}x${req_h}"
-       if {$pos_x >= 0} {append g +}
+       if {[tk windowingsystem] eq "win32" || $pos_x >= 0} {append g +}
        append g $pos_x
-       if {$pos_y >= 0} {append g +}
+       if {[tk windowingsystem] eq "win32" || $pos_y >= 0} {append g +}
        append g $pos_y
 
        wm geometry $tooltip_wm $g
index c12d5e1698a1fcdcfa39bb69b475633b2f6c34c9..54c7957a66aa5784d47708edc05a1c95178ed7a2 100644 (file)
@@ -610,9 +610,9 @@ method _position_tooltip {} {
        set pos_y [expr {[winfo pointery .] + 10}]
 
        set g "${req_w}x${req_h}"
-       if {$pos_x >= 0} {append g +}
+       if {[tk windowingsystem] eq "win32" || $pos_x >= 0} {append g +}
        append g $pos_x
-       if {$pos_y >= 0} {append g +}
+       if {[tk windowingsystem] eq "win32" || $pos_y >= 0} {append g +}
        append g $pos_y
 
        wm geometry $tooltip_wm $g