summaryrefslogtreecommitdiffstats
path: root/src/inkscape-window.cpp
diff options
context:
space:
mode:
authorTavmjong Bah <tavmjong@free.fr>2019-02-03 11:06:14 +0000
committerTavmjong Bah <tavmjong@free.fr>2019-02-03 11:06:14 +0000
commitde7e1c04e8a3c9bddfc503f8aeb74528128c5aa6 (patch)
treea31ed733ed536ab4088c518de47b97d6df872fa4 /src/inkscape-window.cpp
parentFix widget focus bug. (diff)
downloadinkscape-de7e1c04e8a3c9bddfc503f8aeb74528128c5aa6.tar.gz
inkscape-de7e1c04e8a3c9bddfc503f8aeb74528128c5aa6.zip
Change from hooking up signal handler to overriding class method.
Diffstat (limited to 'src/inkscape-window.cpp')
-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);
}