summaryrefslogtreecommitdiff
path: root/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java
diff options
context:
space:
mode:
Diffstat (limited to 'python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java')
-rw-r--r--python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java91
1 files changed, 27 insertions, 64 deletions
diff --git a/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java b/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java
index 451c5193645e..ecf3d79a6424 100644
--- a/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java
+++ b/python/edu/src/com/jetbrains/python/edu/PyCharmEduInitialConfigurator.java
@@ -25,10 +25,8 @@ import com.intellij.ide.RecentProjectsManagerBase;
import com.intellij.ide.SelectInTarget;
import com.intellij.ide.ui.UISettings;
import com.intellij.ide.util.PropertiesComponent;
-import com.intellij.ide.util.TipDialog;
import com.intellij.notification.EventLog;
import com.intellij.openapi.application.ApplicationManager;
-import com.intellij.openapi.application.ModalityState;
import com.intellij.openapi.editor.ex.EditorSettingsExternalizable;
import com.intellij.openapi.extensions.Extensions;
import com.intellij.openapi.extensions.ExtensionsArea;
@@ -41,8 +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.Disposer;
-import com.intellij.openapi.util.Ref;
import com.intellij.openapi.vfs.VfsUtil;
import com.intellij.openapi.wm.ToolWindowEP;
import com.intellij.openapi.wm.ToolWindowId;
@@ -51,7 +47,6 @@ import com.intellij.platform.DirectoryProjectConfigurator;
import com.intellij.platform.PlatformProjectViewOpener;
import com.intellij.psi.codeStyle.CodeStyleSettings;
import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
-import com.intellij.util.Alarm;
import com.intellij.util.containers.ContainerUtil;
import com.intellij.util.messages.MessageBus;
import com.jetbrains.python.PythonLanguage;
@@ -91,13 +86,15 @@ public class PyCharmEduInitialConfigurator {
RecentProjectsManagerBase recentProjectsManager) {
if (!propertiesComponent.getBoolean(CONFIGURED, false)) {
propertiesComponent.setValue(CONFIGURED, "true");
- recentProjectsManager.loadState(new RecentProjectsManagerBase.State());
propertiesComponent.setValue("toolwindow.stripes.buttons.info.shown", "true");
UISettings.getInstance().HIDE_TOOL_STRIPES = false;
uiSettings.SHOW_MEMORY_INDICATOR = false;
uiSettings.SHOW_DIRECTORY_FOR_NON_UNIQUE_FILENAMES = true;
+ uiSettings.SHOW_MAIN_TOOLBAR = false;
codeInsightSettings.REFORMAT_ON_PASTE = CodeInsightSettings.NO_REFORMAT;
+ GeneralSettings.getInstance().setShowTipsOnStartup(false);
+
EditorSettingsExternalizable.getInstance().setVirtualSpace(false);
final CodeStyleSettings settings = CodeStyleSettingsManager.getInstance().getCurrentSettings();
settings.ALIGN_MULTILINE_PARAMETERS_IN_CALLS = true;
@@ -116,23 +113,31 @@ public class PyCharmEduInitialConfigurator {
});
}
});
- PyCodeInsightSettings.getInstance().SHOW_IMPORT_POPUP = false;
+ PyCodeInsightSettings.getInstance().SHOW_IMPORT_POPUP = true;
}
- bus.connect().subscribe(AppLifecycleListener.TOPIC, new AppLifecycleListener.Adapter() {
- @Override
- public void appFrameCreated(String[] commandLineArgs, @NotNull Ref<Boolean> willOpenProject) {
- if (!propertiesComponent.isValueSet(DISPLAYED_PROPERTY)) {
- GeneralSettings.getInstance().setShowTipsOnStartup(false);
- showInitialConfigurationDialog();
- propertiesComponent.setValue(DISPLAYED_PROPERTY, "true");
+
+ 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() {
+ if (!propertiesComponent.isValueSet(DISPLAYED_PROPERTY)) {
+ GeneralSettings.getInstance().setShowTipsOnStartup(false);
+ propertiesComponent.setValue(DISPLAYED_PROPERTY, "true");
+ showInitialConfigurationDialog();
+
+ patchKeymap();
+ }
+ }
+ });
}
- }
+ });
+ }
- @Override
- public void appStarting(Project projectFromCommandLine) {
- patchKeymap();
- }
- });
bus.connect().subscribe(ProjectManager.TOPIC, new ProjectManagerAdapter() {
@Override
public void projectOpened(final Project project) {
@@ -142,58 +147,16 @@ 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
-
-
- GeneralSettings.getInstance().setShowTipsOnStartup(true);
-
- // show tips once
- final Alarm alarm = new Alarm(project);
- alarm.addRequest(new Runnable() {
- @Override
- public void run() {
- Disposer.dispose(alarm);
- TipDialog.createForProject(project).show();
- }
- }, 2000, ModalityState.NON_MODAL);
- }
-
private static void patchRootAreaExtensions() {
ExtensionsArea rootArea = Extensions.getArea(null);
for (ToolWindowEP ep : Extensions.getExtensions(ToolWindowEP.EP_NAME)) {
- if (ToolWindowId.FAVORITES_VIEW.equals(ep.id) || ToolWindowId.TODO_VIEW.equals(ep.id) || EventLog.LOG_TOOL_WINDOW_ID.equals(ep.id)) {
+ if (ToolWindowId.FAVORITES_VIEW.equals(ep.id) || ToolWindowId.TODO_VIEW.equals(ep.id) || EventLog.LOG_TOOL_WINDOW_ID.equals(ep.id)
+ || "Structure".equals(ep.id)) {
rootArea.getExtensionPoint(ToolWindowEP.EP_NAME).unregisterExtension(ep);
}
}