Skip to content

Commit

Permalink
Merge pull request #320 from eclipse/IDEX-4129
Browse files Browse the repository at this point in the history
IDEX-4129: scroll debugging document up to execution point
  • Loading branch information
dmytro-ndp committed Feb 15, 2016
2 parents 34643cf + 2e46a69 commit 6bb0aa7
Showing 1 changed file with 16 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
import com.google.inject.Singleton;
import com.google.web.bindery.event.shared.EventBus;
import com.google.web.bindery.event.shared.HandlerRegistration;

import org.eclipse.che.api.machine.gwt.client.events.ExtServerStateEvent;
import org.eclipse.che.api.machine.gwt.client.events.ExtServerStateHandler;
import org.eclipse.che.api.promises.client.Operation;
Expand Down Expand Up @@ -69,6 +68,9 @@
import org.eclipse.che.ide.ext.java.jdi.shared.Value;
import org.eclipse.che.ide.ext.java.jdi.shared.Variable;
import org.eclipse.che.ide.ext.java.shared.JarEntry;
import org.eclipse.che.ide.jseditor.client.document.Document;
import org.eclipse.che.ide.jseditor.client.text.TextPosition;
import org.eclipse.che.ide.jseditor.client.texteditor.EmbeddedTextEditorPresenter;
import org.eclipse.che.ide.part.explorer.project.ProjectExplorerPresenter;
import org.eclipse.che.ide.project.node.FileReferenceNode;
import org.eclipse.che.ide.rest.AsyncRequestCallback;
Expand Down Expand Up @@ -323,7 +325,7 @@ private void onEventListReceived(@NotNull DebuggerEventList eventList) {
}

VirtualFile activeFile = null;
EditorPartPresenter activeEditor = editorAgent.getActiveEditor();
final EditorPartPresenter activeEditor = editorAgent.getActiveEditor();
if (activeEditor != null) {
activeFile = activeEditor.getEditorInput().getFile();
}
Expand Down Expand Up @@ -356,6 +358,7 @@ private void onEventListReceived(@NotNull DebuggerEventList eventList) {
@Override
public void onSuccess(VirtualFile result) {
breakpointManager.setCurrentBreakpoint(finalLocation.getLineNumber() - 1);
scrollEditorToExecutionPoint((EmbeddedTextEditorPresenter) editorAgent.getActiveEditor());
}

@Override
Expand All @@ -365,7 +368,9 @@ public void onFailure(Throwable caught) {
});
} else {
breakpointManager.setCurrentBreakpoint(location.getLineNumber() - 1);
scrollEditorToExecutionPoint((EmbeddedTextEditorPresenter) activeEditor);
}

getStackFrameDump();
changeButtonsEnableState(true);
}
Expand Down Expand Up @@ -998,4 +1003,13 @@ private boolean isDebuggerConnected() {
private void invalidateDebugInfo() {
debuggerInfo = EmptyDebuggerInfo.INSTANCE;
}

private void scrollEditorToExecutionPoint(EmbeddedTextEditorPresenter editor) {
Document document = editor.getDocument();

if (document != null) {
TextPosition newPosition = new TextPosition(executionPoint.getLineNumber(), 0);
document.setCursorPosition(newPosition);
}
}
}

0 comments on commit 6bb0aa7

Please sign in to comment.