+2012-07-03 Carlos Garcia Campos <cgarcia@igalia.com>
+
+ [GTK] Don't show accel labels in context menu items
+ https://bugs.webkit.org/show_bug.cgi?id=90437
+
+ Reviewed by Martin Robinson.
+
+ When a context menu item is created with a GtkMenuItem that has
+ been created from a GtkAction, if the action has an accelerator,
+ it's shown in the menu item label, like menu items in a menu
+ bar. In that case we should reset the accel closure of the menu
+ item label, like GtkUIManager does for popup menus, to make sure
+ the accelerator is not shown. This isn't needed for all other
+ ContextMenuIem constructors, because the GtkAction is created
+ without accelerator by webkit in those cases.
+
+ * platform/gtk/ContextMenuItemGtk.cpp:
+ (WebCore::ContextMenuItem::ContextMenuItem):
+
2012-07-03 Christophe Dumez <christophe.dumez@intel.com>
[EFL] Move BatteryClientEfl from WebKit to WebCore
ContextMenuItem::ContextMenuItem(PlatformMenuItemDescription item)
: m_platformDescription(item)
{
+ // Don't show accel labels in context menu items.
+ GtkAction* action = gtkAction();
+ if (!action)
+ return;
+
+ if (!gtk_action_get_accel_path(action))
+ return;
+
+ GtkWidget* child = gtk_bin_get_child(GTK_BIN(item));
+ if (GTK_IS_ACCEL_LABEL(child))
+ gtk_accel_label_set_accel_closure(GTK_ACCEL_LABEL(child), 0);
}
ContextMenuItem::ContextMenuItem(ContextMenu* subMenu)