From: carlosgc@webkit.org Date: Wed, 4 Jul 2012 06:18:20 +0000 (+0000) Subject: [GTK] Don't show accel labels in context menu items X-Git-Tag: 070512121124~69 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=56dddd1cd16e4609462ed1a9e0c9b2bef4ee7c51;p=profile%2Fivi%2Fwebkit-efl.git [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): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121829 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog index d9bdcae..a9520ff 100644 --- a/Source/WebCore/ChangeLog +++ b/Source/WebCore/ChangeLog @@ -1,3 +1,22 @@ +2012-07-03 Carlos Garcia Campos + + [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 [EFL] Move BatteryClientEfl from WebKit to WebCore diff --git a/Source/WebCore/platform/gtk/ContextMenuItemGtk.cpp b/Source/WebCore/platform/gtk/ContextMenuItemGtk.cpp index 68ae5a5..d70b5be 100644 --- a/Source/WebCore/platform/gtk/ContextMenuItemGtk.cpp +++ b/Source/WebCore/platform/gtk/ContextMenuItemGtk.cpp @@ -144,6 +144,17 @@ static PlatformMenuItemDescription createPlatformMenuItemDescription(ContextMenu 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)