From dbd552f232188c1909aebd36c931041b17f6cee9 Mon Sep 17 00:00:00 2001 From: Igor Bogomazov Date: Mon, 25 Jan 2010 21:58:59 +0100 Subject: mouse pointer events --- src/callbacks.c | 13 +++++++++++++ src/callbacks.h | 3 +++ src/events.c | 3 ++- src/events.h | 1 + src/uzbl-core.c | 1 + 5 files changed, 20 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/callbacks.c b/src/callbacks.c index 59c6dc2..6ec48ea 100644 --- a/src/callbacks.c +++ b/src/callbacks.c @@ -577,6 +577,19 @@ button_release_cb (GtkWidget* window, GdkEventButton* event) { return propagate; } +gboolean +motion_notify_cb(GtkWidget* window, GdkEventMotion* event, gpointer user_data) { + (void) window; + (void) event; + (void) user_data; + + gchar *details; + details = g_strdup_printf("%.0lf %.0lf %u", event->x, event->y, event->state); + send_event(PTR_MOVE, details, NULL); + + return FALSE; +} + gboolean navigation_decision_cb (WebKitWebView *web_view, WebKitWebFrame *frame, WebKitNetworkRequest *request, WebKitWebNavigationAction *navigation_action, WebKitWebPolicyDecision *policy_decision, gpointer user_data) { (void) web_view; diff --git a/src/callbacks.h b/src/callbacks.h index 242c510..43a9192 100644 --- a/src/callbacks.h +++ b/src/callbacks.h @@ -169,6 +169,9 @@ key_press_cb (GtkWidget* window, GdkEventKey* event); gboolean key_release_cb (GtkWidget* window, GdkEventKey* event); +gboolean +motion_notify_cb(GtkWidget* window, GdkEventMotion* event, gpointer user_data); + gboolean navigation_decision_cb (WebKitWebView *web_view, WebKitWebFrame *frame, WebKitNetworkRequest *request, WebKitWebNavigationAction *navigation_action, diff --git a/src/events.c b/src/events.c index acb554c..371c8b8 100644 --- a/src/events.c +++ b/src/events.c @@ -43,7 +43,8 @@ const char *event_table[LAST_EVENT] = { "FILE_INCLUDED" , "PLUG_CREATED" , "COMMAND_ERROR" , - "BUILTINS" + "BUILTINS" , + "PTR_MOVE" }; void diff --git a/src/events.h b/src/events.h index 7b8f58b..b02a43c 100644 --- a/src/events.h +++ b/src/events.h @@ -14,6 +14,7 @@ enum event_type { LINK_UNHOVER, FORM_ACTIVE, ROOT_ACTIVE, FOCUS_LOST, FOCUS_GAINED, FILE_INCLUDED, PLUG_CREATED, COMMAND_ERROR, BUILTINS, + PTR_MOVE, /* must be last entry */ LAST_EVENT diff --git a/src/uzbl-core.c b/src/uzbl-core.c index 2aa3022..9168597 100644 --- a/src/uzbl-core.c +++ b/src/uzbl-core.c @@ -2042,6 +2042,7 @@ create_browser () { "signal::key-release-event", (GCallback)key_release_cb, NULL, "signal::button-press-event", (GCallback)button_press_cb, NULL, "signal::button-release-event", (GCallback)button_release_cb, NULL, + "signal::motion-notify-event", (GCallback)motion_notify_cb, NULL, "signal::title-changed", (GCallback)title_change_cb, NULL, "signal::selection-changed", (GCallback)selection_changed_cb, NULL, "signal::load-progress-changed", (GCallback)progress_change_cb, NULL, -- cgit v1.2.3