public GridLienzoPanel(final int width, final int height) { this(new LienzoPanel(width, height) { @Override public void onResize() { // Do nothing. Resize is handled by AttachHandler. LienzoPanel calls onResize() in // it's onAttach() method which causes the Canvas to be redrawn. However when LienzoPanel // is adopted by another Widget LienzoPanel's onAttach() is called before its children // have been attached. Should redraw require children to be attached errors arise. } }); updatePanelSize(width, height); }
public GridLienzoPanel(final int width, final int height) { this(new LienzoPanel(width, height) { @Override public void onResize() { // Do nothing. Resize is handled by AttachHandler. LienzoPanel calls onResize() in // it's onAttach() method which causes the Canvas to be redrawn. However when LienzoPanel // is adopted by another Widget LienzoPanel's onAttach() is called before its children // have been attached. Should redraw require children to be attached errors arise. } }); updatePanelSize(width, height); }
@Override public void onResize() { scheduleDeferred(() -> { updatePanelSize(); refreshScrollPosition(); }); }
@Override public void onResize() { scheduleDeferred(() -> { updatePanelSize(); refreshScrollPosition(); }); }
@Test public void testOnResize() { final ArgumentCaptor<Scheduler.ScheduledCommand> scheduledCommand = ArgumentCaptor.forClass(Scheduler.ScheduledCommand.class); doNothing().when(gridLienzoPanel).updatePanelSize(); doNothing().when(gridLienzoPanel).refreshScrollPosition(); doNothing().when(gridLienzoPanel).scheduleDeferred(scheduledCommand.capture()); gridLienzoPanel.onResize(); scheduledCommand.getValue().execute(); verify(gridLienzoPanel).updatePanelSize(); verify(gridLienzoPanel).refreshScrollPosition(); }
@Override public void updatePanelSize() { final Element parentElement = getElement().getParentElement(); final Integer width = parentElement.getOffsetWidth(); final Integer height = parentElement.getOffsetHeight(); if (width > 0 && height > 0) { updatePanelSize(width, height); } }
@Override public void updatePanelSize() { final Element parentElement = getElement().getParentElement(); final Integer width = parentElement.getOffsetWidth(); final Integer height = parentElement.getOffsetHeight(); if (width > 0 && height > 0) { updatePanelSize(width, height); } }
@Test public void testOnResize() { final ArgumentCaptor<Scheduler.ScheduledCommand> scheduledCommand = ArgumentCaptor.forClass(Scheduler.ScheduledCommand.class); doNothing().when(gridLienzoPanel).updatePanelSize(); doNothing().when(gridLienzoPanel).refreshScrollPosition(); doNothing().when(gridLienzoPanel).scheduleDeferred(scheduledCommand.capture()); gridLienzoPanel.onResize(); scheduledCommand.getValue().execute(); verify(gridLienzoPanel).updatePanelSize(); verify(gridLienzoPanel).refreshScrollPosition(); }
@Test public void testUpdatePanelSizeWhenWidthAndHeightAreNotGreaterThanZero() { final Element element = mock(Element.class); final Element parentElement = mock(Element.class); final Integer width = 0; final Integer height = 0; doReturn(element).when(gridLienzoPanel).getElement(); doReturn(parentElement).when(element).getParentElement(); doReturn(width).when(parentElement).getOffsetWidth(); doReturn(height).when(parentElement).getOffsetHeight(); gridLienzoPanel.updatePanelSize(); verify(domElementContainer, never()).setPixelSize(anyInt(), anyInt()); verify(lienzoPanel, never()).setPixelSize(anyInt(), anyInt()); verify(scrollPanel, never()).setPixelSize(anyInt(), anyInt()); }
@Test public void testUpdatePanelSizeWhenWidthAndHeightAreNotGreaterThanZero() { final Element element = mock(Element.class); final Element parentElement = mock(Element.class); final Integer width = 0; final Integer height = 0; doReturn(element).when(gridLienzoPanel).getElement(); doReturn(parentElement).when(element).getParentElement(); doReturn(width).when(parentElement).getOffsetWidth(); doReturn(height).when(parentElement).getOffsetHeight(); gridLienzoPanel.updatePanelSize(); verify(domElementContainer, never()).setPixelSize(anyInt(), anyInt()); verify(lienzoPanel, never()).setPixelSize(anyInt(), anyInt()); verify(scrollPanel, never()).setPixelSize(anyInt(), anyInt()); }
@Test public void testUpdatePanelSizeWhenWidthAndHeightAreGreaterThanZero() { final Element element = mock(Element.class); final Element parentElement = mock(Element.class); final Integer scrollWidth = 14; final Integer scrollHeight = 14; final Integer width = 800; final Integer height = 600; doReturn(element).when(gridLienzoPanel).getElement(); doReturn(parentElement).when(element).getParentElement(); doReturn(width).when(parentElement).getOffsetWidth(); doReturn(height).when(parentElement).getOffsetHeight(); doReturn(scrollWidth).when(gridLienzoScrollHandler).scrollbarWidth(); doReturn(scrollHeight).when(gridLienzoScrollHandler).scrollbarHeight(); gridLienzoPanel.updatePanelSize(); verify(domElementContainer).setPixelSize(width - scrollWidth, height - scrollHeight); verify(lienzoPanel).setPixelSize(width - scrollWidth, height - scrollHeight); verify(scrollPanel).setPixelSize(width, height); }
@Test public void testUpdatePanelSizeWhenWidthAndHeightAreGreaterThanZero() { final Element element = mock(Element.class); final Element parentElement = mock(Element.class); final Integer scrollWidth = 14; final Integer scrollHeight = 14; final Integer width = 800; final Integer height = 600; doReturn(element).when(gridLienzoPanel).getElement(); doReturn(parentElement).when(element).getParentElement(); doReturn(width).when(parentElement).getOffsetWidth(); doReturn(height).when(parentElement).getOffsetHeight(); doReturn(scrollWidth).when(gridLienzoScrollHandler).scrollbarWidth(); doReturn(scrollHeight).when(gridLienzoScrollHandler).scrollbarHeight(); gridLienzoPanel.updatePanelSize(); verify(domElementContainer).setPixelSize(width - scrollWidth, height - scrollHeight); verify(lienzoPanel).setPixelSize(width - scrollWidth, height - scrollHeight); verify(scrollPanel).setPixelSize(width, height); }