[gtk+/wip/attach-params-pass-event: 8/15] f2a19cb36 gtklabel pass GdkEvent
- From: William Hua <williamhua src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/attach-params-pass-event: 8/15] f2a19cb36 gtklabel pass GdkEvent
- Date: Thu, 18 Feb 2016 16:08:41 +0000 (UTC)
commit 74835c0eed6b8ed57d36079984bf954eefc3d40b
Author: William Hua <william hua canonical com>
Date: Wed Feb 17 11:01:56 2016 -0500
f2a19cb36 gtklabel pass GdkEvent
gtk/gtklabel.c | 28 ++++++++++++++--------------
1 files changed, 14 insertions(+), 14 deletions(-)
---
diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c
index d99aadf..4d8bce8 100644
--- a/gtk/gtklabel.c
+++ b/gtk/gtklabel.c
@@ -511,7 +511,7 @@ static void gtk_label_move_cursor (GtkLabel *label,
static void gtk_label_copy_clipboard (GtkLabel *label);
static void gtk_label_select_all (GtkLabel *label);
static void gtk_label_do_popup (GtkLabel *label,
- GdkEventButton *event);
+ const GdkEvent *event);
static gint gtk_label_move_forward_word (GtkLabel *label,
gint start);
static gint gtk_label_move_backward_word (GtkLabel *label,
@@ -4969,7 +4969,7 @@ gtk_label_multipress_gesture_pressed (GtkGestureMultiPress *gesture,
{
info->link_clicked = 1;
update_link_state (label);
- gtk_label_do_popup (label, (GdkEventButton*) event);
+ gtk_label_do_popup (label, event);
return;
}
else if (button == GDK_BUTTON_PRIMARY)
@@ -4991,8 +4991,8 @@ gtk_label_multipress_gesture_pressed (GtkGestureMultiPress *gesture,
info->in_drag = FALSE;
info->select_words = FALSE;
- if (gdk_event_triggers_context_menu ((GdkEvent *) event))
- gtk_label_do_popup (label, (GdkEventButton*) event);
+ if (gdk_event_triggers_context_menu (event))
+ gtk_label_do_popup (label, event);
else if (button == GDK_BUTTON_PRIMARY)
{
if (!gtk_widget_has_focus (widget))
@@ -6584,14 +6584,18 @@ copy_link_activate_cb (GtkMenuItem *menuitem,
static gboolean
gtk_label_popup_menu (GtkWidget *widget)
{
- gtk_label_do_popup (GTK_LABEL (widget), NULL);
+ GdkEvent *event;
+
+ event = gtk_get_current_event ();
+ gtk_label_do_popup (GTK_LABEL (widget), event);
+ g_clear_pointer (&event, gdk_event_free);
return TRUE;
}
static void
gtk_label_do_popup (GtkLabel *label,
- GdkEventButton *event)
+ const GdkEvent *event)
{
GtkLabelPrivate *priv = label->priv;
GtkWidget *menuitem;
@@ -6615,7 +6619,7 @@ gtk_label_do_popup (GtkLabel *label,
have_selection =
priv->select_info->selection_anchor != priv->select_info->selection_end;
- if (event)
+ if (gdk_event_triggers_context_menu (event))
{
if (priv->select_info->link_clicked)
link = priv->select_info->active_link;
@@ -6669,13 +6673,11 @@ gtk_label_do_popup (GtkLabel *label,
g_signal_emit (label, signals[POPULATE_POPUP], 0, menu);
- if (event)
+ if (gdk_event_triggers_context_menu (event))
gtk_menu_popup_with_params (GTK_MENU (menu),
+ event,
NULL,
NULL,
- NULL,
- event->button,
- event->time,
TRUE,
GDK_WINDOW_TYPE_HINT_POPUP_MENU,
NULL);
@@ -6687,11 +6689,9 @@ gtk_label_do_popup (GtkLabel *label,
gdk_attach_params_set_attach_hints (params, GDK_ATTACH_FLIP_TOP_BOTTOM);
gtk_menu_popup_with_params (GTK_MENU (menu),
- NULL,
+ event,
NULL,
GTK_WIDGET (label),
- 0,
- gtk_get_current_event_time (),
TRUE,
GDK_WINDOW_TYPE_HINT_POPUP_MENU,
params);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]