mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-02-04 23:39:07 +07:00
Fix RIDER-115237: do not fail import in case a bundled schema cannot be loaded
GitOrigin-RevId: 5c9a8d087a8a551924e3aa0f3cd9716c9a7544bd
This commit is contained in:
committed by
intellij-monorepo-bot
parent
bf34fcce1d
commit
2f8014502b
@@ -1,10 +1,21 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.db
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.transfer.backend.db
|
||||
|
||||
import com.intellij.ide.startup.importSettings.models.BundledEditorColorScheme
|
||||
import com.intellij.openapi.diagnostic.logger
|
||||
import com.intellij.openapi.editor.colors.EditorColorsManager
|
||||
|
||||
object KnownColorSchemes {
|
||||
val Light: BundledEditorColorScheme = BundledEditorColorScheme.fromManager("IntelliJ Light")!! // here should be ok as they are bundled
|
||||
val Darcula: BundledEditorColorScheme = BundledEditorColorScheme.fromManager("Darcula")!!
|
||||
val HighContrast: BundledEditorColorScheme = BundledEditorColorScheme.fromManager("High contrast")!!
|
||||
}
|
||||
val Light: BundledEditorColorScheme? = findScheme("IntelliJ Light")
|
||||
val Darcula: BundledEditorColorScheme? = findScheme("Darcula")
|
||||
val HighContrast: BundledEditorColorScheme? = findScheme("High contrast")
|
||||
|
||||
private fun findScheme(name: String): BundledEditorColorScheme? = BundledEditorColorScheme.fromManager(name) ?: run {
|
||||
logger.error(
|
||||
"Unable to find bundled color scheme \"$name\". " +
|
||||
"All available schemes: ${EditorColorsManager.getInstance().allSchemes.joinToString(", ", "\"", "\"") { it.name }}.")
|
||||
null
|
||||
}
|
||||
}
|
||||
|
||||
private val logger = logger<KnownColorSchemes>()
|
||||
|
||||
@@ -1,15 +1,14 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.providers.vscode
|
||||
|
||||
import com.intellij.ide.startup.importSettings.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.db.KnownKeymaps
|
||||
import com.intellij.ide.startup.importSettings.db.KnownLafs
|
||||
import com.intellij.ide.startup.importSettings.db.WindowsEnvVariables
|
||||
import com.intellij.ide.startup.importSettings.models.Settings
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.providers.vscode.parsers.*
|
||||
import com.intellij.openapi.util.SystemInfo
|
||||
import com.intellij.openapi.util.SystemInfoRt
|
||||
import com.intellij.openapi.util.io.FileUtil
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import java.io.File
|
||||
import java.io.IOException
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.providers.vscode.mappings
|
||||
|
||||
import com.intellij.ide.startup.importSettings.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.models.BundledEditorColorScheme
|
||||
|
||||
object SchemesMappings {
|
||||
fun schemeMap(scheme: String): BundledEditorColorScheme = when (scheme) {
|
||||
"vs" -> KnownColorSchemes.Light
|
||||
"vs-dark" -> KnownColorSchemes.Darcula
|
||||
"hc-black" -> KnownColorSchemes.HighContrast
|
||||
"Monokai" -> KnownColorSchemes.Darcula //KnownColorSchemes.Monokai
|
||||
"Solarized Dark" -> KnownColorSchemes.Darcula //KnownColorSchemes.SolarizedDark
|
||||
"Solarized Light" -> KnownColorSchemes.Light //KnownColorSchemes.SolarizedLight
|
||||
else -> otherSchemeConverter(scheme)
|
||||
}
|
||||
|
||||
private fun otherSchemeConverter(scheme: String) = if (scheme.lowercase().contains("light")) KnownColorSchemes.Light
|
||||
else KnownColorSchemes.Darcula
|
||||
}
|
||||
@@ -5,12 +5,12 @@ import com.fasterxml.jackson.databind.node.ArrayNode
|
||||
import com.fasterxml.jackson.databind.node.JsonNodeType
|
||||
import com.fasterxml.jackson.databind.node.ObjectNode
|
||||
import com.intellij.ide.RecentProjectMetaInfo
|
||||
import com.intellij.ide.startup.importSettings.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.db.KnownLafs
|
||||
import com.intellij.ide.startup.importSettings.models.RecentPathInfo
|
||||
import com.intellij.ide.startup.importSettings.models.Settings
|
||||
import com.intellij.ide.startup.importSettings.providers.vscode.mappings.ThemesMappings
|
||||
import com.intellij.ide.startup.importSettings.transfer.ExternalProjectImportChecker
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.db.KnownColorSchemes
|
||||
import com.intellij.openapi.diagnostic.logger
|
||||
import com.intellij.openapi.diagnostic.runAndLogException
|
||||
import com.intellij.openapi.util.SystemInfo
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.providers.vsmac
|
||||
|
||||
import com.intellij.ide.startup.importSettings.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.db.KnownKeymaps
|
||||
import com.intellij.ide.startup.importSettings.db.KnownLafs
|
||||
import com.intellij.ide.startup.importSettings.models.Settings
|
||||
import com.intellij.ide.startup.importSettings.providers.vsmac.parsers.GeneralSettingsParser
|
||||
import com.intellij.ide.startup.importSettings.providers.vsmac.parsers.KeyBindingsParser
|
||||
import com.intellij.ide.startup.importSettings.providers.vsmac.parsers.RecentProjectsParser
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.providers.vsmac.parsers.GeneralSettingsParser
|
||||
import java.io.File
|
||||
|
||||
class VSMacSettingsProcessor {
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.providers.vsmac.mappings
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.transfer.backend.providers.vsmac.mappings
|
||||
|
||||
import com.intellij.ide.startup.importSettings.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.models.BundledEditorColorScheme
|
||||
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.db.KnownColorSchemes
|
||||
|
||||
object SchemesMappings {
|
||||
fun schemeMap(scheme: String): BundledEditorColorScheme = when (scheme) {
|
||||
fun schemeMap(scheme: String): BundledEditorColorScheme? = when (scheme) {
|
||||
"Light" -> KnownColorSchemes.Light
|
||||
"Dark" -> KnownColorSchemes.Darcula
|
||||
"Gruvbox" -> KnownColorSchemes.Darcula
|
||||
@@ -22,4 +21,4 @@ object SchemesMappings {
|
||||
"Legacy – Light" -> KnownColorSchemes.Light
|
||||
else -> if (scheme.lowercase().endsWith("light")) KnownColorSchemes.Light else KnownColorSchemes.Darcula
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
// Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.providers.vsmac.parsers
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.transfer.backend.providers.vsmac.parsers
|
||||
|
||||
import com.intellij.ide.startup.importSettings.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.db.KnownLafs
|
||||
import com.intellij.ide.startup.importSettings.models.Settings
|
||||
import com.intellij.ide.startup.importSettings.providers.vsmac.mappings.SchemesMappings
|
||||
import com.intellij.ide.startup.importSettings.providers.vsmac.mappings.ThemesMappings
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.providers.vsmac.mappings.SchemesMappings
|
||||
import com.intellij.openapi.diagnostic.logger
|
||||
import com.intellij.openapi.util.JDOMUtil
|
||||
import org.jdom.Element
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.
|
||||
package com.intellij.ide.startup.importSettings.providers.vswin.parsers
|
||||
|
||||
import com.intellij.ide.startup.importSettings.db.KnownColorSchemes
|
||||
import com.intellij.ide.startup.importSettings.db.KnownLafs
|
||||
import com.intellij.ide.startup.importSettings.models.Settings
|
||||
import com.intellij.ide.startup.importSettings.providers.vswin.utilities.VSHive
|
||||
import com.intellij.ide.startup.importSettings.transfer.backend.db.KnownColorSchemes
|
||||
import com.intellij.openapi.diagnostic.logger
|
||||
|
||||
class VSParser(private val hive: VSHive) {
|
||||
|
||||
Reference in New Issue
Block a user