Compare commits

...

6 Commits

38 changed files with 358 additions and 199 deletions

View File

@ -0,0 +1,24 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Delete Finished Icons" type="GradleRunConfiguration" factoryName="Gradle">
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value="deleteFinishedIcons" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>true</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>

View File

@ -31,4 +31,3 @@ Note that the Project tool window is supposed to be purple, but it doesn't work
* ![Yellow](https://placehold.it/15/F0A732/000000?text=+) **Editing / Hints** (Edit Source, Intention Bulb, Find In Selection)
* ![Blue](https://placehold.it/15/3592C4/000000?text=+) **Movement / Layout** (Filter, Sort, Split, Expand, Collapse, Refresh)
* ![Purple](https://placehold.it/15/B066B0/000000?text=+) **Special** (Save, Print, Download, Upload, Import, Export, Pin)

View File

@ -1,24 +1,36 @@
import java.io.FileFilter
plugins {
java
id("org.jetbrains.intellij") version "1.15.0"
}
group = "com.chylex.intellij.coloredicons"
version = "1.4"
version = "1.5"
repositories {
mavenCentral()
maven("https://www.jetbrains.com/intellij-repository/releases/")
maven("https://www.jetbrains.com/intellij-repository/snapshots/")
}
intellij {
type.set("IU")
version.set("2023.2")
version.set("2023.3")
updateSinceUntilBuild.set(false)
plugins.set(listOf(
"Pythonid:233.11799.241", // https://plugins.jetbrains.com/plugin/631-python/versions
"com.jetbrains.php:233.11799.241", // https://plugins.jetbrains.com/plugin/6610-php/versions
"com.jetbrains.rust:233.20527.212", // https://plugins.jetbrains.com/plugin/22407-rust/versions/stable/
"org.intellij.scala:2023.3.17", // https://plugins.jetbrains.com/plugin/1347-scala/versions
"org.jetbrains.plugins.go:233.11799.196", // https://plugins.jetbrains.com/plugin/9568-go/versions
"org.jetbrains.plugins.ruby:233.11799.241", // https://plugins.jetbrains.com/plugin/1293-ruby/versions
))
}
tasks.patchPluginXml {
sinceBuild.set("232")
sinceBuild.set("233")
}
tasks.buildSearchableOptions {
@ -49,12 +61,9 @@ dependencies {
"helpersImplementation"("commons-io:commons-io:2.11.0")
if (System.getProperty("downloadExtraIDEs", "") == "true") {
"ides"("com.jetbrains.intellij.idea:ideaIU:LATEST-EAP-SNAPSHOT")
"ides"("com.jetbrains.intellij.clion:clion:LATEST-EAP-SNAPSHOT")
"ides"("com.jetbrains.intellij.goland:goland:LATEST-EAP-SNAPSHOT")
"ides"("com.jetbrains.intellij.phpstorm:phpstorm:LATEST-EAP-SNAPSHOT")
"ides"("com.jetbrains.intellij.pycharm:pycharmPY:LATEST-EAP-SNAPSHOT")
"ides"("com.jetbrains.intellij.rider:riderRD:2023.3-SNAPSHOT")
"ides"("com.jetbrains.intellij.idea:ideaIU:2023.3")
"ides"("com.jetbrains.intellij.clion:clion:2023.3")
"ides"("com.jetbrains.intellij.rider:riderRD:2023.3")
}
}
@ -72,15 +81,16 @@ fun getClassPathFolders(configuration: Configuration): List<String> {
}
createHelperTask("fixSVGs", main = "FixSVGs")
createHelperTask("deleteFinishedIcons", main = "DeleteFinishedIcons")
createHelperTask("grabIconsFromInstalledIDEs", main = "GrabIcons\$FromInstalledIDEs")
createHelperTask("grabIconsFromGradle", main = "GrabIcons\$FromArgumentPaths") {
createHelperTask("grabIconsFromGradle", main = "GrabIcons\$FromArgumentPaths") { task ->
val ideLibraries = getClassPathFolders(project.configurations.getByName("ides"))
val downloadedPlugins = File(buildDir, "idea-sandbox/system/plugins").absolutePath
val downloadedPlugins = File(buildDir, "idea-sandbox/plugins").listFiles(FileFilter { it.isDirectory && it.name != rootProject.name })
if (File(downloadedPlugins).exists()) {
it.args = ideLibraries + downloadedPlugins
if (downloadedPlugins != null) {
task.args = ideLibraries + downloadedPlugins.map(File::getAbsolutePath)
}
else {
it.args = ideLibraries
task.args = ideLibraries
}
}

View File

@ -0,0 +1,50 @@
package com.chylex.intellij.coloredicons;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.nio.file.Path;
import java.util.Collection;
import java.util.Set;
import static java.util.stream.Collectors.toSet;
public final class DeleteFinishedIcons {
@SuppressWarnings("ResultOfMethodCallIgnored")
public static void main(final String[] args) {
final Path extractedRootPath = Path.of("./extracted");
final Path finishedRootPath = Path.of("./resources/icons");
final Collection<File> extractedFiles = FileUtils.listFiles(extractedRootPath.toFile(), null, true);
final Collection<File> finishedFiles = FileUtils.listFiles(finishedRootPath.toFile(), null, true);
System.out.println("Extracted files: " + extractedFiles.size());
System.out.println("Finished files: " + finishedFiles.size());
final Set<String> finishedRelativePaths = finishedFiles.stream()
.map(file -> relativize(finishedRootPath, file))
.collect(toSet());
int deleted = 0;
for (final File extractedFile : extractedFiles) {
if (finishedRelativePaths.remove(relativize(extractedRootPath, extractedFile))) {
++deleted;
extractedFile.delete();
}
}
System.out.println("Deleted files: " + deleted);
if (!finishedRelativePaths.isEmpty()) {
System.out.println("Undeleted files: " + finishedRelativePaths.size());
System.out.println();
finishedRelativePaths.stream()
.sorted()
.forEachOrdered(undeletedPath -> System.out.println("Undeleted file: " + undeletedPath));
}
}
private static String relativize(final Path basePath, final File file) {
return basePath.relativize(file.toPath()).toString();
}
}

View File

@ -26,7 +26,10 @@ abstract class GrabIcons {
private static final List<String> EXPECTED_OLD_UI_VIEW_BOXES_LOWERCASE = List.of(
"viewbox=\"0 0 12 12\"",
"viewbox=\"0 0 13 13\"",
"viewbox=\"0 0 16 16\""
"viewbox=\"0 0 16 16\"",
"width=\"12\" height=\"12\"",
"width=\"13\" height=\"13\"",
"width=\"16\" height=\"16\""
);
private static final List<String> EXPECTED_OLD_UI_COLORS_LOWERCASE = List.of(
@ -37,7 +40,10 @@ abstract class GrabIcons {
private static final List<String> EXPECTED_NEW_UI_VIEW_BOXES_LOWERCASE = List.of(
"viewbox=\"0 0 14 14\"",
"viewbox=\"0 0 16 16\"",
"viewbox=\"0 0 20 20\""
"viewbox=\"0 0 20 20\"",
"width=\"14\" height=\"14\"",
"width=\"16\" height=\"16\"",
"width=\"20\" height=\"20\""
);
private static final List<String> EXPECTED_NEW_UI_COLORS_LOWERCASE = List.of(

View File

@ -9,6 +9,11 @@
</description>
<change-notes><![CDATA[
<b>Version 1.5</b>
<ul>
<li>Fixed tool window icons for 2023.3</li>
<li>Fixed exception when using the new UI</li>
</ul>
<b>Version 1.4</b>
<ul>
<li>Added tool window icons for Bookmarks, Notifications, Dependencies, Scala, and more</li>

View File

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13">
<path d="M6.5,0.375L12.625,3.778L6.5,7.181L0.375,3.778L6.5,0.375ZM11.4,5.819L12.625,6.5L6.5,9.903L0.375,6.5L1.6,5.819L6.5,8.542L11.4,5.819ZM11.4,8.542L12.625,9.222L6.5,12.625L0.375,9.222L1.6,8.542L6.5,11.264L11.4,8.542Z" style="fill:#389fd6;"/>
</svg>

After

Width:  |  Height:  |  Size: 340 B

View File

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13">
<path d="M6.5,0.375L12.625,3.778L6.5,7.181L0.375,3.778L6.5,0.375ZM11.4,5.819L12.625,6.5L6.5,9.903L0.375,6.5L1.6,5.819L6.5,8.542L11.4,5.819ZM11.4,8.542L12.625,9.222L6.5,12.625L0.375,9.222L1.6,8.542L6.5,11.264L11.4,8.542Z" style="fill:#3592c4;"/>
</svg>

After

Width:  |  Height:  |  Size: 340 B

View File

Before

Width:  |  Height:  |  Size: 449 B

After

Width:  |  Height:  |  Size: 449 B

View File

Before

Width:  |  Height:  |  Size: 303 B

After

Width:  |  Height:  |  Size: 303 B

View File

Before

Width:  |  Height:  |  Size: 303 B

After

Width:  |  Height:  |  Size: 303 B

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13">
<path d="M5.687,3.25C3.459,3.25 1.625,5.084 1.625,7.312C1.625,9.54 3.459,11.374 5.687,11.374C7.915,11.374 9.749,9.54 9.749,7.312L8.937,7.312C8.937,9.095 7.47,10.562 5.687,10.562C3.904,10.562 2.437,9.095 2.437,7.312C2.437,5.529 3.904,4.062 5.687,4.062L5.687,3.25Z" style="fill:#59a869;"/>
<path d="M11.375,6.5C11.375,3.826 9.174,1.625 6.5,1.625L6.5,6.5L11.375,6.5Z" style="fill:#59a869;"/>
</svg>

After

Width:  |  Height:  |  Size: 488 B

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13">
<path d="M5.688,3.25C5.687,3.25 5.687,3.25 5.686,3.25C3.457,3.25 1.623,5.084 1.623,7.313C1.623,9.542 3.457,11.376 5.686,11.376C7.915,11.376 9.749,9.542 9.749,7.313C9.749,7.313 9.749,7.312 9.749,7.312L8.937,7.312C8.937,9.095 7.47,10.562 5.687,10.562C3.904,10.562 2.437,9.095 2.437,7.312C2.437,5.529 3.904,4.062 5.687,4.062L5.687,3.25L5.688,3.25Z" style="fill:#499c54;"/>
<path d="M11.375,6.5C11.375,3.826 9.174,1.625 6.5,1.625L6.5,6.5L11.375,6.5Z" style="fill:#499c54;"/>
</svg>

After

Width:  |  Height:  |  Size: 570 B

View File

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Before

Width:  |  Height:  |  Size: 680 B

After

Width:  |  Height:  |  Size: 680 B

View File

Before

Width:  |  Height:  |  Size: 685 B

After

Width:  |  Height:  |  Size: 685 B

View File

Before

Width:  |  Height:  |  Size: 833 B

After

Width:  |  Height:  |  Size: 833 B

View File

Before

Width:  |  Height:  |  Size: 833 B

After

Width:  |  Height:  |  Size: 833 B

View File

Before

Width:  |  Height:  |  Size: 521 B

After

Width:  |  Height:  |  Size: 521 B

View File

Before

Width:  |  Height:  |  Size: 521 B

After

Width:  |  Height:  |  Size: 521 B

View File

Before

Width:  |  Height:  |  Size: 399 B

After

Width:  |  Height:  |  Size: 399 B

View File

Before

Width:  |  Height:  |  Size: 399 B

After

Width:  |  Height:  |  Size: 399 B

View File

Before

Width:  |  Height:  |  Size: 788 B

After

Width:  |  Height:  |  Size: 788 B

View File

Before

Width:  |  Height:  |  Size: 788 B

After

Width:  |  Height:  |  Size: 788 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"><path fill="#6e6e6e" fill-rule="evenodd" d="M5.687 3.25a4.062 4.062 0 1 0 4.062 4.062h-.812a3.25 3.25 0 1 1-3.25-3.25V3.25Z"/><path fill="#6e6e6e" fill-rule="evenodd" d="M11.375 6.5A4.875 4.875 0 0 0 6.5 1.625V6.5h4.875Z"/></svg>

After

Width:  |  Height:  |  Size: 292 B

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13"><path fill="#afb1b3" fill-rule="evenodd" d="M5.688 3.25a4.063 4.063 0 1 0 4.061 4.062h-.812a3.25 3.25 0 1 1-3.25-3.25V3.25Z"/><path fill="#afb1b3" fill-rule="evenodd" d="M11.375 6.5A4.875 4.875 0 0 0 6.5 1.625V6.5h4.875Z"/></svg>

After

Width:  |  Height:  |  Size: 292 B

View File

@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13">
<g>
<path d="M10.362,4.567l-1.239,0c-0.303,-1.894 -1.944,-3.341 -3.924,-3.341c-2.194,0 -3.973,1.779 -3.973,3.973c0,2.195 1.779,3.974 3.973,3.974c0.275,0 0.542,-0.028 0.801,-0.081l0,1.247c-0.261,0.04 -0.528,0.061 -0.8,0.061c-2.872,0 -5.2,-2.328 -5.2,-5.2c0,-2.872 2.328,-5.2 5.2,-5.2c2.657,0 4.849,1.994 5.162,4.567Z" style="fill:#6e6e6e;"/>
<rect x="4.992" y="2.77" width="1" height="2.724" style="fill:#6e6e6e;"/>
<path d="M5.284,4.787l0.706,0.707l-1.924,1.926l-0.706,-0.708l1.924,-1.925Z" style="fill:#6e6e6e;"/>
<path d="M7,4.767l6,4l-6,4l0,-8Z" style="fill:#59a869;"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 709 B

View File

@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13">
<g>
<path d="M10.362,4.567l-1.239,0c-0.303,-1.894 -1.944,-3.341 -3.924,-3.341c-2.194,0 -3.973,1.779 -3.973,3.973c0,2.195 1.779,3.974 3.973,3.974c0.275,0 0.542,-0.028 0.801,-0.081l0,1.247c-0.261,0.04 -0.528,0.061 -0.8,0.061c-2.872,0 -5.2,-2.328 -5.2,-5.2c0,-2.872 2.328,-5.2 5.2,-5.2c2.657,0 4.849,1.994 5.162,4.567Z" style="fill:#afb1b3;"/>
<rect x="4.992" y="2.77" width="1" height="2.724" style="fill:#afb1b3;"/>
<path d="M5.284,4.787l0.706,0.707l-1.924,1.926l-0.706,-0.708l1.924,-1.925Z" style="fill:#afb1b3;"/>
<path d="M7,4.767l6,4l-6,4l0,-8Z" style="fill:#499c54;"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 709 B

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13">
<path d="M7.5,6L13,9.5L7.5,13L7.5,6Z" style="fill:#59a869;"/>
<path d="M6.5,0.2L1.5,1.2L1.5,6.9C1.764,9.874 6.498,12.2 6.498,12.2L6.5,12.199L6.5,1.978L9.722,2.606L9.722,6.229L11.434,7.318C11.465,7.18 11.488,7.041 11.5,6.9L11.5,1.2L6.5,0.2Z" style="fill:#6e6e6e;fill-rule:nonzero;"/>
</svg>

After

Width:  |  Height:  |  Size: 382 B

View File

@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 13 13">
<path d="M7.5,6L13,9.5L7.5,13L7.5,6Z" style="fill:#499c54;"/>
<path d="M6.5,0.2L1.5,1.2L1.5,6.9C1.764,9.874 6.498,12.2 6.498,12.2L6.5,12.199L6.5,1.978L9.722,2.606L9.722,6.229L11.434,7.318C11.465,7.18 11.488,7.041 11.5,6.9L11.5,1.2L6.5,0.2Z" style="fill:#afb1b3;fill-rule:nonzero;"/>
</svg>

After

Width:  |  Height:  |  Size: 382 B

View File

@ -1,199 +1,22 @@
package com.chylex.intellij.coloredicons;
import com.chylex.intellij.coloredicons.sets.OldUI;
import com.intellij.openapi.util.IconLoader;
import com.intellij.openapi.util.IconPathPatcher;
import com.intellij.ui.NewUiValue;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.HashMap;
import java.util.Collections;
import java.util.Map;
public class IconPatcher extends IconPathPatcher {
private final ClassLoader classLoader = getClass().getClassLoader();
private final Map<String, String> iconPaths = new HashMap<>();
private final Map<String, String> iconPaths;
public IconPatcher() {
addPathWithDark("actions/addList");
addPathWithDark("actions/AddMulticaret");
addPathWithDark("actions/back");
addPathWithDark("actions/buildAutoReloadChanges");
addPathWithDark("actions/cancel");
addPathWithDark("actions/CheckMulticaret");
addPathWithDark("actions/collapseall");
addPathWithDark("actions/download");
addPathWithDark("actions/dump");
addPathWithDark("actions/edit");
addPathWithDark("actions/editScheme");
addPathWithDark("actions/editSource");
addPathWithDark("actions/expandall");
addPathWithDark("actions/forward");
addPathWithDark("actions/inSelection");
addPathWithDark("actions/intentionBulbGrey");
addPathWithDark("actions/menu-saveall");
addPathWithDark("actions/newFolder");
addPathWithDark("actions/nextOccurence");
addPathWithDark("actions/openNewTab");
addPathWithDark("actions/prettyPrint");
addPathWithDark("actions/previousOccurence");
addPathWithDark("actions/realIntentionBulb");
addPathWithDark("actions/refactoringBulb"); // TODO not working
addPathWithDark("actions/refresh");
addPathWithDark("actions/RemoveMulticaret");
addPathWithDark("actions/rollback");
addPathWithDark("actions/show");
addPathWithDark("actions/showCode");
addPathWithDark("actions/showHiddens");
addPathWithDark("actions/splitHorizontally");
addPathWithDark("actions/splitVertically");
addPathWithDark("actions/swapPanels");
addPathWithDark("actions/synchronizeScrolling");
addPathWithDark("actions/syncPanels");
addPathWithDark("actions/toggleSoftWrap");
addPathWithDark("actions/unselectall");
addPathWithDark("actions/upload");
addPathWithDark("codeStyle/AddNewSectionRule");
addPathWithDark("diff/magicResolve");
addPathWithDark("diff/magicResolveToolbar");
addPathWithDark("general/add");
addPathWithDark("general/addJdk");
addPathWithDark("general/autoscrollFromSource");
addPathWithDark("general/autoscrollToSource");
addPathWithDark("general/filter");
addPathWithDark("general/layout");
addPathWithDark("general/layoutEditorOnly");
addPathWithDark("general/layoutEditorPreview");
addPathWithDark("general/layoutPreviewOnly");
addPathWithDark("general/pin_tab");
addPathWithDark("general/print");
addPathWithDark("general/remove");
addPathWithDark("general/reset");
addPathWithDark("general/zoomIn");
addPathWithDark("general/zoomOut");
addPathWithDark("graph/layout");
addPathWithDark("graph/zoomIn");
addPathWithDark("graph/zoomOut");
addPathWithDark("hierarchy/class");
addPathWithDark("hierarchy/subtypes");
addPathWithDark("hierarchy/supertypes");
addPathWithDark("icons/artifactSmall");
addPathWithDark("icons/cherryPick");
addPathWithDark("icons/CMakeToolWindow");
addPathWithDark("icons/ConcurrencyDiagramToolwindow");
addPathWithDark("icons/debug_listen_on");
addPathWithDark("icons/ejbToolWindow");
addPathWithDark("icons/gradleNavigate");
addPathWithDark("icons/IntelliSort");
addPathWithDark("icons/interTypes");
addPathWithDark("icons/javaeeToolWindow");
addPathWithDark("icons/jpaConsoleToolWindow");
addPathWithDark("icons/jpaToolWindow");
addPathWithDark("icons/makefileToolWindow");
addPathWithDark("icons/OpenTerminal_13x13");
addPathWithDark("icons/springToolWindow");
addPathWithDark("icons/toolWindowConsole");
addPathWithDark("icons/toolWindowDatabase");
addPathWithDark("icons/toolwindowDatabaseChanges");
addPathWithDark("icons/toolWindowDsm");
addPathWithDark("icons/toolwindowEndpoints");
addPathWithDark("icons/toolWindowGradle");
addPathWithDark("icons/toolWindowSQLGenerator");
addPathWithDark("icons/youTrack");
addPathWithDark("icons/buildTools/gulp_toolwindow");
addPathWithDark("icons/buildTools/grunt/grunt_toolwindow");
addPathWithDark("icons/buildTools/npm/npm_13");
addPathWithDark("icons/com/jetbrains/python/DataView");
addPathWithDark("icons/com/jetbrains/python/pythonConsoleToolWindow");
addPathWithDark("images/toolWindowMaven");
addPathWithDark("images/transferToolWindow");
addPathWithDark("images/updateFolders");
addPathWithDark("images/webServerToolWindow");
addPathWithDark("img/featureTrainerToolWindow");
addPathWithDark("modules/addExcludedRoot");
addPathWithDark("objectBrowser/sortByType");
addPathWithDark("objectBrowser/sorted");
addPathWithDark("objectBrowser/sortedByUsage");
addPathWithDark("objectBrowser/visibilitySort");
addPathWithDark("org/jetbrains/plugins/github/pullRequestsToolWindow");
addPathWithDark("org/jetbrains/plugins/scala/images/sbtShellToolwin");
addPathWithDark("org/jetbrains/plugins/scala/images/sbtToolwin");
addPathWithDark("resources/icons/bvToolWindow");
addPathWithDark("resources/icons/hibConsoleToolWindow");
addPathWithDark("rider/toolWindows/toolWindowNuGet");
addPathWithDark("rider/toolWindows/toolWindowSolutionWideAnalysis");
addPathWithDark("rider/toolWindows/toolwindowStacktrace");
addPathWithDark("rider/toolWindows/toolWindowUnitTesting");
addPathWithDark("rider/toolWindows/toolWindowWPFPreview");
addPathWithDark("runConfigurations/scroll_down");
addPathWithDark("runConfigurations/showIgnored");
addPathWithDark("runConfigurations/showPassed");
addPathWithDark("runConfigurations/sortbyDuration");
addPathWithDark("toolbarDecorator/addBlankLine");
addPathWithDark("toolbarDecorator/addClass");
addPathWithDark("toolbarDecorator/addFolder");
addPathWithDark("toolbarDecorator/addIcon");
addPathWithDark("toolbarDecorator/addJira");
addPathWithDark("toolbarDecorator/addLink");
addPathWithDark("toolbarDecorator/addPattern");
addPathWithDark("toolbarDecorator/addRemoteDatasource");
addPathWithDark("toolbarDecorator/addYouTrack");
addPathWithDark("toolbarDecorator/export");
addPathWithDark("toolbarDecorator/import");
addPathWithDark("toolwindows/documentation");
addPathWithDark("toolwindows/notifications");
addPathWithDark("toolwindows/notificationsNew");
addPathWithDark("toolwindows/notificationsNewImportant");
addPathWithDark("toolwindows/toolWindowAnalyzeDataflow");
addPathWithDark("toolwindows/toolWindowAnt");
addPathWithDark("toolwindows/toolWindowBookmarks");
addPathWithDark("toolwindows/toolWindowBuild");
addPathWithDark("toolwindows/toolWindowChanges");
addPathWithDark("toolwindows/toolWindowCommit");
addPathWithDark("toolwindows/toolWindowCoverage");
addPathWithDark("toolwindows/toolWindowDebugger");
addPathWithDark("toolwindows/toolWindowFavorites");
addPathWithDark("toolwindows/toolWindowFind");
addPathWithDark("toolwindows/toolWindowHierarchy");
addPathWithDark("toolwindows/toolWindowInspection");
addPathWithDark("toolwindows/toolWindowMessages");
addPathWithDark("toolwindows/toolWindowModuleDependencies");
addPathWithDark("toolwindows/toolWindowProfiler");
addPathWithDark("toolwindows/toolWindowProject");
addPathWithDark("toolwindows/toolWindowRun");
addPathWithDark("toolwindows/toolWindowServices");
addPathWithDark("toolwindows/toolWindowStructure");
addPathWithDark("toolwindows/toolWindowTodo");
addPathWithDark("toolwindows/webToolWindow");
addPathWithDark("vcs/changelist");
addPathWithDark("vcs/history");
addPathWithDark("vcs/merge");
addPathWithDark("toolWindowDotTrace");
addPathWithDark("toolWindowDPA");
addPathWithDark("toolwindowUnitTestCoverage");
iconPaths = NewUiValue.isEnabled() ? Collections.emptyMap() : OldUI.getIconPaths();
IconLoader.installPathPatcher(this);
}
private void addPathWithDark(final String path) {
iconPaths.put('/' + path + ".svg", "icons/" + path + ".svg");
iconPaths.put('/' + path + "_dark.svg", "icons/" + path + "_dark.svg");
}
@Nullable
@Override
public String patchPath(@NotNull final String path, final ClassLoader classLoaderIgnore) {

View File

@ -0,0 +1,202 @@
package com.chylex.intellij.coloredicons.sets;
import java.util.HashMap;
import java.util.Map;
public final class OldUI {
public static Map<String, String> getIconPaths() {
return new OldUI().getMap();
}
private final Map<String, String> iconPaths = new HashMap<>();
private OldUI() {
addPathWithDark("actions/addList");
addPathWithDark("actions/AddMulticaret");
addPathWithDark("actions/back");
addPathWithDark("actions/buildAutoReloadChanges");
addPathWithDark("actions/cancel");
addPathWithDark("actions/CheckMulticaret");
addPathWithDark("actions/collapseall");
addPathWithDark("actions/download");
addPathWithDark("actions/dump");
addPathWithDark("actions/edit");
addPathWithDark("actions/editScheme");
addPathWithDark("actions/editSource");
addPathWithDark("actions/expandall");
addPathWithDark("actions/forward");
addPathWithDark("actions/inSelection");
addPathWithDark("actions/intentionBulbGrey");
addPathWithDark("actions/menu-saveall");
addPathWithDark("actions/newFolder");
addPathWithDark("actions/nextOccurence");
addPathWithDark("actions/openNewTab");
addPathWithDark("actions/prettyPrint");
addPathWithDark("actions/previousOccurence");
addPathWithDark("actions/realIntentionBulb");
addPathWithDark("actions/refactoringBulb"); // TODO not working
addPathWithDark("actions/refresh");
addPathWithDark("actions/RemoveMulticaret");
addPathWithDark("actions/rollback");
addPathWithDark("actions/show");
addPathWithDark("actions/showCode");
addPathWithDark("actions/showHiddens");
addPathWithDark("actions/splitHorizontally");
addPathWithDark("actions/splitVertically");
addPathWithDark("actions/swapPanels");
addPathWithDark("actions/synchronizeScrolling");
addPathWithDark("actions/syncPanels");
addPathWithDark("actions/toggleSoftWrap");
addPathWithDark("actions/unselectall");
addPathWithDark("actions/upload");
addPathWithDark("codeStyle/AddNewSectionRule");
addPathWithDark("diff/magicResolve");
addPathWithDark("diff/magicResolveToolbar");
addPathWithDark("general/add");
addPathWithDark("general/addJdk");
addPathWithDark("general/autoscrollFromSource");
addPathWithDark("general/autoscrollToSource");
addPathWithDark("general/filter");
addPathWithDark("general/layout");
addPathWithDark("general/layoutEditorOnly");
addPathWithDark("general/layoutEditorPreview");
addPathWithDark("general/layoutPreviewOnly");
addPathWithDark("general/pin_tab");
addPathWithDark("general/print");
addPathWithDark("general/remove");
addPathWithDark("general/reset");
addPathWithDark("general/zoomIn");
addPathWithDark("general/zoomOut");
addPathWithDark("graph/layout");
addPathWithDark("graph/zoomIn");
addPathWithDark("graph/zoomOut");
addPathWithDark("hierarchy/class");
addPathWithDark("hierarchy/subtypes");
addPathWithDark("hierarchy/supertypes");
addPathWithDark("icons/artifactSmall");
addPathWithDark("icons/cherryPick");
addPathWithDark("icons/CMakeToolWindow");
addPathWithDark("icons/ConcurrencyDiagramToolwindow");
addPathWithDark("icons/debug_listen_on");
addPathWithDark("icons/ejbToolWindow");
addPathWithDark("icons/gradleNavigate");
addPathWithDark("icons/IntelliSort");
addPathWithDark("icons/interTypes");
addPathWithDark("icons/javaeeToolWindow");
addPathWithDark("icons/jpaConsoleToolWindow");
addPathWithDark("icons/jpaToolWindow");
addPathWithDark("icons/makefileToolWindow");
addPathWithDark("icons/OpenTerminal_13x13");
addPathWithDark("icons/springToolWindow");
addPathWithDark("icons/toolWindowConsole");
addPathWithDark("icons/toolWindowDatabase");
addPathWithDark("icons/toolwindowDatabaseChanges");
addPathWithDark("icons/toolWindowDsm");
addPathWithDark("icons/toolWindowEndpoints");
addPathWithDark("icons/toolWindowGradle");
addPathWithDark("icons/toolWindowSQLGenerator");
addPathWithDark("icons/youTrack");
addPathWithDark("icons/buildTools/gulp_toolwindow");
addPathWithDark("icons/buildTools/grunt/grunt_toolwindow");
addPathWithDark("icons/buildTools/npm/npm_13");
addPathWithDark("icons/com/jetbrains/python/DataView");
addPathWithDark("icons/com/jetbrains/python/pythonConsoleToolWindow");
addPathWithDark("icons/com/jetbrains/python/pythonPackages");
addPathWithDark("images/toolWindowMaven");
addPathWithDark("images/transferToolWindow");
addPathWithDark("images/updateFolders");
addPathWithDark("images/webServerToolWindow");
addPathWithDark("img/featureTrainerToolWindow");
addPathWithDark("modules/addExcludedRoot");
addPathWithDark("objectBrowser/sortByType");
addPathWithDark("objectBrowser/sorted");
addPathWithDark("objectBrowser/sortedByUsage");
addPathWithDark("objectBrowser/visibilitySort");
addPathWithDark("org/jetbrains/plugins/github/pullRequestsToolWindow");
addPathWithDark("org/jetbrains/sbt/images/sbtShellToolwin");
addPathWithDark("org/jetbrains/sbt/images/sbtToolwin");
addPathWithDark("resources/icons/bvToolWindow");
addPathWithDark("resources/icons/hibConsoleToolWindow");
addPathWithDark("rider/toolwindows/DotMemoryProfilingMonoTone");
addPathWithDark("rider/toolwindows/toolWindowDPA");
addPathWithDark("rider/toolwindows/toolWindowDotTrace");
addPathWithDark("rider/toolwindows/toolWindowNuGet");
addPathWithDark("rider/toolwindows/toolWindowSolutionWideAnalysis");
addPathWithDark("rider/toolwindows/toolWindowUnitTesting");
addPathWithDark("rider/toolwindows/toolWindowWPFPreview");
addPathWithDark("rider/toolwindows/toolwindowStacktrace");
addPathWithDark("rider/toolwindows/toolwindowUnitTestCoverage");
addPathWithDark("runConfigurations/scroll_down");
addPathWithDark("runConfigurations/showIgnored");
addPathWithDark("runConfigurations/showPassed");
addPathWithDark("runConfigurations/sortbyDuration");
addPathWithDark("toolbarDecorator/addBlankLine");
addPathWithDark("toolbarDecorator/addClass");
addPathWithDark("toolbarDecorator/addFolder");
addPathWithDark("toolbarDecorator/addIcon");
addPathWithDark("toolbarDecorator/addJira");
addPathWithDark("toolbarDecorator/addLink");
addPathWithDark("toolbarDecorator/addPattern");
addPathWithDark("toolbarDecorator/addRemoteDatasource");
addPathWithDark("toolbarDecorator/addYouTrack");
addPathWithDark("toolbarDecorator/export");
addPathWithDark("toolbarDecorator/import");
addPathWithDark("toolwindows/documentation");
addPathWithDark("toolwindows/notifications");
addPathWithDark("toolwindows/notificationsNew");
addPathWithDark("toolwindows/notificationsNewImportant");
addPathWithDark("toolwindows/toolWindowAnalyzeDataflow");
addPathWithDark("toolwindows/toolWindowAnt");
addPathWithDark("toolwindows/toolWindowBookmarks");
addPathWithDark("toolwindows/toolWindowBuild");
addPathWithDark("toolwindows/toolWindowChanges");
addPathWithDark("toolwindows/toolWindowCommit");
addPathWithDark("toolwindows/toolWindowCoverage");
addPathWithDark("toolwindows/toolWindowDebugger");
addPathWithDark("toolwindows/toolWindowFavorites");
addPathWithDark("toolwindows/toolWindowFind");
addPathWithDark("toolwindows/toolWindowHierarchy");
addPathWithDark("toolwindows/toolWindowInspection");
addPathWithDark("toolwindows/toolWindowMessages");
addPathWithDark("toolwindows/toolWindowModuleDependencies");
addPathWithDark("toolwindows/toolWindowProfiler");
addPathWithDark("toolwindows/toolWindowProfilerAndroid");
addPathWithDark("toolwindows/toolWindowProject");
addPathWithDark("toolwindows/toolWindowRun");
addPathWithDark("toolwindows/toolWindowRunWithCoverage");
addPathWithDark("toolwindows/toolWindowServices");
addPathWithDark("toolwindows/toolWindowStructure");
addPathWithDark("toolwindows/toolWindowTodo");
addPathWithDark("toolwindows/webToolWindow");
addPathWithDark("vcs/changelist");
addPathWithDark("vcs/history");
addPathWithDark("vcs/merge");
}
private Map<String, String> getMap() {
return iconPaths;
}
private void addPathWithDark(final String path) {
iconPaths.put('/' + path + ".svg", "icons/" + path + ".svg");
iconPaths.put('/' + path + "_dark.svg", "icons/" + path + "_dark.svg");
}
}