Skip to content

Commit 60dac7e

Browse files
author
Federico Fissore
committed
Fixed erratic behaviour of "include library" menu
1 parent ab227d3 commit 60dac7e

File tree

1 file changed

+17
-14
lines changed

1 file changed

+17
-14
lines changed

app/src/processing/app/Editor.java

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ public void windowActivated(WindowEvent e) {
187187
// re-add the sub-menus that are shared by all windows
188188
fileMenu.insert(sketchbookMenu, 2);
189189
fileMenu.insert(examplesMenu, 3);
190-
sketchMenu.insert(importMenu, 4);
190+
buildSketchMenu();
191191
int offset = 0;
192192
for (JMenu menu : base.getBoardsCustomMenus()) {
193193
toolsMenu.insert(menu, numTools + offset);
@@ -201,7 +201,7 @@ public void windowActivated(WindowEvent e) {
201201
public void windowDeactivated(WindowEvent e) {
202202
fileMenu.remove(sketchbookMenu);
203203
fileMenu.remove(examplesMenu);
204-
sketchMenu.remove(importMenu);
204+
buildSketchMenu();
205205
List<Component> toolsMenuItemsToRemove = new LinkedList<Component>();
206206
for (Component menuItem : toolsMenu.getMenuComponents()) {
207207
if (menuItem instanceof JComponent) {
@@ -627,10 +627,13 @@ public void actionPerformed(ActionEvent e) {
627627

628628

629629
protected JMenu buildSketchMenu() {
630-
JMenuItem item;
631-
sketchMenu = new JMenu(_("Sketch"));
630+
if (sketchMenu == null) {
631+
sketchMenu = new JMenu(_("Sketch"));
632+
} else {
633+
sketchMenu.removeAll();
634+
}
632635

633-
item = newJMenuItem(_("Verify / Compile"), 'R');
636+
JMenuItem item = newJMenuItem(_("Verify / Compile"), 'R');
634637
item.addActionListener(new ActionListener() {
635638
public void actionPerformed(ActionEvent e) {
636639
handleRun(false);
@@ -656,22 +659,22 @@ public void actionPerformed(ActionEvent e) {
656659

657660
sketchMenu.addSeparator();
658661

662+
item = newJMenuItem(_("Show Sketch Folder"), 'K');
663+
item.addActionListener(new ActionListener() {
664+
public void actionPerformed(ActionEvent e) {
665+
Base.openFolder(sketch.getFolder());
666+
}
667+
});
668+
sketchMenu.add(item);
669+
item.setEnabled(Base.openFolderAvailable());
670+
659671
if (importMenu == null) {
660672
importMenu = new JMenu(_("Include Library"));
661673
MenuScroller.setScrollerFor(importMenu);
662674
base.rebuildImportMenu(importMenu);
663675
}
664676
sketchMenu.add(importMenu);
665677

666-
item = newJMenuItem(_("Show Sketch Folder"), 'K');
667-
item.addActionListener(new ActionListener() {
668-
public void actionPerformed(ActionEvent e) {
669-
Base.openFolder(sketch.getFolder());
670-
}
671-
});
672-
sketchMenu.add(item);
673-
item.setEnabled(Base.openFolderAvailable());
674-
675678
item = new JMenuItem(_("Add File..."));
676679
item.addActionListener(new ActionListener() {
677680
public void actionPerformed(ActionEvent e) {

0 commit comments

Comments
 (0)