fix shortcuts for new projects
authorLiana Bakradze <liana.bakradze@jetbrains.com>
Tue, 9 Aug 2016 15:46:20 +0000 (18:46 +0300)
committerLiana Bakradze <liana.bakradze@jetbrains.com>
Tue, 9 Aug 2016 15:55:16 +0000 (18:55 +0300)
python/educational-core/student/src/com/jetbrains/edu/learning/StudyProjectComponent.java

index f0badf71acb09c265dc54b9a1d46072ad02eab69..9c8b39331e72b2ef116cced4a4fcc9a2d1f443ba 100644 (file)
@@ -18,6 +18,7 @@ import com.intellij.openapi.module.ModuleManager;
 import com.intellij.openapi.progress.ProgressManager;
 import com.intellij.openapi.project.DumbAwareRunnable;
 import com.intellij.openapi.project.Project;
+import com.intellij.openapi.startup.StartupManager;
 import com.intellij.openapi.util.Pair;
 import com.intellij.openapi.util.io.FileUtil;
 import com.intellij.openapi.vfs.VirtualFile;
@@ -65,7 +66,7 @@ public class StudyProjectComponent implements ProjectComponent {
 
   @Override
   public void projectOpened() {
-    final Course course = StudyTaskManager.getInstance(myProject).getCourse();
+    Course course = StudyTaskManager.getInstance(myProject).getCourse();
     // Check if user has javafx lib in his JDK. Now bundled JDK doesn't have this lib inside.
     if (StudyUtils.hasJavaFx()) {
       Platform.setImplicitExit(false);
@@ -96,12 +97,13 @@ public class StudyProjectComponent implements ProjectComponent {
     }
 
     StudyUtils.registerStudyToolWindow(course, myProject);
-    ApplicationManager.getApplication().invokeLater(new DumbAwareRunnable() {
+    StartupManager.getInstance(myProject).runWhenProjectIsInitialized(() -> ApplicationManager.getApplication().invokeLater(new DumbAwareRunnable() {
       @Override
       public void run() {
         ApplicationManager.getApplication().runWriteAction(new DumbAwareRunnable() {
           @Override
           public void run() {
+            Course course = StudyTaskManager.getInstance(myProject).getCourse();
             if (course != null) {
               final UISettings instance = UISettings.getInstance();
               if (instance != null) {
@@ -114,7 +116,7 @@ public class StudyProjectComponent implements ProjectComponent {
           }
         });
       }
-    });
+    }));
   }
 
   private void registerShortcuts() {