aboutsummaryrefslogtreecommitdiff
path: root/src/ido-menu-item.c
diff options
context:
space:
mode:
authorMarco Trevisan (TreviƱo) <mail@3v1n0.net>2013-05-02 18:29:47 +0000
committerTarmac <Unknown>2013-05-02 18:29:47 +0000
commit1f62dd9abb5ca1f20e1ce19193d0d2dd3b99a67d (patch)
tree0fef7f29b9d27177789241af405beeb11a49a8d6 /src/ido-menu-item.c
parentdbeec9ceb74e60badf4b695e8fb023fb3f70c99b (diff)
parent6a3dad7dbe2004c8b3c92f914b01e181b5adb646 (diff)
downloadayatana-indicator-messages-1f62dd9abb5ca1f20e1ce19193d0d2dd3b99a67d.tar.gz
ayatana-indicator-messages-1f62dd9abb5ca1f20e1ce19193d0d2dd3b99a67d.tar.bz2
ayatana-indicator-messages-1f62dd9abb5ca1f20e1ce19193d0d2dd3b99a67d.zip
AppSection: Use the Launch Context with proper activate event timestamp to exec the libindicator shortcut nicks. Fixes: https://bugs.launchpad.net/bugs/1164483.
Approved by Mathieu Trudel-Lapierre, PS Jenkins bot.
Diffstat (limited to 'src/ido-menu-item.c')
-rw-r--r--src/ido-menu-item.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/ido-menu-item.c b/src/ido-menu-item.c
index 32044ff..f702828 100644
--- a/src/ido-menu-item.c
+++ b/src/ido-menu-item.c
@@ -282,10 +282,24 @@ static void
ido_menu_item_activate (GtkMenuItem *item)
{
IdoMenuItemPrivate *priv = IDO_MENU_ITEM (item)->priv;
+ GVariant *parameter;
/* see ido_menu_item_set_active */
if (!priv->in_set_active && priv->action && priv->action_group)
- g_action_group_activate_action (priv->action_group, priv->action, priv->target);
+ {
+ guint32 event_time = gtk_get_current_event_time ();
+
+ if (priv->target)
+ {
+ parameter = priv->target;
+ }
+ else
+ {
+ parameter = g_variant_new_uint32 (event_time);
+ }
+
+ g_action_group_activate_action (priv->action_group, priv->action, parameter);
+ }
if (priv->in_set_active)
GTK_MENU_ITEM_CLASS (ido_menu_item_parent_class)->activate (item);