Windows 2000 window stacking (layering) problem 
Author Message
 Windows 2000 window stacking (layering) problem

When bringing up two Tcl/TK apps, the second app does not come to the
front (top) of the desktop as you would expect.  Only happens on Windows
2000. (Tcl/Tk 8.3).

Any body seen this ?



Tue, 13 Jan 2004 21:43:01 GMT  
 Windows 2000 window stacking (layering) problem

Quote:

> When bringing up two Tcl/TK apps, the second app does not come to the
> front (top) of the desktop as you would expect.  Only happens on Windows
> 2000. (Tcl/Tk 8.3).

> Any body seen this ?

That's intentional. It's so the second app doesn't steal focus from the
first app when you're in the middle of typing into the first app. Quite
a nice change, actually.

If you start two unrelated non-Tcl apps, you'll see this happen too.

--
Darren New / Senior MTS & Free Radical / Invisible Worlds Inc.
       San Diego, CA, USA (PST).  Cryptokeys on demand.
          Only a WIMP puts wallpaper on his desktop.



Wed, 14 Jan 2004 00:16:14 GMT  
 Windows 2000 window stacking (layering) problem

Quote:

>> When bringing up two Tcl/TK apps, the second app does not come to the
>> front (top) of the desktop as you would expect.  Only happens on Windows
>> 2000. (Tcl/Tk 8.3).
>That's intentional. It's so the second app doesn't steal focus from the
>first app when you're in the middle of typing into the first app. Quite
>a nice change, actually.

But when the second app's window is hidden behind the first's,
how is the user supposed to find out that a second app is running
at all?

Does anyone know how to disable this feature in Tcl/Tk 8.3's
source code? It's very disturbing in Windows IMHO, since all
Windows users are used to apps popping up and stealing focus
anyway.

Regards
W. R?sler
--
====================================================================
GRP Entwicklungs- und Vertriebsgesellschaft
fr Produktionsdatenerfassungsanlagen mbH        Wolfram R?sler

D-52072 Aachen                                   Tel. 0241-88930-17
http://www.grp.de                                Fax  0241-870787
====================================================================



Sat, 24 Jan 2004 14:54:25 GMT  
 Windows 2000 window stacking (layering) problem

Quote:


> >> When bringing up two Tcl/TK apps, the second app does not come to the
> >> front (top) of the desktop as you would expect.  Only happens on Windows
> >> 2000. (Tcl/Tk 8.3).
> >That's intentional. It's so the second app doesn't steal focus from the
> >first app when you're in the middle of typing into the first app. Quite
> >a nice change, actually.

> But when the second app's window is hidden behind the first's,
> how is the user supposed to find out that a second app is running
> at all?

> Does anyone know how to disable this feature in Tcl/Tk 8.3's
> source code? It's very disturbing in Windows IMHO, since all
> Windows users are used to apps popping up and stealing focus
> anyway.

I think you missed Darren's point - this isn't a feature of Tk,
it's part of Windows 2000.  I see this happen with other apps
all the time.  The taskbar icon should flash, indicating a
window appeared and wants your attention.

In Tk, you can force the issue with a 'raise' on the toplevel.

--
  Jeff Hobbs                     The Tcl Guy
  Senior Developer               http://www.ActiveState.com/
      Tcl Support and Productivity Solutions



Sat, 24 Jan 2004 23:21:36 GMT  
 Windows 2000 window stacking (layering) problem

Quote:
> But when the second app's window is hidden behind the first's,
> how is the user supposed to find out that a second app is running
> at all?

The icon in the tray at the bottom of the screen flashes quite
distractingly for a few flashes, then goes solid invert-video until you
give the window focus.

Quote:
> Does anyone know how to disable this feature in Tcl/Tk 8.3's
> source code? It's very disturbing in Windows IMHO, since all
> Windows users are used to apps popping up and stealing focus
> anyway.

Heh. Some of us like it. I've noticed it doesn't always happen. Maybe if
you give up all focus before the second window comes up, the new window
gets focus. I'm not sure how you give up focus from Tcl tho.

You should also be able to raise the window, even tho it won't have
focus. Of course, you have to make sure it's mapped and drawn and all
that stuff first.

--
Darren New / Senior MTS & Free Radical / Invisible Worlds Inc.

"You probably noticed you can't breath underwater. Hence the tank."
   -- PADI instruction manual, page 107.



Sat, 24 Jan 2004 23:55:17 GMT  
 Windows 2000 window stacking (layering) problem
W. R?sler,

This is by design and it's part of Windows 98 and Windows 2000, not
TCL/TK.  Microsoft used to have some articles in their knowledgebase about
how applications could circumvent this design, but apparently they have
changed their mind again, and removed the articles and made it so the
work-around no longer works.

The only currently documented way to work-around the problem is to set the
foreground lock timeout value.  This is a system wide setting which
effects all applications.  Furthermore, it supposedly should only be set
by an installation script.  For more information see article Q97925 -
INFO: SetActiveWindow() and SetForegroundWindow() Clarification at the
Microsoft web site.

Aside: Boy do I wish they hadn't changed this.  It has caused me no end of
grief.

David Liebtag
IBM APL Products and Services



Sun, 25 Jan 2004 00:52:16 GMT  
 Windows 2000 window stacking (layering) problem
David
I'm with you on this one!  Maybe this should be in a Win 2K group, but
this drives me crazy.  I am forever typing commands from one language
into another window that has no idea what I'm talking about.
Sometimes, it appearsthat a window which doesn't accept UI has focus,
and for no apparent reason.

IMO when I am in window A, open, use, then close window B, window A
should regain focus, but it don't work that way anymore.

Quote:

> W. R?sler,

> This is by design and it's part of Windows 98 and Windows 2000, not
> TCL/TK.  Microsoft used to have some articles in their knowledgebase about

> how applications could circumvent this design, but apparently they have
> changed their mind again, and removed the articles and made it so the
> work-around no longer works.

> The only currently documented way to work-around the problem is to set the

> foreground lock timeout value.  This is a system wide setting which
> effects all applications.  Furthermore, it supposedly should only be set
> by an installation script.  For more information see article Q97925 -
> INFO: SetActiveWindow() and SetForegroundWindow() Clarification at the
> Microsoft web site.

> Aside: Boy do I wish they hadn't changed this.  It has caused me no end of

> grief.

> David Liebtag
> IBM APL Products and Services



Mon, 16 Feb 2004 22:29:14 GMT  
 
 [ 7 post ] 

 Relevant Pages 

1. Moving from Windows 98 to Windows 2000

2. Clarion for Windows and Windows 2000

3. Clipper 5.2e, Windows Milenium and windows 2000

4. Windows 2000 vs Windows Me

5. "Out Port.vi": passing from Windows NT 4.0 to Windows 2000

6. A custom built DLL crashes labview 5.1 in windows 2000 but worked fine in windows 98

7. windows.h not found, compiling 1.6.7 under cygwin/windows 2000

8. Help of Fortran 77 in Windows 98 and Windows 2000 or XP.

9. is tcl programs running on windows 2000 professional and windows xp gives diff results

10. Hard links on Windows NT 4 and Windows 2000

11. QuickDDE, Word 2000 & Windows 2000

12. was Re: 4.01Graphics Problem with Windows 98 but not NT or 2000

 

 
Powered by phpBB® Forum Software