From 573a55c8ba99a91ab83aeceac715fa814d62f3b8 Mon Sep 17 00:00:00 2001 From: Jesper Eskilson Date: Mon, 23 Jan 2017 17:48:07 +0100 Subject: [PATCH] Bug 510892: Include the launch target's id in the overlay image id Otherwise, launch targets with same type, but different ids, will get the wrong icon, but only when the target status is != OK. Change-Id: I97e5713bec16eb3a08cae3ffe58bc4fab51b04df Signed-off-by: Jesper Eskilson --- .../launchbar/ui/controls/internal/TargetSelector.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/bundles/org.eclipse.launchbar.ui.controls/src/org/eclipse/launchbar/ui/controls/internal/TargetSelector.java b/bundles/org.eclipse.launchbar.ui.controls/src/org/eclipse/launchbar/ui/controls/internal/TargetSelector.java index d25f950702b..f084d21f7eb 100644 --- a/bundles/org.eclipse.launchbar.ui.controls/src/org/eclipse/launchbar/ui/controls/internal/TargetSelector.java +++ b/bundles/org.eclipse.launchbar.ui.controls/src/org/eclipse/launchbar/ui/controls/internal/TargetSelector.java @@ -100,7 +100,6 @@ public class TargetSelector extends CSelector implements ILaunchTargetListener { return null; } if (element instanceof ILaunchTarget) { - // TODO apply a status overlay ILaunchTarget target = (ILaunchTarget) element; ILabelProvider provider = targetUIManager.getLabelProvider(target); if (provider != null) { @@ -109,8 +108,8 @@ public class TargetSelector extends CSelector implements ILaunchTargetListener { if (status.getCode() == Code.OK) { return baseImage; } else { - String compId = target.getTypeId() - + (status.getCode() == Code.ERROR ? ".error" : ".warning"); //$NON-NLS-1$ //$NON-NLS-2$ + String compId = String.format("%s.%s.%s", target.getTypeId(), target.getId(), + status.getCode()); Image image = Activator.getDefault().getImageRegistry().get(compId); if (image == null && baseImage != null) { ImageDescriptor desc = new CompositeImageDescriptor() {