diff options
author | corvid <corvid@lavabit.com> | 2012-12-10 17:10:17 +0000 |
---|---|---|
committer | corvid <corvid@lavabit.com> | 2012-12-10 17:10:17 +0000 |
commit | 6464ae1286372adb57076e6a4c32c02dc8e3f612 (patch) | |
tree | feb6039375ca27eae359832d25458abf7571e1b8 /dw/fltkcomplexbutton.cc | |
parent | 8b338ba76781a564cc39ad39e9d2622860621d22 (diff) |
make complex button push in when triggered by keyboard
Diffstat (limited to 'dw/fltkcomplexbutton.cc')
-rw-r--r-- | dw/fltkcomplexbutton.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/dw/fltkcomplexbutton.cc b/dw/fltkcomplexbutton.cc index b866fb83..bbfe0b3b 100644 --- a/dw/fltkcomplexbutton.cc +++ b/dw/fltkcomplexbutton.cc @@ -110,11 +110,18 @@ int ComplexButton::handle(int event) { if (Fl::focus() == this && (Fl::event_key() == ' ' || Fl::event_key() == FL_Enter) && !(Fl::event_state() & (FL_SHIFT | FL_CTRL | FL_ALT | FL_META))) { + value(1); set_changed(); Fl_Widget_Tracker wp(this); if (wp.deleted()) return 1; if (when() & FL_WHEN_RELEASE) do_callback(); return 1; + } else return 0; + case FL_KEYUP: + if (Fl::focus() == this && + (Fl::event_key() == ' ' || Fl::event_key() == FL_Enter)) { + value(0); + return 1; } default: return 0; |