Minimizing Cygwin/XFree86 under NT 4.0 with KDE auto-hide task ba r active consumes CPU resources
Harold L Hunt II
huntharo@msu.edu
Wed Aug 7 13:26:00 GMT 2002
Steve,
Let me get one thing straight: are you running KDE locally on your
Windows machine, or are you using XDMCP to logon to a Linux/UNIX machine
that is running KDE?
KDE running on Cygwin is nowhere near even a beta release... any
problems you have are expected and they are being worked on by the KDE
on Cygiwn developers.
If, on the other hand, you are simply viewing a KDE session running on
another machine, then we would be somewhat interested in figuring out
why KDE takes 100% of the CPU when its taskbar is displayed.
With all of that out of the way, I have a little information on the side
for you and one question.
Mouse messages in X are actually initiated by the movement of the mouse.
You don't have to poll the mouse to find out if it has moved, you
simply wait for a message that says, ``the mouse has moved''. When you
move the Windows mouse cursor out of the Cygwin/XFree86 window in the
manner that you described, the last mouse message sent to X, hence KDE,
is the last valid position that the mouse cursor had in the
Cygwin/XFree86 window. No more mouse messages are sent after the
Windows mouse cursor leaves the ``client area'' of the Cygwin/XFree86
window, so KDE is not likely having a problem with invalid mouse
coordinates or with the mouse continuing to move.
Question: What happens to the CPU usage if you make the KDE taskbar
always shown?
Expected answer: The CPU usage jumps to 100%, regardless of whether the
mouse is over the KDE taskbar or not.
Reasoning: The KDE taskbar can have little ``applets'' that run in the
taskbar and provide various information such as when new mail has
arrived, when new instant messages have arrived, etc. Many of these
programs will catch the hidden state of the taskbar and cease updating
their display until the taskbar is shown again. I suspect that the real
culprit in taking 100% of the CPU here is either the KDE taskbar itself
or one of these applets running in the KDE taskbar.
Answer that one question and we will be able to tell for sure whether
you are going to have to talk to the KDE on Cygwin folks rather than us
:) Plus, I am interested to know the root cause here as well.
Harold
Steve Stone wrote:
> Please forgive any ignorance of mine demonstrated by this note. Also please
> forgive the length of the message. :-)
>
> We downloaded the newest Cygwin/XFree86 on Jul 7th. I don't know how what
> file to look at in the unpack directory to verify what version we are
> running, but I believe it is 1.3.12-1.
>
> I am using KDE (according to the KDE Control Center GUI, it is KDE version
> 1.1.2) and I had the task bar set to the top and to "Auto Hide" with the
> smallest delay, fastest speed, and the Animate set fairly low (about 5 ticks
> up).
>
> The Cygwin/XFree86 window is the only X item on my Windows task bar and it
> takes the whole screen when present. The Alt/Space does not drop down the
> System menu (from the Cygwin/XFree86 system icon on the left side of the
> title bar, so I move the mouse up to the minimize button (icon) on the right
> side of the title bar.
>
> As the mouse moves over the area assigned to the KDE task bar, it pops up
> (as it should) and the NT Task Manager CPU load jumps up to float around
> 40-60% for the XWin.exe. Then, the KDE task bar stays up while the mouse is
> over the Cygwin/XFree86 title bar. When I push the minimize button, the CPU
> load stays the same.
>
> This is true even when some other Windows program currently has the focus
> (e.g. Launch Mozilla then Cygwin/XFree86. Alt/Tab from Cygwin/XFree86 to
> Mozilla. The KDE task bar can be activated by simply moving the mouse over
> that area even though Cygwin/XFree86 does not have the active focus.
>
> Now position the Mozilla (or other Windows program) partly over the
> Cygwin/XFree86 title bar. With the KDE auto-hide task bar NOT active, there
> is a path to the Cygwin/XFree86 title bar that does NOT activate the KCD
> task bar. When minimized like this, the CPU load is NOT increased.
>
> My belief is that the interaction between the KDE auto-hide bar and
> Cygwin/XFree86 requires that the mouse messages be monitored by the KDE. So
> I presume the socket for the X messages must then be getting used by KDE
> asking "Has the mouse moved away from the active bar area?". It seems to me
> that it has but that Cygwin/XFree86 can not determine this.
>
> I know very little about X messages. Is there something that can be done
> about this besides move the task bar to the bottom bar and/or make it not
> auto-hide?
>
> Also, is there some way to make the Alt/Space combination activate the
> Cygwin/XFree86 Windows system menu?
>
> Thank you,
>
> Steve Stone
>
>
More information about the Cygwin-xfree
mailing list