diff --git a/zanata-war/src/main/java/org/zanata/webtrans/client/editor/table/TargetContentsPresenter.java b/zanata-war/src/main/java/org/zanata/webtrans/client/editor/table/TargetContentsPresenter.java index f95bb96751..8406bd1359 100644 --- a/zanata-war/src/main/java/org/zanata/webtrans/client/editor/table/TargetContentsPresenter.java +++ b/zanata-war/src/main/java/org/zanata/webtrans/client/editor/table/TargetContentsPresenter.java @@ -49,6 +49,7 @@ import org.zanata.webtrans.client.presenter.UserConfigHolder; import org.zanata.webtrans.client.presenter.WorkspaceUsersPresenter; import org.zanata.webtrans.client.resources.TableEditorMessages; +import org.zanata.webtrans.client.rpc.CachingDispatchAsync; import org.zanata.webtrans.client.ui.ToggleEditor; import org.zanata.webtrans.client.ui.ToggleEditor.ViewMode; import org.zanata.webtrans.client.ui.ValidationMessagePanelDisplay; @@ -58,12 +59,15 @@ import org.zanata.webtrans.shared.model.TransUnitId; import org.zanata.webtrans.shared.model.UserPanelSessionItem; import org.zanata.webtrans.shared.model.WorkspaceContext; +import org.zanata.webtrans.shared.rpc.TransUnitEditAction; +import org.zanata.webtrans.shared.rpc.TransUnitEditResult; import com.allen_sauer.gwt.log.client.Log; import com.google.common.base.Preconditions; import com.google.common.collect.Lists; import com.google.gwt.core.client.Scheduler; import com.google.gwt.event.dom.client.KeyDownEvent; +import com.google.gwt.user.client.rpc.AsyncCallback; import com.google.inject.Inject; import com.google.inject.Singleton; @@ -90,6 +94,7 @@ public class TargetContentsPresenter implements TargetContentsDisplay.Listener, private ArrayList currentEditors; private TransUnitsEditModel cellEditor; + private final Identity identity; @Inject @@ -145,7 +150,6 @@ public void showEditors(int rowIndex, int editorIndex) editor.clearTranslatorList(); validate(editor); } - if (configHolder.isDisplayButtons()) { currentDisplay.showButtons(true); @@ -184,9 +188,9 @@ public void onTransUnitEdit(final TransUnitEditEvent event) private void updateEditorTranslatorList(TransUnitId selectedTransUnitId, Person person, String sessionId) { - if (cellEditor.getTargetCell() != null && cellEditor.getTargetCell().getId().equals(selectedTransUnitId)) + if (cellEditor.getTargetCell() != null) { - if (!sessionId.equals(identity.getSessionId().toString())) + if (!sessionId.equals(identity.getSessionId().toString()) && cellEditor.getTargetCell().getId().equals(selectedTransUnitId)) { for (ToggleEditor editor : currentEditors) { diff --git a/zanata-war/src/test/java/org/zanata/webtrans/client/editor/table/TargetContentsPresenterTest.java b/zanata-war/src/test/java/org/zanata/webtrans/client/editor/table/TargetContentsPresenterTest.java index cfe76a215e..bb2e8d9551 100644 --- a/zanata-war/src/test/java/org/zanata/webtrans/client/editor/table/TargetContentsPresenterTest.java +++ b/zanata-war/src/test/java/org/zanata/webtrans/client/editor/table/TargetContentsPresenterTest.java @@ -59,6 +59,7 @@ import org.zanata.webtrans.client.presenter.WorkspaceUsersPresenter; import org.zanata.webtrans.client.resources.NavigationMessages; import org.zanata.webtrans.client.resources.TableEditorMessages; +import org.zanata.webtrans.client.rpc.CachingDispatchAsync; import org.zanata.webtrans.client.ui.ToggleEditor; import org.zanata.webtrans.client.ui.ValidationMessagePanelDisplay; import org.zanata.webtrans.shared.auth.Identity; @@ -94,10 +95,12 @@ public class TargetContentsPresenterTest @Mock private TransUnit transUnit; @Mock private UserConfigHolder configHolder; @Mock private TransUnitsEditModel cellEditor; + private final ArrayList targetContents = Lists.newArrayList("", ""); @Captor private ArgumentCaptor runValidationEventCaptor; @Captor private ArgumentCaptor notificationEventCaptor; + @BeforeMethod public void beforeMethod() {