Merge branch 'features/r2_11_2_alphafold/JAL-629' into features/JAL-3858_PAEsInProjects
[jalview.git] / src / jalview / jbgui / GDesktop.java
index 98217b1..b0079b4 100755 (executable)
@@ -32,6 +32,8 @@ import javax.swing.JMenuItem;
 
 import jalview.api.AlignmentViewPanel;
 import jalview.bin.Cache;
+import jalview.gui.APQHandlers;
+import jalview.gui.Desktop;
 import jalview.io.FileFormatException;
 import jalview.util.MessageManager;
 import jalview.util.Platform;
@@ -140,7 +142,6 @@ public class GDesktop extends JFrame
    */
   private void jbInit() throws Exception
   {
-    boolean apqHandlersSet = false;
     /**
      * APQHandlers sets handlers for About, Preferences and Quit actions
      * peculiar to macOS's application menu. APQHandlers will check to see if a
@@ -148,7 +149,7 @@ public class GDesktop extends JFrame
      */
     try
     {
-      apqHandlersSet = APQHandlers.setAPQHandlers(this);
+      APQHandlers.setAPQHandlers((Desktop) this);
     } catch (Exception e)
     {
       System.out.println("Cannot set APQHandlers");
@@ -213,7 +214,8 @@ public class GDesktop extends JFrame
       @Override
       public void actionPerformed(ActionEvent e)
       {
-        quit();
+        if (Desktop.instance != null)
+          Desktop.instance.desktopQuit();
       }
     });
     aboutMenuItem.setText(MessageManager.getString("label.about"));
@@ -401,13 +403,16 @@ public class GDesktop extends JFrame
     FileMenu.add(saveAsState);
     FileMenu.add(loadState);
     FileMenu.addSeparator();
-    FileMenu.add(quit);
-    if (!apqHandlersSet)
+    if (!APQHandlers.setQuit)
+    {
+      FileMenu.add(quit);
+    }
+    if (!APQHandlers.setAbout)
     {
       HelpMenu.add(aboutMenuItem);
     }
     HelpMenu.add(documentationMenuItem);
-    if (!apqHandlersSet)
+    if (!APQHandlers.setPreferences)
     {
       toolsMenu.add(preferences);
     }