public void testNestedOverlay() { // given MaterialOverlay overlay = getWidget(); MaterialOverlay child = new MaterialOverlay(); overlay.add(child); // when / then overlay.open(); child.open(); child.close(); child.addCloseHandler(closeEvent -> assertEquals("hidden", RootPanel.get().getElement().getStyle().getOverflow())); assertEquals(RootPanel.get(), overlay.getParent()); assertEquals(overlay, child.getParent()); } }
protected void checkOpenCloseEvents(MaterialOverlay overlay) { // when / then overlay.setEnabled(true); checkOpenHandler(overlay); checkCloseHandler(overlay); // given final boolean[] isOpenFired = {false}; overlay.addOpenHandler(openEvent -> isOpenFired[0] = true); // when / then overlay.open(); assertTrue(isOpenFired[0]); // given overlay.close(); overlay.open(source); // when / then assertEquals("hidden", overlay.body().asElement().getStyle().getOverflow()); assertEquals(source.getElement(), overlay.getSourceElement()); // given final boolean[] isCloseFired = {false}; overlay.addCloseHandler(closeEvent -> isCloseFired[0] = true); // when / then overlay.close(); assertEquals("auto", overlay.body().asElement().getStyle().getOverflow()); assertTrue(isCloseFired[0]); }
viewportOverflow = docStyle.getOverflow(); docStyle.setProperty("overflow", "hidden");