diff options
| author | Jabiertxof <jabier.arraiza@marker.es> | 2019-08-02 16:37:57 +0000 |
|---|---|---|
| committer | Jabier Arraiza <jabier.arraiza@marker.es> | 2019-08-02 21:26:28 +0000 |
| commit | f3ecf7a2de4a54b11603849501087aec13de9548 (patch) | |
| tree | cbc201e9109d545eef13e41495c043b23e41266d /src/widgets/desktop-widget.cpp | |
| parent | Fix coding style (diff) | |
| download | inkscape-f3ecf7a2de4a54b11603849501087aec13de9548.tar.gz inkscape-f3ecf7a2de4a54b11603849501087aec13de9548.zip | |
Allow tools sensitive when overflow canvas area also fix a bug i couldent remember about ruberband selection
Diffstat (limited to 'src/widgets/desktop-widget.cpp')
| -rw-r--r-- | src/widgets/desktop-widget.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 7ddf56eb2..75f48f827 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -508,7 +508,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw ) gtk_style_context_add_provider(style_context, GTK_STYLE_PROVIDER(css_provider), GTK_STYLE_PROVIDER_PRIORITY_USER); - g_signal_connect (G_OBJECT (dtw->_canvas), "event", G_CALLBACK (SPDesktopWidget::event), dtw); + g_signal_connect (G_OBJECT (dtw), "event", G_CALLBACK (SPDesktopWidget::event), dtw); gtk_widget_set_hexpand(GTK_WIDGET(dtw->_canvas), TRUE); gtk_widget_set_vexpand(GTK_WIDGET(dtw->_canvas), TRUE); @@ -1000,6 +1000,14 @@ SPDesktopWidget::event(GtkWidget *widget, GdkEvent *event, SPDesktopWidget *dtw) // is over the canvas. This redirection is only done for key events and only if there's no // current item on the canvas, because item events and all mouse events are caught // and passed on by the canvas acetate (I think). --bb + + if ((event->type == GDK_MOTION_NOTIFY || + event->type == GDK_BUTTON_RELEASE) && + !dtw->_canvas->_inside) + { + return sp_desktop_root_handler (nullptr, event, dtw->desktop); + } + if ((event->type == GDK_KEY_PRESS || event->type == GDK_KEY_RELEASE) && !dtw->_canvas->_current_item) { return sp_desktop_root_handler (nullptr, event, dtw->desktop); |
