diff --git a/extras/Introjucer/Source/Application/jucer_Application.h b/extras/Introjucer/Source/Application/jucer_Application.h index 2fde52b5f8..3b9ddb47f2 100644 --- a/extras/Introjucer/Source/Application/jucer_Application.h +++ b/extras/Introjucer/Source/Application/jucer_Application.h @@ -90,9 +90,7 @@ public: mainWindowList.createWindowIfNoneAreOpen(); #if JUCE_MAC - // NB: the native recent menus doesn't work at the moment - must reenable this when fixed - //MenuBarModel::setMacMainMenu (menuModel, nullptr, "Open Recent"); - MenuBarModel::setMacMainMenu (menuModel, nullptr); + MenuBarModel::setMacMainMenu (menuModel, nullptr, "Open Recent"); #endif struct ModuleFolderChecker : public CallbackMessage diff --git a/modules/juce_gui_basics/native/juce_mac_MainMenu.mm b/modules/juce_gui_basics/native/juce_mac_MainMenu.mm index 1438ecb89e..c08a2b0998 100644 --- a/modules/juce_gui_basics/native/juce_mac_MainMenu.mm +++ b/modules/juce_gui_basics/native/juce_mac_MainMenu.mm @@ -225,7 +225,10 @@ public: if (recent->recentItem != nil) { - [menuToAddTo addItem: [recent->recentItem copyWithZone: nil]]; + if (NSMenu* parent = [recent->recentItem menu]) + [parent removeItem: recent->recentItem]; + + [menuToAddTo addItem: recent->recentItem]; return; } }