From: Andreas Kohlbecker Date: Fri, 21 Jul 2017 18:48:54 +0000 (+0200) Subject: fix #6843 avoiding oversized windows by setting a defined height X-Git-Tag: 4.10.0^2~13 X-Git-Url: https://dev.e-taxonomy.eu/gitweb/cdm-vaadin.git/commitdiff_plain/55f3f7276e2dd80c2ee631360575b2be9218dd0a fix #6843 avoiding oversized windows by setting a defined height --- diff --git a/src/main/java/eu/etaxonomy/vaadin/mvp/AbstractCdmPopupEditor.java b/src/main/java/eu/etaxonomy/vaadin/mvp/AbstractCdmPopupEditor.java index 77ff02cc..04b2d617 100644 --- a/src/main/java/eu/etaxonomy/vaadin/mvp/AbstractCdmPopupEditor.java +++ b/src/main/java/eu/etaxonomy/vaadin/mvp/AbstractCdmPopupEditor.java @@ -48,10 +48,6 @@ public abstract class AbstractCdmPopupEditor dtoType) { super(layout, dtoType); - // IMPORTANT: the layout must be set to full size otherwise the - // popup window may have problems with automatic resizing of its - // content. - layout.setSizeFull(); if(MarginHandler.class.isAssignableFrom(getFieldLayout().getClass())){ ((MarginHandler)getFieldLayout()).setMargin(new MarginInfo(false, true, true, true)); } diff --git a/src/main/java/eu/etaxonomy/vaadin/mvp/AbstractPopupEditor.java b/src/main/java/eu/etaxonomy/vaadin/mvp/AbstractPopupEditor.java index fe6e7255..6e0c453b 100644 --- a/src/main/java/eu/etaxonomy/vaadin/mvp/AbstractPopupEditor.java +++ b/src/main/java/eu/etaxonomy/vaadin/mvp/AbstractPopupEditor.java @@ -87,19 +87,16 @@ public abstract class AbstractPopupEditor dtoType) { - setWidthUndefined(); - mainLayout = new VerticalLayout(); // IMPORTANT: mainLayout must be set to full size otherwise the // popup window may have problems with automatic resizing of its // content. mainLayout.setSizeFull(); + setCompositionRoot(mainLayout); fieldGroup = new BeanFieldGroup<>(dtoType); fieldGroup.addCommitHandler(new SaveHandler()); - setCompositionRoot(mainLayout); - toolBar.addStyleName(ValoTheme.WINDOW_TOP_TOOLBAR); toolBar.setWidth(100, Unit.PERCENTAGE); toolBarButtonGroup.addStyleName(ValoTheme.LAYOUT_COMPONENT_GROUP); diff --git a/src/main/java/eu/etaxonomy/vaadin/ui/navigation/NavigationManagerBean.java b/src/main/java/eu/etaxonomy/vaadin/ui/navigation/NavigationManagerBean.java index 5490e02c..ae5490c8 100644 --- a/src/main/java/eu/etaxonomy/vaadin/ui/navigation/NavigationManagerBean.java +++ b/src/main/java/eu/etaxonomy/vaadin/ui/navigation/NavigationManagerBean.java @@ -130,6 +130,12 @@ public class NavigationManagerBean extends SpringNavigator implements Navigation window.setModal(true); window.setCaptionAsHtml(popupView.isWindowCaptionAsHtml()); window.setWidth(popupView.getWindowPixelWidth(), Unit.PIXELS); + // setting 100% as default height. If the height + // would be undefined the window, will fit the size of + // the content and will sometimes exceed the height of the + // main window and will not get a scroll bar in this situation. + // see #6843 + window.setHeight("100%"); window.setContent(popupView.asComponent()); // window.addCloseListener(e -> popupView.cancel()); UI.getCurrent().addWindow(window);