Comment 44 for bug 22930

Revision history for this message
ChrisC (chris-chris-camacho-deactivatedaccount) wrote : Re: [Bug 22930] Re: Newly-sensitive button ignores clicks until cursor re-enters it

This bug is VERY trivial I happened to be using monodevelop so heres
some mono code with 2 buttons, 1 with the bug and 1 using the work
round

(I have used this workround in c++ before)

 protected virtual void OnGoButtonClicked (object sender,
System.EventArgs e)
 {
  woButton.Sensitive=false;
  wButton.Sensitive=false;
 }

click the go button

move the cursor over one of the 2 test buttons

hit the tab key and the go button looses the focus which re-enables the
buttons one with the work round

 protected virtual void OnGoButtonFocusOutEvent (object o,
Gtk.FocusOutEventArgs args)
 {
  woButton.Sensitive=true;
  wButton.Sensitive=true;

  wButton.Hide();
  wButton.Show();
 }

The wButton shows the correct behaviour. afaik because is all a single
thread the button is never cleared and redrawn, but this hide/show is
enough to make it properly sensitive when the mouse cursor is over it

*** At the very least this should be implemented it synaptic and the
installer ***

I believe that with a simple bit of code in gtk set sensitive that
respects the visible status of the button, this issue would be fixed, I
am not even slightly convinced that this would have far reaching
consequences of a negative nature

At the very least sending a patch upstream would probably prompt what
they would feel the "correct" way of fixing it...

Given the very long history of this problem something like will have to
happen before a "proper" fix happens

      ___________________________________________________________
Want ideas for reducing your carbon footprint? Visit Yahoo! For Good http://uk.promotions.yahoo.com/forgood/environment.html