From 728463737bf5be562c8fc3fb9f9edff8afa782ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yann=20C=C3=A9bron?= Date: Wed, 29 May 2019 17:08:58 +0200 Subject: [PATCH] [devkit] theme.json namedColor move/refactor GitOrigin-RevId: 02302745609ba1a6903a458d483e3b9cee93bba3 --- .../devkit-core/resources/META-INF/plugin.xml | 2 +- .../ThemeJsonPsiReferenceContributor.java | 22 -------------- .../ThemeJsonNamedColorPsiReference.java | 8 ++--- ...meJsonNamedColorPsiReferenceProvider.java} | 4 +-- .../ThemeJsonPsiReferenceContributor.java | 29 +++++++++++++++++++ 5 files changed, 36 insertions(+), 29 deletions(-) delete mode 100644 plugins/devkit/devkit-core/src/references/ThemeJsonPsiReferenceContributor.java rename plugins/devkit/devkit-core/src/{references => themes}/ThemeJsonNamedColorPsiReference.java (87%) rename plugins/devkit/devkit-core/src/{references/ThemeJsonPsiReferenceProvider.java => themes/ThemeJsonNamedColorPsiReferenceProvider.java} (89%) create mode 100644 plugins/devkit/devkit-core/src/themes/ThemeJsonPsiReferenceContributor.java diff --git a/plugins/devkit/devkit-core/resources/META-INF/plugin.xml b/plugins/devkit/devkit-core/resources/META-INF/plugin.xml index d656923c55a4..45de8753933c 100644 --- a/plugins/devkit/devkit-core/resources/META-INF/plugin.xml +++ b/plugins/devkit/devkit-core/resources/META-INF/plugin.xml @@ -219,7 +219,6 @@ - @@ -291,6 +290,7 @@ + diff --git a/plugins/devkit/devkit-core/src/references/ThemeJsonPsiReferenceContributor.java b/plugins/devkit/devkit-core/src/references/ThemeJsonPsiReferenceContributor.java deleted file mode 100644 index da716cd07149..000000000000 --- a/plugins/devkit/devkit-core/src/references/ThemeJsonPsiReferenceContributor.java +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -package org.jetbrains.idea.devkit.references; - -import com.intellij.json.psi.JsonStringLiteral; -import com.intellij.patterns.PlatformPatterns; -import com.intellij.patterns.StandardPatterns; -import com.intellij.psi.PsiReferenceContributor; -import com.intellij.psi.PsiReferenceRegistrar; -import org.jetbrains.annotations.NotNull; - -/** - * @author Konstantin Bulenkov - */ -public class ThemeJsonPsiReferenceContributor extends PsiReferenceContributor { - @Override - public void registerReferenceProviders(@NotNull PsiReferenceRegistrar registrar) { - registrar.registerReferenceProvider(PlatformPatterns.psiElement(JsonStringLiteral.class) - .inVirtualFile(PlatformPatterns.virtualFile() - .withName(StandardPatterns.string().endsWith(".theme.json"))), - new ThemeJsonPsiReferenceProvider()); - } -} diff --git a/plugins/devkit/devkit-core/src/references/ThemeJsonNamedColorPsiReference.java b/plugins/devkit/devkit-core/src/themes/ThemeJsonNamedColorPsiReference.java similarity index 87% rename from plugins/devkit/devkit-core/src/references/ThemeJsonNamedColorPsiReference.java rename to plugins/devkit/devkit-core/src/themes/ThemeJsonNamedColorPsiReference.java index d268d2ee824e..0174855b5d43 100644 --- a/plugins/devkit/devkit-core/src/references/ThemeJsonNamedColorPsiReference.java +++ b/plugins/devkit/devkit-core/src/themes/ThemeJsonNamedColorPsiReference.java @@ -1,5 +1,5 @@ // Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -package org.jetbrains.idea.devkit.references; +package org.jetbrains.idea.devkit.themes; import com.intellij.json.psi.*; import com.intellij.model.SymbolResolveResult; @@ -17,10 +17,10 @@ import java.util.Collections; /** * @author Konstantin Bulenkov */ -public class ThemeJsonNamedColorPsiReference extends JsonSchemaBaseReference { +class ThemeJsonNamedColorPsiReference extends JsonSchemaBaseReference { private final String myName; - public ThemeJsonNamedColorPsiReference(JsonLiteral element) { + ThemeJsonNamedColorPsiReference(JsonLiteral element) { super(element, element.getTextLength() >= 2 ? new TextRange(1, element.getTextLength() - 1) : TextRange.EMPTY_RANGE); myName = StringUtil.unquoteString(element.getText()); } @@ -37,7 +37,7 @@ public class ThemeJsonNamedColorPsiReference extends JsonSchemaBaseReference("theme.json") { + @Override + public boolean accepts(@NotNull VirtualFile file, ProcessingContext context) { + return ThemeJsonUtil.isThemeFilename(file.getName()); + } + })), + new ThemeJsonNamedColorPsiReferenceProvider()); + } +}