summaryrefslogtreecommitdiffstats
path: root/src/gui/PatchCanvas.cpp
diff options
context:
space:
mode:
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));
}