aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-format-html-display.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/em-format-html-display.c')
-rw-r--r--mail/em-format-html-display.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/mail/em-format-html-display.c b/mail/em-format-html-display.c
index 10f5d89d33..907b674f0a 100644
--- a/mail/em-format-html-display.c
+++ b/mail/em-format-html-display.c
@@ -570,26 +570,27 @@ static int
efhd_html_button_press_event (GtkWidget *widget, GdkEventButton *event, EMFormatHTMLDisplay *efhd)
{
HTMLEngine *e;
- HTMLPoint *point;
+ HTMLObject *obj;
const char *url;
gboolean res = FALSE;
+ gint offset;
if (event->button != 3)
return FALSE;
e = ((GtkHTML *)widget)->engine;
- point = html_engine_get_point_at(e, event->x, event->y, FALSE);
- if (point == NULL)
+ obj = html_engine_get_object_at(e, event->x, event->y, &offset, FALSE);
+ if (obj == NULL)
return FALSE;
d(printf("popup button pressed\n"));
- if ( (url = html_object_get_src(point->object)) != NULL
- || (url = html_object_get_url(point->object, 0)) != NULL) {
+ if ( (url = html_object_get_src(obj)) != NULL
+ || (url = html_object_get_url(obj, offset)) != NULL) {
EMFormatPURI *puri;
char *uri;
- uri = gtk_html_get_url_object_relative((GtkHTML *)widget, point->object, url);
+ uri = gtk_html_get_url_object_relative((GtkHTML *)widget, obj, url);
puri = em_format_find_puri((EMFormat *)efhd, uri);
d(printf("poup event, uri = '%s' part = '%p'\n", uri, puri?puri->part:NULL));
@@ -597,8 +598,6 @@ efhd_html_button_press_event (GtkWidget *widget, GdkEventButton *event, EMFormat
g_signal_emit((GtkObject *)efhd, efhd_signals[EFHD_POPUP_EVENT], 0, event, uri, puri?puri->part:NULL, &res);
g_free(uri);
}
-
- html_point_destroy(point);
return res;
}