Merge branch 'develop' into bug/JAL-4059_update_swingJS_for_JalviewJS_2_11_2_and_2_11_3
authorJames Procter <j.procter@dundee.ac.uk>
Mon, 13 Nov 2023 17:19:45 +0000 (17:19 +0000)
committerJames Procter <j.procter@dundee.ac.uk>
Mon, 13 Nov 2023 17:19:45 +0000 (17:19 +0000)
src/jalview/fts/service/uniprot/UniProtFTSRestClient.java
src/jalview/io/cache/JvCacheableInputBox.java

index 980dac6..f5e98bd 100644 (file)
@@ -227,18 +227,22 @@ public class UniProtFTSRestClient extends FTSRestClient
         throw new Exception(errorMessage);
 
       }
-      // new Uniprot API is not including a "X-Total-Results" header when there
-      // are 0 results
-      List<String> resultsHeaders = clientResponse.getHeaders()
-              .get("X-Total-Results");
       int xTotalResults = 0;
       if (Platform.isJS())
       {
         xTotalResults = 1;
       }
-      else if (resultsHeaders != null && resultsHeaders.size() >= 1)
+      else
       {
-        xTotalResults = Integer.valueOf(resultsHeaders.get(0));
+        // new Uniprot API is not including a "X-Total-Results" header when
+        // there
+        // are 0 results
+        List<String> resultsHeaders = clientResponse.getHeaders()
+                .get("X-Total-Results");
+        if (resultsHeaders != null && resultsHeaders.size() >= 1)
+        {
+          xTotalResults = Integer.valueOf(resultsHeaders.get(0));
+        }
       }
       clientResponse = null;
       client = null;
index e4e2d99..be6ec37 100644 (file)
  */
 package jalview.io.cache;
 
-import jalview.bin.Cache;
-import jalview.util.MessageManager;
-import jalview.util.Platform;
-
+import java.awt.Dimension;
+import java.awt.FontMetrics;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 import java.awt.event.FocusListener;
@@ -47,6 +45,10 @@ import javax.swing.event.CaretListener;
 import javax.swing.event.DocumentListener;
 import javax.swing.text.JTextComponent;
 
+import jalview.bin.Cache;
+import jalview.util.MessageManager;
+import jalview.util.Platform;
+
 /**
  * A class that provides an editable combobox with a memory of previous entries
  * that may be persisted
@@ -114,6 +116,9 @@ public class JvCacheableInputBox<E>
     {
       appCache = null;
       textComponent = textField = new JTextField();
+      FontMetrics fm = textField.getFontMetrics(textField.getFont());
+      textField.setPreferredSize(new Dimension(
+              fm.stringWidth(prototypeDisplayValue), fm.getHeight() + 4));
       // {
       // @Override
       // public Dimension getPreferredSize() {