From 42b9538ca60134bcef73114e893e96e1e9a5e98b Mon Sep 17 00:00:00 2001 From: Dmitry Trofimov Date: Thu, 14 Aug 2014 17:01:50 +0200 Subject: [PATCH 1/2] Fix initial configuration. --- .../edu/PyCharmEduInitialConfigurator.java | 66 ++++++------------- 1 file changed, 19 insertions(+), 47 deletions(-) diff --git a/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java b/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java index 8c69827d619b..ae121573e593 100644 --- a/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java +++ b/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java @@ -39,7 +39,6 @@ import com.intellij.openapi.project.Project; import com.intellij.openapi.project.ProjectManager; import com.intellij.openapi.project.ProjectManagerAdapter; import com.intellij.openapi.project.ex.ProjectManagerEx; -import com.intellij.openapi.util.Ref; import com.intellij.openapi.vfs.VfsUtil; import com.intellij.openapi.wm.ToolWindowEP; import com.intellij.openapi.wm.ToolWindowId; @@ -116,21 +115,26 @@ public class PyCharmEduInitialConfigurator { }); PyCodeInsightSettings.getInstance().SHOW_IMPORT_POPUP = true; } - bus.connect().subscribe(AppLifecycleListener.TOPIC, new AppLifecycleListener.Adapter() { - @Override - public void appFrameCreated(String[] commandLineArgs, @NotNull Ref willOpenProject) { - if (!propertiesComponent.isValueSet(DISPLAYED_PROPERTY)) { - GeneralSettings.getInstance().setShowTipsOnStartup(false); - showInitialConfigurationDialog(); - propertiesComponent.setValue(DISPLAYED_PROPERTY, "true"); - } - } - @Override - public void appStarting(Project projectFromCommandLine) { - patchKeymap(); - } - }); + if (!propertiesComponent.isValueSet(DISPLAYED_PROPERTY)) { + + bus.connect().subscribe(AppLifecycleListener.TOPIC, new AppLifecycleListener.Adapter() { + @Override + public void welcomeScreenDisplayed() { + + ApplicationManager.getApplication().invokeLater(new Runnable() { + @Override + public void run() { + GeneralSettings.getInstance().setShowTipsOnStartup(false); + showInitialConfigurationDialog(); + propertiesComponent.setValue(DISPLAYED_PROPERTY, "true"); + patchKeymap(); + } + }); + } + }); + } + bus.connect().subscribe(ProjectManager.TOPIC, new ProjectManagerAdapter() { @Override public void projectOpened(final Project project) { @@ -140,42 +144,10 @@ public class PyCharmEduInitialConfigurator { } patchProjectAreaExtensions(project); - - //StartupManager.getInstance(project).runWhenProjectIsInitialized(new DumbAwareRunnable() { - // @Override - // public void run() { - // if (project.isDisposed()) return; - // - // ToolWindowManager - // .getInstance(project).invokeLater(new Runnable() { - // int count = 0; - // public void run() { - // if (project.isDisposed()) return; - // if (count ++ < 3) { - // ToolWindowManager.getInstance(project).invokeLater(this); - // return; - // } - // if (!propertiesComponent.isValueSet(INIT_DB_DIALOG_DISPLAYED)) { - // ToolWindow toolWindow = DatabaseView.getDatabaseToolWindow(project); - // if (toolWindow.getType() != ToolWindowType.SLIDING) { - // toolWindow.activate(null); - // } - // propertiesComponent.setValue(INIT_DB_DIALOG_DISPLAYED, "true"); - // onFirstProjectOpened(project); - // } - // } - // }); - // } - //}); } }); } - private static void onFirstProjectOpened(@NotNull final Project project) { - // show python console - - } - private static void patchRootAreaExtensions() { ExtensionsArea rootArea = Extensions.getArea(null); From cfbc0922286e4de38402bee7018e0f3c90b60fa3 Mon Sep 17 00:00:00 2001 From: Dmitry Trofimov Date: Thu, 14 Aug 2014 17:12:40 +0200 Subject: [PATCH 2/2] Fix edu initial configurator. --- .../python/edu/PyCharmEduInitialConfigurator.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java b/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java index ae121573e593..ecf3d79a6424 100644 --- a/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java +++ b/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java @@ -125,10 +125,13 @@ public class PyCharmEduInitialConfigurator { ApplicationManager.getApplication().invokeLater(new Runnable() { @Override public void run() { - GeneralSettings.getInstance().setShowTipsOnStartup(false); - showInitialConfigurationDialog(); - propertiesComponent.setValue(DISPLAYED_PROPERTY, "true"); - patchKeymap(); + if (!propertiesComponent.isValueSet(DISPLAYED_PROPERTY)) { + GeneralSettings.getInstance().setShowTipsOnStartup(false); + propertiesComponent.setValue(DISPLAYED_PROPERTY, "true"); + showInitialConfigurationDialog(); + + patchKeymap(); + } } }); }