mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
invoke FileEditorProvider.accept() from read action
This commit is contained in:
+7
-9
@@ -771,15 +771,13 @@ public class FileEditorManagerImpl extends FileEditorManagerEx implements Projec
|
||||
try {
|
||||
final FileEditorProvider provider = newProviders[i];
|
||||
LOG.assertTrue(provider != null, "Provider for file "+file+" is null. All providers: "+Arrays.asList(newProviders));
|
||||
LOG.assertTrue(provider.accept(myProject, file), "Provider " + provider + " doesn't accept file " + file);
|
||||
if ((provider instanceof AsyncFileEditorProvider)) {
|
||||
builders[i] = ApplicationManager.getApplication().runReadAction(new Computable<AsyncFileEditorProvider.Builder>() {
|
||||
@Override
|
||||
public AsyncFileEditorProvider.Builder compute() {
|
||||
return ((AsyncFileEditorProvider)provider).createEditorAsync(myProject, file);
|
||||
}
|
||||
});
|
||||
}
|
||||
builders[i] = ApplicationManager.getApplication().runReadAction(new Computable<AsyncFileEditorProvider.Builder>() {
|
||||
@Override
|
||||
public AsyncFileEditorProvider.Builder compute() {
|
||||
LOG.assertTrue(provider.accept(myProject, file), "Provider " + provider + " doesn't accept file " + file);
|
||||
return provider instanceof AsyncFileEditorProvider ? ((AsyncFileEditorProvider)provider).createEditorAsync(myProject, file) : null;
|
||||
}
|
||||
});
|
||||
}
|
||||
catch (Exception e) {
|
||||
LOG.error(e);
|
||||
|
||||
Reference in New Issue
Block a user