diff -r 8a7c045234cc core.multiview/src/org/netbeans/core/multiview/EditorsAction.java --- a/core.multiview/src/org/netbeans/core/multiview/EditorsAction.java Mon Jun 20 08:44:49 2011 +0200 +++ b/core.multiview/src/org/netbeans/core/multiview/EditorsAction.java Mon Jun 20 14:50:00 2011 +0200 @@ -58,6 +58,7 @@ import org.netbeans.core.api.multiview.MultiViewHandler; import org.netbeans.core.api.multiview.MultiViewPerspective; import org.netbeans.core.api.multiview.MultiViews; +import org.openide.awt.Actions; import org.openide.awt.DynamicMenuContent; import org.openide.awt.Mnemonics; import org.openide.text.CloneableEditorSupport; @@ -72,22 +73,31 @@ * @author mkleint */ public class EditorsAction extends AbstractAction - implements Presenter.Menu { + implements Presenter.Menu, Presenter.Popup { public EditorsAction() { super(NbBundle.getMessage(EditorsAction.class, "CTL_EditorsAction")); } + @Override public void actionPerformed(ActionEvent ev) { assert false;// no operation } + @Override public JMenuItem getMenuPresenter() { JMenu menu = new UpdatingMenu(); String label = NbBundle.getMessage(EditorsAction.class, "CTL_EditorsAction"); Mnemonics.setLocalizedText(menu, label); return menu; } + @Override + public JMenuItem getPopupPresenter() { + JMenu menu = new UpdatingMenu(); + String label = NbBundle.getMessage(EditorsAction.class, "CTL_EditorsAction"); + Actions.setMenuText(menu, label, false); + return menu; + } private static final class UpdatingMenu extends JMenu implements DynamicMenuContent { diff -r 8a7c045234cc core.multiview/src/org/netbeans/core/multiview/MultiViewCloneableTopComponent.java --- a/core.multiview/src/org/netbeans/core/multiview/MultiViewCloneableTopComponent.java Mon Jun 20 08:44:49 2011 +0200 +++ b/core.multiview/src/org/netbeans/core/multiview/MultiViewCloneableTopComponent.java Mon Jun 20 14:50:00 2011 +0200 @@ -163,12 +163,16 @@ * merge action for the topcomponent and the enclosed MultiViewElement.. * */ + @Override public Action[] getActions() { //TEMP don't delegate to element's actions.. Action[] superActions = super.getActions(); Action[] acts = peer.peerGetActions(superActions); - return acts; -// return acts; + + Action[] myActions = new Action[acts.length + 2]; + System.arraycopy(acts, 0, myActions, 0, acts.length); + myActions[acts.length + 1] = new EditorsAction(); + return myActions; } public MultiViewHandlerDelegate getMultiViewHandlerDelegate() { diff -r 8a7c045234cc core.multiview/src/org/netbeans/core/multiview/MultiViewPeer.java --- a/core.multiview/src/org/netbeans/core/multiview/MultiViewPeer.java Mon Jun 20 08:44:49 2011 +0200 +++ b/core.multiview/src/org/netbeans/core/multiview/MultiViewPeer.java Mon Jun 20 14:50:00 2011 +0200 @@ -682,8 +682,6 @@ if (obj == null) { return true; } - } else { - return true; } if (editorSettingsPreferences == null) { return true;