Bug 70088 [Actions] ActionContributionItem.fill(Composite) creates button with wrong text
1. Create an action with setText ("&Go@Ctrl+G"); 2. Use ActionContributionItem.fill(Composite) to create a button 3. The label of the button will be "_G_o@Ctrl+G" Looking at the source, it seems that the code which handles the text for buttons doesn't take the accelerator in account. Quick fix: Remove any text after the @ (incl) in the "set text for button" code. Suggested fix: Remove the ugly "@text" hack and use the real accelerator (set with setAccelerator()) instead (removes code duplication, too).
bundles/org.eclipse.jface/src/org/eclipse/jface/action/ActionContributionItem.java
commandId).intValue();
								if ((accelInt >= LOWER_GTK_ACCEL_BOUND)
										&& (accelInt <= UPPER_GTK_ACCEL_BOUND)) {
									accelerator = accelInt;
									acceleratorText = callback
											.getAcceleratorText(commandId);
								}
							}
						}
					}
                    if (accelerator == 0) {
                        if ((callback != null) && (commandId != null)) {
                            acceleratorText = callback
                                    .getAcceleratorText(commandId);
                        }
                    } else {
                        acceleratorText = Action
                                .convertAccelerator(accelerator);
                    }
                    IContributionManagerOverrides overrides = null;
                    if (getParent() != null)
                        overrides = getParent().getOverrides();
                    if (overrides != null)
                        text = getParent().getOverrides().getText(this);
                    mi.setAccelerator(accelerator);
                    if (text == null)
                        text = updatedAction.getText();
                    if (text == null)
                        text = ""; 
                    else