From c858eedee0f7b1524a303dbc73dd9f991ce849f4 Mon Sep 17 00:00:00 2001 From: Pavel Porvatov Date: Thu, 20 Feb 2025 12:02:53 +0100 Subject: [PATCH] IJPL-175939 Consider deprecating the Thumbnails tool window - The functionality moved under registry key thumbnails.toolwindow.enabled, false by default GitOrigin-RevId: 19f364b48bdf948c85664a12a9ab1f32537deaac --- .../org/intellij/images/actions/ShowThumbnailsAction.java | 6 ++++++ .../images/thumbnail/impl/ThumbnailSelectInTarget.java | 7 +++++++ platform/util/resources/misc/registry.properties | 3 +++ 3 files changed, 16 insertions(+) diff --git a/images/src/org/intellij/images/actions/ShowThumbnailsAction.java b/images/src/org/intellij/images/actions/ShowThumbnailsAction.java index 408d5ef24738..f23d8fe5cf9f 100644 --- a/images/src/org/intellij/images/actions/ShowThumbnailsAction.java +++ b/images/src/org/intellij/images/actions/ShowThumbnailsAction.java @@ -20,6 +20,7 @@ import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.CommonDataKeys; import com.intellij.openapi.project.Project; +import com.intellij.openapi.util.registry.Registry; import com.intellij.openapi.vfs.VirtualFile; import org.intellij.images.thumbnail.ThumbnailManager; import org.intellij.images.thumbnail.ThumbnailView; @@ -46,6 +47,11 @@ public final class ShowThumbnailsAction extends AnAction { @Override public void update(@NotNull AnActionEvent e) { + if (!Registry.is("thumbnails.toolwindow.enabled", false)) { + e.getPresentation().setEnabledAndVisible(false); + return; + } + VirtualFile file = e.getData(CommonDataKeys.VIRTUAL_FILE); boolean enabled = file != null && file.isDirectory(); if (e.isFromContextMenu()) { diff --git a/images/src/org/intellij/images/thumbnail/impl/ThumbnailSelectInTarget.java b/images/src/org/intellij/images/thumbnail/impl/ThumbnailSelectInTarget.java index 0ac2941985a1..1d5ddab7f646 100644 --- a/images/src/org/intellij/images/thumbnail/impl/ThumbnailSelectInTarget.java +++ b/images/src/org/intellij/images/thumbnail/impl/ThumbnailSelectInTarget.java @@ -5,16 +5,23 @@ import com.intellij.ide.SelectInContext; import com.intellij.ide.SelectInTarget; import com.intellij.openapi.project.DumbAware; import com.intellij.openapi.project.Project; +import com.intellij.openapi.util.registry.Registry; import com.intellij.openapi.vfs.VirtualFile; import org.intellij.images.ImagesBundle; import org.intellij.images.fileTypes.ImageFileTypeManager; import org.intellij.images.thumbnail.ThumbnailManager; import org.intellij.images.thumbnail.ThumbnailView; +import org.jetbrains.annotations.NotNull; final class ThumbnailSelectInTarget implements SelectInTarget, DumbAware { ThumbnailSelectInTarget() { } + @Override + public boolean isAvailable(@NotNull Project project) { + return Registry.is("thumbnails.toolwindow.enabled", false); + } + @Override public boolean canSelect(SelectInContext context) { VirtualFile virtualFile = context.getVirtualFile(); diff --git a/platform/util/resources/misc/registry.properties b/platform/util/resources/misc/registry.properties index 42906e9ada7f..c7ae9191afc9 100644 --- a/platform/util/resources/misc/registry.properties +++ b/platform/util/resources/misc/registry.properties @@ -2486,6 +2486,9 @@ ijpl.rhizome.ad.debug.enabled.description=Debug mode for IJPL-54 ijpl.rhizome.ad.v2.enabled=false ijpl.rhizome.ad.v2.enabled.description=Second version of IJPL-54 based on common fleet entity. NOTE: must be enabled on FE and BE +thumbnails.toolwindow.enabled=false +thumbnails.toolwindow.enabled.description=Enables the Thumbnails toolwindows and related functionality + gutter.vcs.changes.width=4 gutter.vcs.changes.width.description=Sets vcs changes gutter width