summaryrefslogtreecommitdiffstats
path: root/src/gui/PatchCanvas.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2010-03-04 20:34:05 +0000
committerDavid Robillard <d@drobilla.net>2010-03-04 20:34:05 +0000
commitf2d901fe0424bafa39b794117c9547e4969017c6 (patch)
treec33f349bae3d513cfe2bef512d55746e408a1dc7 /src/gui/PatchCanvas.cpp
parentcf0be8c26e61218e23aee691bee6f60ead7fe49a (diff)
downloadingen-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.cpp36
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));
}