Reverting Deletion of a binary file.
Answered
I used
IdeaGateway ideaGateway = LocalHistoryImpl.getInstanceImpl().getGateway();
UndoChangeRevertingVisitor vi = new UndoChangeRevertingVisitor(ga, id, null);
vi.visit(change);
vi.finished();
for reverting the deletion of a file or directory.
1) Can you pls explain the parameter meanings of UndoChangeRevertingVisitor constructor.
2) It's working fine for all files except for binary files like .jar and .apk etc. The file deletion is reverted
but the size of the file became 0.
Is there any mechanism for making revert work (update with old binary content) with such files.
3) Also the above code is not working for if parameter 'change' is ContentChange. Should I use any other API's?
Thanks,
Please sign in to leave a comment.
To undo some operation, you can use com.intellij.history.LocalHistory#put*Label/com.intellij.history.Label#revert API.
Though Local History doesn't support binary files, I'm afraid: IDEA-99788
Thanks.
Is there any reason why the above method (using UndoChangeRevertingVisitor ) is not working with ContentChange only?
Yes, the ContentChanges are handled separately by DocumentUndoProvider