mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
PY-84031: Open only .ipynb files in Welcome Screen for PyCharm
Space-RevId: 6e05b377754700604f6e91db966ee2337cb0f745 GitOrigin-RevId: 2b025887769e5081ca62c4c217628c3adf016410
This commit is contained in:
committed by
intellij-monorepo-bot
parent
f88bfc7039
commit
df03c2a2ed
+1
-1
@@ -45,7 +45,7 @@ private abstract class DummyProjectOpenProcessor(override val name: String) : Pr
|
||||
private class WelcomeScreenCommandLineProjectOpenProcessor : DummyProjectOpenProcessor("WelcomeScreenCommandLineProjectOpenProcessor") {
|
||||
override suspend fun openProjectAndFile(file: Path, tempProject: Boolean, options: OpenProjectTask): Project? {
|
||||
val provider = getWelcomeScreenProjectProvider() ?: return null
|
||||
if (provider.canOpenFilesFromSystemFileManager()) {
|
||||
if (provider.canOpenFilesFromSystemFileManager(file)) {
|
||||
return openWelcomeScreenProject(file)
|
||||
}
|
||||
return null
|
||||
|
||||
+4
-4
@@ -72,8 +72,8 @@ abstract class WelcomeScreenProjectProvider {
|
||||
return getWelcomeScreenProjectProvider()?.getWelcomeScreenProjectPath()
|
||||
}
|
||||
|
||||
fun canOpenFilesFromSystemFileManager(): Boolean {
|
||||
return getWelcomeScreenProjectProvider()?.canOpenFilesFromSystemFileManager() ?: false
|
||||
fun canOpenFilesFromSystemFileManager(filePath: Path): Boolean {
|
||||
return getWelcomeScreenProjectProvider()?.canOpenFilesFromSystemFileManager(filePath) ?: false
|
||||
}
|
||||
|
||||
suspend fun createOrOpenWelcomeScreenProject(extension: WelcomeScreenProjectProvider): Project {
|
||||
@@ -98,9 +98,9 @@ abstract class WelcomeScreenProjectProvider {
|
||||
}
|
||||
|
||||
/**
|
||||
* Return true if the welcome screen project can open non-project files from the file manager (Explorer, Finder).
|
||||
* Return true if the welcome screen project can open [filePath] from the file manager (Explorer, Finder) or command line.
|
||||
*/
|
||||
abstract fun canOpenFilesFromSystemFileManager(): Boolean
|
||||
abstract fun canOpenFilesFromSystemFileManager(filePath: Path): Boolean
|
||||
|
||||
protected open fun getWelcomeScreenProjectPath(): Path {
|
||||
return ProjectUtil.getProjectPath(getWelcomeScreenProjectName()).absolute()
|
||||
|
||||
+2
-2
@@ -35,8 +35,8 @@ internal class PyCharmWelcomeScreenProjectProvider : WelcomeScreenProjectProvide
|
||||
|
||||
override fun doGetCreateNewFileProjectPrefix(): String = "awesomeProject"
|
||||
|
||||
override fun canOpenFilesFromSystemFileManager(): Boolean {
|
||||
return Registry.`is`("welcome.screen.open.files", false)
|
||||
override fun canOpenFilesFromSystemFileManager(filePath: Path): Boolean {
|
||||
return Registry.`is`("welcome.screen.open.files", false) && filePath.endsWith(".ipynb")
|
||||
}
|
||||
|
||||
override suspend fun doCreateOrOpenWelcomeScreenProject(path: Path): Project {
|
||||
|
||||
Reference in New Issue
Block a user