From cc611fd192d5689e1f74a9c0c735e31e6e94b609 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Fri, 20 Jul 2018 10:47:26 +0200 Subject: [PATCH] Revert: use classloader instead of class as requestor for editor color schemes --- .../configuration-store-impl/src/SchemeManagerImpl.kt | 2 -- .../openapi/application/ex/DecodeDefaultsUtil.java | 8 ++++---- .../editor/colors/impl/EditorColorsManagerImpl.java | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/platform/configuration-store-impl/src/SchemeManagerImpl.kt b/platform/configuration-store-impl/src/SchemeManagerImpl.kt index 5b7136e0ae9f..23a179713cb8 100644 --- a/platform/configuration-store-impl/src/SchemeManagerImpl.kt +++ b/platform/configuration-store-impl/src/SchemeManagerImpl.kt @@ -3,7 +3,6 @@ package com.intellij.configurationStore import com.intellij.concurrency.ConcurrentCollectionFactory import com.intellij.configurationStore.schemeManager.* -import com.intellij.ide.ui.UITheme import com.intellij.openapi.application.ex.DecodeDefaultsUtil import com.intellij.openapi.application.runUndoTransparentWriteAction import com.intellij.openapi.components.RoamingType @@ -112,7 +111,6 @@ class SchemeManagerImpl(val fileSpec: String, try { val url = when (requestor) { is AbstractExtensionPointBean -> requestor.loaderForClass.getResource(resourceName) - is UITheme -> DecodeDefaultsUtil.getDefaults(requestor.providerClassLoader, resourceName) else -> DecodeDefaultsUtil.getDefaults(requestor, resourceName) } diff --git a/platform/platform-impl/src/com/intellij/openapi/application/ex/DecodeDefaultsUtil.java b/platform/platform-impl/src/com/intellij/openapi/application/ex/DecodeDefaultsUtil.java index 77cee101c31e..dfa6a42994a8 100644 --- a/platform/platform-impl/src/com/intellij/openapi/application/ex/DecodeDefaultsUtil.java +++ b/platform/platform-impl/src/com/intellij/openapi/application/ex/DecodeDefaultsUtil.java @@ -36,14 +36,14 @@ public class DecodeDefaultsUtil { public static URL getDefaults(Object requestor, @NotNull String componentResourcePath) { URL url = RESOURCE_CACHE.get(componentResourcePath); if (url == null) { - ClassLoader loader = requestor instanceof ClassLoader ? (ClassLoader)requestor : requestor.getClass().getClassLoader(); + Class requestorClass = requestor instanceof Class ? (Class)requestor : requestor.getClass(); if (StringUtil.startsWithChar(componentResourcePath, '/')) { - url = loader.getResource(appendExt(componentResourcePath)); + url = requestorClass.getResource(appendExt(componentResourcePath)); } else { - url = loader.getResource(appendExt('/' + ApplicationManagerEx.getApplicationEx().getName() + '/' + componentResourcePath)); + url = requestorClass.getResource(appendExt('/' + ApplicationManagerEx.getApplicationEx().getName() + '/' + componentResourcePath)); if (url == null) { - url = loader.getResource(appendExt('/' + componentResourcePath)); + url = requestorClass.getResource(appendExt('/' + componentResourcePath)); } } RESOURCE_CACHE.put(componentResourcePath, url); diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java b/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java index b8c71dde28f2..ee251b24d997 100644 --- a/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/editor/colors/impl/EditorColorsManagerImpl.java @@ -185,7 +185,7 @@ public class EditorColorsManagerImpl extends EditorColorsManager implements Pers UITheme theme = ((UIThemeBasedLookAndFeelInfo)laf).getTheme(); String path = theme.getEditorScheme(); if (path != null) { - mySchemeManager.loadBundledScheme(path, theme); + mySchemeManager.loadBundledScheme(path, theme.getProviderClassLoader()); } } }