summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/inkscape-window.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/inkscape-window.cpp b/src/inkscape-window.cpp
index 15524d28a..9551897d7 100644
--- a/src/inkscape-window.cpp
+++ b/src/inkscape-window.cpp
@@ -81,7 +81,6 @@ InkscapeWindow::InkscapeWindow(SPDocument* document)
gtk_box_pack_start(GTK_BOX(_mainbox->gobj()), GTK_WIDGET(_desktop_widget), true, true, 0); // Can't use Glib::wrap()
// ================== Callbacks ==================
- signal_key_press_event().connect( sigc::mem_fun(*this, &InkscapeWindow::key_press));
signal_delete_event().connect( sigc::mem_fun(*_desktop, &SPDesktop::onDeleteUI));
signal_window_state_event().connect(sigc::mem_fun(*_desktop, &SPDesktop::onWindowStateEvent));
signal_focus_in_event().connect( sigc::mem_fun(*_desktop_widget, &SPDesktopWidget::onFocusInEvent));
@@ -114,8 +113,13 @@ InkscapeWindow::change_document(SPDocument* document)
// We don't override on_key_press() as it steals key strokes from text tool.
bool
-InkscapeWindow::key_press(GdkEventKey* event)
+InkscapeWindow::on_key_press_event(GdkEventKey* event)
{
+ bool done = Gtk::Window::on_key_press_event(event);
+ if (done) {
+ return true;
+ }
+
unsigned shortcut = sp_shortcut_get_for_event(event);
return sp_shortcut_invoke (shortcut, _desktop);
}