[comp.windows.x] Command button remaining highlighted

kochhar@endor.harvard.edu (Sandeep Kochhar) (03/03/89)

In article <6146@medusa.cs.purdue.edu> ha@serc3.cs.purdue.edu () writes:
>
>(I observed one problem with MenuBox
>widget though -- after a sub-menu pops up and an item is selected, the
>sub-menu goes away but the item window still remains highlighted with thick
>borders; to unhighlight it I have to move the cursor in and out of that
>item window!). 
>

My posting has nothing directly to do with menu widgets;  but I have
had the problem mentioned above (i.e. the item remains highlighted,
until you move the cursor in and out again); I have actually also
observed the same problem often with the command button widget in
Xaw.  In many of the cases where I have used command buttons, on
clicking the button remains highlighted even after the callback
routine has returned; I am not sure, but it seems to be related to
the time it takes for the callback routine to return.

Anyone have any observations/suggestions?

Thanks.

sandeep kochhar            email: kochhar@harvard.harvard.edu
                                  kochhar@harvard.csnet
33 oxford st,                     kochhar@harvard.uucp
cambridge, ma 02138               kochhar@harvard.bitnet

"If you didn't get this message, please let me know."

bwarkent@polyslo.CalPoly.EDU (Brian Warkentine) (03/05/89)

In article <1309@husc6.harvard.edu> kochhar@endor.UUCP (Sandeep Kochhar) writes:
>
> [...]  I have
>had the problem mentioned above (i.e. the item remains highlighted,
>until you move the cursor in and out again); 
> [...]  I am not sure, but it seems to be related to
>the time it takes for the callback routine to return.
>
>Anyone have any observations/suggestions?
>
>sandeep kochhar            email: kochhar@harvard.harvard.edu

I have noticed this behavior in several programs, including my own (eeekkk!).
In my case, it had nothing to do with the callback routine, it has to 
do with a popup widget grabbing all input.  As a result, the command 
widget never gets the leave window event that tells it to restore the
border to it's non-highlighted state.  If your situation is similar, the
solution is to code around it.

----
Brian "Give me a job" Warkentine                 Cal Poly, San Luis Obispo, CA
   bwarkent@Polyslo.CalPoly.EDU
   ...!ucbvax!voder!polyslo!bwarkent