带有装饰器的 RCP 图标在 macOS 上有黑色背景

RCP icons with decorator have black background on macOS

在我的 RCP 应用程序中,当装饰器被添加到 TreeViewer 中的图标时,图标的背景在 macOS 上是黑色的。

显示的装饰器很简单:

public class GroupDecorator extends LabelProvider implements ILightweightLabelDecorator {

  public static final String IMAGE_PATH = "overlays/folder_decorator.png";

  @Override
  public void decorate(Object o, IDecoration decoration) {
    if(o instanceof Group<?> 
       && !(o instanceof IISO27Scope)
       && !(o instanceof Asset)
       && !(o instanceof ImportBpGroup)) {
        decoration.addOverlay(ImageCache.getInstance().getImageDescriptor(IMAGE_PATH));
    }
  }
}

完整的源代码在 GitHub: GroupDecorator.java

您可以在此处找到装饰器图像文件:overlays/folder_decorator.png

Eclipse RCP 版本为 2019-06 / 4.12。 MacOS 版本是 Catalina 10.15.2。显示的问题 不会 出现在 Linux 和 Windows 上。它也 不会 在 macOS Catalina 上的 Eclipse RCP 4.7 中出现。

如何让背景变白?

这看起来像 SWT 错误 - https://bugs.eclipse.org/bugs/show_bug.cgi?id=310387 并且已在 Eclipse 2020-03 中修复。