private void showLocalCommit() {
    final Collection<FilePath> files = gatherChangedPaths();

    // for changes to be detected, we need switch to background change list manager update thread and back to dispatch thread
    // so callback is used; ok to be called after VCS update markup closed: no remote operations
    VcsDirtyScopeManager.getInstance(getProject()).filePathsDirty(files, null);
    final ChangeListManager changeListManager = ChangeListManager.getInstance(getProject());
    changeListManager.invokeAfterUpdateWithModal(true, getTitle(), () -> {
      Collection<Change> changes = new ArrayList<>();
      for (FilePath file : files) {
        ContainerUtil.addIfNotNull(changes, changeListManager.getChange(file));
      }

      CommitChangeListDialog.commitVcsChanges(getProject(), changes, null, myMerger.getComment(), null);
      prepareAndShowResults();
    });
  }
private void showLocalCommit()