- priority: 5 --> 4
How to reproduce the bug
Execute that script...click on .t window, try to write something in .f
first text widget
put that window in the dock (.f)
click in the dock to reveat the window
You can't write in .f anymore...You can't bring the focus to the text
widget. You have to switch to .t and get back to .f
frame .f -width 300 ;
update idletasks ;
text .c1 -background white -width 15 -height 3 -wrap word -font
bboldf -borderwidth 0 -relief solid -highlightthickness 0
-exportselection 1
text .c2 -background white -width 15 -height 3 -wrap word -font
bboldf -borderwidth 0 -relief solid -highlightthickness 0
-exportselection 1
.c2 configure -state disabled
pack .f ;
pack .c1 -side left -expand true -fill both -padx 1 -pady 1;
pack .c2 -side right -expand true -fill both -padx 1 -pady 1;
toplevel .t
entry .t.e
pack .t.e
Comment from Jim:
I put printf in TkMacOSXProcessWindowEvent, which is where we
handle window Activation & Deactivation. What I see is:
Normal case: when you just click on .t or . to foreground a window
you first get the Deactivate event for the window that is going to
the background, then the Activate event for the new window.
Hide/Reveal case: when you hide the window, then on Reveal, you
first get the Activate event for the revealed window, THEN the
Deactivate window for the previous foreground window.
So we end up with nobody having the focus... %$^#$%@#!#@$