2121import com .intellij .java .language .psi .JavaDirectoryService ;
2222import com .intellij .java .language .psi .PsiJavaPackage ;
2323import consulo .annotation .access .RequiredReadAction ;
24+ import consulo .application .ReadAction ;
2425import consulo .compiler .Compiler ;
2526import consulo .compiler .CompilerManager ;
2627import consulo .compiler .action .CompileActionBase ;
@@ -78,7 +79,6 @@ protected void doAction(DataContext dataContext, Project project) {
7879 }
7980
8081 @ Override
81- @ RequiredReadAction
8282 public void update (@ Nonnull AnActionEvent event ) {
8383 super .update (event );
8484 Presentation presentation = event .getPresentation ();
@@ -102,7 +102,8 @@ public void update(@Nonnull AnActionEvent event) {
102102 presentation .setEnabled (false );
103103 return ;
104104 }
105- AnnotationProcessingConfiguration profile = compilerConfiguration .getAnnotationProcessingConfiguration (module );
105+ AnnotationProcessingConfiguration profile =
106+ ReadAction .compute (() -> compilerConfiguration .getAnnotationProcessingConfiguration (module ));
106107 if (!profile .isEnabled () || (!profile .isObtainProcessorsFromClasspath () && profile .getProcessors ().isEmpty ())) {
107108 presentation .setEnabled (false );
108109 return ;
@@ -112,7 +113,7 @@ public void update(@Nonnull AnActionEvent event) {
112113 presentation .setVisible (true );
113114 presentation .setTextValue (JavaCompilerLocalize .actionRunAptText ());
114115
115- FileSetCompileScope scope = getCompilableFiles (project , event .getData (VirtualFile .KEY_OF_ARRAY ));
116+ FileSetCompileScope scope = ReadAction . compute (() -> getCompilableFiles (project , event .getData (VirtualFile .KEY_OF_ARRAY ) ));
116117 if (moduleContext == null && scope == null ) {
117118 presentation .setEnabled (false );
118119 return ;
@@ -125,7 +126,7 @@ public void update(@Nonnull AnActionEvent event) {
125126 PsiJavaPackage aPackage = null ;
126127 Collection <VirtualFile > files = scope .getRootFiles ();
127128 if (files .size () == 1 ) {
128- PsiDirectory directory = PsiManager .getInstance (project ).findDirectory (files .iterator ().next ());
129+ PsiDirectory directory = ReadAction . compute (() -> PsiManager .getInstance (project ).findDirectory (files .iterator ().next () ));
129130 if (directory != null ) {
130131 aPackage = JavaDirectoryService .getInstance ().getPackage (directory );
131132 }
0 commit comments