From 204f56656e7e9f16c7088f3bbe9ada78f68970bc Mon Sep 17 00:00:00 2001 From: "Gregory.Shrago" Date: Fri, 29 Mar 2024 20:12:49 +0400 Subject: [PATCH] annotate/fix names for icon providers/patchers GitOrigin-RevId: 2faa3be0c1e377ffa08874a5f49d862118e83cfd --- .../intellij/ide/JavaExcludedFileIconPatcher.java | 11 ++++++----- .../src/com/intellij/ide/JavaFileIconPatcher.java | 12 +++++++----- .../src/com/intellij/ide/FileIconPatcher.java | 6 +++++- ...cherImpl.java => PsiBasedFileIconProvider.java} | 9 +++------ .../ide/scratch/ScratchFileServiceImpl.java | 8 ++++---- .../src/META-INF/LangExtensions.xml | 2 +- ...{XsltIconProvider.java => XsltIconPatcher.java} | 14 ++++++++------ plugins/xpath/xpath-view/src/META-INF/plugin.xml | 2 +- 8 files changed, 35 insertions(+), 29 deletions(-) rename platform/lang-impl/src/com/intellij/ide/{FileIconPatcherImpl.java => PsiBasedFileIconProvider.java} (76%) rename plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/impl/{XsltIconProvider.java => XsltIconPatcher.java} (55%) diff --git a/java/compiler/impl/src/com/intellij/ide/JavaExcludedFileIconPatcher.java b/java/compiler/impl/src/com/intellij/ide/JavaExcludedFileIconPatcher.java index dbb308b2b671..72aba77a9dda 100644 --- a/java/compiler/impl/src/com/intellij/ide/JavaExcludedFileIconPatcher.java +++ b/java/compiler/impl/src/com/intellij/ide/JavaExcludedFileIconPatcher.java @@ -9,20 +9,21 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.ui.IconManager; import com.intellij.ui.LayeredIcon; import com.intellij.util.PlatformIcons; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; final class JavaExcludedFileIconPatcher implements FileIconPatcher { @Override - public Icon patchIcon(Icon baseIcon, VirtualFile file, int flags, @Nullable Project project) { + public @NotNull Icon patchIcon(@NotNull Icon icon, @NotNull VirtualFile file, int flags, @Nullable Project project) { if (project == null) { - return baseIcon; + return icon; } - final ProjectFileIndex fileIndex = ProjectRootManager.getInstance(project).getFileIndex(); + ProjectFileIndex fileIndex = ProjectRootManager.getInstance(project).getFileIndex(); if (fileIndex.isInSource(file) && CompilerManager.getInstance(project).isExcludedFromCompilation(file)) { - return IconManager.getInstance().createLayered(LayeredIcon.layeredIcon(new Icon[]{baseIcon, PlatformIcons.EXCLUDED_FROM_COMPILE_ICON})); + return IconManager.getInstance().createLayered(LayeredIcon.layeredIcon(new Icon[]{icon, PlatformIcons.EXCLUDED_FROM_COMPILE_ICON})); } - return baseIcon; + return icon; } } diff --git a/java/java-impl/src/com/intellij/ide/JavaFileIconPatcher.java b/java/java-impl/src/com/intellij/ide/JavaFileIconPatcher.java index f6d54e633815..c5e3739209b0 100644 --- a/java/java-impl/src/com/intellij/ide/JavaFileIconPatcher.java +++ b/java/java-impl/src/com/intellij/ide/JavaFileIconPatcher.java @@ -10,15 +10,17 @@ import com.intellij.openapi.util.Comparing; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; import com.intellij.util.PlatformIcons; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import javax.swing.*; public final class JavaFileIconPatcher implements FileIconPatcher { @Override - public Icon patchIcon(final Icon baseIcon, final VirtualFile file, final int flags, final Project project) { + public @NotNull Icon patchIcon(@NotNull Icon icon, @NotNull VirtualFile file, int flags, @Nullable Project project) { if (project == null) { - return baseIcon; + return icon; } FileType fileType = file.getFileType(); @@ -31,10 +33,10 @@ public final class JavaFileIconPatcher implements FileIconPatcher { PsiClass[] classes = ((PsiClassOwner)psiFile).getClasses(); if (classes.length > 0) { // prefer icon of the class named after file - final String fileName = file.getNameWithoutExtension(); + String fileName = file.getNameWithoutExtension(); for (PsiClass aClass : classes) { if (aClass instanceof SyntheticElement) { - return baseIcon; + return icon; } if (Comparing.strEqual(aClass.getName(), fileName)) { return aClass.getIcon(flags); @@ -43,6 +45,6 @@ public final class JavaFileIconPatcher implements FileIconPatcher { return classes[classes.length - 1].getIcon(flags); } } - return baseIcon; + return icon; } } diff --git a/platform/core-api/src/com/intellij/ide/FileIconPatcher.java b/platform/core-api/src/com/intellij/ide/FileIconPatcher.java index 8f44b81b4008..d790792a7a62 100644 --- a/platform/core-api/src/com/intellij/ide/FileIconPatcher.java +++ b/platform/core-api/src/com/intellij/ide/FileIconPatcher.java @@ -24,6 +24,7 @@ import com.intellij.openapi.project.DumbAware; import com.intellij.openapi.project.Project; import com.intellij.openapi.util.Iconable; import com.intellij.openapi.vfs.VirtualFile; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; @@ -31,5 +32,8 @@ import javax.swing.*; public interface FileIconPatcher extends DumbAware { ExtensionPointName EP_NAME = ExtensionPointName.create("com.intellij.fileIconPatcher"); - Icon patchIcon(Icon baseIcon, VirtualFile file, @Iconable.IconFlags int flags, @Nullable Project project); + @NotNull Icon patchIcon(@NotNull Icon icon, + @NotNull VirtualFile file, + @Iconable.IconFlags int flags, + @Nullable Project project); } \ No newline at end of file diff --git a/platform/lang-impl/src/com/intellij/ide/FileIconPatcherImpl.java b/platform/lang-impl/src/com/intellij/ide/PsiBasedFileIconProvider.java similarity index 76% rename from platform/lang-impl/src/com/intellij/ide/FileIconPatcherImpl.java rename to platform/lang-impl/src/com/intellij/ide/PsiBasedFileIconProvider.java index fb4261c3dfe4..ec1a5b519f3d 100644 --- a/platform/lang-impl/src/com/intellij/ide/FileIconPatcherImpl.java +++ b/platform/lang-impl/src/com/intellij/ide/PsiBasedFileIconProvider.java @@ -1,8 +1,5 @@ // Copyright 2000-2023 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license. -/* - * @author max - */ package com.intellij.ide; import com.intellij.openapi.project.Project; @@ -15,10 +12,10 @@ import org.jetbrains.annotations.Nullable; import javax.swing.*; -final class FileIconPatcherImpl implements FileIconProvider { +final class PsiBasedFileIconProvider implements FileIconProvider { @Override - public @Nullable Icon getIcon(@NotNull VirtualFile file, int flags, Project project) { + public @Nullable Icon getIcon(@NotNull VirtualFile file, int flags, @Nullable Project project) { PsiFileSystemItem psiFile = PsiUtilCore.findFileSystemItem(project, file); - return psiFile == null ? null : PsiIconUtil.getProvidersIcon(psiFile, flags); + return psiFile == null ? null : PsiIconUtil.getIconFromProviders(psiFile, flags); } } \ No newline at end of file diff --git a/platform/lang-impl/src/com/intellij/ide/scratch/ScratchFileServiceImpl.java b/platform/lang-impl/src/com/intellij/ide/scratch/ScratchFileServiceImpl.java index dd31eb9a95ff..d09cd0146232 100644 --- a/platform/lang-impl/src/com/intellij/ide/scratch/ScratchFileServiceImpl.java +++ b/platform/lang-impl/src/com/intellij/ide/scratch/ScratchFileServiceImpl.java @@ -346,11 +346,11 @@ public final class ScratchFileServiceImpl extends ScratchFileService implements } @Override - public Icon patchIcon(Icon baseIcon, VirtualFile file, int flags, @Nullable Project project) { - if (project == null) return baseIcon; + public @NotNull Icon patchIcon(@NotNull Icon icon, @NotNull VirtualFile file, int flags, @Nullable Project project) { + if (project == null) return icon; RootType rootType = ScratchFileService.getInstance().getRootType(file); - if (rootType == null) return baseIcon; - return rootType.patchIcon(baseIcon, file, flags, project); + if (rootType == null) return icon; + return rootType.patchIcon(icon, file, flags, project); } @Override diff --git a/platform/platform-resources/src/META-INF/LangExtensions.xml b/platform/platform-resources/src/META-INF/LangExtensions.xml index 1abebd477269..28cdc5bdfda7 100644 --- a/platform/platform-resources/src/META-INF/LangExtensions.xml +++ b/platform/platform-resources/src/META-INF/LangExtensions.xml @@ -808,7 +808,7 @@ - + diff --git a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/impl/XsltIconProvider.java b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/impl/XsltIconPatcher.java similarity index 55% rename from plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/impl/XsltIconProvider.java rename to plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/impl/XsltIconPatcher.java index 0cbccb640b9b..542b6aa6f07e 100644 --- a/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/impl/XsltIconProvider.java +++ b/plugins/xpath/xpath-lang/src/org/intellij/lang/xpath/xslt/impl/XsltIconPatcher.java @@ -7,20 +7,22 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.PsiFile; import com.intellij.psi.PsiManager; import org.intellij.lang.xpath.xslt.XsltSupport; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import javax.swing.*; -public class XsltIconProvider implements FileIconPatcher { +public class XsltIconPatcher implements FileIconPatcher { @Override - public Icon patchIcon(Icon baseIcon, VirtualFile file, int flags, Project project) { - if (project == null) return baseIcon; + public @NotNull Icon patchIcon(@NotNull Icon icon, @NotNull VirtualFile file, int flags, @Nullable Project project) { + if (project == null) return icon; - final PsiFile psiFile = PsiManager.getInstance(project).findFile(file); + PsiFile psiFile = PsiManager.getInstance(project).findFile(file); if (psiFile != null && XsltSupport.isXsltFile(psiFile)) { - return XsltSupport.createXsltIcon(baseIcon); + return XsltSupport.createXsltIcon(icon); } - return baseIcon; + return icon; } } diff --git a/plugins/xpath/xpath-view/src/META-INF/plugin.xml b/plugins/xpath/xpath-view/src/META-INF/plugin.xml index 7d6daff41e90..88e0142c1047 100644 --- a/plugins/xpath/xpath-view/src/META-INF/plugin.xml +++ b/plugins/xpath/xpath-view/src/META-INF/plugin.xml @@ -156,7 +156,7 @@ bundle="messages.XPathBundle" key="configurable.xslt.display.name"/> - +