diff --git a/app/src/processing/app/tools/MenuScroller.java b/app/src/processing/app/tools/MenuScroller.java index 9acaa8548..d934a4583 100644 --- a/app/src/processing/app/tools/MenuScroller.java +++ b/app/src/processing/app/tools/MenuScroller.java @@ -34,6 +34,7 @@ public class MenuScroller { private JPopupMenu menu; private Component[] menuItems; + private Component[] allMenuItems; private MenuScrollItem upItem; private MenuScrollItem downItem; private final MenuScrollListener menuListener = new MenuScrollListener(); @@ -540,7 +541,8 @@ public class MenuScroller { } private void setMenuItems() { - menuItems = Arrays.stream(menu.getComponents()).filter(x -> x.isVisible()).toArray(Component[]::new); + allMenuItems = menu.getComponents(); + menuItems = Arrays.stream(allMenuItems).filter(x -> x.isVisible()).toArray(Component[]::new); if (keepVisibleIndex >= topFixedCount && keepVisibleIndex <= menuItems.length - bottomFixedCount && (keepVisibleIndex > firstIndex + scrollCount @@ -555,7 +557,7 @@ public class MenuScroller { private void restoreMenuItems() { menu.removeAll(); - for (Component component : menuItems) { + for (Component component : allMenuItems) { menu.add(component); } }