void (final AnActionEvent e) { final DataContext dataContext = e.getDataContext(); myProject = CommonDataKeys.PROJECT.getData(dataContext); if (myProject == null || myProject.isDefault()) { // remain false return; } final VirtualFile baseDir = myProject.getBaseDir(); if (baseDir == null) return; final ProjectLevelVcsManager vcsManager = ProjectLevelVcsManager.getInstance(myProject); final MyCheckResult result = checkMappings(baseDir, vcsManager); if (MyCheckResult.disable.equals(result)) return; myHadNoMappings = MyCheckResult.notMapped.equals(result); if (MyCheckResult.notMapped.equals(result)) { // no change list manager working if (SvnUtil.seemsLikeVersionedDir(baseDir)) return; } else if (SvnStatusUtil.isUnderControl(myProject, baseDir)) { return; } if ((!myHadNoMappings) && (!SvnVcs.getInstance(myProject).getSvnFileUrlMapping().isEmpty())) { // there are some versioned dirs under project dir return; } // visible: already checked above myVisible = true; myEnabled = (!vcsManager.isBackgroundVcsOperationRunning()); }