import com.intellij.diff.DiffManager;
import com.intellij.openapi.actionSystem.*;
-import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.progress.PerformInBackgroundOption;
import com.intellij.openapi.progress.ProgressIndicator;
import com.intellij.openapi.progress.ProgressManager;
// gets exactly WORKING revision property
myAfterContent = getPropertyList(vcs, myChange.getAfterRevision(), myAfterRevision);
}
- catch(SVNException exc) {
+ catch (SVNException exc) {
myException = exc;
}
catch (VcsException exc) {
myException = exc;
}
+ }
- ApplicationManager.getApplication().invokeLater(() -> {
- if (myException != null) {
- Messages.showErrorDialog(myException.getMessage(), myErrorTitle);
- return;
+ @Override
+ public void onSuccess() {
+ if (myException != null) {
+ Messages.showErrorDialog(myException.getMessage(), myErrorTitle);
+ return;
+ }
+ if (myBeforeContent != null && myAfterContent != null && myBeforeRevisionValue != null && myAfterRevision != null) {
+ SvnPropertiesDiffRequest diffRequest;
+ if (compareRevisions(myBeforeRevisionValue, myAfterRevision) > 0) {
+ diffRequest = new SvnPropertiesDiffRequest(getDiffWindowTitle(myChange),
+ new PropertyContent(myAfterContent), new PropertyContent(myBeforeContent),
+ revisionToString(myAfterRevision), revisionToString(myBeforeRevisionValue));
}
- if (myBeforeContent != null && myAfterContent != null && myBeforeRevisionValue != null && myAfterRevision != null) {
- SvnPropertiesDiffRequest diffRequest;
- if (compareRevisions(myBeforeRevisionValue, myAfterRevision) > 0) {
- diffRequest = new SvnPropertiesDiffRequest(getDiffWindowTitle(myChange),
- new PropertyContent(myAfterContent), new PropertyContent(myBeforeContent),
- revisionToString(myAfterRevision), revisionToString(myBeforeRevisionValue));
- }
- else {
- diffRequest = new SvnPropertiesDiffRequest(getDiffWindowTitle(myChange),
- new PropertyContent(myBeforeContent), new PropertyContent(myAfterContent),
- revisionToString(myBeforeRevisionValue), revisionToString(myAfterRevision));
- }
- DiffManager.getInstance().showDiff(myProject, diffRequest);
+ else {
+ diffRequest = new SvnPropertiesDiffRequest(getDiffWindowTitle(myChange),
+ new PropertyContent(myBeforeContent), new PropertyContent(myAfterContent),
+ revisionToString(myBeforeRevisionValue), revisionToString(myAfterRevision));
}
- });
+ DiffManager.getInstance().showDiff(myProject, diffRequest);
+ }
}
}