From 1af68ccc2ef1fa46c1abc7e81192cfefbf318634 Mon Sep 17 00:00:00 2001 From: CartBlanche Date: Wed, 4 Dec 2019 18:22:23 +0000 Subject: [PATCH] [MacPlatform] Add JumpList MenuItems --- main/src/addins/MacPlatform/MacPlatform.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/main/src/addins/MacPlatform/MacPlatform.cs b/main/src/addins/MacPlatform/MacPlatform.cs index a7047b4c4ac..a3cb182a5c2 100644 --- a/main/src/addins/MacPlatform/MacPlatform.cs +++ b/main/src/addins/MacPlatform/MacPlatform.cs @@ -372,6 +372,24 @@ void AppDelegate_ShowDockMenu (object sender, ShowDockMenuArgs e) newInstanceMenuItem.Title = GettextCatalog.GetString ("New Instance"); newInstanceMenuItem.Activated += NewInstanceMenuItem_Activated; menu.AddItem (newInstanceMenuItem); + + // Jump List + var projects = IdeServices.DesktopService.RecentFiles.GetProjects ().Take (10); + if (projects.Any ()) { + menu.AddItem (NSMenuItem.SeparatorItem); + + foreach (var item in projects) { + var projectItem = item; + + var menuItem = new NSMenuItem (projectItem.DisplayName); + menuItem.Activated += (o, e) => { + var actionUrl = "project://" + projectItem.FileName; + Ide.WelcomePage.WelcomePageSection.DispatchLink (actionUrl); + }; + menu.AddItem (menuItem); + } + } + e.DockMenu = menu; }