browse

browse.git
git clone git://git.lenczewski.org/browse.git
Log | Files | Refs | README | LICENSE

commit 2d149f0dc7cf6ea2766179f832b75c209c57a609
parent 17a4c177501e716d66d7ec15a1f0a17af638dbcb
Author: MikoĊ‚aj Lenczewski <mblenczewski@gmail.com>
Date:   Thu, 25 Apr 2024 15:49:59 +0000

Move key event controller from root window to webview

Diffstat:
Mwebview.c | 10++++++----
1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/webview.c b/webview.c @@ -49,13 +49,11 @@ browse_new(char const *uri, struct browse_client *root) if (!self) return NULL; self->window = GTK_WINDOW(gtk_window_new()); - self->event_handler = gtk_event_controller_key_new(); - - gtk_widget_add_controller(GTK_WIDGET(self->window), self->event_handler); - g_signal_connect(self->event_handler, "key-pressed", G_CALLBACK(event_controller_on_key_pressed), self); g_signal_connect(self->window, "destroy", G_CALLBACK(window_on_destroy), self); + self->event_handler = gtk_event_controller_key_new(); + self->clipboard = gtk_widget_get_primary_clipboard(GTK_WIDGET(self->window)); if (root) { @@ -64,6 +62,10 @@ browse_new(char const *uri, struct browse_client *root) self->webview = WEBKIT_WEB_VIEW(webkit_web_view_new()); } + g_signal_connect(self->event_handler, "key-pressed", G_CALLBACK(event_controller_on_key_pressed), self); + + gtk_widget_add_controller(GTK_WIDGET(self->webview), self->event_handler); + self->webnetsession = webkit_web_view_get_network_session(self->webview); g_signal_connect(self->webview, "load-changed", G_CALLBACK(webview_on_load_changed), self);