void () { cleanNotifications(); final FilePresentationModel filePresentationModel = myRecentPathFileChange.get(); final VirtualFile file = filePresentationModel != null ? filePresentationModel.getVf() : null; if (file == null) { ApplicationManager.getApplication().invokeLater(myReset, ModalityState.stateForComponent(myCenterPanel)); return; } myReader = loadPatches(file); final PatchFileHeaderInfo patchFileInfo = myReader != null ? myReader.getPatchFileInfo() : null; final String messageFromPatch = patchFileInfo != null ? patchFileInfo.getMessage() : null; VcsUser author = patchFileInfo != null ? patchFileInfo.getAuthor() : null; if (author != null && myChangeListChooser != null) { myChangeListChooser.setData(new ChangeListData(author)); } List<FilePatch> filePatches = new ArrayList<>(); if (myReader != null) { filePatches.addAll(myReader.getAllPatches()); } if (!ContainerUtil.isEmpty(myBinaryShelvedPatches)) { filePatches.addAll(myBinaryShelvedPatches); } List<AbstractFilePatchInProgress<?>> matchedPatches = new MatchPatchPaths(myProject).execute(filePatches, myUseProjectRootAsPredefinedBase); ApplicationManager.getApplication().invokeLater(() -> { if (myShouldUpdateChangeListName && myChangeListChooser != null) { String subject = chooseNotNull(getSubjectFromMessage(messageFromPatch), file.getNameWithoutExtension().replace('_', ' ').trim()); myChangeListChooser.setSuggestedName(subject, messageFromPatch, false); } myPatches.clear(); myPatches.addAll(matchedPatches); updateTree(true); paintBusy(false); updateOkActions(); }, ModalityState.stateForComponent(myCenterPanel)); }