From 216c6fa203c77b1ea3aa21dd822c3688783cac42 Mon Sep 17 00:00:00 2001 From: Christian Persch Date: Thu, 15 Jan 2004 18:08:26 +0000 Subject: Make EphyEmbedEvent abstract, implemented by MozillaEmbedEvent. Port 2004-01-15 Christian Persch * embed/ephy-embed-event.c: (ephy_embed_event_get_type), (ephy_embed_event_base_init), (ephy_embed_event_get_event_type), (ephy_embed_event_get_context), (ephy_embed_event_get_modifier), (ephy_embed_event_get_coords), (ephy_embed_event_get_property), (ephy_embed_event_has_property), (ephy_embed_event_get_dom_event): * embed/ephy-embed-event.h: * embed/mozilla/EventContext.cpp: * embed/mozilla/EventContext.h: * embed/mozilla/Makefile.am: * embed/mozilla/mozilla-embed-event.cpp: * embed/mozilla/mozilla-embed-event.h: * embed/mozilla/mozilla-embed.cpp: * src/ephy-window.c: (popup_menu_at_coords): * src/popup-commands.c: (popup_cmd_copy_link_address): Make EphyEmbedEvent abstract, implemented by MozillaEmbedEvent. Port callers to the new api. Fix some callers in src/ which were using private fields of EphyEmbedEvent struct. --- src/ephy-window.c | 6 +++--- src/popup-commands.c | 7 +++++-- 2 files changed, 8 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/ephy-window.c b/src/ephy-window.c index d78d6013c..f2c0479ae 100644 --- a/src/ephy-window.c +++ b/src/ephy-window.c @@ -1234,10 +1234,10 @@ static void popup_menu_at_coords (GtkMenu *menu, gint *x, gint *y, gboolean *push_in, gpointer user_data) { - EphyEmbedEvent *event = user_data; + EphyEmbedEvent *event = (EphyEmbedEvent *) user_data; + + ephy_embed_event_get_coords (event, x, y); - *x = event->x; - *y = event->y; *push_in = TRUE; } diff --git a/src/popup-commands.c b/src/popup-commands.c index f145c1d76..666492659 100644 --- a/src/popup-commands.c +++ b/src/popup-commands.c @@ -243,19 +243,22 @@ popup_cmd_copy_link_address (GtkAction *action, EphyWindow *window) { EphyEmbedEvent *event; + EmbedEventContext context; const char *address; const GValue *value; event = get_event_info (window); g_return_if_fail (EPHY_IS_EMBED_EVENT (event)); - if (event->context & EMBED_CONTEXT_EMAIL_LINK) + context = ephy_embed_event_get_context (event); + + if (context & EMBED_CONTEXT_EMAIL_LINK) { ephy_embed_event_get_property (event, "email", &value); address = g_value_get_string (value); popup_cmd_copy_to_clipboard (window, address); } - else if (event->context & EMBED_CONTEXT_LINK) + else if (context & EMBED_CONTEXT_LINK) { ephy_embed_event_get_property (event, "link", &value); address = g_value_get_string (value); -- cgit v1.2.3