diff options
author | David Robillard <d@drobilla.net> | 2010-03-04 20:34:05 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2010-03-04 20:34:05 +0000 |
commit | f2d901fe0424bafa39b794117c9547e4969017c6 (patch) | |
tree | c33f349bae3d513cfe2bef512d55746e408a1dc7 /src/gui/PatchCanvas.cpp | |
parent | cf0be8c26e61218e23aee691bee6f60ead7fe49a (diff) | |
download | ingen-f2d901fe0424bafa39b794117c9547e4969017c6.tar.gz ingen-f2d901fe0424bafa39b794117c9547e4969017c6.tar.bz2 ingen-f2d901fe0424bafa39b794117c9547e4969017c6.zip |
Fix FlowCanvas key bindings (arrow scrolling and select-connect with enter).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2517 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui/PatchCanvas.cpp')
-rw-r--r-- | src/gui/PatchCanvas.cpp | 36 |
1 files changed, 10 insertions, 26 deletions
diff --git a/src/gui/PatchCanvas.cpp b/src/gui/PatchCanvas.cpp index 2a406191..644f95f6 100644 --- a/src/gui/PatchCanvas.cpp +++ b/src/gui/PatchCanvas.cpp @@ -536,39 +536,23 @@ PatchCanvas::canvas_event(GdkEvent* event) break; case GDK_KEY_PRESS: - case GDK_KEY_RELEASE: - ret = canvas_key_event(&event->key); - - default: - break; - } - - return (ret ? true : Canvas::canvas_event(event)); -} - - -bool -PatchCanvas::canvas_key_event(GdkEventKey* event) -{ - switch (event->type) { - case GDK_KEY_PRESS: - switch (event->keyval) { + switch (event->key.keyval) { case GDK_Delete: destroy_selection(); - return true; + ret = true; + break; case GDK_e: - if (event->state == 0) { + if (event->key.state == 0) { _patch->set_editable(!_patch->get_editable()); - return true; - } else { - return false; + ret = true; } - default: - return false; + default: break; } - default: - return false; + + default: break; } + + return (ret ? true : Canvas::canvas_event(event)); } |