diff --git a/pdf-umbenenner-adapter-in-gui/src/main/java/de/gecheckt/pdf/umbenenner/adapter/in/gui/GuiConfigurationEditorWorkspace.java b/pdf-umbenenner-adapter-in-gui/src/main/java/de/gecheckt/pdf/umbenenner/adapter/in/gui/GuiConfigurationEditorWorkspace.java index 04cbab5..5038e75 100644 --- a/pdf-umbenenner-adapter-in-gui/src/main/java/de/gecheckt/pdf/umbenenner/adapter/in/gui/GuiConfigurationEditorWorkspace.java +++ b/pdf-umbenenner-adapter-in-gui/src/main/java/de/gecheckt/pdf/umbenenner/adapter/in/gui/GuiConfigurationEditorWorkspace.java @@ -1709,14 +1709,22 @@ public final class GuiConfigurationEditorWorkspace { fieldGrid.add(timeoutField, 3, gridRow); gridRow++; - // Fehlerzeile für Basis-URL und/oder Timeout (gemeinsame Zeile) + // Fehlerzeile für Basis-URL und/oder Timeout (gemeinsame Zeile). + // Platzhalter in Spalte 0/2 werden auf managed=false gesetzt, damit die Zeile + // kollabiert wenn das eigentliche Fehler-Label in Spalte 1/3 ebenfalls unmanaged ist. if (baseUrlError != null || timeoutError != null) { if (baseUrlError != null) { - fieldGrid.add(new Label(), 0, gridRow); + Label spacerBaseUrl = new Label(); + spacerBaseUrl.setManaged(false); + spacerBaseUrl.setVisible(false); + fieldGrid.add(spacerBaseUrl, 0, gridRow); fieldGrid.add(baseUrlError, 1, gridRow); } if (timeoutError != null) { - fieldGrid.add(new Label(), 2, gridRow); + Label spacerTimeout = new Label(); + spacerTimeout.setManaged(false); + spacerTimeout.setVisible(false); + fieldGrid.add(spacerTimeout, 2, gridRow); fieldGrid.add(timeoutError, 3, gridRow); } gridRow++; @@ -1737,7 +1745,11 @@ public final class GuiConfigurationEditorWorkspace { GridPane.setColumnSpan(modelNode, 3); gridRow++; if (modelError != null) { - fieldGrid.add(new Label(), 0, gridRow); + // Platzhalter auf managed=false – Zeile kollabiert wenn modelError nicht sichtbar ist. + Label spacerModel = new Label(); + spacerModel.setManaged(false); + spacerModel.setVisible(false); + fieldGrid.add(spacerModel, 0, gridRow); fieldGrid.add(modelError, 1, gridRow); GridPane.setColumnSpan(modelError, 3); gridRow++; @@ -1759,12 +1771,20 @@ public final class GuiConfigurationEditorWorkspace { GridPane.setColumnSpan(apiKeyBox, 3); gridRow++; if (apiKeyError != null) { - fieldGrid.add(new Label(), 0, gridRow); + // Platzhalter auf managed=false – Zeile kollabiert wenn apiKeyError nicht sichtbar ist. + Label spacerApiKey = new Label(); + spacerApiKey.setManaged(false); + spacerApiKey.setVisible(false); + fieldGrid.add(spacerApiKey, 0, gridRow); fieldGrid.add(apiKeyError, 1, gridRow); GridPane.setColumnSpan(apiKeyError, 3); gridRow++; } - fieldGrid.add(new Label(), 0, gridRow); + // Platzhalter auf managed=false – Zeile kollabiert wenn apiKeyOriginLabel nicht sichtbar ist. + Label spacerOrigin = new Label(); + spacerOrigin.setManaged(false); + spacerOrigin.setVisible(false); + fieldGrid.add(spacerOrigin, 0, gridRow); fieldGrid.add(apiKeyOriginLabel, 1, gridRow); GridPane.setColumnSpan(apiKeyOriginLabel, 3);