diff options
Diffstat (limited to 'src/Fl_Button.cxx')
| -rw-r--r-- | src/Fl_Button.cxx | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/Fl_Button.cxx b/src/Fl_Button.cxx index 4df8626c6..05f0fad4c 100644 --- a/src/Fl_Button.cxx +++ b/src/Fl_Button.cxx @@ -131,10 +131,13 @@ int Fl_Button::handle(int event) { if (when() & FL_WHEN_NOT_CHANGED) do_callback(FL_REASON_SELECTED); return 1; } - set_changed(); - if (type() == FL_RADIO_BUTTON) setonly(); - else if (type() == FL_TOGGLE_BUTTON) oldval = value_; - else { + if (type() == FL_RADIO_BUTTON) { + setonly(); + set_changed(); + } else if (type() == FL_TOGGLE_BUTTON) { + oldval = value_; + set_changed(); + } else { value(oldval); set_changed(); if (when() & FL_WHEN_CHANGED) { |
