@Override public void exitPinnedMode(final Command onCompleteCommand) { super.exitPinnedMode(new Command() { @Override public void execute() { onCompleteCommand.execute(); presenter.onViewPinned(false); } }); }
@Override public void exitPinnedMode(final Command onCompleteCommand) { super.exitPinnedMode(new Command() { @Override public void execute() { onCompleteCommand.execute(); presenter.onViewPinned(false); } }); }
@Test public void testRemoveDecisionTableWhenPinned() { final Command callback = mock(Command.class); final GridPinnedModeManager.PinnedContext context = mock(GridPinnedModeManager.PinnedContext.class); when(defaultGridLayer.isGridPinned()).thenReturn(true); when(defaultGridLayer.getPinnedContext()).thenReturn(context); when(context.getGridWidget()).thenReturn(dtableView); view.removeDecisionTable(dtableView, callback); verify(defaultGridLayer, times(1)).exitPinnedMode(commandArgumentCaptor.capture()); final Command command = commandArgumentCaptor.getValue(); assertNotNull(command); command.execute(); verify(defaultGridLayer, times(1)).remove(dtableView); verify(callback, times(1)).execute(); verify(defaultGridLayer, times(1)).batch(); }
@Override public void removeDecisionTable(final GuidedDecisionTableView gridWidget, final Command afterRemovalCommand) { if (gridWidget == null) { return; } final Command remove = () -> { gridLayer.remove(gridWidget); afterRemovalCommand.execute(); gridLayer.batch(); }; if (gridLayer.isGridPinned()) { final GridPinnedModeManager.PinnedContext context = gridLayer.getPinnedContext(); if (gridWidget.equals(context.getGridWidget())) { gridLayer.exitPinnedMode(remove); } } else { remove.execute(); } }
@Override public void removeDecisionTable(final GuidedDecisionTableView gridWidget, final Command afterRemovalCommand) { if (gridWidget == null) { return; } final Command remove = () -> { gridLayer.remove(gridWidget); afterRemovalCommand.execute(); gridLayer.batch(); }; if (gridLayer.isGridPinned()) { final GridPinnedModeManager.PinnedContext context = gridLayer.getPinnedContext(); if (gridWidget.equals(context.getGridWidget())) { gridLayer.exitPinnedMode(remove); } } else { remove.execute(); } }