JAL-1988 JAL-3772 Non-blocking modal dialogs for unsaved changes and saving files...
[jalview.git] / src / jalview / jbgui / GDesktop.java
index e046783..3343c88 100755 (executable)
@@ -32,6 +32,7 @@ import javax.swing.JMenuItem;
 
 import jalview.api.AlignmentViewPanel;
 import jalview.bin.Cache;
+import jalview.gui.Desktop;
 import jalview.io.FileFormatException;
 import jalview.util.MessageManager;
 import jalview.util.Platform;
@@ -140,6 +141,7 @@ 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
@@ -147,7 +149,7 @@ public class GDesktop extends JFrame
      */
     try
     {
-      APQHandlers.setAPQHandlers(this);
+      apqHandlersSet = APQHandlers.setAPQHandlers(this);
     } catch (Exception e)
     {
       System.out.println("Cannot set APQHandlers");
@@ -212,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"));
@@ -389,10 +392,6 @@ public class GDesktop extends JFrame
       }
     });
 
-    Float specversion = Platform.isJS() ? Float.valueOf(8)
-            : Float.parseFloat(
-                    System.getProperty("java.specification.version"));
-
     desktopMenubar.add(FileMenu);
     desktopMenubar.add(toolsMenu);
     desktopMenubar.add(HelpMenu);